Skip to content

Commit 5300577

Browse files
committed
[GR-23340] Make test_sysconfig pass
PullRequest: graalpython/1432
2 parents 7adee6d + 48a9759 commit 5300577

File tree

4 files changed

+32
-6
lines changed

4 files changed

+32
-6
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,21 @@
1+
*graalpython.lib-python.3.test.test_sysconfig.MakefileTests.test_get_makefile_filename
12
*graalpython.lib-python.3.test.test_sysconfig.MakefileTests.test_parse_makefile
23
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_SO_deprecation
34
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_SO_in_vars
45
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_SO_value
6+
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_get_config_h_filename
57
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_get_config_vars
68
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_get_path
79
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_get_path_names
810
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_get_paths
911
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_get_platform
1012
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_get_scheme_names
13+
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_ldshared_value
1114
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_main
15+
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_osx_ext_suffix
1216
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_platform_in_subprocess
17+
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_srcdir
1318
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_srcdir_independent_of_cwd
1419
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_symlink
20+
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_triplet_in_ext_suffix
1521
*graalpython.lib-python.3.test.test_sysconfig.TestSysConfig.test_user_similar

graalpython/lib-graalpython/_sysconfig.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ def _get_posix_vars():
8585
g['CONFINCLUDEPY'] = get_python_inc()
8686
g['CPPFLAGS'] = '-I. -I' + get_python_inc()
8787
g['CFLAGS'] = "-Wno-unused-command-line-argument -stdlib=libc++ -DNDEBUG -O1 -DHPY_UNIVERSAL_ABI"
88+
g['LDFLAGS'] = ""
8889
g['CCSHARED'] = "-fPIC"
8990
g['LDSHARED_LINUX'] = "%s -shared -fPIC" % __graalpython__.get_toolchain_path('CC')
9091
if darwin_native:

graalpython/lib-python/3/sysconfig.py

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,17 @@
2020
]
2121

2222
_INSTALL_SCHEMES = {
23+
# Graalpython change: custom scheme
24+
'graalpython': {
25+
'stdlib': '{base}/lib-python/3',
26+
'platstdlib': '{base}/lib-python/3',
27+
'purelib': '{base}/lib-python/3/site-packages',
28+
'platlib': '{base}/lib-python/3/site-packages',
29+
'include': '{base}/include',
30+
'platinclude': '{base}/include',
31+
'scripts': '{base}/bin',
32+
'data': '{base}',
33+
},
2334
'posix_prefix': {
2435
'stdlib': '{installed_base}/lib/python{py_version_short}',
2536
'platstdlib': '{platbase}/lib/python{py_version_short}',
@@ -180,10 +191,12 @@ def _expand_vars(scheme, vars):
180191

181192

182193
def _get_default_scheme():
183-
if os.name == 'posix':
184-
# the default scheme for posix is posix_prefix
185-
return 'posix_prefix'
186-
return os.name
194+
# XXX Graalpython change
195+
return 'graalpython'
196+
# if os.name == 'posix':
197+
# # the default scheme for posix is posix_prefix
198+
# return 'posix_prefix'
199+
# return os.name
187200

188201

189202
# NOTE: site.py has copy of this function.

graalpython/lib-python/3/test/test_sysconfig.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import shutil
66
from copy import copy
77

8-
from test.support import (import_module, TESTFN, unlink, check_warnings,
8+
from test.support import (import_module, TESTFN, unlink, check_warnings, impl_detail,
99
captured_stdout, skip_unless_symlink, change_cwd,
1010
PythonSymlink)
1111

@@ -228,7 +228,8 @@ def test_get_config_h_filename(self):
228228
self.assertTrue(os.path.isfile(config_h), config_h)
229229

230230
def test_get_scheme_names(self):
231-
wanted = ('nt', 'nt_user', 'osx_framework_user',
231+
# XXX Graalpython change: add our scheme
232+
wanted = ('graalpython', 'nt', 'nt_user', 'osx_framework_user',
232233
'posix_home', 'posix_prefix', 'posix_user')
233234
self.assertEqual(get_scheme_names(), wanted)
234235

@@ -316,6 +317,7 @@ def test_platform_in_subprocess(self):
316317
self.assertEqual(status, 0)
317318
self.assertEqual(my_platform, test_platform)
318319

320+
@impl_detail("no srcdir", graalvm=False)
319321
def test_srcdir(self):
320322
# See Issues #15322, #15364.
321323
srcdir = sysconfig.get_config_var('srcdir')
@@ -363,6 +365,8 @@ def test_SO_in_vars(self):
363365
self.assertIsNotNone(vars['SO'])
364366
self.assertEqual(vars['SO'], vars['EXT_SUFFIX'])
365367

368+
# We intentionally have a different suffix to avoid clashes with CPython
369+
@impl_detail("different suffix", graalvm=False)
366370
@unittest.skipUnless(sys.platform == 'linux' and
367371
hasattr(sys.implementation, '_multiarch'),
368372
'multiarch-specific test')
@@ -381,13 +385,15 @@ def test_triplet_in_ext_suffix(self):
381385
else: # 8 byte pointer size
382386
self.assertTrue(suffix.endswith('x86_64-linux-gnu.so'), suffix)
383387

388+
@impl_detail("different suffix", graalvm=False)
384389
@unittest.skipUnless(sys.platform == 'darwin', 'OS X-specific test')
385390
def test_osx_ext_suffix(self):
386391
suffix = sysconfig.get_config_var('EXT_SUFFIX')
387392
self.assertTrue(suffix.endswith('-darwin.so'), suffix)
388393

389394
class MakefileTests(unittest.TestCase):
390395

396+
@impl_detail("no Makefile", graalvm=False)
391397
@unittest.skipIf(sys.platform.startswith('win'),
392398
'Test is not Windows compatible')
393399
def test_get_makefile_filename(self):

0 commit comments

Comments
 (0)