Shouldn't this be backported to 1.6.x?

Am 27.06.2018 um 13:49 schrieb jor...@apache.org:
Author: jorton
Date: Wed Jun 27 11:49:33 2018
New Revision: 1834495

URL: http://svn.apache.org/viewvc?rev=1834495&view=rev
Log:
Merge r1834494 from trunk:

* build/buildcheck.sh, buildconf: Detect and run under Python 3 or 2,
   and respect $PYTHON.

* build/gen-build.py: Fix various Python 3 compatibility issues.


Modified:
     apr/apr/branches/1.7.x/   (props changed)
     apr/apr/branches/1.7.x/build/   (props changed)
     apr/apr/branches/1.7.x/build/buildcheck.sh
     apr/apr/branches/1.7.x/build/gen-build.py
     apr/apr/branches/1.7.x/buildconf

Propchange: apr/apr/branches/1.7.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jun 27 11:49:33 2018
@@ -1,4 +1,4 @@
  /apr/apr/branches/1.4.x:1003369,1101301
-/apr/apr/trunk:733052,739635,741862,741866-741867,741869,741871,745763-745764,746310,747990,748080,748361,748371,748565,748888,748902,748988,749810,760443,767895,775683,782838,783398,783958,784633,784773,788588,789050,793192-793193,794118,794485,795267,799497,800627,809745,809854,810472,811455,813063,821306,829490,831641,832904,835607,888669,892028,892159,892435,892909,896382,896653,899905,901088,902077,902090,908427,910419,910597,917819,917837-917838,923311,923320,925965,929796,930508,931973,932585,951771,960665,960671,979891,983618,989450,990435,1003338,1044440,1044447,1055657,1072165,1078845,1081462,1081495,1083038,1083242,1084662,1086695,1088023,1089031,1089129,1089438,1099348,1103310,1183683,1183685-1183686,1183688,1183693,1183698,1213382,1235047,1236970,1237078,1237507,1240472,1340286,1340288,1340470,1341193,1341196,1343233,1343243,1367050,1368819,1370494,1372018,1372022,1372093,1372849,1376957,1384764,1389077,1400200,1402868,1405985,1406690,1420106,1420109,1425356,1428809,143
  
8940,1438957-1438959,1442903,1449568,1456418,1459994,1460179-1460180,1460241,1460399,1460405,1462738,1462813,1470186,1470348,1475509,1478905,1480067,1481262,1481265,1484271,1487796,1489517,1496407,1502804,1510354,1516261,1523384,1523479,1523484,1523505,1523521,1523604,1523613,1523615,1523844-1523845,1523853,1524014,1524031,1528797,1528809,1529488,1529495,1529515,1529521,1529668,1530786,1530800,1530988,1531554,1531768,1531884,1532022,1533104,1533111,1533979,1535027,1535157,1536744,1538171,1539374,1539389,1539455,1539603,1541054,1541061,1541486,1541655,1541666,1541744,1542601,1542779,1543033,1543056,1548575,1550907,1551650,1551659,1558905,1559382,1559873,1559975,1561040,1561260,1561265,1561321,1561347,1561356,1561361,1561394,1561555,1571894,1575509,1578420,1587045,1587063,1587543,1587545,1588878,1588937,1589982,1593611,1593614-1593615,1593680,1594684,1594708,1595549,1597797,1597803,1604590,1604596,1604598,1605104,1610854,1611023,1611107,1611110,1611117,1611120,1611125,1611184,1611193,
  
1611466,1611515,1611517,1625173,1626564,1634615,1642159,1648830,1664406,1664447,1664451,1664471,1664769-1664770,1664775,1664904,1664911,1664958,1666341,1666411,1666458,1666611,1667420-1667421,1667423,1667900-1667901,1667903,1667914-1667916,1667962,1669077,1671292,1671329,1671356,1671386,1671389,1671513-1671514,1671957,1672354,1672366,1672495,1672575,1675644,1675656,1675668,1676013,1683521,1685929,1696140,1696767,1722547,1722557,1726928,1727020,1727160,1727175,1727199,1728957,1732582,1733451,1733594,1733694,1733706,1733708,1733775,1734816,1736552,1738791,1738925,1750374,1755709,1755740,1755746,1755758,1755954,1761279,1762326,1774712,1774973,1775069,1776994,1776998,1788334,1788337,1788929,1789947,1789998,1790045,1790200,1790296,1790302-1790304,1790330-1790331,1790436,1790439,1790444,1790446,1790488,1790521,1790523,1790569,1790632,1791598,1791718,1791728,1792621-1792622,1792625,1792961,1792963,1797415,1798105,1805380,1808039,1808836,1808910,1809649,1810452,1813286,1813330,1814239-18142
  
40,1814326,1814329,1814331,1816527,1816628,1817485,1819857-1819858,1819860-1819861,1819934-1819935,1820080,1820755,1822357,1827534,1832691
+/apr/apr/trunk:733052,739635,741862,741866-741867,741869,741871,745763-745764,746310,747990,748080,748361,748371,748565,748888,748902,748988,749810,760443,767895,775683,782838,783398,783958,784633,784773,788588,789050,793192-793193,794118,794485,795267,799497,800627,809745,809854,810472,811455,813063,821306,829490,831641,832904,835607,888669,892028,892159,892435,892909,896382,896653,899905,901088,902077,902090,908427,910419,910597,917819,917837-917838,923311,923320,925965,929796,930508,931973,932585,951771,960665,960671,979891,983618,989450,990435,1003338,1044440,1044447,1055657,1072165,1078845,1081462,1081495,1083038,1083242,1084662,1086695,1088023,1089031,1089129,1089438,1099348,1103310,1183683,1183685-1183686,1183688,1183693,1183698,1213382,1235047,1236970,1237078,1237507,1240472,1340286,1340288,1340470,1341193,1341196,1343233,1343243,1367050,1368819,1370494,1372018,1372022,1372093,1372849,1376957,1384764,1389077,1400200,1402868,1405985,1406690,1420106,1420109,1425356,1428809,143
  
8940,1438957-1438959,1442903,1449568,1456418,1459994,1460179-1460180,1460241,1460399,1460405,1462738,1462813,1470186,1470348,1475509,1478905,1480067,1481262,1481265,1484271,1487796,1489517,1496407,1502804,1510354,1516261,1523384,1523479,1523484,1523505,1523521,1523604,1523613,1523615,1523844-1523845,1523853,1524014,1524031,1528797,1528809,1529488,1529495,1529515,1529521,1529668,1530786,1530800,1530988,1531554,1531768,1531884,1532022,1533104,1533111,1533979,1535027,1535157,1536744,1538171,1539374,1539389,1539455,1539603,1541054,1541061,1541486,1541655,1541666,1541744,1542601,1542779,1543033,1543056,1548575,1550907,1551650,1551659,1558905,1559382,1559873,1559975,1561040,1561260,1561265,1561321,1561347,1561356,1561361,1561394,1561555,1571894,1575509,1578420,1587045,1587063,1587543,1587545,1588878,1588937,1589982,1593611,1593614-1593615,1593680,1594684,1594708,1595549,1597797,1597803,1604590,1604596,1604598,1605104,1610854,1611023,1611107,1611110,1611117,1611120,1611125,1611184,1611193,
  
1611466,1611515,1611517,1625173,1626564,1634615,1642159,1648830,1664406,1664447,1664451,1664471,1664769-1664770,1664775,1664904,1664911,1664958,1666341,1666411,1666458,1666611,1667420-1667421,1667423,1667900-1667901,1667903,1667914-1667916,1667962,1669077,1671292,1671329,1671356,1671386,1671389,1671513-1671514,1671957,1672354,1672366,1672495,1672575,1675644,1675656,1675668,1676013,1683521,1685929,1696140,1696767,1722547,1722557,1726928,1727020,1727160,1727175,1727199,1728957,1732582,1733451,1733594,1733694,1733706,1733708,1733775,1734816,1736552,1738791,1738925,1750374,1755709,1755740,1755746,1755758,1755954,1761279,1762326,1774712,1774973,1775069,1776994,1776998,1788334,1788337,1788929,1789947,1789998,1790045,1790200,1790296,1790302-1790304,1790330-1790331,1790436,1790439,1790444,1790446,1790488,1790521,1790523,1790569,1790632,1791598,1791718,1791728,1792621-1792622,1792625,1792961,1792963,1797415,1798105,1805380,1808039,1808836,1808910,1809649,1810452,1813286,1813330,1814239-18142
  
40,1814326,1814329,1814331,1816527,1816628,1817485,1819857-1819858,1819860-1819861,1819934-1819935,1820080,1820755,1822357,1827534,1832691,1834494
  /apr/apr/trunk/test/testnames.c:1460405
  /httpd/httpd/trunk:1604590

Propchange: apr/apr/branches/1.7.x/build/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jun 27 11:49:33 2018
@@ -1,4 +1,4 @@
  /apr/apr/branches/1.4.x/build:1003369,1101301
-/apr/apr/trunk/build:733052,739635,741862,741866-741867,741869,741871,745763-745764,746310,747990,748080,748361,748371,748565,748888,748902,748988,749810,760443,767895,775683,782838,783398,783958,784633,784773,788588,789050,793192-793193,794118,794485,795267,799497,800627,809745,809854,810472,811455,813063,821306,829490,831641,832904,835607,888669,892028,892159,892435,892909,896382,896653,899905,901088,902077,902090,908427,910419,910597,917819,917837-917838,923311,923320,925965,929796,930508,931973,932585,951771,960665,960671,979891,983618,989450,990435,1003338,1044440,1044447,1055657,1072165,1078845,1081462,1081495,1083038,1083242,1084662,1086695,1088023,1089031,1089129,1089438,1099348,1103310,1183683,1183685-1183686,1183688,1183693,1183698,1213382,1235047,1236970,1237078,1237507,1240472,1340286,1340288,1340470,1341193,1341196,1343233,1343243,1367050,1368819,1370494,1372018,1372022,1372093,1372849,1376957,1384764,1389077,1400200,1402868,1405985,1406690,1420106,1420109,1425356,14288
  
09,1438940,1438957-1438959,1442903,1449568,1456418,1459994,1460179-1460180,1460241,1460399,1460405,1462738,1462813,1470186,1470348,1475509,1478905,1480067,1481262,1481265,1484271,1487796,1489517,1496407,1502804,1510354,1516261,1523384,1523479,1523484,1523505,1523521,1523604,1523613,1523615,1523844-1523845,1523853,1524014,1524031,1528797,1528809,1529488,1529495,1529515,1529521,1529668,1530786,1530800,1530988,1531554,1531768,1531884,1532022,1533104,1533111,1533979,1535027,1535157,1536744,1538171,1539374,1539389,1539455,1539603,1541054,1541061,1541486,1541655,1541666,1541744,1542601,1542779,1543033,1543056,1548575,1550907,1551650,1551659,1558905,1559382,1559873,1559975,1561040,1561260,1561265,1561321,1561347,1561356,1561361,1561394,1561555,1571894,1575509,1578420,1587045,1587063,1587543,1587545,1588878,1588937,1589982,1593611,1593614-1593615,1593680,1594684,1594708,1595549,1597797,1597803,1604590,1604596,1604598,1605104,1610854,1611023,1611107,1611110,1611117,1611120,1611125,1611184,16
  
11193,1611466,1611515,1611517,1625173,1626564,1634615,1642159,1648830,1664406,1664447,1664451,1664471,1664769-1664770,1664775,1664904,1664911,1664958,1666341,1666411,1666458,1666611,1667420-1667421,1667423,1667900-1667901,1667903,1667914-1667916,1667962,1669077,1671292,1671329,1671356,1671386,1671389,1671513-1671514,1671957,1672354,1672366,1672495,1672575,1675644,1675656,1675668,1676013,1683521,1685929,1696140,1696767,1722547,1722557,1726928,1727020,1727160,1727175,1727199,1728957,1732582,1733451,1733594,1733694,1733706,1733708,1733775,1734816,1736552,1738791,1738925,1750374,1755709,1755740,1755746,1755758,1755954,1761279,1762326,1774712,1774973,1775069,1776994,1776998,1788334,1788337,1788929,1789947,1789998,1790045,1790200,1790296,1790302-1790304,1790330-1790331,1790436,1790439,1790444,1790446,1790488,1790521,1790523,1790569,1790632,1791598,1791718,1791728,1792621-1792622,1792625,1792961,1792963,1797415,1798105,1805380,1808039,1808836,1808910,1809649,1810452,1813286,1813330,1816527
  
,1816628,1817485,1819857-1819858,1819860-1819861,1819934-1819935,1820080,1820186
+/apr/apr/trunk/build:733052,739635,741862,741866-741867,741869,741871,745763-745764,746310,747990,748080,748361,748371,748565,748888,748902,748988,749810,760443,767895,775683,782838,783398,783958,784633,784773,788588,789050,793192-793193,794118,794485,795267,799497,800627,809745,809854,810472,811455,813063,821306,829490,831641,832904,835607,888669,892028,892159,892435,892909,896382,896653,899905,901088,902077,902090,908427,910419,910597,917819,917837-917838,923311,923320,925965,929796,930508,931973,932585,951771,960665,960671,979891,983618,989450,990435,1003338,1044440,1044447,1055657,1072165,1078845,1081462,1081495,1083038,1083242,1084662,1086695,1088023,1089031,1089129,1089438,1099348,1103310,1183683,1183685-1183686,1183688,1183693,1183698,1213382,1235047,1236970,1237078,1237507,1240472,1340286,1340288,1340470,1341193,1341196,1343233,1343243,1367050,1368819,1370494,1372018,1372022,1372093,1372849,1376957,1384764,1389077,1400200,1402868,1405985,1406690,1420106,1420109,1425356,14288
  
09,1438940,1438957-1438959,1442903,1449568,1456418,1459994,1460179-1460180,1460241,1460399,1460405,1462738,1462813,1470186,1470348,1475509,1478905,1480067,1481262,1481265,1484271,1487796,1489517,1496407,1502804,1510354,1516261,1523384,1523479,1523484,1523505,1523521,1523604,1523613,1523615,1523844-1523845,1523853,1524014,1524031,1528797,1528809,1529488,1529495,1529515,1529521,1529668,1530786,1530800,1530988,1531554,1531768,1531884,1532022,1533104,1533111,1533979,1535027,1535157,1536744,1538171,1539374,1539389,1539455,1539603,1541054,1541061,1541486,1541655,1541666,1541744,1542601,1542779,1543033,1543056,1548575,1550907,1551650,1551659,1558905,1559382,1559873,1559975,1561040,1561260,1561265,1561321,1561347,1561356,1561361,1561394,1561555,1571894,1575509,1578420,1587045,1587063,1587543,1587545,1588878,1588937,1589982,1593611,1593614-1593615,1593680,1594684,1594708,1595549,1597797,1597803,1604590,1604596,1604598,1605104,1610854,1611023,1611107,1611110,1611117,1611120,1611125,1611184,16
  
11193,1611466,1611515,1611517,1625173,1626564,1634615,1642159,1648830,1664406,1664447,1664451,1664471,1664769-1664770,1664775,1664904,1664911,1664958,1666341,1666411,1666458,1666611,1667420-1667421,1667423,1667900-1667901,1667903,1667914-1667916,1667962,1669077,1671292,1671329,1671356,1671386,1671389,1671513-1671514,1671957,1672354,1672366,1672495,1672575,1675644,1675656,1675668,1676013,1683521,1685929,1696140,1696767,1722547,1722557,1726928,1727020,1727160,1727175,1727199,1728957,1732582,1733451,1733594,1733694,1733706,1733708,1733775,1734816,1736552,1738791,1738925,1750374,1755709,1755740,1755746,1755758,1755954,1761279,1762326,1774712,1774973,1775069,1776994,1776998,1788334,1788337,1788929,1789947,1789998,1790045,1790200,1790296,1790302-1790304,1790330-1790331,1790436,1790439,1790444,1790446,1790488,1790521,1790523,1790569,1790632,1791598,1791718,1791728,1792621-1792622,1792625,1792961,1792963,1797415,1798105,1805380,1808039,1808836,1808910,1809649,1810452,1813286,1813330,1816527
  
,1816628,1817485,1819857-1819858,1819860-1819861,1819934-1819935,1820080,1820186,1834494
  /apr/apr/trunk/test/testnames.c/build:1460405
  /httpd/httpd/trunk/build:1604590

Modified: apr/apr/branches/1.7.x/build/buildcheck.sh
URL: 
http://svn.apache.org/viewvc/apr/apr/branches/1.7.x/build/buildcheck.sh?rev=1834495&r1=1834494&r2=1834495&view=diff
==============================================================================
--- apr/apr/branches/1.7.x/build/buildcheck.sh (original)
+++ apr/apr/branches/1.7.x/build/buildcheck.sh Wed Jun 27 11:49:33 2018
@@ -4,14 +4,14 @@ echo "buildconf: checking installation..
  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"
    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
Modified: apr/apr/branches/1.7.x/build/gen-build.py
URL: 
http://svn.apache.org/viewvc/apr/apr/branches/1.7.x/build/gen-build.py?rev=1834495&r1=1834494&r2=1834495&view=diff
==============================================================================
--- apr/apr/branches/1.7.x/build/gen-build.py (original)
+++ apr/apr/branches/1.7.x/build/gen-build.py Wed Jun 27 11:49:33 2018
@@ -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 @@ MAKE_PLATFORMS = [
def main():
-  parser = ConfigParser.ConfigParser()
+  parser = configparser.ConfigParser()
    parser.read('build.conf')
if parser.has_option('options', 'dsp'):
@@ -62,7 +65,7 @@ def main():
    # 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 @@ def main():
            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 @@ def main():
        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 @@ def main():
        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 @@ def main():
      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 @@ def main():
        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 @@ def write_objects(f, legal_deps, h_deps,
# 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 @@ def resolve_deps(header_deps):
      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 clean_path(path):
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

Modified: apr/apr/branches/1.7.x/buildconf
URL: 
http://svn.apache.org/viewvc/apr/apr/branches/1.7.x/buildconf?rev=1834495&r1=1834494&r2=1834495&view=diff
==============================================================================
--- apr/apr/branches/1.7.x/buildconf (original)
+++ apr/apr/branches/1.7.x/buildconf Wed Jun 27 11:49:33 2018
@@ -112,8 +112,10 @@ ${AUTOCONF:-autoconf} $verbose
  # 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

Reply via email to