On Wed, May 13, 2026 at 11:25 AM Changqing Li via
lists.openembedded.org
<[email protected]> wrote:
>
> Hi,
>
> Current  postfix 3.10.8 not support build on Linux 7.x,  and it is supported 
> from 3.11.0.
>
> But distro like ubuntu26.04 has Linux 7.x.  Maybe it is better that we also 
> upgrade postfix to 3.11.2

I think I'm ok with taking the upgrade since we've just branched off
unless someone else has strong objections.

Thanks,

Anuj


>
> for wrynose.  if upgrade for wrynose is not accept, then we maybe need to 
> patch postfix with the following patch:
>
> [meta-networking][PATCH] postfix: make it can compile with linux 7.x
>
> https://lists.openembedded.org/g/openembedded-devel/message/126826
>
> Regards
>
> Changqing
>
> On 5/13/26 11:09, Changqing Li via lists.openembedded.org wrote:
>
> * Refresh patch to mute patch-fuzz
> * Add patch 0001-sys_defs.h-workaround-for-musl-lib.patch to workaround
>   for musl lib
> * This upgrade include the following commit, which make postfix can
>   compile on latest stable ubuntu 26.04, which have Linux 7.x kernel
>
>   Postfix works on Linux 7.x kernels. Frank Scheiner. Files:
>         makedefs, util/sys_defs.h.
>
> Changes:
> https://www.ftp.saix.net/MTA/postfix/official/postfix-3.11.2.HISTORY
>
> Signed-off-by: Changqing Li <[email protected]>
> ---
>  .../postfix/files/0001-Fix-makedefs.patch     | 25 +++++------
>  ...1-sys_defs.h-workaround-for-musl-lib.patch | 43 +++++++++++++++++++
>  ...tconf-to-a-variable-for-cross-compil.patch |  9 ++--
>  ...tive-compiler-to-build-makedefs.test.patch | 17 +++-----
>  .../postfix/files/0004-Fix-icu-config.patch   |  9 ++--
>  ...sl-and-lresolv-to-SYSLIBS-by-default.patch | 11 ++---
>  .../{postfix_3.10.8.bb => postfix_3.11.2.bb}  |  3 +-
>  7 files changed, 73 insertions(+), 44 deletions(-)
>  create mode 100644 
> meta-networking/recipes-daemons/postfix/files/0001-sys_defs.h-workaround-for-musl-lib.patch
>  rename meta-networking/recipes-daemons/postfix/{postfix_3.10.8.bb => 
> postfix_3.11.2.bb} (98%)
>
> diff --git 
> a/meta-networking/recipes-daemons/postfix/files/0001-Fix-makedefs.patch 
> b/meta-networking/recipes-daemons/postfix/files/0001-Fix-makedefs.patch
> index 785fe87452..4e187849dc 100644
> --- a/meta-networking/recipes-daemons/postfix/files/0001-Fix-makedefs.patch
> +++ b/meta-networking/recipes-daemons/postfix/files/0001-Fix-makedefs.patch
> @@ -1,4 +1,4 @@
> -From e4197bc1f431fd7e555a31e6f7f1e020b4ec8f4c Mon Sep 17 00:00:00 2001
> +From 51e29c0a1d98948118e5135bb817a96811105d39 Mon Sep 17 00:00:00 2001
>  From: Li xin <[email protected]>
>  Date: Fri, 19 Jun 2015 16:45:54 +0900
>  Subject: [PATCH] Fix makedefs
> @@ -19,10 +19,10 @@ Signed-off-by: Yao Zhao <[email protected]>
>   1 file changed, 11 insertions(+), 16 deletions(-)
>
>  diff --git a/makedefs b/makedefs
> -index a740e41..28fb128 100644
> +index d5103ce..9713327 100644
>  --- a/makedefs
>  +++ b/makedefs
> -@@ -230,9 +230,6 @@ echo "# pie=$pie"
> +@@ -232,9 +232,6 @@ echo "# pie=$pie"
>
>   # Defaults for most sane systems
>
> @@ -32,7 +32,7 @@ index a740e41..28fb128 100644
>   ARFL=rv
>
>   # Ugly function to make our error message more visible among the
> -@@ -563,12 +560,12 @@ case "$SYSTEM.$RELEASE" in
> +@@ -608,12 +605,12 @@ case "$SYSTEM.$RELEASE" in
>   case "$CCARGS" in
>   *-DNO_DB*) ;;
>   *-DHAS_DB*) ;;
> @@ -48,8 +48,8 @@ index a740e41..28fb128 100644
>      else
>   # No, we're not going to try db1 db2 db3 etc.
>   # On a properly installed system, Postfix builds
> -@@ -577,12 +574,12 @@ case "$SYSTEM.$RELEASE" in
> - echo "Install the appropriate db*-devel package first." 1>&2
> +@@ -623,12 +620,12 @@ case "$SYSTEM.$RELEASE" in
> + echo "Alternatively, build with CCARGS=\"-NO_DB ...\"" 1>&2
>   exit 1
>      fi
>  -    SYSLIBS="-ldb"
> @@ -63,7 +63,7 @@ index a740e41..28fb128 100644
>      do
>   test -e $lib/lib$name.a -o -e $lib/lib$name.so && {
>      SYSLIBS="$SYSLIBS -l$name"
> -@@ -602,7 +599,7 @@ case "$SYSTEM.$RELEASE" in
> +@@ -648,7 +645,7 @@ case "$SYSTEM.$RELEASE" in
>         if [ `expr "X$CCARGS" : "X.*-DNO_EPOLL"` -gt 0 ]
>         then
>     :
> @@ -72,7 +72,7 @@ index a740e41..28fb128 100644
>         then
>     echo CCARGS="$CCARGS -DNO_EPOLL"
>         else
> -@@ -626,8 +623,6 @@ int     main(int argc, char **argv)
> +@@ -672,8 +669,6 @@ int     main(int argc, char **argv)
>   }
>   EOF
>     ${CC-gcc} -o makedefs.test makedefs.test.c || exit 1
> @@ -81,7 +81,7 @@ index a740e41..28fb128 100644
>     rm -f makedefs.test makedefs.test.[co]
>         fi;;
>   esac
> -@@ -644,12 +639,12 @@ EOF
> +@@ -690,12 +685,12 @@ EOF
>   case "$CCARGS" in
>   *-DNO_DB*) ;;
>   *-DHAS_DB*) ;;
> @@ -97,8 +97,8 @@ index a740e41..28fb128 100644
>      else
>   # On a properly installed system, Postfix builds
>   # by including <db.h> and by linking with -ldb
> -@@ -657,12 +652,12 @@ EOF
> - echo "Install the appropriate db*-devel package first." 1>&2
> +@@ -705,12 +700,12 @@ EOF
> + echo "See: https://www.postfix.org/NON_BERKELEYDB_README.html#build-conf"; 
> 1>&2
>   exit 1
>      fi
>  -    SYSLIBS="-ldb"
> @@ -112,6 +112,3 @@ index a740e41..28fb128 100644
>      do
>   test -e $lib/lib$name.a -o -e $lib/lib$name.so && {
>      SYSLIBS="$SYSLIBS -l$name"
> ---
> -2.25.1
> -
> diff --git 
> a/meta-networking/recipes-daemons/postfix/files/0001-sys_defs.h-workaround-for-musl-lib.patch
>  
> b/meta-networking/recipes-daemons/postfix/files/0001-sys_defs.h-workaround-for-musl-lib.patch
> new file mode 100644
> index 0000000000..b7a8e05165
> --- /dev/null
> +++ 
> b/meta-networking/recipes-daemons/postfix/files/0001-sys_defs.h-workaround-for-musl-lib.patch
> @@ -0,0 +1,43 @@
> +From ce15792203ae0c787e3602d6d38a892ea1ce31ce Mon Sep 17 00:00:00 2001
> +From: Changqing Li <[email protected]>
> +Date: Tue, 12 May 2026 15:04:55 +0800
> +Subject: [PATCH] sys_defs.h: workaround for musl lib
> +
> +Fix musl lib compile failure:
> +vbuf_print.c:215:46: error: macro 'VBUF_SNPRINTF' passed 5 arguments, but 
> takes just 4
> +  215 |                     VSTRING_ADDNUM(fmt, width);
> +      |                                              ^
> +vbuf_print.c:132:9: note: macro 'VBUF_SNPRINTF' defined here
> +  132 | #define VBUF_SNPRINTF(bp, sz, fmt, arg) do { \
> +
> +Previously checking condition will make #else branch is selected, and
> +NO_SNPRINTF is defined, and when NO_SNPRINTF is defined, VBUF_SNPRINTF
> +only take 4 arguments, and cause above failure. musl lib support
> +snprintf and we only have glibc and musl libc, so workaround by when
> +glibc is not defected, take it as musl lib, and select the #if branch.
> +
> +Upstream-Status: Pending [Reported to [email protected]]
> +
> +https://www.mail-archive.com/[email protected]/msg107898.html
> +
> +Signed-off-by: Changqing Li <[email protected]>
> +---
> + src/util/sys_defs.h | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/src/util/sys_defs.h b/src/util/sys_defs.h
> +index 1890577..c3527c9 100644
> +--- a/src/util/sys_defs.h
> ++++ b/src/util/sys_defs.h
> +@@ -794,7 +794,7 @@ extern int initgroups(const char *, int);
> + #define NATIVE_NEWALIAS_PATH "/usr/bin/newaliases"
> + #define NATIVE_COMMAND_DIR "/usr/sbin"
> + #define NATIVE_DAEMON_DIR "/usr/libexec/postfix"
> +-#if HAVE_GLIBC_API_VERSION_SUPPORT(2, 1)
> ++#if HAVE_GLIBC_API_VERSION_SUPPORT(2, 1) || !defined(__GLIBC__)
> + #define SOCKADDR_SIZE socklen_t
> + #define SOCKOPT_SIZE socklen_t
> + #else
> +--
> +2.34.1
> +
> diff --git 
> a/meta-networking/recipes-daemons/postfix/files/0002-Change-fixed-postconf-to-a-variable-for-cross-compil.patch
>  
> b/meta-networking/recipes-daemons/postfix/files/0002-Change-fixed-postconf-to-a-variable-for-cross-compil.patch
> index d46efb95cb..a74c46fa92 100644
> --- 
> a/meta-networking/recipes-daemons/postfix/files/0002-Change-fixed-postconf-to-a-variable-for-cross-compil.patch
> +++ 
> b/meta-networking/recipes-daemons/postfix/files/0002-Change-fixed-postconf-to-a-variable-for-cross-compil.patch
> @@ -1,4 +1,4 @@
> -From 953719878466c55572294f42e85127bda5d34999 Mon Sep 17 00:00:00 2001
> +From ce8deeaac8ca5d7329e1923790a1f35798953799 Mon Sep 17 00:00:00 2001
>  From: Li xin <[email protected]>
>  Date: Fri, 19 Jun 2015 17:14:58 +0900
>  Subject: [PATCH] Change fixed postconf to a variable for cross-compiling
> @@ -12,10 +12,10 @@ Signed-off-by: Yao Zhao <[email protected]>
>   2 files changed, 11 insertions(+), 9 deletions(-)
>
>  diff --git a/Makefile.in b/Makefile.in
> -index a37f89f..17cb64b 100644
> +index 8d7501a..d2a85e8 100644
>  --- a/Makefile.in
>  +++ b/Makefile.in
> -@@ -22,7 +22,7 @@ META = meta/main.cf.proto meta/master.cf.proto 
> meta/postfix-files \
> +@@ -23,7 +23,7 @@ META = meta/main.cf.proto meta/master.cf.proto 
> meta/postfix-files \
>   EXPAND = sed -e "s;\$${LIB_PREFIX};$(LIB_PREFIX);" \
>      -e "s;\$${LIB_SUFFIX};$(LIB_SUFFIX);"
>   SHLIB_DIR_OVERRIDE = \
> @@ -102,6 +102,3 @@ index 563ee27..00d4651 100644
>       "daemon_directory = $daemon_directory" \
>       "data_directory = $data_directory" \
>       "command_directory = $command_directory" \
> ---
> -2.25.1
> -
> diff --git 
> a/meta-networking/recipes-daemons/postfix/files/0003-makedefs-Use-native-compiler-to-build-makedefs.test.patch
>  
> b/meta-networking/recipes-daemons/postfix/files/0003-makedefs-Use-native-compiler-to-build-makedefs.test.patch
> index 6f8e3e84da..201b4741de 100644
> --- 
> a/meta-networking/recipes-daemons/postfix/files/0003-makedefs-Use-native-compiler-to-build-makedefs.test.patch
> +++ 
> b/meta-networking/recipes-daemons/postfix/files/0003-makedefs-Use-native-compiler-to-build-makedefs.test.patch
> @@ -1,4 +1,4 @@
> -From a8ec63a71361ccd3f6d2959c4c87b7824282b291 Mon Sep 17 00:00:00 2001
> +From fc51d9145210350577fdb29a9b0680df779ae347 Mon Sep 17 00:00:00 2001
>  From: Khem Raj <[email protected]>
>  Date: Sat, 26 Aug 2017 10:29:37 -0700
>  Subject: [PATCH] makedefs: Use native compiler to build makedefs.test
> @@ -13,10 +13,10 @@ Signed-off-by: Khem Raj <[email protected]>
>   1 file changed, 5 insertions(+), 5 deletions(-)
>
>  diff --git a/makedefs b/makedefs
> -index 28fb128..313b401 100644
> +index 9713327..e879832 100644
>  --- a/makedefs
>  +++ b/makedefs
> -@@ -622,7 +622,7 @@ int     main(int argc, char **argv)
> +@@ -668,7 +668,7 @@ int     main(int argc, char **argv)
>       exit(0);
>   }
>   EOF
> @@ -25,7 +25,7 @@ index 28fb128..313b401 100644
>     rm -f makedefs.test makedefs.test.[co]
>         fi;;
>   esac
> -@@ -865,7 +865,7 @@ int     main(int argc, char **argv)
> +@@ -914,7 +914,7 @@ int     main(int argc, char **argv)
>       exit(0);
>   }
>   EOF
> @@ -34,7 +34,7 @@ index 28fb128..313b401 100644
>     ./makedefs.test 2>/dev/null ||
>   CCARGS="$CCARGS -DNO_SIGSETJMP"
>     rm -f makedefs.test makedefs.test.[co]
> -@@ -903,7 +903,7 @@ int main(int argc, char **argv)
> +@@ -952,7 +952,7 @@ int main(int argc, char **argv)
>    &error) != 14);
>   }
>   EOF
> @@ -43,7 +43,7 @@ index 28fb128..313b401 100644
>   $icu_ldflags >/dev/null 2>&1
>      if ./makedefs.test 2>/dev/null ; then
>   CCARGS="$CCARGS $icu_cppflags"
> -@@ -1024,7 +1024,7 @@ int     main(void)
> +@@ -1088,7 +1088,7 @@ int     main(void)
>       exit(ferror(stdout) ? 1 : 0);
>   }
>   EOF
> @@ -52,7 +52,7 @@ index 28fb128..313b401 100644
>       ./makedefs.test || exit 1
>       rm -f makedefs.test makedefs.test.[co]
>   }
> -@@ -1180,7 +1180,7 @@ int     main(void)
> +@@ -1245,7 +1245,7 @@ int     main(void)
>       exit(ferror(stdout) ? 1 : 0);
>   }
>   EOF
> @@ -61,6 +61,3 @@ index 28fb128..313b401 100644
>   parm_val=`./makedefs.test` || exit 1
>   rm -f makedefs.test makedefs.test.[co]
>   eval ${parm_name}=\""\$parm_val"\"
> ---
> -2.25.1
> -
> diff --git 
> a/meta-networking/recipes-daemons/postfix/files/0004-Fix-icu-config.patch 
> b/meta-networking/recipes-daemons/postfix/files/0004-Fix-icu-config.patch
> index 0660ee098e..daf5c7089e 100644
> --- a/meta-networking/recipes-daemons/postfix/files/0004-Fix-icu-config.patch
> +++ b/meta-networking/recipes-daemons/postfix/files/0004-Fix-icu-config.patch
> @@ -1,4 +1,4 @@
> -From 404150f53bb49af987d7338a808f47fdbd50ba7f Mon Sep 17 00:00:00 2001
> +From b63facf538af99e7c79ebee8d41abd52e7d5ee5e Mon Sep 17 00:00:00 2001
>  From: Khem Raj <[email protected]>
>  Date: Sun, 16 Jan 2022 11:21:54 +0800
>  Subject: [PATCH] Fix icu config
> @@ -18,10 +18,10 @@ Signed-off-by: Khem Raj <[email protected]>
>   1 file changed, 1 deletion(-)
>
>  diff --git a/makedefs b/makedefs
> -index 313b401..e5db212 100644
> +index e879832..f9c132e 100644
>  --- a/makedefs
>  +++ b/makedefs
> -@@ -906,7 +906,6 @@ EOF
> +@@ -955,7 +955,6 @@ EOF
>      ${BUILD_CC-gcc} -o makedefs.test makedefs.test.c $icu_cppflags \
>   $icu_ldflags >/dev/null 2>&1
>      if ./makedefs.test 2>/dev/null ; then
> @@ -29,6 +29,3 @@ index 313b401..e5db212 100644
>   SYSLIBS="$SYSLIBS $icu_ldflags"
>      else
>   CCARGS="$CCARGS -DNO_EAI"
> ---
> -2.25.1
> -
> diff --git 
> a/meta-networking/recipes-daemons/postfix/files/0005-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch
>  
> b/meta-networking/recipes-daemons/postfix/files/0005-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch
> index 1571aa844d..c2e640d6ff 100644
> --- 
> a/meta-networking/recipes-daemons/postfix/files/0005-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch
> +++ 
> b/meta-networking/recipes-daemons/postfix/files/0005-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch
> @@ -1,4 +1,4 @@
> -From 25e7d1a9bc64f39666eb0e2b9b175773615e28d2 Mon Sep 17 00:00:00 2001
> +From fb5b16db0282b5d80edb0ccc6f0f197a7f663610 Mon Sep 17 00:00:00 2001
>  From: Yi Zhao <[email protected]>
>  Date: Fri, 12 Oct 2018 12:38:02 +0800
>  Subject: [PATCH] makedefs: add -lnsl and -lresolv to SYSLIBS by default
> @@ -14,10 +14,10 @@ Signed-off-by: Yi Zhao <[email protected]>
>   1 file changed, 2 insertions(+), 20 deletions(-)
>
>  diff --git a/makedefs b/makedefs
> -index e5db212..b00049b 100644
> +index f9c132e..5ebef5b 100644
>  --- a/makedefs
>  +++ b/makedefs
> -@@ -577,16 +577,7 @@ case "$SYSTEM.$RELEASE" in
> +@@ -623,16 +623,7 @@ case "$SYSTEM.$RELEASE" in
>      SYSLIBS="$SYSLIBS -ldb"
>      ;;
>   esac
> @@ -35,7 +35,7 @@ index e5db212..b00049b 100644
>   # Kernel 2.4 added IPv6
>   case "$RELEASE" in
>   2.[0-3].*) CCARGS="$CCARGS -DNO_IPV6";;
> -@@ -655,16 +646,7 @@ EOF
> +@@ -703,16 +694,7 @@ EOF
>      SYSLIBS="$SYSLIBS -ldb"
>      ;;
>   esac
> @@ -53,6 +53,3 @@ index e5db212..b00049b 100644
>   SYSLIBS="$SYSLIBS -ldl"
>   : ${SHLIB_SUFFIX=.so}
>   : ${SHLIB_CFLAGS=-fPIC}
> ---
> -2.25.1
> -
> diff --git a/meta-networking/recipes-daemons/postfix/postfix_3.10.8.bb 
> b/meta-networking/recipes-daemons/postfix/postfix_3.11.2.bb
> similarity index 98%
> rename from meta-networking/recipes-daemons/postfix/postfix_3.10.8.bb
> rename to meta-networking/recipes-daemons/postfix/postfix_3.11.2.bb
> index a66ecc0b5d..14fec1b276 100644
> --- a/meta-networking/recipes-daemons/postfix/postfix_3.10.8.bb
> +++ b/meta-networking/recipes-daemons/postfix/postfix_3.11.2.bb
> @@ -26,9 +26,10 @@ SRC_URI = 
> "http://ftp.porcupine.org/mirrors/postfix-release/official/postfix-${P
>             
> file://0003-makedefs-Use-native-compiler-to-build-makedefs.test.patch \
>             file://0004-Fix-icu-config.patch \
>             
> file://0005-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch \
> +           file://0001-sys_defs.h-workaround-for-musl-lib.patch \
>             "
>
> -SRC_URI[sha256sum] = 
> "31d4b3eb8093d823b5a151f571719ff7c0462571bc95e6440d87ca525bfb096c"
> +SRC_URI[sha256sum] = 
> "daed65b08c9288cdb386a914f3e52cdddd44935407b5ce5aee8bcc3aa4207778"
>
>  UPSTREAM_CHECK_URI = "https://www.postfix.org/announcements.html";
>  UPSTREAM_CHECK_REGEX = "postfix-(?P<pver>\d+(\.\d+)+)"
>
>
>
>
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#126885): 
https://lists.openembedded.org/g/openembedded-devel/message/126885
Mute This Topic: https://lists.openembedded.org/mt/119292155/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to