summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Felt <aixtools@users.noreply.github.com>2019-04-12 14:15:32 (GMT)
committerVictor Stinner <vstinner@redhat.com>2019-04-12 14:15:32 (GMT)
commit9d949f7796da612f1b588d18c6f041376992a9fc (patch)
tree63decb39986d71d9f431cf17d8806e511126b7a2
parent9b8314cfe29ca532fc335277f6c36b72e6132922 (diff)
downloadcpython-9d949f7796da612f1b588d18c6f041376992a9fc.zip
cpython-9d949f7796da612f1b588d18c6f041376992a9fc.tar.gz
cpython-9d949f7796da612f1b588d18c6f041376992a9fc.tar.bz2
bpo-36588: On AIX, remove major version from sys.platform (GH-12787)
On AIX, sys.platform doesn't contain the major version anymore. Always return 'aix', instead of 'aix3' .. 'aix7'. Since older Python versions include the version number, it is recommended to always use sys.platform.startswith('aix').
-rw-r--r--Doc/library/sys.rst11
-rw-r--r--Doc/whatsnew/3.8.rst5
-rw-r--r--Misc/NEWS.d/next/Core and Builtins/2019-04-11-14-36-55.bpo-36588.wejLoC.rst5
-rwxr-xr-xconfigure2
-rw-r--r--configure.ac1
5 files changed, 22 insertions, 2 deletions
diff --git a/Doc/library/sys.rst b/Doc/library/sys.rst
index 52026f6..591972e 100644
--- a/Doc/library/sys.rst
+++ b/Doc/library/sys.rst
@@ -1014,7 +1014,7 @@ always available.
This string contains a platform identifier that can be used to append
platform-specific components to :data:`sys.path`, for instance.
- For Unix systems, except on Linux, this is the lowercased OS name as
+ For Unix systems, except on Linux and AIX, this is the lowercased OS name as
returned by ``uname -s`` with the first part of the version as returned by
``uname -r`` appended, e.g. ``'sunos5'`` or ``'freebsd8'``, *at the time
when Python was built*. Unless you want to test for a specific system
@@ -1024,12 +1024,15 @@ always available.
# FreeBSD-specific code here...
elif sys.platform.startswith('linux'):
# Linux-specific code here...
+ elif sys.platform.startswith('aix'):
+ # AIX-specific code here...
For other systems, the values are:
================ ===========================
System ``platform`` value
================ ===========================
+ AIX ``'aix'``
Linux ``'linux'``
Windows ``'win32'``
Windows/Cygwin ``'cygwin'``
@@ -1042,6 +1045,12 @@ always available.
older Python versions include the version number, it is recommended to
always use the ``startswith`` idiom presented above.
+ .. versionchanged:: 3.8
+ On AIX, :attr:`sys.platform` doesn't contain the major version anymore.
+ It is always ``'aix'``, instead of ``'aix5'`` or ``'aix7'``. Since
+ older Python versions include the version number, it is recommended to
+ always use the ``startswith`` idiom presented above.
+
.. seealso::
:attr:`os.name` has a coarser granularity. :func:`os.uname` gives
diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst
index aa75bee..bf28e5f 100644
--- a/Doc/whatsnew/3.8.rst
+++ b/Doc/whatsnew/3.8.rst
@@ -700,6 +700,11 @@ Changes in Python behavior
raised when getting the attribute from the type dictionary are no longer
ignored. (Contributed by Serhiy Storchaka in :issue:`35459`.)
+* On AIX, :attr:`sys.platform` doesn't contain the major version anymore.
+ It is always ``'aix'``, instead of ``'aix3'`` .. ``'aix7'``. Since
+ older Python versions include the version number, it is recommended to
+ always use the ``sys.platform.startswith('aix')``.
+ (Contributed by M. Felt in :issue:`36588`.)
Changes in the Python API
-------------------------
diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-04-11-14-36-55.bpo-36588.wejLoC.rst b/Misc/NEWS.d/next/Core and Builtins/2019-04-11-14-36-55.bpo-36588.wejLoC.rst
new file mode 100644
index 0000000..77d2fa4
--- /dev/null
+++ b/Misc/NEWS.d/next/Core and Builtins/2019-04-11-14-36-55.bpo-36588.wejLoC.rst
@@ -0,0 +1,5 @@
+On AIX, :attr:`sys.platform` doesn't contain the major version anymore.
+Always return ``'aix'``, instead of ``'aix3'`` .. ``'aix7'``. Since
+older Python versions include the version number, it is recommended to
+always use ``sys.platform.startswith('aix')``.
+Contributed by M. Felt.
diff --git a/configure b/configure
index fcfa714..72589fd 100755
--- a/configure
+++ b/configure
@@ -3281,6 +3281,7 @@ then
MACHDEP="$ac_md_system$ac_md_release"
case $MACHDEP in
+ aix*) MACHDEP="aix";;
linux*) MACHDEP="linux";;
cygwin*) MACHDEP="cygwin";;
darwin*) MACHDEP="darwin";;
@@ -10199,7 +10200,6 @@ fi
-
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
diff --git a/configure.ac b/configure.ac
index 880e47f..30e8587 100644
--- a/configure.ac
+++ b/configure.ac
@@ -404,6 +404,7 @@ then
MACHDEP="$ac_md_system$ac_md_release"
case $MACHDEP in
+ aix*) MACHDEP="aix";;
linux*) MACHDEP="linux";;
cygwin*) MACHDEP="cygwin";;
darwin*) MACHDEP="darwin";;