Compare commits

..

No commits in common. "rawhide" and "f39" have entirely different histories.

5 changed files with 36 additions and 255 deletions

1
.gitignore vendored
View file

@ -19,4 +19,3 @@ apr-1.3.9.tar.bz2
/apr-1.7.2.tar.bz2
/apr-1.7.3.tar.bz2
/apr-1.7.5.tar.bz2
/apr-1.7.6.tar.bz2

21
apr-1.7.2-autoconf.patch Normal file
View file

@ -0,0 +1,21 @@
diff --git a/build/apr_common.m4 b/build/apr_common.m4
index ac2312c..5d232c4 100644
--- a/build/apr_common.m4
+++ b/build/apr_common.m4
@@ -468,15 +468,8 @@ AC_DEFUN([APR_TRY_COMPILE_NO_WARNING],
fi
AC_COMPILE_IFELSE(
[AC_LANG_SOURCE(
- [
-#ifndef PACKAGE_NAME
-#include "confdefs.h"
-#endif
- ]
- [[$1]]
- [int main(int argc, const char *const *argv) {]
+ [[$1]],
[[$2]]
- [ return 0; }]
)], [CFLAGS=$apr_save_CFLAGS
$3], [CFLAGS=$apr_save_CFLAGS
$4])

View file

@ -1,200 +0,0 @@
https://github.com/apache/apr/pull/68
--- apr-1.7.6/build/apr_common.m4.5
+++ apr-1.7.6/build/apr_common.m4
@@ -467,19 +467,11 @@
CFLAGS="$CFLAGS -Werror"
fi
AC_COMPILE_IFELSE(
- [AC_LANG_SOURCE(
- [
-#ifndef PACKAGE_NAME
-#include "confdefs.h"
-#endif
- ]
- [[$1]]
- [int main(int argc, const char *const *argv) {]
- [[$2]]
- [ return 0; }]
- )], [CFLAGS=$apr_save_CFLAGS
-$3], [CFLAGS=$apr_save_CFLAGS
-$4])
+ [AC_LANG_PROGRAM([[$1]], [[$2]])],
+ [CFLAGS=$apr_save_CFLAGS
+ $3],
+ [CFLAGS=$apr_save_CFLAGS
+ $4])
])
dnl
--- apr-1.7.6/build/apr_network.m4.5
+++ apr-1.7.6/build/apr_network.m4
@@ -259,11 +259,12 @@
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
+#include <stdio.h>
],[
int tmp = gethostbyname_r((const char *) 0, (struct hostent *) 0,
(char *) 0, 0, (struct hostent **) 0, &tmp);
/* use tmp to suppress the warning */
-tmp=0;
+puts(tmp ? "non-zero" : "zero");
], ac_cv_gethostbyname_r_style=glibc2, ac_cv_gethostbyname_r_style=none))
if test "$ac_cv_gethostbyname_r_style" = "glibc2"; then
@@ -287,11 +288,12 @@
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
+#include <stdio.h>
],[
int tmp = gethostbyname_r((const char *) 0, (struct hostent *) 0,
(struct hostent_data *) 0);
/* use tmp to suppress the warning */
-tmp=0;
+puts(tmp ? "non-zero" : "zero");
], ac_cv_gethostbyname_r_arg=hostent_data, ac_cv_gethostbyname_r_arg=char))
if test "$ac_cv_gethostbyname_r_arg" = "hostent_data"; then
@@ -327,12 +329,13 @@
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
+#include <stdio.h>
],[
int tmp = getservbyname_r((const char *) 0, (const char *) 0,
(struct servent *) 0, (char *) 0, 0,
(struct servent **) 0);
/* use tmp to suppress the warning */
-tmp=0;
+puts(tmp ? "non-zero" : "zero");
], ac_cv_getservbyname_r_style=glibc2, ac_cv_getservbyname_r_style=none)
if test "$ac_cv_getservbyname_r_style" = "none"; then
@@ -354,11 +357,12 @@
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
+ #include <stdio.h>
],[
struct servent *tmp = getservbyname_r((const char *) 0, (const char *) 0,
(struct servent *) 0, (char *) 0, 0);
/* use tmp to suppress the warning */
- tmp=NULL;
+ puts(tmp ? "non-zero" : "zero");
], ac_cv_getservbyname_r_style=solaris, ac_cv_getservbyname_r_style=none)
fi
@@ -381,11 +385,12 @@
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
+ #include <stdio.h>
],[
int tmp = getservbyname_r((const char *) 0, (const char *) 0,
(struct servent *) 0, (struct servent_data *) 0);
/* use tmp to suppress the warning */
- tmp=0;
+ puts(tmp ? "non-zero" : "zero");
], ac_cv_getservbyname_r_style=osf1, ac_cv_getservbyname_r_style=none)
fi
])
--- apr-1.7.6/build/buildcheck.sh.5
+++ apr-1.7.6/build/buildcheck.sh
@@ -15,11 +15,11 @@
echo "buildconf: python version $py_version (ok)"
fi
-# autoconf 2.59 or newer
+# autoconf 2.61 or newer
ac_version=`${AUTOCONF:-autoconf} --version 2>/dev/null|sed -e 's/^[^0-9]*//;s/[a-z]* *$//;q'`
if test -z "$ac_version"; then
echo "buildconf: autoconf not found."
- echo " You need autoconf version 2.59 or newer installed"
+ echo " You need autoconf version 2.61 or newer installed"
echo " to build APR from SVN."
res=1
else
--- apr-1.7.6/configure.in.5
+++ apr-1.7.6/configure.in
@@ -145,12 +145,14 @@
APR_CROSS_COMPILING=maybe
elif test "x$build_alias" != "x$host_alias"; then
APR_CROSS_COMPILING=yes
+ else
+ APR_CROSS_COMPILING=no
fi
else
APR_CROSS_COMPILING=no
fi
-
AC_SUBST(APR_CROSS_COMPILING)
+AC_MSG_NOTICE([cross-compilation detection: $APR_CROSS_COMPILING])
# Libtool might need this symbol -- it must point to the location of
# the generated libtool script (not necessarily the "top" build dir).
@@ -1876,6 +1878,7 @@
AC_CHECK_TYPE(ssize_t, int)
AC_C_INLINE
AC_C_CONST
+AC_C_VARARRAYS
AC_FUNC_SETPGRP
APR_CHECK_SOCKLEN_T
@@ -1971,6 +1974,8 @@
AC_ERROR([could not detect a 64-bit integer type])
fi
+AC_MSG_NOTICE([for apr_(u)int64_t using $int64_strfn and ${int64_value}/${uint64_value}])
+
# If present, allow the C99 macro INT64_C to override our conversion.
#
# HP-UX's ANSI C compiler provides this without any includes, so we
@@ -2152,7 +2157,6 @@
aprlfs=0
fi
-AC_MSG_CHECKING([which type to use for apr_off_t])
if test "${ac_cv_sizeof_off_t}${apr_cv_use_lfs64}" = "4yes"; then
# LFS is go!
off_t_fmt='#define APR_OFF_T_FMT APR_INT64_T_FMT'
@@ -2203,7 +2207,7 @@
off_t_fmt=d
off_t_strfn='strtoi'
fi
-AC_MSG_RESULT($off_t_value)
+AC_MSG_NOTICE([for apr_off_t using $off_t_strfn and $off_t_value])
# Regardless of whether _LARGEFILE64_SOURCE is used, on some
# platforms _FILE_OFFSET_BITS will affect the size of ino_t and hence
@@ -2234,7 +2238,7 @@
fi
;;
esac
-AC_MSG_NOTICE([using $ino_t_value for ino_t])
+AC_MSG_NOTICE([for apr_ino_t using $ino_t_value])
# Checks for endianness
AC_C_BIGENDIAN
--- apr-1.7.6/poll/unix/poll.c.5
+++ apr-1.7.6/poll/unix/poll.c
@@ -73,7 +73,7 @@
apr_interval_time_t timeout)
{
int i, num_to_poll;
-#ifdef HAVE_VLA
+#ifdef HAVE_C_VARARRAYS
/* XXX: I trust that this is a segv when insufficient stack exists? */
struct pollfd pollset[num + 1]; /* +1 since allocating 0 is undefined behaviour */
#elif defined(HAVE_ALLOCA)
@@ -130,7 +130,7 @@
}
}
-#if !defined(HAVE_VLA) && !defined(HAVE_ALLOCA)
+#if !defined(HAVE_C_VARARRAYS) && !defined(HAVE_ALLOCA)
if (num > SMALL_POLLSET_LIMIT) {
free(pollset);
}

View file

@ -1,7 +1,5 @@
%define aprver 1
%bcond tests 1
# Arches on which the multilib apr.h hack is needed:
%define multilib_arches %{ix86} ia64 ppc ppc64 s390 s390x x86_64
@ -13,8 +11,8 @@
Summary: Apache Portable Runtime library
Name: apr
Version: 1.7.6
Release: 4%{?dist}
Version: 1.7.5
Release: 1%{?dist}
# Apache-2.0: everything
# ISC: network_io/apr-1.4.6/network_io/unix/inet_?to?.c
# BSD-4-Clause-UC: strings/apr_snprintf.c, strings/apr_fnmatch.c,
@ -23,16 +21,17 @@ Release: 4%{?dist}
# Zlib: strings/apr_strnatcmp.c, include/apr_strings.h
# Caldera-no-preamble: strings/apr_snprintf.c
License: Apache-2.0 AND (BSD-4-Clause-UC AND ISC AND Zlib AND Caldera-no-preamble)
URL: https://apr.apache.org/
Source0: https://www.apache.org/dist/apr/%{name}-%{version}.tar.bz2
Source1: apr-wrapper.h
Patch1: apr-1.7.2-libdir.patch
Patch2: apr-1.2.7-pkgconf.patch
Patch3: apr-1.7.0-deepbind.patch
Patch4: apr-1.7.6-autoconf.patch
Patch4: apr-1.7.2-autoconf.patch
BuildRequires: gcc, autoconf, libtool, libuuid-devel, python3
BuildRequires: make
BuildRequires: libxcrypt-devel
%description
The mission of the Apache Portable Runtime (APR) is to provide a
@ -52,7 +51,7 @@ Apache Portable Runtime (APR) is to provide a free library of
C data structures and routines.
%prep
%autosetup -p1 -S gendiff
%autosetup -p1
%build
# regenerate configure script etc.
@ -64,27 +63,6 @@ C data structures and routines.
--with-devrandom=/dev/urandom \
--disable-static \
--disable-sctp
# Sanity tests to catch subtle configure script failures:
#
# 1. Fail if apr_strtoi64() is not using libc strtol/strtoll
strfn=`echo XXX APR_INT64_STRFN | cpp -I./include -I./include/arch/unix -include include/arch/unix/apr_private.h \
| sed -n '/^XXX/{s/XXX //;p;}'`
: APR_INT64_STRFN detected as $strfn
if test "x$strfn" = "x"; then
cat config.log
: configure failed to detect working strtol, bailing.
fi
# 2. Fail if LFS support isn't present in a 32-bit build, since this
# breaks ABI and the soname doesn't change: see #254241
if grep 'define SIZEOF_VOIDP 4' include/apr.h \
&& ! grep off64_t include/apr.h; then
cat config.log
: LFS support not present in 32-bit build
exit 1
fi
%{make_build}
%install
@ -123,14 +101,18 @@ for f in build/gen-build.py build/install.sh build/config.*; do
done
%check
grep ^cross_compiling=no $RPM_BUILD_ROOT%{_bindir}/apr-%{aprver}-config
%if %{with tests}
# Fail if LFS support isn't present in a 32-bit build, since this
# breaks ABI and the soname doesn't change: see #254241
if grep 'define SIZEOF_VOIDP 4' include/apr.h \
&& ! grep off64_t include/apr.h; then
cat config.log
: LFS support not present in 32-bit build
exit 1
fi
pushd test
make %{?_smp_mflags}
./testall -v -q
popd
%endif
%ldconfig_scriptlets
@ -153,27 +135,6 @@ popd
%{_datadir}/aclocal/*.m4
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Thu Aug 07 2025 Joe Orton <jorton@redhat.com> - 1.7.6-3
- fix APR_TRY_COMPILE_NO_WARNING in apr_common.m4
- add tests bcond
- move configure sanity tests into build section
- fix cross-compilation detection (#2386875)
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Wed May 28 2025 Joe Orton <jorton@redhat.com> - 1.7.6-1
- update to 1.7.6 (#2366842)
* Sat Feb 01 2025 Björn Esser <besser82@fedoraproject.org> - 1.7.5-3
- Add explicit BR: libxcrypt-devel
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Wed Aug 28 2024 Joe Orton <jorton@redhat.com> - 1.7.5-1
- update to 1.7.5 (#2307902)

View file

@ -1 +1 @@
SHA512 (apr-1.7.6.tar.bz2) = 629b60680d1244641828019db903a1b199e8a19c8f27a5132b93faacb381ce561f88463345ab019258f1f1e8cfdf8aa986ac815153a8e7e04a22b3932f9fedd2
SHA512 (apr-1.7.5.tar.bz2) = d8a7553642da0c81261ac3992536efd9d43ecb9154934ef1a10ae808d6a3ce8198b40433091d3a6d04f61e67c59426fb5276193a37e810ae4bc74a8a10fb651b