[packages/heimdal] extend largefile patch and add upstream patch for checking symbol in lib
atler
atler at pld-linux.org
Sat Jan 18 22:43:00 CET 2025
commit f306d289700969f654db60b5240dda29034409a5
Author: Jan Palus <atler at pld-linux.org>
Date: Sat Jan 18 22:37:49 2025 +0100
extend largefile patch and add upstream patch for checking symbol in lib
find-func.patch | 37 +++++++++++++++++++++++
heimdal-largefile.patch | 78 +++++++++++++++++++++++++++++++++++++++++--------
heimdal.spec | 2 ++
3 files changed, 105 insertions(+), 12 deletions(-)
---
diff --git a/heimdal.spec b/heimdal.spec
index 5d8c684..f8d7a4a 100644
--- a/heimdal.spec
+++ b/heimdal.spec
@@ -37,6 +37,7 @@ Patch10: %{name}-ntlm-digest.patch
Patch11: %{name}-krb5config-nosysdirs.patch
Patch12: %{name}-tinfo.patch
Patch13: %{name}-missing-exports.patch
+Patch14: find-func.patch
URL: http://www.h5l.org/
BuildRequires: autoconf >= 2.62
BuildRequires: automake >= 1:1.11
@@ -245,6 +246,7 @@ Kerberosa.
%patch -P11 -p1
%patch -P12 -p1
%patch -P13 -p1
+%patch -P14 -p1
%build
install -d our-ld
diff --git a/find-func.patch b/find-func.patch
new file mode 100644
index 0000000..ac5ac32
--- /dev/null
+++ b/find-func.patch
@@ -0,0 +1,37 @@
+From 323d555c82f16f8ace3dce45c91cc8a2d25ea0aa Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer at redhat.com>
+Date: Thu, 13 Apr 2023 13:26:29 +0200
+Subject: [PATCH] cf: Do not use headers and argument lists in
+ AC_FIND_FUNC_NO_LIBS2
+
+The callers of this macro generally do not supply this information.
+Without it, the checks rely on compiler support for implicit function
+declarations. It would be possible to supply this information in
+the callers. But even then, with the existing macro interface, it
+would be necessary to pass eg. null pointers where they trigger
+undefined behavior. Therefore, use the same kludge that autoconf
+uses to make up prototypes, avoiding those implicit function
+declarations.
+
+The includes/arguments macro parameters are now ignored, but preserved
+for interface compatibility.
+---
+ cf/find-func-no-libs2.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cf/find-func-no-libs2.m4 b/cf/find-func-no-libs2.m4
+index 5e5ed0e69..a6b3ad6d3 100644
+--- a/cf/find-func-no-libs2.m4
++++ b/cf/find-func-no-libs2.m4
+@@ -21,7 +21,7 @@ if eval "test \"\$ac_cv_func_$1\" != yes" ; then
+ *) ac_lib="-l$ac_lib" ;;
+ esac
+ LIBS="$6 $ac_lib $5 $ac_save_LIBS"
+- AC_LINK_IFELSE([AC_LANG_PROGRAM([[$3]],[[$1($4)]])],[eval "if test -n \"$ac_lib\";then ac_cv_funclib_$1=$ac_lib; else ac_cv_funclib_$1=yes; fi";break])
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([[char $1 (void);]],[[$1()]])],[eval "if test -n \"$ac_lib\";then ac_cv_funclib_$1=$ac_lib; else ac_cv_funclib_$1=yes; fi";break])
+ done
+ eval "ac_cv_funclib_$1=\${ac_cv_funclib_$1-no}"
+ LIBS="$ac_save_LIBS"
+--
+2.48.1
+
diff --git a/heimdal-largefile.patch b/heimdal-largefile.patch
index 7333d03..7014724 100644
--- a/heimdal-largefile.patch
+++ b/heimdal-largefile.patch
@@ -1,19 +1,73 @@
-Fixes build with autoconf 2.72
---- heimdal-7.8.0/cf/largefile.m4.orig 2022-09-16 00:59:25.000000000 +0200
-+++ heimdal-7.8.0/cf/largefile.m4 2025-01-18 20:25:44.416477334 +0100
-@@ -7,10 +7,13 @@ AC_DEFUN([rk_SYS_LARGEFILE],[
- AC_REQUIRE([AC_SYS_LARGEFILE])dnl
- dnl need to set this on the command line, since it might otherwise break
- dnl with generated code, such as lex
--if test "$enable_largefile" != no -a "$ac_cv_sys_large_files" != no; then
-+if test "$enable_largefile" != no -a "$ac_cv_sys_large_files" != no && test -n "$ac_cv_sys_large_files"; then
+From 1b57b62d82a478c1fade350f0fb1d57031a8734e Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd at kuhls.net>
+Date: Sat, 10 Feb 2024 09:33:48 +0100
+Subject: [PATCH] cf/largefile.m4: Fix build with autoconf-2.72
+
+Fixes https://github.com/heimdal/heimdal/issues/1201
+---
+ cf/largefile.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cf/largefile.m4 b/cf/largefile.m4
+index 5c54897be..cdbbc5543 100644
+--- a/cf/largefile.m4
++++ b/cf/largefile.m4
+@@ -10,7 +10,7 @@ dnl with generated code, such as lex
+ if test "$enable_largefile" != no -a "$ac_cv_sys_large_files" != no; then
CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=$ac_cv_sys_large_files"
fi
-if test "$enable_largefile" != no -a "$ac_cv_sys_file_offset_bits" != no; then
+if test "$enable_largefile" != no -a "$ac_cv_sys_file_offset_bits" != no && test -n "$ac_cv_sys_file_offset_bits"; then
CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
fi
-+if test "$enable_largefile" != no -a -n "$ac_cv_sys_largefile_opts"; then
-+ CPPFLAGS="$CPPFLAGS $ac_cv_sys_largefile_opts"
-+fi
])
+--
+2.48.1
+
+From d9840a3a796c907644ab4e4427d4b3f7d8cfa5c6 Mon Sep 17 00:00:00 2001
+From: Jan Palus <jpalus at fastmail.com>
+Date: Thu, 16 Jan 2025 18:34:28 +0100
+Subject: [PATCH] cf/largefile.m4: improve compatibility with autoconf 2.72
+
+as of autoconf 2.72 neither ac_cv_sys_large_files nor
+ac_cv_sys_file_offset_bits are populated. 1b57b62 introduced a
+workaround just for ac_cv_sys_file_offset_bits by checking if it's not
+empty.
+
+expand fix to cover ac_cv_sys_large_files as well and check
+ac_cv_sys_largefile_opts which is populated in autoconf 2.72 [1]
+
+1. https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=cf09f48841b66fe76f606dd6018bb3a93242a7c9
+---
+ cf/largefile.m4 | 16 +++++++++++-----
+ 1 file changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/cf/largefile.m4 b/cf/largefile.m4
+index cdbbc5543..6f20fc83c 100644
+--- a/cf/largefile.m4
++++ b/cf/largefile.m4
+@@ -7,10 +7,16 @@ AC_DEFUN([rk_SYS_LARGEFILE],[
+ AC_REQUIRE([AC_SYS_LARGEFILE])dnl
+ dnl need to set this on the command line, since it might otherwise break
+ dnl with generated code, such as lex
+-if test "$enable_largefile" != no -a "$ac_cv_sys_large_files" != no; then
+- CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=$ac_cv_sys_large_files"
+-fi
+-if test "$enable_largefile" != no -a "$ac_cv_sys_file_offset_bits" != no && test -n "$ac_cv_sys_file_offset_bits"; then
+- CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
++if test "$enable_largefile" != no; then
++ if test -n "$ac_cv_sys_large_files" && test "$ac_cv_sys_large_files" != no; then
++ CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=$ac_cv_sys_large_files"
++ fi
++ if test -n "$ac_cv_sys_file_offset_bits" && test "$ac_cv_sys_file_offset_bits" != no; then
++ CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
++ fi
++ if test -n "$ac_cv_sys_largefile_opts"; then
++ AS_CASE([$ac_cv_sys_largefile_opts],[-D_FILE_OFFSET_BITS=*|-D_LARGE_FILES=*],
++ [CPPFLAGS="$CPPFLAGS $ac_cv_sys_largefile_opts"])
++ fi
+ fi
+ ])
+--
+2.48.1
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/heimdal.git/commitdiff/f306d289700969f654db60b5240dda29034409a5
More information about the pld-cvs-commit
mailing list