Changeset 394 for python


Ignore:
Timestamp:
Mar 21, 2014, 1:39:52 PM (11 years ago)
Author:
dmik
Message:

python: Use Posix directory scheme everywhere on OS/2.

Location:
python/trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • python/trunk/Doc/library/sysconfig.rst

    r391 r394  
    8484- *nt_user*: scheme for NT platforms, when the *user* option is used.
    8585- *os2*: scheme for OS/2 platforms.
    86 - *os2_home*: scheme for OS/2 patforms, when the *user* option is used.
     86- *os2_user*: scheme for OS/2 patforms, when the *user* option is used.
    8787
    8888Each scheme is itself composed of a series of paths and each path has a unique
  • python/trunk/Lib/distutils/command/install.py

    r391 r394  
    7171        },
    7272    'os2': {
    73         'purelib': '$base/Lib/site-packages',
    74         'platlib': '$base/Lib/site-packages',
    75         'headers': '$base/Include/$dist_name',
    76         'scripts': '$base/Scripts',
     73        'purelib': '$base/lib/python$py_version_short/site-packages',
     74        'platlib': '$platbase/lib/python$py_version_short/site-packages',
     75        'headers': '$base/include/python$py_version_short/$dist_name',
     76        'scripts': '$base/bin',
    7777        'data'   : '$base',
    7878        },
    79     'os2_home': {
     79    'os2_user': {
    8080        'purelib': '$usersite',
    8181        'platlib': '$usersite',
  • python/trunk/Lib/distutils/sysconfig.py

    r391 r394  
    433433def _init_os2():
    434434    """Initialize the module as appropriate for OS/2"""
    435     g = {}
    436     # load the installed Makefile:
    437     try:
    438         filename = get_makefile_filename()
    439         parse_makefile(filename, g)
    440     except IOError, msg:
    441         my_msg = "invalid Python installation: unable to open %s" % filename
    442         if hasattr(msg, "strerror"):
    443             my_msg = my_msg + " (%s)" % msg.strerror
    444 
    445         raise DistutilsPlatformError(my_msg)
    446 
    447     # load the installed pyconfig.h:
    448     try:
    449         filename = get_config_h_filename()
    450         parse_config_h(file(filename), g)
    451     except IOError, msg:
    452         my_msg = "invalid Python installation: unable to open %s" % filename
    453         if hasattr(msg, "strerror"):
    454             my_msg = my_msg + " (%s)" % msg.strerror
    455 
    456         raise DistutilsPlatformError(my_msg)
    457 
    458     # On AIX, there are wrong paths to the linker scripts in the Makefile
    459     # -- these paths are relative to the Python source, but when installed
    460     # the scripts are in another directory.
    461     if python_build:
    462         g['LDSHARED'] = g['BLDSHARED']
    463 
    464     # OS/2 module
    465 
    466     # set basic install directories
    467     g['LIBDEST'] = get_python_lib(plat_specific=0, standard_lib=1)
    468     g['BINLIBDEST'] = get_python_lib(plat_specific=1, standard_lib=1)
    469 
    470     # XXX hmmm.. a normal install puts include files here
    471     g['INCLUDEPY'] = get_python_inc(plat_specific=0)
    472 
    473     g['SO'] = '.pyd'
    474     g['EXE'] = ".exe"
    475 
    476     global _config_vars
    477     _config_vars = g
     435    _init_posix()
     436    # set the python module extension to .pyd instead of .dll -
     437    # for compatibility with previous releases
     438    _config_vars['SO'] = '.pyd'
    478439
    479440
  • python/trunk/Lib/distutils/tests/test_install.py

    r391 r394  
    9696        self.addCleanup(cleanup)
    9797
    98         for key in ('nt_user', 'unix_user', 'os2_home'):
     98        for key in ('nt_user', 'unix_user', 'os2_user'):
    9999            self.assertIn(key, INSTALL_SCHEMES)
    100100
  • python/trunk/Lib/site.py

    r393 r394  
    286286        seen.add(prefix)
    287287
    288         if sys.platform in ('os2emx', 'riscos'):
     288        if sys.platform in ('riscos'):
    289289            sitepackages.append(os.path.join(prefix, "Lib", "site-packages"))
    290         elif sys.platform == 'os2knix':
    291             sitepackages.append(os.path.join(prefix, "lib",
    292                                         "python" + sys.version[:3],
    293                                         "site-packages"))
    294             sitepackages.append(os.path.join(prefix, "lib", "site-packages"))
    295         elif os.sep == '/':
     290        elif os.sep == '/' or os.name == 'os2':
    296291            sitepackages.append(os.path.join(prefix, "lib",
    297292                                        "python" + sys.version[:3],
    298293                                        "site-packages"))
    299294            sitepackages.append(os.path.join(prefix, "lib", "site-python"))
     295            if os.name == 'os2':
     296                sitepackages.append(os.path.join(prefix, "lib", "site-packages"))
    300297        else:
    301298            sitepackages.append(prefix)
  • python/trunk/Lib/sysconfig.py

    r391 r394  
    3838        },
    3939    'os2': {
    40         'stdlib': '{base}/Lib',
    41         'platstdlib': '{base}/Lib',
    42         'purelib': '{base}/Lib/site-packages',
    43         'platlib': '{base}/Lib/site-packages',
    44         'include': '{base}/Include',
    45         'platinclude': '{base}/Include',
    46         'scripts': '{base}/Scripts',
    47         'data'   : '{base}',
    48         },
    49     'os2_home': {
     40        'stdlib': '{base}/lib/python{py_version_short}',
     41        'platstdlib': '{platbase}/lib/python{py_version_short}',
     42        'purelib': '{base}/lib/python{py_version_short}/site-packages',
     43        'platlib': '{platbase}/lib/python{py_version_short}/site-packages',
     44        'include': '{base}/include/python{py_version_short}',
     45        'platinclude': '{platbase}/include/python{py_version_short}',
     46        'scripts': '{base}/bin',
     47        'data': '{base}',
     48        },
     49    'os2_user': {
    5050        'stdlib': '{userbase}/lib/python{py_version_short}',
    5151        'platstdlib': '{userbase}/lib/python{py_version_short}',
     
    157157
    158158    for key, value in _INSTALL_SCHEMES[scheme].items():
    159         if os.name in ('posix', 'nt'):
     159        if os.name in ('posix', 'nt', 'os2'):
    160160            value = os.path.expanduser(value)
    161161        res[key] = os.path.normpath(_subst_vars(value, vars))
     
    463463        _CONFIG_VARS['projectbase'] = _PROJECT_BASE
    464464
    465         if os.name in ('nt', 'os2'):
     465        if os.name == 'nt':
    466466            _init_non_posix(_CONFIG_VARS)
    467         if os.name == 'posix':
     467        if os.name in ('posix', 'os2'):
    468468            _init_posix(_CONFIG_VARS)
    469469
  • python/trunk/Lib/test/test_sysconfig.py

    r391 r394  
    240240
    241241    def test_get_scheme_names(self):
    242         wanted = ('nt', 'nt_user', 'os2', 'os2_home', 'osx_framework_user',
     242        wanted = ('nt', 'nt_user', 'os2', 'os2_user', 'osx_framework_user',
    243243                  'posix_home', 'posix_prefix', 'posix_user')
    244244        self.assertEqual(get_scheme_names(), wanted)
Note: See TracChangeset for help on using the changeset viewer.