Compare commits

..

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

9 changed files with 233 additions and 521 deletions

6
.gitignore vendored
View file

@ -14,9 +14,3 @@ apr-1.3.9.tar.bz2
/apr-1.6.2.tar.bz2
/apr-1.6.3.tar.bz2
/apr-1.6.5.tar.bz2
/apr-1.7.0.tar.bz2
/apr-1.7.1.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

View file

@ -1,8 +1,9 @@
diff --git a/apr-config.in b/apr-config.in
index bed47ca..d4bf4d8 100644
--- a/apr-config.in
+++ b/apr-config.in
@@ -198,8 +198,10 @@ while test $# -gt 0; do
- avoid adding %{_libdir} to --link-ld output
--- apr-1.2.2/apr-config.in.libdir
+++ apr-1.2.2/apr-config.in
@@ -181,8 +181,10 @@
;;
--link-ld)
if test "$location" = "installed"; then
@ -12,6 +13,6 @@ index bed47ca..d4bf4d8 100644
+ flags="$flags -L$libdir"
+ fi
+ flags="$flags -l${APR_LIBNAME}"
elif test "$location" = "crosscompile"; then
flags="$flags -L$APR_TARGET_DIR/$libdir -l${APR_LIBNAME}"
else
### this surely can't work since the library is in .libs?
flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}"

View file

@ -0,0 +1,11 @@
--- apr-1.2.2/test/testlock.c.locktimeout
+++ apr-1.2.2/test/testlock.c
@@ -295,7 +295,7 @@
continue;
}
ABTS_INT_EQUAL(tc, 1, APR_STATUS_IS_TIMEUP(s));
- ABTS_ASSERT(tc, "Timer returned too late", end - begin - timeout < 100000);
+ ABTS_ASSERT(tc, "Timer returned too late", end - begin - timeout < 500000);
break;
}
ABTS_ASSERT(tc, "Too many retries", i < MAX_RETRY);

171
apr-1.6.3-r1834495.patch Normal file
View file

@ -0,0 +1,171 @@
# ./pullrev.sh 1834495
http://svn.apache.org/viewvc?view=revision&revision=1834495
--- apr-1.6.3/buildconf
+++ apr-1.6.3/buildconf
@@ -112,8 +112,10 @@
# Remove autoconf 2.5x's cache directory
rm -rf autom4te*.cache
+PYTHON=${PYTHON-`build/PrintPath python3 python2 python`}
+
echo "buildconf: generating 'make' outputs ..."
-build/gen-build.py $verbose make
+${PYTHON} build/gen-build.py $verbose make
# Create RPM Spec file
if [ -f `which cut` ]; then
--- apr-1.6.3/build/gen-build.py
+++ apr-1.6.3/build/gen-build.py
@@ -10,7 +10,10 @@
import os
-import ConfigParser
+try:
+ import configparser
+except ImportError:
+ import ConfigParser as configparser
import getopt
import string
import glob
@@ -36,7 +39,7 @@
def main():
- parser = ConfigParser.ConfigParser()
+ parser = configparser.ConfigParser()
parser.read('build.conf')
if parser.has_option('options', 'dsp'):
@@ -62,7 +65,7 @@
# write out the platform-independent files
files = get_files(parser.get('options', 'paths'))
objects, dirs = write_objects(f, legal_deps, h_deps, files)
- f.write('\nOBJECTS_all = %s\n\n' % string.join(objects))
+ f.write('\nOBJECTS_all = %s\n\n' % " ".join(objects))
# for each platform and each subdirectory holding platform-specific files,
# write out their compilation rules, and an OBJECT_<subdir>_<plat> symbol.
@@ -86,11 +89,11 @@
inherit_files[-1] = inherit_files[-1][:-2] + '.lo'
# replace the \\'s with /'s
inherit_line = '/'.join(inherit_files)
- if not inherit_parent.has_key(inherit_files[0]):
+ if inherit_files[0] not in inherit_parent:
inherit_parent[inherit_files[0]] = []
inherit_parent[inherit_files[0]].append(inherit_line)
- for subdir in string.split(parser.get('options', 'platform_dirs')):
+ for subdir in parser.get('options', 'platform_dirs').split():
path = '%s/%s' % (subdir, platform)
if not os.path.exists(path):
# this subdir doesn't have a subdir for this platform, so we'll
@@ -106,7 +109,7 @@
files = get_files(path + '/*.c')
objects, _unused = write_objects(f, legal_deps, h_deps, files)
- if inherit_parent.has_key(subdir):
+ if subdir in inherit_parent:
objects = objects + inherit_parent[subdir]
symname = 'OBJECTS_%s_%s' % (subdir, platform)
@@ -114,7 +117,7 @@
objects.sort()
# and write the symbol for the whole group
- f.write('\n%s = %s\n\n' % (symname, string.join(objects)))
+ f.write('\n%s = %s\n\n' % (symname, " ".join(objects)))
# and include that symbol in the group
group.append('$(%s)' % symname)
@@ -122,18 +125,18 @@
group.sort()
# write out a symbol which contains the necessary files
- f.write('OBJECTS_%s = %s\n\n' % (platform, string.join(group)))
+ f.write('OBJECTS_%s = %s\n\n' % (platform, " ".join(group)))
- f.write('HEADERS = $(top_srcdir)/%s\n\n' % string.join(headers, ' $(top_srcdir)/'))
- f.write('SOURCE_DIRS = %s $(EXTRA_SOURCE_DIRS)\n\n' % string.join(dirs.keys()))
+ f.write('HEADERS = $(top_srcdir)/%s\n\n' % ' $(top_srcdir)/'.join(headers))
+ f.write('SOURCE_DIRS = %s $(EXTRA_SOURCE_DIRS)\n\n' % " ".join(dirs.keys()))
if parser.has_option('options', 'modules'):
modules = parser.get('options', 'modules')
- for mod in string.split(modules):
+ for mod in modules.split():
files = get_files(parser.get(mod, 'paths'))
objects, _unused = write_objects(f, legal_deps, h_deps, files)
- flat_objects = string.join(objects)
+ flat_objects = " ".join(objects)
f.write('OBJECTS_%s = %s\n' % (mod, flat_objects))
if parser.has_option(mod, 'target'):
@@ -153,9 +156,9 @@
d = os.path.dirname(d)
# Sort so 'foo' is before 'foo/bar'
- keys = alldirs.keys()
+ keys = list(alldirs.keys())
keys.sort()
- f.write('BUILD_DIRS = %s\n\n' % string.join(keys))
+ f.write('BUILD_DIRS = %s\n\n' % " ".join(keys))
f.write('.make.dirs: $(srcdir)/build-outputs.mk\n' \
'\t@for d in $(BUILD_DIRS); do test -d $$d || mkdir $$d; done\n' \
@@ -177,12 +180,12 @@
# what headers does this file include, along with the implied headers
deps = extract_deps(file, legal_deps)
- for hdr in deps.keys():
+ for hdr in list(deps.keys()):
deps.update(h_deps.get(hdr, {}))
- vals = deps.values()
+ vals = list(deps.values())
vals.sort()
- f.write('%s: %s .make.dirs %s\n' % (obj, file, string.join(vals)))
+ f.write('%s: %s .make.dirs %s\n' % (obj, file, " ".join(vals)))
objects.sort()
@@ -210,7 +213,7 @@
for hdr, deps in header_deps.items():
# print hdr, deps
start = len(deps)
- for dep in deps.keys():
+ for dep in list(deps.keys()):
deps.update(header_deps.get(dep, {}))
if len(deps) != start:
altered = 1
@@ -220,7 +223,7 @@
def get_files(patterns):
files = [ ]
- for pat in string.split(patterns):
+ for pat in patterns.split():
files.extend(map(clean_path, glob.glob(pat)))
files.sort()
return files
--- apr-1.6.3/build/buildcheck.sh
+++ apr-1.6.3/build/buildcheck.sh
@@ -4,7 +4,7 @@
res=0
# any python
-python=`build/PrintPath python`
+python=${PYTHON-`build/PrintPath python3 python2 python`}
if test -z "$python"; then
echo "buildconf: python not found."
echo " You need python installed"
@@ -11,7 +11,7 @@
echo " to build APR from SVN."
res=1
else
- py_version=`python -c 'import sys; print sys.version' 2>&1|sed 's/ .*//;q'`
+ py_version=`$python -c 'import sys; print(sys.version)' 2>&1|sed 's/ .*//;q'`
echo "buildconf: python version $py_version (ok)"
fi

View file

@ -1,60 +0,0 @@
Add $APR_DEEPBIND to enable use of RTLD_DEEPBIND in apr_dso_open().
--- apr-1.7.0/dso/unix/dso.c.deepbind
+++ apr-1.7.0/dso/unix/dso.c
@@ -38,6 +38,8 @@
#define DYLD_LIBRARY_HANDLE (void *)-1
#endif
+static int use_deepbind; /* 0 = unset, 1 = use DEEPBIND, -1, don't use DEEPBIND */
+
APR_DECLARE(apr_status_t) apr_os_dso_handle_put(apr_dso_handle_t **aprdso,
apr_os_dso_handle_t osdso,
apr_pool_t *pool)
@@ -125,6 +127,12 @@
#else
int flags = RTLD_NOW | RTLD_GLOBAL;
void *os_handle;
+
+ if (use_deepbind == 0)
+ use_deepbind = secure_getenv("APR_DEEPBIND") != NULL ? 1 : -1;
+ if (use_deepbind == 1)
+ flags |= RTLD_DEEPBIND;
+
#ifdef _AIX
if (strchr(path + 1, '(') && path[strlen(path) - 1] == ')')
{
--- apr-1.7.0/README.deepbind.deepbind
+++ apr-1.7.0/README.deepbind
@@ -0,0 +1,30 @@
+This distribution of APR contains a modification of the behaviour of
+the apr_dso_open() function which allows users enable the
+"RTLD_DEEPBIND" flag when dlopen() is called.
+
+If the "APR_DEEPBIND" environment variable is set at runtime, the
+RTLD_DEEPBIND flag is always added to the flags passed to dlopen().
+
+With normal use of dlopen(), dynamically loaded objects will use
+global symbols in preference to any symbols defined within the object.
+Using RTLD_DEEPBIND reverses this binding order. See the dlopen(3)
+man page for more information.
+
+This can be useful with Apache httpd, where two different modules are
+loaded like:
+
+1. mod_foo.so uses library "libfoo.so"
+ libfoo.so defines a function "SomeSym"
+2. mod_bar.so uses library "libbar.so"
+ libbar.so defines a different "SomeSym" function
+
+By default, mod_bar or mod_foo would use the "SomeSym" definition from
+the "wrong" library depending on the load order. If RTLD_DEEPBIND is
+used, the "SomeSym" definition will always be mapped to the definition
+from the corresponding dependent library. This can avoid symbol
+conflicts.
+
+There are some risks with using RTLD_DEEPBIND, in particular potential
+issues with modules written in C++. It is not recommended to enable
+$APR_DEEPBIND unless it solves a specific problem and after thorough
+testing of the configuration.

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);
}

236
apr.spec
View file

@ -1,38 +1,30 @@
%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
# Similar issue to https://bugzilla.redhat.com/show_bug.cgi?id=2043092
%undefine _package_note_flags
# Disable .la file removal since the .la file is exported via apr-config.
%global __brp_remove_la_files %nil
Summary: Apache Portable Runtime library
Name: apr
Version: 1.7.6
Release: 4%{?dist}
# Apache-2.0: everything
Version: 1.6.5
Release: 1%{?dist}
# ASL 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,
# BSD with advertising: strings/apr_snprintf.c, strings/apr_fnmatch.c,
# include/apr_fnmatch.h, misc/unix/getopt.c,
# file_io/unix/mktemp.c, strings/apr_strings.c
# 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
# BSD (3-clause): strings/apr_strnatcmp.c, include/apr_strings.h
License: ASL 2.0 and BSD with advertising and ISC and BSD
Group: System Environment/Libraries
URL: http://apr.apache.org/
Source0: http://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
Patch1: apr-1.6.3-r1834495.patch
Patch2: apr-1.2.2-locktimeout.patch
Patch3: apr-1.2.2-libdir.patch
Patch4: apr-1.2.7-pkgconf.patch
BuildRequires: gcc, autoconf, libtool, libuuid-devel, python3
BuildRequires: make
BuildRequires: libxcrypt-devel
# To enable SCTP support
BuildRequires: lksctp-tools-devel
%description
The mission of the Apache Portable Runtime (APR) is to provide a
@ -41,6 +33,7 @@ portability layer to as many operating systems as possible,
including Unices, MS Win32, BeOS and OS/2.
%package devel
Group: Development/Libraries
Summary: APR library development kit
Conflicts: subversion-devel < 0.20.1-2
Requires: apr = %{version}-%{release}, pkgconfig
@ -52,49 +45,32 @@ Apache Portable Runtime (APR) is to provide a free library of
C data structures and routines.
%prep
%autosetup -p1 -S gendiff
%setup -q
%patch1 -p1 -b .r1834495
%patch2 -p1 -b .locktimeout
%patch3 -p1 -b .libdir
%patch4 -p1 -b .pkgconf
%build
# regenerate configure script etc.
./buildconf
# Forcibly prevent detection of shm_open (which then picks up but
# does not use -lrt).
export ac_cv_search_shm_open=no
%configure \
--includedir=%{_includedir}/apr-%{aprver} \
--with-installbuilddir=%{_libdir}/apr-%{aprver}/build \
--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}
--with-devrandom=/dev/urandom
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
%{make_install}
make install DESTDIR=$RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/%{_datadir}/aclocal
for f in find_apr.m4 apr_common.m4; do
install -p -m 644 build/$f $RPM_BUILD_ROOT/%{_datadir}/aclocal
done
install -m 644 build/find_apr.m4 $RPM_BUILD_ROOT/%{_datadir}/aclocal
# Trim exported dependecies
sed -ri '/^dependency_libs/{s,-l(uuid|crypt) ,,g}' \
@ -116,33 +92,33 @@ install -c -m644 %{SOURCE1} $RPM_BUILD_ROOT%{_includedir}/apr-%{aprver}/apr.h
rm -f $RPM_BUILD_ROOT%{_libdir}/apr.exp \
$RPM_BUILD_ROOT%{_libdir}/libapr-*.a
# Additionally packaged (see https://bugzilla.redhat.com/1669589) --
sed -i '1s,/.*,/usr/bin/python3,' build/gen-build.py
for f in build/gen-build.py build/install.sh build/config.*; do
install -c -m755 $f $RPM_BUILD_ROOT%{_libdir}/apr-%{aprver}/build
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
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc CHANGES LICENSE NOTICE README*
%doc CHANGES LICENSE NOTICE
%{_libdir}/libapr-%{aprver}.so.*
%files devel
%doc docs/APRDesign.html docs/canonical_filenames.html
%doc docs/incomplete_types docs/non_apr_programs
%{_bindir}/apr-%{aprver}-config
%{_libdir}/libapr-%{aprver}.la
%{_libdir}/libapr-%{aprver}.*a
%{_libdir}/libapr-%{aprver}.so
%{_libdir}/pkgconfig/*.pc
%dir %{_libdir}/apr-%{aprver}
@ -153,134 +129,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)
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Thu Feb 8 2024 Joe Orton <jorton@redhat.com> - 1.7.3-8
- use autosetup
- always disable SCTP support at build time
* Mon Jan 29 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Oct 24 2023 Luboš Uhliarik <luhliari@redhat.com> - 1.7.3-4
- rebuilt
* Fri Sep 29 2023 Luboš Uhliarik <luhliari@redhat.com> - 1.7.3-3
- SPDX migration
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Apr 11 2023 Luboš Uhliarik <luhliari@redhat.com> - 1.7.3-1
- new version 1.7.3
* Fri Feb 10 2023 Luboš Uhliarik <luhliari@redhat.com> - 1.7.2-2
- enable apr_atomic test again
* Thu Feb 02 2023 Luboš Uhliarik <luhliari@redhat.com> - 1.7.2-1
- new version 1.7.2
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Jan 16 2023 Florian Weimer <fweimer@redhat.com> - 1.7.0-20
- Port configure script to C99
* Mon Dec 19 2022 Joe Orton <jorton@redhat.com> - 1.7.0-19
- rebuild
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri May 13 2022 Joe Orton <jorton@redhat.com> - 1.7.0-17
- ship apr_common.m4 in -devel as well
- disable .la file removal
* Fri Jan 28 2022 Joe Orton <jorton@redhat.com> - 1.7.0-16
- disable package notes
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Aug 24 2021 Luboš Uhliarik <luhliari@redhat.com> - 1.7.0-14
- Resolves: #1996685 - add various Coverity/Clang cleanups
* Wed Aug 04 2021 Luboš Uhliarik <luhliari@redhat.com> - 1.7.0-13
- disable sctp protocol support by default
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 18 2021 Joe Orton <jorton@redhat.com> - 1.7.0-11
- package additional build/* files in apr-devel (#1945078)
* Fri Jun 18 2021 Joe Orton <jorton@redhat.com> - 1.7.0-10
- document APR_DEEPBIND and use secure_getenv() (thanks to mturk)
* Mon Apr 12 2021 Lubos Uhliarik <luhliari@redhat.com> - 1.7.0-9
- Resolves: #1942985 - apr: FTBFS with upcoming autoconf-2.71
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Fri Nov 6 2020 Joe Orton <jorton@redhat.com> - 1.7.0-7
- disable static build in libtool
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jun 16 2020 Joe Orton <jorton@redhat.com> - 1.7.0-5
- only enable RTLD_DEEPBIND if $APR_DEEPBIND is set
* Wed Mar 4 2020 Joe Orton <jorton@redhat.com> - 1.7.0-4
- re-enable RTLD_DEEPBIND (#1739287)
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Tue Apr 16 2019 Lubos Uhliarik <luhliari@redhat.com> - 1.7.0-1
- update to 1.7.0 (#1696401)
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jan 14 2019 Björn Esser <besser82@fedoraproject.org> - 1.6.5-2
- Rebuilt for libcrypt.so.2 (#1666033)
* Mon Sep 17 2018 Joe Orton <jorton@redhat.com> - 1.6.5-1
- update to 1.6.5 (#1628934)

View file

@ -1,53 +0,0 @@
#!/bin/sh -e
if [ $# -lt 1 ]; then
echo "What?"
exit 1
fi
repo="https://svn.apache.org/repos/asf/apr/apr/trunk"
#repo="https://svn.apache.org/repos/asf/apr/apr/branches/1.7.x"
ver=1.7.3
prefix="apr-${ver}"
suffix="r$1${2:++}"
fn="${prefix}-${suffix}.patch"
vcurl="http://svn.apache.org/viewvc?view=revision&revision="
if test -f ${fn}; then
mv -v -f ${fn} ${fn}\~
echo "# $0 $*" > ${fn}
sed '1{/#.*pullrev/d;};/^--- /,$d' < ${fn}\~ >> ${fn}
else
echo "# $0 $*" > ${fn}
fi
new=0
for r in $*; do
if ! grep -q "${vcurl}${r}" ${fn}; then
echo "${vcurl}${r}"
new=1
fi
done >> ${fn}
[ $new -eq 0 ] || echo >> ${fn}
prev=/dev/null
for r in $*; do
echo "+ fetching ${r}"
this=`mktemp /tmp/pullrevXXXXXX`
svn diff -c ${r} ${repo} | filterdiff --remove-timestamps --clean -x 'CHANGES' -x 'next-number' -x 'STATUS' \
--addprefix="${prefix}/" > ${this}
next=`mktemp /tmp/pullrevXXXXXX`
combinediff --quiet ${prev} ${this} > ${next}
rm -f "${this}"
[ "${prev}" = "/dev/null" ] || rm -f "${prev}"
prev=${next}
done
cat ${prev} >> ${fn}
vi "${fn}"
echo "+ git add ${fn}"
git add "${fn}"
echo "+ spec template:"
echo "PatchN: ${fn}"

View file

@ -1 +1 @@
SHA512 (apr-1.7.6.tar.bz2) = 629b60680d1244641828019db903a1b199e8a19c8f27a5132b93faacb381ce561f88463345ab019258f1f1e8cfdf8aa986ac815153a8e7e04a22b3932f9fedd2
SHA512 (apr-1.6.5.tar.bz2) = d3511e320457b5531f565813e626e7941f6b82864852db6aa03dd298a65dbccdcdc4bd580f5314f8be45d268388edab25efe88cf8340b7d2897a4dbe9d0a41fc