Blob Blame History Raw
diff -up xmms2-0.8DrO_o/src/clients/et/wscript.fixme xmms2-0.8DrO_o/src/clients/et/wscript
--- xmms2-0.8DrO_o/src/clients/et/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/et/wscript	2020-02-28 09:49:55.142637980 -0500
@@ -23,9 +23,9 @@ def build(bld):
 
 
 def configure(conf):
-    if Options.platform == "win32":
+    if Utils.unversioned_sys_platform == "win32":
         conf.fatal("Not supported on Windows")
-    elif Options.platform == "sunos":
+    elif Utils.unversioned_sys_platform == "sunos":
         conf.check_cc(lib="resolv", uselib_store="resolv", mandatory=True)
     return True
 
diff -up xmms2-0.8DrO_o/src/clients/launcher/wscript.fixme xmms2-0.8DrO_o/src/clients/launcher/wscript
--- xmms2-0.8DrO_o/src/clients/launcher/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/launcher/wscript	2020-02-28 09:49:55.142637980 -0500
@@ -1,4 +1,4 @@
-import Options
+from waflib import Utils
 
 def build(bld):
     bld(features = 'c cprogram',
@@ -14,7 +14,7 @@ def build(bld):
         )
 
 def configure(conf):
-    if Options.platform == 'win32':
+    if Utils.unversioned_sys_platform == 'win32':
         conf.fatal("Not supported on Windows")
 
 def options(opt):
diff -up xmms2-0.8DrO_o/src/clients/lib/perl/wscript.fixme xmms2-0.8DrO_o/src/clients/lib/perl/wscript
--- xmms2-0.8DrO_o/src/clients/lib/perl/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/lib/perl/wscript	2020-02-28 09:49:55.143637956 -0500
@@ -37,11 +37,11 @@ def build(bld):
 
 
 def configure(conf):
-    conf.check_tool('perl')
+    conf.load('perl')
     conf.check_perl_version((5,7,3))
     conf.check_perl_ext_devel()
     conf.load('podselect', tooldir='waftools')
-    conf.check_tool('podselect')
+    conf.load('podselect')
 
     if not os.path.commonprefix([conf.env.ARCHDIR_PERL, conf.env.PREFIX]).startswith(conf.env.PREFIX):
         Logs.warn("Default perl libdir is not under PREFIX. specify the path "
@@ -54,4 +54,4 @@ def configure(conf):
 
 
 def options(opt):
-    opt.tool_options('perl')
+    opt.load('perl')
diff -up xmms2-0.8DrO_o/src/clients/lib/python/wscript.fixme xmms2-0.8DrO_o/src/clients/lib/python/wscript
--- xmms2-0.8DrO_o/src/clients/lib/python/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/lib/python/wscript	2020-02-28 09:49:55.143637956 -0500
@@ -79,7 +79,7 @@ def build(bld):
     # TODO: Distribute .pxd files
 
 def configure(conf):
-    conf.check_tool('python')
+    conf.load('python')
     if not conf.env.PYTHON:
         conf.fatal("python not found")
 
@@ -112,7 +112,7 @@ def configure(conf):
                   "files, you should consider reconfiguring with --no-cython")
 
 def options(opt):
-    opt.tool_options('cython', tooldir = os.path.abspath('waftools'))
+    opt.load('cython', tooldir = os.path.abspath('waftools'))
     opt.add_option('--no-cython', action="store_true",
             dest="no_cython", default=False,
             help="Use precompiled cython files even if cython is installed on "
diff -up xmms2-0.8DrO_o/src/clients/lib/ruby/wscript.fixme xmms2-0.8DrO_o/src/clients/lib/ruby/wscript
--- xmms2-0.8DrO_o/src/clients/lib/ruby/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/lib/ruby/wscript	2020-02-28 09:49:55.143637956 -0500
@@ -48,11 +48,11 @@ def build(bld):
             )
 
 def configure(conf):
-    conf.check_tool("ruby")
+    conf.load("ruby")
     conf.check_ruby_version((1,8,0))
     conf.check_ruby_ext_devel()
 
-    conf.check_cc(function_name="rb_protect_inspect", header_name="ruby.h",
+    conf.check_cc(header_name="ruby.h",
             uselib="RUBYEXT", mandatory=False)
 
     prefix = os.path.commonprefix([conf.env.ARCHDIR_RUBY, conf.env.PREFIX])
@@ -70,4 +70,4 @@ def configure(conf):
     return True
 
 def options(opt):
-    opt.tool_options('ruby', tdir=os.path.abspath('waftools'))
+    opt.load('ruby', tdir=os.path.abspath('waftools'))
diff -up xmms2-0.8DrO_o/src/clients/lib/xmmsclient++/wscript.fixme xmms2-0.8DrO_o/src/clients/lib/xmmsclient++/wscript
--- xmms2-0.8DrO_o/src/clients/lib/xmmsclient++/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/lib/xmmsclient++/wscript	2020-02-28 09:49:55.143637956 -0500
@@ -40,4 +40,4 @@ def configure(conf):
     return True
 
 def options(opt):
-    opt.tool_options('boost')
+    opt.load('boost')
diff -up xmms2-0.8DrO_o/src/clients/lib/xmmsclient/wscript.fixme xmms2-0.8DrO_o/src/clients/lib/xmmsclient/wscript
--- xmms2-0.8DrO_o/src/clients/lib/xmmsclient/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/lib/xmmsclient/wscript	2020-02-28 09:49:55.143637956 -0500
@@ -39,8 +39,7 @@ def build(bld):
 def configure(conf):
     conf.env.XMMS_PKGCONF_FILES.append(("xmms2-client", "-lxmmsclient"))
 
-    conf.check_cc(function_name="semtimedop",
-            header_name=["sys/types.h", "sys/ipc.h", "sys/sem.h"],
+    conf.check_cc(header_name=["sys/types.h", "sys/ipc.h", "sys/sem.h"],
             defines=["_GNU_SOURCE=1"], mandatory=False)
     if not conf.env.HAVE_SEMTIMEDOP:
         Logs.warn("Compiling visualization without shm support!")
diff -up xmms2-0.8DrO_o/src/clients/medialib-updater/wscript.fixme xmms2-0.8DrO_o/src/clients/medialib-updater/wscript
--- xmms2-0.8DrO_o/src/clients/medialib-updater/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/medialib-updater/wscript	2020-02-28 09:49:55.143637956 -0500
@@ -24,8 +24,7 @@ def configure(conf):
     conf.check_cfg(package="gthread-2.0", uselib_store='gthread2',
             args="--cflags --libs")
 
-    conf.check_cc(function_name="g_file_query_file_type",
-            header_name="gio/gio.h", uselib="gio2", mandatory=False)
+    conf.check_cc(header_name="gio/gio.h", uselib="gio2", mandatory=False)
 
 
 def options(opt):
diff -up xmms2-0.8DrO_o/src/clients/nycli/wscript.fixme xmms2-0.8DrO_o/src/clients/nycli/wscript
--- xmms2-0.8DrO_o/src/clients/nycli/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/clients/nycli/wscript	2020-02-28 09:49:55.143637956 -0500
@@ -1,4 +1,4 @@
-from waflib import Options, Errors
+from waflib import Utils, Errors
 
 source = """
 main.c
@@ -37,7 +37,7 @@ def build(bld):
 
 
 def configure(conf):
-    if Options.platform == 'win32':
+    if Utils.unversioned_sys_platform == 'win32':
         conf.env.CLI_COMPAT_IMPL = 'win32'
     else:
         conf.env.CLI_COMPAT_IMPL = 'unix'
@@ -49,8 +49,7 @@ def configure(conf):
     # first try just linking against libreadline
     try:
         conf.check_cc(lib="readline", header_name=rl_headers,
-                function_name='rl_filename_dequoting_function',
-                uselib_store="readline", uselib="glib2")
+                      uselib_store="readline", uselib="glib2")
     except Errors.ConfigurationError:
         pass
     else:
diff -up xmms2-0.8DrO_o/src/clients/vistest/wscript.fixme xmms2-0.8DrO_o/src/clients/vistest/wscript
--- xmms2-0.8DrO_o/src/clients/vistest/wscript.fixme	2020-02-28 09:49:55.137638098 -0500
+++ xmms2-0.8DrO_o/src/clients/vistest/wscript	2020-02-28 09:49:55.144637932 -0500
@@ -1,4 +1,4 @@
-import Options
+from waflib import Utils
 
 def build(bld):
     t = bld(features = 'c cprogram',
@@ -46,7 +46,7 @@ def build(bld):
             t.install_path = None
 
 def configure(conf):
-    if Options.platform == "win32":
+    if Utils.unversioned_sys_platform == "win32":
         conf.fatal("visualisation clients not supported on windows")
 
     conf.env.INSTALL_VIS_REFERENCE_CLIENTS = conf.options.with_vis_clients
diff -up xmms2-0.8DrO_o/src/includepriv/wscript.fixme xmms2-0.8DrO_o/src/includepriv/wscript
--- xmms2-0.8DrO_o/src/includepriv/wscript.fixme	2020-02-28 09:50:50.912314901 -0500
+++ xmms2-0.8DrO_o/src/includepriv/wscript	2020-02-28 09:51:04.246998545 -0500
@@ -3,5 +3,5 @@ def configure(conf):
 def options(conf):
     pass
 def build(bld):
-    bld.add_subdirs("xmmspriv")
-    bld.add_subdirs("xmmsclientpriv")
+    bld.recurse("xmmspriv")
+    bld.recurse("xmmsclientpriv")
diff -up xmms2-0.8DrO_o/src/include/wscript.fixme xmms2-0.8DrO_o/src/include/wscript
--- xmms2-0.8DrO_o/src/include/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/include/wscript	2020-02-28 09:49:55.144637932 -0500
@@ -17,7 +17,7 @@ def build(bld):
         #bld.install_files(os.path.join(bld.env.INCLUDEDIR, 'xmms2', p), " ".join(f))
 
 def configure(conf):
-    conf.sub_config("xmms")
+    conf.recurse("xmms")
 
     return True
 
diff -up xmms2-0.8DrO_o/src/include/xmms/wscript.fixme xmms2-0.8DrO_o/src/include/xmms/wscript
--- xmms2-0.8DrO_o/src/include/xmms/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/include/xmms/wscript	2020-02-28 09:49:55.144637932 -0500
@@ -1,5 +1,5 @@
 import os, sys
-from waflib import Options, Logs
+from waflib import Options, Logs, Utils
 
 def build(bld):
     pass
@@ -20,7 +20,7 @@ def configure(conf):
         else:
             conf.fatal('The "%s" output plugin could not be found.' % (preferred))
 
-    if Options.platform == 'darwin':
+    if Utils.unversioned_sys_platform == 'darwin':
         uconf = 'Library/xmms2'
         ucache = 'Library/xmms2/logs'
     else:
@@ -28,7 +28,7 @@ def configure(conf):
         ucache = '.cache/xmms2'
 
     sharedir = os.path.join(conf.env.DATADIR, 'xmms2')
-    if Options.platform == 'win32':
+    if Utils.unversioned_sys_platform == 'win32':
         # The plugin path in Windows should be relative, not absolute
         conf.env.PLUGINDIR = 'Plugins/'
     else:
diff -up xmms2-0.8DrO_o/src/lib/xmmsutils/wscript.fixme xmms2-0.8DrO_o/src/lib/xmmsutils/wscript
--- xmms2-0.8DrO_o/src/lib/xmmsutils/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/lib/xmmsutils/wscript	2020-02-28 09:49:55.144637932 -0500
@@ -4,7 +4,7 @@
 # Copyright (C) 2006-2011 XMMS2 Team
 #
 
-from waflib import Options, Logs, Errors
+from waflib import Options, Logs, Errors, Utils
 
 def build(bld):
     source = """
@@ -26,14 +26,14 @@ def build(bld):
 
 
 def configure(conf):
-    if Options.platform == 'win32':
+    if Utils.unversioned_sys_platform == 'win32':
         conf.env.util_impl = 'win32'
     else:
         conf.env.util_impl = 'unix'
         try:
-            conf.check_cc(function_name="nanosleep", header_name="time.h")
+            conf.check_cc(header_name="time.h")
         except Errors.ConfigurationError:
-            conf.check_cc(function_name="nanosleep", header_name="time.h",
+            conf.check_cc(header_name="time.h",
                     lib="rt", uselib_store="rt")
     return True
 
diff -up xmms2-0.8DrO_o/src/lib/xmmsvisualization/wscript.fixme xmms2-0.8DrO_o/src/lib/xmmsvisualization/wscript
--- xmms2-0.8DrO_o/src/lib/xmmsvisualization/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/lib/xmmsvisualization/wscript	2020-02-28 09:49:55.144637932 -0500
@@ -21,7 +21,7 @@ def build(bld):
 
 def configure(conf):
     # Check for the modf function in the math lib
-    conf.check_cc(function_name="modf", header_name="math.h",
+    conf.check_cc(header_name="math.h",
             lib="m", uselib_store="math")
     return True
 
diff -up xmms2-0.8DrO_o/src/plugins/cdda/wscript.fixme xmms2-0.8DrO_o/src/plugins/cdda/wscript
--- xmms2-0.8DrO_o/src/plugins/cdda/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/plugins/cdda/wscript	2020-02-28 09:49:55.145637908 -0500
@@ -1,11 +1,11 @@
 from waftools.plugin import plugin
 
-import Options
+from waflib import Utils
 
 def plugin_configure(conf):
     conf.check_cfg(package="libcdio_cdda", args="--cflags --libs", uselib_store="cdda")
     conf.check_cfg(package="libdiscid", args="--cflags --libs", uselib_store="discid")
-    if Options.platform == "win32":
+    if Utils.unversioned_sys_platform == "win32":
         conf.check_cc(lib="winmm", uselib_store="winmm", args="--cflags --libs")
 
 configure, build = plugin("cdda", configure=plugin_configure,
diff -up xmms2-0.8DrO_o/src/plugins/curl/wscript.fixme xmms2-0.8DrO_o/src/plugins/curl/wscript
--- xmms2-0.8DrO_o/src/plugins/curl/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/plugins/curl/wscript	2020-02-28 09:49:55.145637908 -0500
@@ -16,8 +16,7 @@ def plugin_configure(conf):
     # This is a function this plugin uses and that was added to curl in
     # version 7.12.0. We cannot check for the curl version as curl-config
     # did not support version tests before version 7.15.0
-    conf.check_cc(function_name="curl_multi_strerror",
-            header_name="curl/curl.h", uselib="curl")
+    conf.check_cc(header_name="curl/curl.h", uselib="curl")
 
 configure, build = plugin('curl', configure=plugin_configure,
                           source=source, libs=["socket", "curl"])
diff -up xmms2-0.8DrO_o/src/plugins/daap/wscript.fixme xmms2-0.8DrO_o/src/plugins/daap/wscript
--- xmms2-0.8DrO_o/src/plugins/daap/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/plugins/daap/wscript	2020-02-28 09:49:55.146637885 -0500
@@ -1,4 +1,4 @@
-import Options
+from waflib 	import Options
 from waftools.plugin import plugin
 
 source = """
diff -up xmms2-0.8DrO_o/src/plugins/file/wscript.fixme xmms2-0.8DrO_o/src/plugins/file/wscript
--- xmms2-0.8DrO_o/src/plugins/file/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/plugins/file/wscript	2020-02-28 09:49:55.146637885 -0500
@@ -7,9 +7,9 @@ def plugin_build(bld, obj):
         obj.source.append('browse/gdir.c')
 
 def plugin_configure(conf):
-    conf.check_cc(function_name='fstatat', header_name=['fcntl.h','sys/stat.h'],
+    conf.check_cc(header_name=['fcntl.h','sys/stat.h'],
             defines=['_ATFILE_SOURCE=1'])
-    conf.check_cc(function_name='dirfd', header_name=['dirent.h','sys/types.h'])
+    conf.check_cc(header_name=['dirent.h','sys/types.h'])
 
 configure, build = plugin("file",
         configure=plugin_configure, build=plugin_build,
diff -up xmms2-0.8DrO_o/src/xmms/wscript.fixme xmms2-0.8DrO_o/src/xmms/wscript
--- xmms2-0.8DrO_o/src/xmms/wscript.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/src/xmms/wscript	2020-02-28 09:49:55.147637861 -0500
@@ -5,7 +5,7 @@
 #
 
 import os
-from waflib import Options, Logs, Errors
+from waflib import Options, Logs, Errors, Utils
 
 source = """
     config.c
@@ -127,7 +127,7 @@ int main() {
 
 def get_statfs_impl(conf):
     # Detect the type of stat call used
-    if Options.platform == 'win32':
+    if Utils.unversioned_sys_platform == 'win32':
         return 'dummy'
     else:
         try:
@@ -147,7 +147,7 @@ def get_statfs_impl(conf):
                 else:
                     return 'bsd'
         else:
-            if Options.platform == 'sunos':
+            if Utils.unversioned_sys_platform == 'sunos':
                 return 'solaris'
             else:
                 return 'linux'
@@ -155,7 +155,7 @@ def get_statfs_impl(conf):
 # Get the implementation variant for the localtime_r function.
 def get_localtime_impl(conf):
     try:
-        conf.check_cc(function_name='localtime_r', header_name='time.h')
+        conf.check_cc(header_name='time.h')
     except Errors.ConfigurationError:
         return 'dummy'
     else:
@@ -174,7 +174,7 @@ def get_thread_name_impl(conf):
 
 # Get the implementation variant for signals, symlinks and uid check.
 def get_compat_impl(conf):
-    if Options.platform == 'win32':
+    if Utils.unversioned_sys_platform == 'win32':
         return 'dummy'
     else:
         return 'unix'
@@ -183,8 +183,7 @@ def get_visualization_impl(conf):
     if conf.options.without_unixshmserver:
         return 'dummy'
 
-    conf.check_cc(function_name='semctl',
-                  header_name=['sys/types.h','sys/ipc.h','sys/sem.h'],
+    conf.check_cc(header_name=['sys/types.h','sys/ipc.h','sys/sem.h'],
                   mandatory=False)
     try:
         conf.check_cc(fragment=semun_fragment, uselib_store="semun",
@@ -198,7 +197,7 @@ def get_visualization_impl(conf):
     return 'dummy'
 
 def configure(conf):
-    conf.check_tool('python-generator', tooldir=os.path.abspath('waftools'))
+    conf.load('python-generator', tooldir=os.path.abspath('waftools'))
 
     conf.check_cfg(package='gmodule-2.0', atleast_version='2.6.0',
             uselib_store='gmodule2', args='--cflags --libs')
@@ -208,7 +207,7 @@ def configure(conf):
             uselib_store='sqlite3', args='--cflags --libs')
 
     # Check for the sin function in the math lib
-    conf.check_cc(lib='m', function_name='sin', header_name='math.h',
+    conf.check_cc(lib='m', header_name='math.h',
                   uselib_store="math")
 
     conf.env.compat_impl = get_compat_impl(conf)
@@ -221,11 +220,11 @@ def configure(conf):
         Logs.warn("Compiling visualization without shm support")
 
     # Add Darwin stuff
-    if Options.platform == 'darwin':
+    if Utils.unversioned_sys_platform == 'darwin':
         conf.env.append_value('LINKFLAGS', ['-framework', 'CoreFoundation'])
         conf.env.append_value('DEFINES', 'USE_BUNDLES')
 
-    conf.env.xmms_shared_library = (Options.platform == 'win32')
+    conf.env.xmms_shared_library = (Utils.unversioned_sys_platform == 'win32')
 
     conf.env.XMMS_PKGCONF_FILES.append(('xmms2-plugin', ''))
 
diff -up xmms2-0.8DrO_o/waftools/cython_extra.py.fixme xmms2-0.8DrO_o/waftools/cython_extra.py
--- xmms2-0.8DrO_o/waftools/cython_extra.py.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/waftools/cython_extra.py	2020-02-28 09:49:55.147637861 -0500
@@ -3,37 +3,9 @@
 
 import re
 from waflib import Configure
-from subprocess import Popen, STDOUT, PIPE
+import subprocess
 
-# Borrowed from Python 2.7, subprocess.py
-class CalledProcessError(Exception):
-    """This exception is raised when a process run by check_call() or
-    check_output() returns a non-zero exit status.
-    The exit status will be stored in the returncode attribute;
-    check_output() will also store the output in the output attribute.
-    """
-    def __init__(self, returncode, cmd, output=None):
-        self.returncode = returncode
-        self.cmd = cmd
-        self.output = output
-    def __str__(self):
-        return "Command '%s' returned non-zero exit status %d" % (self.cmd, self.returncode)
-
-# Borrowed from Python 2.7, subprocess.py
-def check_output(*popenargs, **kwargs):
-    if 'stdout' in kwargs:
-        raise ValueError('stdout argument not allowed, it will be overridden.')
-    process = Popen(stdout=PIPE, *popenargs, **kwargs)
-    output, unused_err = process.communicate()
-    retcode = process.poll()
-    if retcode:
-        cmd = kwargs.get("args")
-        if cmd is None:
-            cmd = popenargs[0]
-        raise CalledProcessError(retcode, cmd, output=output)
-    return output
-
-cython_ver_re = re.compile('Cython version ([0-9.]+)')
+cython_ver_re = re.compile(b'Cython version ([0-9.]+)')
 def check_cython_version(self, version=None, minver=None, maxver=None):
 	log_s = []
 	if version:
@@ -53,15 +25,15 @@ def check_cython_version(self, version=N
 		minver = tuple(map(int, minver))
 	if maxver:
 		maxver = tuple(map(int, maxver))
-	
-	# Trick to be compatible python 2.x and 3.x
-	try:
-		u = unicode
-	except NameError:
-		u = str
 
-	cmd = [self.env.CYTHON, '-V']
-	o = u(check_output(cmd, stderr=STDOUT), 'UTF-8').strip()
+	if isinstance(self.env.CYTHON, list):
+		cmdbin = " "
+		cmdbin = cmdbin.join(self.env.CYTHON)
+	else:
+		cmdbin = self.env.CYTHON
+
+	cmd = [cmdbin, '-V']
+	o = subprocess.check_output(cmd, stderr=subprocess.STDOUT).strip()
 	m = cython_ver_re.match(o)
 	self.start_msg('Checking for cython version')
 	if not m:
@@ -69,11 +41,11 @@ def check_cython_version(self, version=N
 		self.fatal("No version found")
 	else:
 		v = m.group(1)
-		ver = tuple(map(int, v.split('.')))
+		ver = tuple(map(int, v.split(b'.')))
 		check = (not minver or minver <= ver) and (not maxver or maxver >= ver)
 		self.to_log('  cython %s\n  -> %r\n' % (" ".join(log_s), v))
 		if check:
-			self.end_msg(v)
+			self.end_msg(v.decode("utf-8"))
 			self.env.CYTHON_VERSION = ver
 		else:
 			self.end_msg('wrong version %s' % v, 'YELLOW')
diff -up xmms2-0.8DrO_o/waftools/man.py.fixme xmms2-0.8DrO_o/waftools/man.py
--- xmms2-0.8DrO_o/waftools/man.py.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/waftools/man.py	2020-02-28 09:49:55.147637861 -0500
@@ -2,7 +2,7 @@ from waflib import Task, Errors, Utils
 import os
 import gzip
 
-from TaskGen import feature,before_method
+from waflib.TaskGen import feature,before_method
 
 def gzip_func(task):
     infile = task.inputs[0].abspath()
diff -up xmms2-0.8DrO_o/waftools/python-generator.py.fixme xmms2-0.8DrO_o/waftools/python-generator.py
--- xmms2-0.8DrO_o/waftools/python-generator.py.fixme	2011-10-20 15:26:08.000000000 -0400
+++ xmms2-0.8DrO_o/waftools/python-generator.py	2020-02-28 09:49:55.147637861 -0500
@@ -1,6 +1,5 @@
-import Task
-import TaskGen
-from TaskGen import extension
+from waflib import TaskGen
+from waflib.TaskGen import extension
 import sys
 
 TaskGen.declare_chain(
diff -up xmms2-0.8DrO_o/waftools/tool.py.fixme xmms2-0.8DrO_o/waftools/tool.py
--- xmms2-0.8DrO_o/waftools/tool.py.fixme	2020-02-28 09:49:55.130638264 -0500
+++ xmms2-0.8DrO_o/waftools/tool.py	2020-02-28 09:49:55.147637861 -0500
@@ -1,4 +1,4 @@
-import Utils
+from waflib import Utils
 import os
 
 def add_install_flag(bld, obj):
diff -up xmms2-0.8DrO_o/wscript.fixme xmms2-0.8DrO_o/wscript
--- xmms2-0.8DrO_o/wscript.fixme	2020-02-28 09:49:55.141638004 -0500
+++ xmms2-0.8DrO_o/wscript	2020-02-28 09:50:32.736746099 -0500
@@ -113,9 +113,9 @@ def build(bld):
         bld.fatal("You need to run waf configure")
         raise SystemExit()
 
-    bld.add_subdirs(subdirs)
-    bld.add_subdirs(plugindirs)
-    bld.add_subdirs(optionaldirs)
+    bld.recurse(subdirs)
+    bld.recurse(plugindirs)
+    bld.recurse(optionaldirs)
 
     for name, lib in bld.env.XMMS_PKGCONF_FILES:
         bld(features = 'subst',
@@ -170,7 +170,7 @@ def _configure_optionals(conf):
     for o in selected_optionals:
         x = [x for x in optional_subdirs if os.path.basename(x) == o][0]
         try:
-            conf.sub_config(x)
+            conf.recurse(x)
             conf.env.append_value('XMMS_OPTIONAL_BUILD', x)
             succeeded_optionals.add(o)
         except Errors.ConfigurationError:
@@ -220,7 +220,7 @@ def _configure_plugins(conf):
 
     for plugin in selected_plugins:
         try:
-            conf.sub_config("src/plugins/%s" % plugin)
+            conf.recurse("src/plugins/%s" % plugin)
             if (not conf.env.XMMS_PLUGINS_ENABLED or
                     (len(conf.env.XMMS_PLUGINS_ENABLED) > 0 and
                         conf.env.XMMS_PLUGINS_ENABLED[-1] != plugin)):
@@ -277,14 +277,14 @@ def configure(conf):
         conf.env.BUILD_XMMS2D = True
         subdirs.insert(0, "src/xmms")
 
-    conf.check_tool('gnu_dirs')
-    conf.check_tool('man', tooldir=os.path.abspath('waftools'))
-    conf.check_tool('misc')
-    conf.check_tool('gcc')
-    conf.check_tool('g++')
+    conf.load('gnu_dirs')
+    conf.load('man', tooldir=os.path.abspath('waftools'))
+    ## conf.load('misc')
+    conf.load('gcc')
+    conf.load('g++')
 
-    if conf.options.target_platform:
-        Options.platform = conf.options.target_platform
+    ## if conf.options.target_platform:
+        ## Options.platform = conf.options.target_platform
 
     nam,changed = gittools.get_info()
     conf.msg("git commit id", nam)
@@ -340,7 +340,7 @@ def configure(conf):
             conf.env.prepend_value('LIBPATH', os.path.join(d, 'lib'))
             conf.env.prepend_value('CPPPATH', os.path.join(d, 'include'))
 
-    if Options.platform != 'win32':
+    if Utils.unversioned_sys_platform != 'win32':
         conf.env.append_unique('CFLAGS_cstlib', ['-fPIC', '-DPIC'])
         conf.env.append_unique('CPPFLAGS_cxxshlib', ['-fPIC', '-DPIC'])
     else:
@@ -356,14 +356,14 @@ def configure(conf):
         conf.env.cshlib_PATTERN = 'lib%s.dll'
         conf.env.cprogram_PATTERN = '%s.exe'
 
-    if Options.platform == 'darwin':
+    if Utils.unversioned_sys_platform == 'darwin':
         conf.env.append_value('LINKFLAGS', '-multiply_defined_suppress')
         conf.env.explicit_install_name = True
     else:
         conf.env.explicit_install_name = False
 
-    if Options.platform == 'sunos':
-        conf.check_cc(function_name='socket', lib='socket', header_name='sys/socket.h', uselib_store='socket')
+    if Utils.unversioned_sys_platform == 'sunos':
+        conf.check_cc(lib='socket', header_name='sys/socket.h', uselib_store='socket')
         if not conf.env.HAVE_SOCKET:
             conf.fatal("xmms2 requires libsocket on Solaris.")
             raise SystemExit(1)
@@ -371,7 +371,7 @@ def configure(conf):
         conf.env.append_unique('CFLAGS', '-D_REENTRANT')
         conf.env.append_unique('CFLAGS', '-std=gnu99')
         conf.env.socket_impl = 'socket'
-    elif Options.platform == 'win32':
+    elif Utils.unversioned_sys_platform == 'win32':
         if conf.options.winver:
             major, minor = [int(x) for x in Options.options.winver.split('.')]
         else:
@@ -413,9 +413,9 @@ int main() { return 0; }
         conf.env.socket_impl = 'posix'
 
     conf.env.xmms_icon = False
-    if Options.platform == 'win32':
+    if Utils.unversioned_sys_platform == 'win32':
         try:
-            conf.check_tool('winres')
+            conf.load('winres')
         except Errors.ConfigurationError:
             pass
         else:
@@ -425,7 +425,7 @@ int main() { return 0; }
     # TaskGen.mac_bundle option seems to be no longer silently ignored
     # if gcc -bundle option is not available.
     # TODO: Add --no-mac-bundle in options ?
-    conf.env.mac_bundle_enabled = Options.platform == 'darwin'
+    conf.env.mac_bundle_enabled = Utils.unversioned_sys_platform == 'darwin'
 
     conf.check_cfg(package='glib-2.0', atleat_version='2.8.0',
             uselib_store='glib2', args='--cflags --libs')
@@ -439,7 +439,7 @@ int main() { return 0; }
     newest = get_newest(subdirs, plugindirs, optionaldirs)
     conf.env.NEWEST_WSCRIPT_SUBDIR = newest
 
-    [conf.sub_config(s) for s in subdirs]
+    [conf.recurse(s) for s in subdirs]
     conf.write_config_header('xmms_configuration.h')
 
     output_plugins = [name for x, name in conf.env.XMMS_OUTPUT_PLUGINS if x > 0]
@@ -464,8 +464,8 @@ def _list_cb(option, opt, value, parser)
     setattr(parser.values, option.dest, vals)
 
 def options(opt):
-    opt.tool_options('gnu_dirs')
-    opt.tool_options('gcc')
+    opt.load('gnu_dirs')
+    opt.load('gcc')
 
     opt.add_option('--with-custom-version', type='string',
                    dest='customversion', help="Override git commit hash version")
@@ -503,9 +503,9 @@ def options(opt):
     opt.add_option('--without-ldconfig', action='store_false',
                    dest='ldconfig', help="Don't run ldconfig after install")
 
-    opt.sub_options("src/xmms")
+    opt.recurse("src/xmms")
     for o in optional_subdirs + subdirs:
-        opt.sub_options(o)
+        opt.recurse(o)
 
 def shutdown(ctx):
     if ctx.cmd != 'install':