Index: /trunk/Config.kmk
===================================================================
--- /trunk/Config.kmk	(revision 59799)
+++ /trunk/Config.kmk	(revision 59800)
@@ -6474,3 +6474,2 @@
 	$(MAKE) VBOX_QUICK=1
 
-
Index: /trunk/src/libs/xpcom18a4/python/Makefile.kmk
===================================================================
--- /trunk/src/libs/xpcom18a4/python/Makefile.kmk	(revision 59799)
+++ /trunk/src/libs/xpcom18a4/python/Makefile.kmk	(revision 59800)
@@ -5,5 +5,5 @@
 
 #
-# Copyright (C) 2009-2016 Oracle Corporation
+# Copyright (C) 2009-2015 Oracle Corporation
 #
 # This file is part of VirtualBox Open Source Edition (OSE), as
@@ -27,8 +27,12 @@
 #
 # List of supported Python versions, defining a number of
-# VBOX_PYTHON[26|27|31|32|33|34|35|DEF]_[INC|LIB] variables
-# which get picked up below.
+# VBOX_PYTHON[25|26|27|DEF]_[INC|LIB] variables which get picked up below.
 #
 ifeq ($(KBUILD_TARGET),darwin) # Relatively predictable, don't script.
+ ifeq ($(KBUILD_TARGET_ARCH),x86)
+  VBOX_PYTHON25_INC = $(VBOX_PATH_MACOSX_SDK)/usr/include/python2.5
+  VBOX_PYTHON25_LIB = $(VBOX_PATH_MACOSX_SDK)/usr/lib/libpython2.5.dylib
+  VBOX_PYTHON25_LIB_X86 = $(VBOX_PYTHON25_LIB)
+ endif
  if  !defined(VBOX_WITHOUT_VBOXPYTHON_FOR_OSX_10_6) \
   && (   !defined(VBOX_OSE) \
@@ -45,5 +49,4 @@
   VBOX_PYTHON27_LIB_X86 = $(VBOX_PYTHON27_LIB)
  endif
- # No Python 3.x yet as part of OSX versions including El Capitan, 10.11.
 
 else
@@ -112,4 +115,63 @@
 
 
+ifdef VBOX_PYTHON23_INC
+#
+# Python 2.3 version
+#
+DLLS += VBoxPython2_3
+VBoxPython2_3_EXTENDS    = VBoxPythonBase
+VBoxPython2_3_EXTENDS_BY = appending
+VBoxPython2_3_TEMPLATE   = XPCOM$(if-expr "$(KBUILD_TARGET)" == "darwin",OSX104,)
+VBoxPython2_3_INCS       = $(VBOX_PYTHON23_INC)
+VBoxPython2_3_LIBS       = $(VBOX_PYTHON23_LIB)
+
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
+DLLS += VBoxPython2_3_x86
+VBoxPython2_3_x86_EXTENDS    = VBoxPythonBase_x86
+VBoxPython2_3_x86_EXTENDS_BY = appending
+VBoxPython2_3_x86_TEMPLATE   = XPCOM$(if-expr "$(KBUILD_TARGET)" == "darwin",OSX104,-x86)
+VBoxPython2_3_x86_INCS       = $(VBOX_PYTHON23_INC)
+VBoxPython2_3_x86_LIBS       = $(VBOX_PYTHON23_LIB_X86)
+ endif
+endif
+
+ifdef VBOX_PYTHON24_INC
+#
+# Python 2.4 version
+#
+DLLS += VBoxPython2_4
+VBoxPython2_4_EXTENDS    = VBoxPythonBase
+VBoxPython2_4_EXTENDS_BY = appending
+VBoxPython2_4_INCS       = $(VBOX_PYTHON24_INC)
+VBoxPython2_4_LIBS       = $(VBOX_PYTHON24_LIB)
+
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
+DLLS += VBoxPython2_4_x86
+VBoxPython2_4_x86_EXTENDS    = VBoxPythonBase_x86
+VBoxPython2_4_x86_EXTENDS_BY = appending
+VBoxPython2_4_x86_INCS       = $(VBOX_PYTHON24_INC)
+VBoxPython2_4_x86_LIBS       = $(VBOX_PYTHON24_LIB_X86)
+ endif
+endif
+
+ifdef VBOX_PYTHON25_INC
+#
+# Python 2.5 version
+#
+DLLS += VBoxPython2_5
+VBoxPython2_5_EXTENDS    = VBoxPythonBase
+VBoxPython2_5_EXTENDS_BY = appending
+VBoxPython2_5_INCS       = $(VBOX_PYTHON25_INC)
+VBoxPython2_5_LIBS       = $(VBOX_PYTHON25_LIB)
+
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
+DLLS += VBoxPython2_5_x86
+VBoxPython2_5_x86_EXTENDS    = VBoxPythonBase_x86
+VBoxPython2_5_x86_EXTENDS_BY = appending
+VBoxPython2_5_x86_INCS       = $(VBOX_PYTHON25_INC)
+VBoxPython2_5_x86_LIBS       = $(VBOX_PYTHON25_LIB_X86)
+ endif
+endif
+
 ifdef VBOX_PYTHON26_INC
 #
@@ -151,109 +213,4 @@
 VBoxPython2_7_x86_INCS       = $(VBOX_PYTHON27_INC)
 VBoxPython2_7_x86_LIBS       = $(VBOX_PYTHON27_LIB_X86)
- endif
-endif
-
-ifdef VBOX_PYTHON31_INC
-#
-# Python 3.1 version
-#
-DLLS += VBoxPython3_1
-VBoxPython3_1_EXTENDS    = VBoxPythonBase
-VBoxPython3_1_EXTENDS_BY = appending
-VBoxPython3_1_TEMPLATE   = XPCOM
-VBoxPython3_1_INCS       = $(VBOX_PYTHON31_INC)
-VBoxPython3_1_LIBS       = $(VBOX_PYTHON31_LIB)
-
- ifdef VBOX_WITH_32_ON_64_MAIN_API
-DLLS += VBoxPython3_1_x86
-VBoxPython3_1_x86_EXTENDS    = VBoxPythonBase_x86
-VBoxPython3_1_x86_EXTENDS_BY = appending
-VBoxPython3_1_x86_TEMPLATE   = XPCOM
-VBoxPython3_1_x86_INCS       = $(VBOX_PYTHON31_INC)
-VBoxPython3_1_x86_LIBS       = $(VBOX_PYTHON31_LIB_X86)
- endif
-endif
-
-ifdef VBOX_PYTHON32_INC
-#
-# Python 3.2 version
-#
-DLLS += VBoxPython3_2
-VBoxPython3_2_EXTENDS    = VBoxPythonBase
-VBoxPython3_2_EXTENDS_BY = appending
-VBoxPython3_2_TEMPLATE   = XPCOM
-VBoxPython3_2_INCS       = $(VBOX_PYTHON32_INC)
-VBoxPython3_2_LIBS       = $(VBOX_PYTHON32_LIB)
-
- ifdef VBOX_WITH_32_ON_64_MAIN_API
-DLLS += VBoxPython3_2_x86
-VBoxPython3_2_x86_EXTENDS    = VBoxPythonBase_x86
-VBoxPython3_2_x86_EXTENDS_BY = appending
-VBoxPython3_2_x86_TEMPLATE   = XPCOM
-VBoxPython3_2_x86_INCS       = $(VBOX_PYTHON32_INC)
-VBoxPython3_2_x86_LIBS       = $(VBOX_PYTHON32_LIB_X86)
- endif
-endif
-
-ifdef VBOX_PYTHON33_INC
-#
-# Python 3.3 version
-#
-DLLS += VBoxPython3_3
-VBoxPython3_3_EXTENDS    = VBoxPythonBase
-VBoxPython3_3_EXTENDS_BY = appending
-VBoxPython3_3_TEMPLATE   = XPCOM
-VBoxPython3_3_INCS       = $(VBOX_PYTHON33_INC)
-VBoxPython3_3_LIBS       = $(VBOX_PYTHON33_LIB)
-
- ifdef VBOX_WITH_32_ON_64_MAIN_API
-DLLS += VBoxPython3_3_x86
-VBoxPython3_3_x86_EXTENDS    = VBoxPythonBase_x86
-VBoxPython3_3_x86_EXTENDS_BY = appending
-VBoxPython3_3_x86_TEMPLATE   = XPCOM
-VBoxPython3_3_x86_INCS       = $(VBOX_PYTHON33_INC)
-VBoxPython3_3_x86_LIBS       = $(VBOX_PYTHON33_LIB_X86)
- endif
-endif
-
-ifdef VBOX_PYTHON34_INC
-#
-# Python 3.4 version
-#
-DLLS += VBoxPython3_4
-VBoxPython3_4_EXTENDS    = VBoxPythonBase
-VBoxPython3_4_EXTENDS_BY = appending
-VBoxPython3_4_TEMPLATE   = XPCOM
-VBoxPython3_4_INCS       = $(VBOX_PYTHON34_INC)
-VBoxPython3_4_LIBS       = $(VBOX_PYTHON34_LIB)
-
- ifdef VBOX_WITH_32_ON_64_MAIN_API
-DLLS += VBoxPython3_4_x86
-VBoxPython3_4_x86_EXTENDS    = VBoxPythonBase_x86
-VBoxPython3_4_x86_EXTENDS_BY = appending
-VBoxPython3_4_x86_TEMPLATE   = XPCOM
-VBoxPython3_4_x86_INCS       = $(VBOX_PYTHON34_INC)
-VBoxPython3_4_x86_LIBS       = $(VBOX_PYTHON34_LIB_X86)
- endif
-endif
-
-ifdef VBOX_PYTHON35_INC
-#
-# Python 3.5 version
-#
-DLLS += VBoxPython3_5
-VBoxPython3_5_EXTENDS    = VBoxPythonBase
-VBoxPython3_5_EXTENDS_BY = appending
-VBoxPython3_5_TEMPLATE   = XPCOM
-VBoxPython3_5_INCS       = $(VBOX_PYTHON35_INC)
-VBoxPython3_5_LIBS       = $(VBOX_PYTHON35_LIB)
-
- ifdef VBOX_WITH_32_ON_64_MAIN_API
-DLLS += VBoxPython3_5_x86
-VBoxPython3_5_x86_EXTENDS    = VBoxPythonBase_x86
-VBoxPython3_5_x86_EXTENDS_BY = appending
-VBoxPython3_5_x86_TEMPLATE   = XPCOM
-VBoxPython3_5_x86_INCS       = $(VBOX_PYTHON35_INC)
-VBoxPython3_5_x86_LIBS       = $(VBOX_PYTHON35_LIB_X86)
  endif
 endif
Index: /trunk/src/libs/xpcom18a4/python/gen_python_deps.py
===================================================================
--- /trunk/src/libs/xpcom18a4/python/gen_python_deps.py	(revision 59799)
+++ /trunk/src/libs/xpcom18a4/python/gen_python_deps.py	(revision 59800)
@@ -2,5 +2,5 @@
 
 """
-Copyright (C) 2009-2016 Oracle Corporation
+Copyright (C) 2009-2013 Oracle Corporation
 
 This file is part of VirtualBox Open Source Edition (OSE), as
@@ -14,7 +14,6 @@
 
 import os,sys
-from distutils.version import StrictVersion
 
-versions = ["2.6", "2.7", "3.1", "3.2", "3.3", "3.4", "3.5"]
+versions = ["2.3", "2.4", "2.5", "2.6", "2.7",]
 prefixes = ["/usr", "/usr/local", "/opt", "/opt/local"]
 known = {}
@@ -42,10 +41,10 @@
 
 def print_vars(vers, known, sep, bitness_magic):
-    print("VBOX_PYTHON%s_INC=%s%s" %(vers, known[0], sep))
+    print "VBOX_PYTHON%s_INC=%s%s" %(vers, known[0], sep)
     if bitness_magic > 0:
-        print("VBOX_PYTHON%s_LIB=%s%s" %(vers, known[2], sep))
-        print("VBOX_PYTHON%s_LIB_X86=%s%s" %(vers, known[1], sep))
+        print "VBOX_PYTHON%s_LIB=%s%s" %(vers, known[2], sep)
+        print "VBOX_PYTHON%s_LIB_X86=%s%s" %(vers, known[1], sep)
     else:
-        print("VBOX_PYTHON%s_LIB=%s%s" %(vers, known[1], sep))
+        print "VBOX_PYTHON%s_LIB=%s%s" %(vers, known[1], sep)
 
 
@@ -92,6 +91,4 @@
 
     for v in versions:
-        if StrictVersion(v) < StrictVersion('2.6'):
-            continue
         for p in prefixes:
             c = checkPair(p, v, dllpre, dllsuff, bitness_magic)
@@ -99,5 +96,5 @@
                 known[v] = c
                 break
-    keys = list(known.keys())
+    keys = known.keys()
     # we want default to be the lowest versioned Python
     keys.sort()
