aboutsummaryrefslogtreecommitdiffstats
path: root/meson/test cases/python3/1 basic
diff options
context:
space:
mode:
Diffstat (limited to 'meson/test cases/python3/1 basic')
-rw-r--r--meson/test cases/python3/1 basic/gluon/__init__.py0
-rw-r--r--meson/test cases/python3/1 basic/gluon/gluonator.py2
-rw-r--r--meson/test cases/python3/1 basic/meson.build32
-rwxr-xr-xmeson/test cases/python3/1 basic/prog.py9
-rw-r--r--meson/test cases/python3/1 basic/subdir/meson.build4
-rwxr-xr-xmeson/test cases/python3/1 basic/subdir/subprog.py12
6 files changed, 59 insertions, 0 deletions
diff --git a/meson/test cases/python3/1 basic/gluon/__init__.py b/meson/test cases/python3/1 basic/gluon/__init__.py
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/meson/test cases/python3/1 basic/gluon/__init__.py
diff --git a/meson/test cases/python3/1 basic/gluon/gluonator.py b/meson/test cases/python3/1 basic/gluon/gluonator.py
new file mode 100644
index 000000000..b53d6ded3
--- /dev/null
+++ b/meson/test cases/python3/1 basic/gluon/gluonator.py
@@ -0,0 +1,2 @@
+def gluoninate():
+ return 42
diff --git a/meson/test cases/python3/1 basic/meson.build b/meson/test cases/python3/1 basic/meson.build
new file mode 100644
index 000000000..4b8567d67
--- /dev/null
+++ b/meson/test cases/python3/1 basic/meson.build
@@ -0,0 +1,32 @@
+project('python sample', 'c')
+
+py3_mod = import('python3')
+py3 = py3_mod.find_python()
+
+py3_version = py3_mod.language_version()
+if py3_version.version_compare('< 3.2')
+ error('Invalid python version!?')
+endif
+
+py3_purelib = py3_mod.sysconfig_path('purelib')
+if not py3_purelib.to_lower().startswith('lib') or not py3_purelib.endswith('site-packages')
+ error('Python3 purelib path seems invalid?')
+endif
+
+# could be 'lib64' or 'Lib' on some systems
+py3_platlib = py3_mod.sysconfig_path('platlib')
+if not py3_platlib.to_lower().startswith('lib') or not py3_platlib.endswith('site-packages')
+ error('Python3 platlib path seems invalid?')
+endif
+
+# could be 'Include' on Windows
+py3_include = py3_mod.sysconfig_path('include')
+if not py3_include.to_lower().startswith('include')
+ error('Python3 include path seems invalid?')
+endif
+
+main = files('prog.py')
+
+test('toplevel', py3, args : main)
+
+subdir('subdir')
diff --git a/meson/test cases/python3/1 basic/prog.py b/meson/test cases/python3/1 basic/prog.py
new file mode 100755
index 000000000..9d95aea27
--- /dev/null
+++ b/meson/test cases/python3/1 basic/prog.py
@@ -0,0 +1,9 @@
+#!/usr/bin/env python3
+
+from gluon import gluonator
+import sys
+
+print('Running mainprog from root dir.')
+
+if gluonator.gluoninate() != 42:
+ sys.exit(1)
diff --git a/meson/test cases/python3/1 basic/subdir/meson.build b/meson/test cases/python3/1 basic/subdir/meson.build
new file mode 100644
index 000000000..8fe91b92e
--- /dev/null
+++ b/meson/test cases/python3/1 basic/subdir/meson.build
@@ -0,0 +1,4 @@
+test('subdir',
+ py3,
+ args : files('subprog.py'),
+ env : 'PYTHONPATH=' + meson.source_root())
diff --git a/meson/test cases/python3/1 basic/subdir/subprog.py b/meson/test cases/python3/1 basic/subdir/subprog.py
new file mode 100755
index 000000000..08652f084
--- /dev/null
+++ b/meson/test cases/python3/1 basic/subdir/subprog.py
@@ -0,0 +1,12 @@
+#!/usr/bin/env python3
+
+# In order to run this program, PYTHONPATH must be set to
+# point to source root.
+
+from gluon import gluonator
+import sys
+
+print('Running mainprog from subdir.')
+
+if gluonator.gluoninate() != 42:
+ sys.exit(1)