update to use Python 3 at build time
This commit is contained in:
parent
429894ab18
commit
31f978891a
171
apr-1.6.3-r1834495.patch
Normal file
171
apr-1.6.3-r1834495.patch
Normal 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
|
||||||
|
|
9
apr.spec
9
apr.spec
@ -6,7 +6,7 @@
|
|||||||
Summary: Apache Portable Runtime library
|
Summary: Apache Portable Runtime library
|
||||||
Name: apr
|
Name: apr
|
||||||
Version: 1.6.3
|
Version: 1.6.3
|
||||||
Release: 7%{?dist}
|
Release: 8%{?dist}
|
||||||
# ASL 2.0: everything
|
# ASL 2.0: everything
|
||||||
# ISC: network_io/apr-1.4.6/network_io/unix/inet_?to?.c
|
# ISC: network_io/apr-1.4.6/network_io/unix/inet_?to?.c
|
||||||
# BSD with advertising: strings/apr_snprintf.c, strings/apr_fnmatch.c,
|
# BSD with advertising: strings/apr_snprintf.c, strings/apr_fnmatch.c,
|
||||||
@ -18,11 +18,12 @@ Group: System Environment/Libraries
|
|||||||
URL: http://apr.apache.org/
|
URL: http://apr.apache.org/
|
||||||
Source0: http://www.apache.org/dist/apr/%{name}-%{version}.tar.bz2
|
Source0: http://www.apache.org/dist/apr/%{name}-%{version}.tar.bz2
|
||||||
Source1: apr-wrapper.h
|
Source1: apr-wrapper.h
|
||||||
|
Patch1: apr-1.6.3-r1834495.patch
|
||||||
Patch2: apr-1.2.2-locktimeout.patch
|
Patch2: apr-1.2.2-locktimeout.patch
|
||||||
Patch3: apr-1.2.2-libdir.patch
|
Patch3: apr-1.2.2-libdir.patch
|
||||||
Patch4: apr-1.2.7-pkgconf.patch
|
Patch4: apr-1.2.7-pkgconf.patch
|
||||||
Patch5: apr-rh1539844.patch
|
Patch5: apr-rh1539844.patch
|
||||||
BuildRequires: gcc, autoconf, libtool, libuuid-devel, python2
|
BuildRequires: gcc, autoconf, libtool, libuuid-devel, python3
|
||||||
# To enable SCTP support
|
# To enable SCTP support
|
||||||
BuildRequires: lksctp-tools-devel
|
BuildRequires: lksctp-tools-devel
|
||||||
|
|
||||||
@ -46,6 +47,7 @@ C data structures and routines.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch1 -p1 -b .r1834495
|
||||||
%patch2 -p1 -b .locktimeout
|
%patch2 -p1 -b .locktimeout
|
||||||
%patch3 -p1 -b .libdir
|
%patch3 -p1 -b .libdir
|
||||||
%patch4 -p1 -b .pkgconf
|
%patch4 -p1 -b .pkgconf
|
||||||
@ -131,6 +133,9 @@ popd
|
|||||||
%{_datadir}/aclocal/*.m4
|
%{_datadir}/aclocal/*.m4
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jun 27 2018 Joe Orton <jorton@redhat.com> - 1.6.3-8
|
||||||
|
- update to use Python 3 at build time
|
||||||
|
|
||||||
* Wed Mar 14 2018 Iryna Shcherbina <ishcherb@redhat.com> - 1.6.3-7
|
* Wed Mar 14 2018 Iryna Shcherbina <ishcherb@redhat.com> - 1.6.3-7
|
||||||
- Update Python 2 dependency declarations to new packaging standards
|
- Update Python 2 dependency declarations to new packaging standards
|
||||||
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
|
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
|
||||||
|
Loading…
Reference in New Issue
Block a user