From 910cdc0f7a1a093e190213167bec9bc4ff04fd4a Mon Sep 17 00:00:00 2001 From: MatejTomes Date: Wed, 15 Jul 2026 16:33:00 +0200 Subject: [PATCH] Add meson.build files to cherab directories Include also files for directories with no cython files and subdirs to copy what Raysect does. --- cherab/core/atomic/data/lineshape/meson.build | 29 +++++++++++++++ .../atomic/data/lineshape/stark/meson.build | 26 ++++++++++++++ .../atomic/data/lineshape/zeeman/meson.build | 28 +++++++++++++++ .../lineshape/zeeman/parametrised/meson.build | 26 ++++++++++++++ cherab/core/atomic/data/meson.build | 28 +++++++++++++++ cherab/core/atomic/meson.build | 29 +++++++++++++++ cherab/core/atomic/tests/meson.build | 26 ++++++++++++++ cherab/core/beam/meson.build | 26 ++++++++++++++ cherab/core/laser/meson.build | 28 +++++++++++++++ cherab/core/laser/tests/meson.build | 26 ++++++++++++++ cherab/core/math/caching/meson.build | 28 +++++++++++++++ cherab/core/math/caching/tests/meson.build | 26 ++++++++++++++ .../function/float/function6d/meson.build | 28 +++++++++++++++ .../float/function6d/tests/meson.build | 26 ++++++++++++++ cherab/core/math/function/float/meson.build | 28 +++++++++++++++ cherab/core/math/function/meson.build | 28 +++++++++++++++ cherab/core/math/integrators/meson.build | 26 ++++++++++++++ cherab/core/math/interpolators/meson.build | 28 +++++++++++++++ .../core/math/interpolators/tests/meson.build | 28 +++++++++++++++ .../interpolators/tests/scripts/meson.build | 26 ++++++++++++++ cherab/core/math/meson.build | 33 +++++++++++++++++ cherab/core/math/tests/meson.build | 26 ++++++++++++++ cherab/core/math/transform/meson.build | 26 ++++++++++++++ cherab/core/meson.build | 36 +++++++++++++++++++ cherab/core/model/attenuator/meson.build | 26 ++++++++++++++ cherab/core/model/beam/meson.build | 28 +++++++++++++++ cherab/core/model/beam/tests/meson.build | 26 ++++++++++++++ cherab/core/model/laser/meson.build | 28 +++++++++++++++ cherab/core/model/laser/tests/meson.build | 26 ++++++++++++++ cherab/core/model/lineshape/beam/meson.build | 26 ++++++++++++++ cherab/core/model/lineshape/meson.build | 28 +++++++++++++++ cherab/core/model/meson.build | 32 +++++++++++++++++ cherab/core/model/plasma/meson.build | 28 +++++++++++++++ cherab/core/model/plasma/tests/meson.build | 26 ++++++++++++++ cherab/core/plasma/meson.build | 26 ++++++++++++++ cherab/core/rebeam/distribution/meson.build | 26 ++++++++++++++ cherab/core/rebeam/field/meson.build | 26 ++++++++++++++ cherab/core/rebeam/math/meson.build | 26 ++++++++++++++ cherab/core/rebeam/meson.build | 30 ++++++++++++++++ cherab/core/tests/meson.build | 26 ++++++++++++++ cherab/core/utility/meson.build | 28 +++++++++++++++ cherab/core/utility/tests/meson.build | 26 ++++++++++++++ .../equilibrium/data/equilibrium/meson.build | 26 ++++++++++++++ cherab/generomak/equilibrium/data/meson.build | 28 +++++++++++++++ cherab/generomak/equilibrium/meson.build | 28 +++++++++++++++ .../machine/data/first_wall/meson.build | 26 ++++++++++++++ cherab/generomak/machine/data/meson.build | 29 +++++++++++++++ .../machine/data/plasma/edge/meson.build | 26 ++++++++++++++ .../generomak/machine/data/plasma/meson.build | 28 +++++++++++++++ cherab/generomak/machine/meson.build | 28 +++++++++++++++ cherab/generomak/meson.build | 31 ++++++++++++++++ cherab/generomak/plasma/data/core/meson.build | 26 ++++++++++++++ cherab/generomak/plasma/data/edge/meson.build | 26 ++++++++++++++ cherab/generomak/plasma/data/meson.build | 29 +++++++++++++++ cherab/generomak/plasma/meson.build | 28 +++++++++++++++ cherab/generomak/spectroscopy/meson.build | 28 +++++++++++++++ .../thomson_scattering/meson.build | 26 ++++++++++++++ cherab/meson.build | 31 ++++++++++++++++ cherab/openadas/meson.build | 31 ++++++++++++++++ cherab/openadas/parse/meson.build | 26 ++++++++++++++ cherab/openadas/rates/meson.build | 26 ++++++++++++++ cherab/openadas/repository/beam/meson.build | 26 ++++++++++++++ cherab/openadas/repository/meson.build | 28 +++++++++++++++ cherab/openadas/tests/meson.build | 26 ++++++++++++++ cherab/tools/emitters/meson.build | 28 +++++++++++++++ .../tools/emitters/nbi_radiator/meson.build | 26 ++++++++++++++ cherab/tools/equilibrium/meson.build | 26 ++++++++++++++ cherab/tools/inversions/meson.build | 28 +++++++++++++++ cherab/tools/inversions/opencl/meson.build | 26 ++++++++++++++ cherab/tools/meson.build | 36 +++++++++++++++++++ cherab/tools/observers/group/meson.build | 26 ++++++++++++++ cherab/tools/observers/meson.build | 29 +++++++++++++++ .../tools/observers/spectroscopy/meson.build | 26 ++++++++++++++ cherab/tools/plasmas/meson.build | 26 ++++++++++++++ cherab/tools/primitives/meson.build | 26 ++++++++++++++ cherab/tools/raytransfer/meson.build | 26 ++++++++++++++ cherab/tools/spectroscopy/meson.build | 26 ++++++++++++++ .../ionisation/meson.build | 26 ++++++++++++++ .../data/atomic_rates_mockup/meson.build | 30 ++++++++++++++++ .../recombination/meson.build | 26 ++++++++++++++ .../thermal_cx/h/0/meson.build | 26 ++++++++++++++ .../thermal_cx/h/meson.build | 28 +++++++++++++++ .../thermal_cx/meson.build | 28 +++++++++++++++ cherab/tools/tests/data/meson.build | 28 +++++++++++++++ cherab/tools/tests/meson.build | 28 +++++++++++++++ meson.build | 15 ++++++++ 86 files changed, 2350 insertions(+) create mode 100644 cherab/core/atomic/data/lineshape/meson.build create mode 100644 cherab/core/atomic/data/lineshape/stark/meson.build create mode 100644 cherab/core/atomic/data/lineshape/zeeman/meson.build create mode 100644 cherab/core/atomic/data/lineshape/zeeman/parametrised/meson.build create mode 100644 cherab/core/atomic/data/meson.build create mode 100644 cherab/core/atomic/meson.build create mode 100644 cherab/core/atomic/tests/meson.build create mode 100644 cherab/core/beam/meson.build create mode 100644 cherab/core/laser/meson.build create mode 100644 cherab/core/laser/tests/meson.build create mode 100644 cherab/core/math/caching/meson.build create mode 100644 cherab/core/math/caching/tests/meson.build create mode 100644 cherab/core/math/function/float/function6d/meson.build create mode 100644 cherab/core/math/function/float/function6d/tests/meson.build create mode 100644 cherab/core/math/function/float/meson.build create mode 100644 cherab/core/math/function/meson.build create mode 100644 cherab/core/math/integrators/meson.build create mode 100644 cherab/core/math/interpolators/meson.build create mode 100644 cherab/core/math/interpolators/tests/meson.build create mode 100644 cherab/core/math/interpolators/tests/scripts/meson.build create mode 100644 cherab/core/math/meson.build create mode 100644 cherab/core/math/tests/meson.build create mode 100644 cherab/core/math/transform/meson.build create mode 100644 cherab/core/meson.build create mode 100644 cherab/core/model/attenuator/meson.build create mode 100644 cherab/core/model/beam/meson.build create mode 100644 cherab/core/model/beam/tests/meson.build create mode 100644 cherab/core/model/laser/meson.build create mode 100644 cherab/core/model/laser/tests/meson.build create mode 100644 cherab/core/model/lineshape/beam/meson.build create mode 100644 cherab/core/model/lineshape/meson.build create mode 100644 cherab/core/model/meson.build create mode 100644 cherab/core/model/plasma/meson.build create mode 100644 cherab/core/model/plasma/tests/meson.build create mode 100644 cherab/core/plasma/meson.build create mode 100644 cherab/core/rebeam/distribution/meson.build create mode 100644 cherab/core/rebeam/field/meson.build create mode 100644 cherab/core/rebeam/math/meson.build create mode 100644 cherab/core/rebeam/meson.build create mode 100644 cherab/core/tests/meson.build create mode 100644 cherab/core/utility/meson.build create mode 100644 cherab/core/utility/tests/meson.build create mode 100644 cherab/generomak/equilibrium/data/equilibrium/meson.build create mode 100644 cherab/generomak/equilibrium/data/meson.build create mode 100644 cherab/generomak/equilibrium/meson.build create mode 100644 cherab/generomak/machine/data/first_wall/meson.build create mode 100644 cherab/generomak/machine/data/meson.build create mode 100644 cherab/generomak/machine/data/plasma/edge/meson.build create mode 100644 cherab/generomak/machine/data/plasma/meson.build create mode 100644 cherab/generomak/machine/meson.build create mode 100644 cherab/generomak/meson.build create mode 100644 cherab/generomak/plasma/data/core/meson.build create mode 100644 cherab/generomak/plasma/data/edge/meson.build create mode 100644 cherab/generomak/plasma/data/meson.build create mode 100644 cherab/generomak/plasma/meson.build create mode 100644 cherab/generomak/spectroscopy/meson.build create mode 100644 cherab/generomak/spectroscopy/thomson_scattering/meson.build create mode 100644 cherab/meson.build create mode 100644 cherab/openadas/meson.build create mode 100644 cherab/openadas/parse/meson.build create mode 100644 cherab/openadas/rates/meson.build create mode 100644 cherab/openadas/repository/beam/meson.build create mode 100644 cherab/openadas/repository/meson.build create mode 100644 cherab/openadas/tests/meson.build create mode 100644 cherab/tools/emitters/meson.build create mode 100644 cherab/tools/emitters/nbi_radiator/meson.build create mode 100644 cherab/tools/equilibrium/meson.build create mode 100644 cherab/tools/inversions/meson.build create mode 100644 cherab/tools/inversions/opencl/meson.build create mode 100644 cherab/tools/meson.build create mode 100644 cherab/tools/observers/group/meson.build create mode 100644 cherab/tools/observers/meson.build create mode 100644 cherab/tools/observers/spectroscopy/meson.build create mode 100644 cherab/tools/plasmas/meson.build create mode 100644 cherab/tools/primitives/meson.build create mode 100644 cherab/tools/raytransfer/meson.build create mode 100644 cherab/tools/spectroscopy/meson.build create mode 100644 cherab/tools/tests/data/atomic_rates_mockup/ionisation/meson.build create mode 100644 cherab/tools/tests/data/atomic_rates_mockup/meson.build create mode 100644 cherab/tools/tests/data/atomic_rates_mockup/recombination/meson.build create mode 100644 cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/0/meson.build create mode 100644 cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/meson.build create mode 100644 cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/meson.build create mode 100644 cherab/tools/tests/data/meson.build create mode 100644 cherab/tools/tests/meson.build create mode 100644 meson.build diff --git a/cherab/core/atomic/data/lineshape/meson.build b/cherab/core/atomic/data/lineshape/meson.build new file mode 100644 index 00000000..a8d1b85f --- /dev/null +++ b/cherab/core/atomic/data/lineshape/meson.build @@ -0,0 +1,29 @@ +target_path = 'cherab/core/atomic/data/lineshape' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('stark') +subdir('zeeman') diff --git a/cherab/core/atomic/data/lineshape/stark/meson.build b/cherab/core/atomic/data/lineshape/stark/meson.build new file mode 100644 index 00000000..6a0214e2 --- /dev/null +++ b/cherab/core/atomic/data/lineshape/stark/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/atomic/data/lineshape/stark' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['d.json', 'h.json', 't.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/atomic/data/lineshape/zeeman/meson.build b/cherab/core/atomic/data/lineshape/zeeman/meson.build new file mode 100644 index 00000000..6f23110c --- /dev/null +++ b/cherab/core/atomic/data/lineshape/zeeman/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/atomic/data/lineshape/zeeman' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('parametrised') diff --git a/cherab/core/atomic/data/lineshape/zeeman/parametrised/meson.build b/cherab/core/atomic/data/lineshape/zeeman/parametrised/meson.build new file mode 100644 index 00000000..2a66f05f --- /dev/null +++ b/cherab/core/atomic/data/lineshape/zeeman/parametrised/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/atomic/data/lineshape/zeeman/parametrised' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['b.json', 'be.json', 'c.json', 'd.json', 'h.json', 'he.json', 'he3.json', 'n.json', 'ne.json', 'o.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/atomic/data/meson.build b/cherab/core/atomic/data/meson.build new file mode 100644 index 00000000..93efa5a6 --- /dev/null +++ b/cherab/core/atomic/data/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/atomic/data' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['maxwellian_free_free_gaunt_factor.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('lineshape') diff --git a/cherab/core/atomic/meson.build b/cherab/core/atomic/meson.build new file mode 100644 index 00000000..0538eb77 --- /dev/null +++ b/cherab/core/atomic/meson.build @@ -0,0 +1,29 @@ +target_path = 'cherab/core/atomic' + +# source files +py_files = ['__init__.py'] +pyx_files = ['elements.pyx', 'gaunt.pyx', 'interface.pyx', 'line.pyx', 'rates.pyx', 'zeeman.pyx'] +pxd_files = ['__init__.pxd', 'elements.pxd', 'gaunt.pxd', 'interface.pxd', 'line.pxd', 'rates.pxd', 'zeeman.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('data') +subdir('tests') diff --git a/cherab/core/atomic/tests/meson.build b/cherab/core/atomic/tests/meson.build new file mode 100644 index 00000000..ee9a6b08 --- /dev/null +++ b/cherab/core/atomic/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/atomic/tests' + +# source files +py_files = ['__init__.py', 'test_line.py', 'test_zeeman.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/beam/meson.build b/cherab/core/beam/meson.build new file mode 100644 index 00000000..ee0dbc43 --- /dev/null +++ b/cherab/core/beam/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/beam' + +# source files +py_files = ['__init__.py'] +pyx_files = ['material.pyx', 'model.pyx', 'node.pyx'] +pxd_files = ['__init__.pxd', 'material.pxd', 'model.pxd', 'node.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/laser/meson.build b/cherab/core/laser/meson.build new file mode 100644 index 00000000..283b62cd --- /dev/null +++ b/cherab/core/laser/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/laser' + +# source files +py_files = ['__init__.py'] +pyx_files = ['laserspectrum.pyx', 'material.pyx', 'model.pyx', 'node.pyx', 'profile.pyx'] +pxd_files = ['__init__.pxd', 'laserspectrum.pxd', 'material.pxd', 'model.pxd', 'node.pxd', 'profile.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('tests') diff --git a/cherab/core/laser/tests/meson.build b/cherab/core/laser/tests/meson.build new file mode 100644 index 00000000..3f172216 --- /dev/null +++ b/cherab/core/laser/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/laser/tests' + +# source files +py_files = ['__init__.py', 'test_laser.py', 'test_laserspectrum.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/math/caching/meson.build b/cherab/core/math/caching/meson.build new file mode 100644 index 00000000..0c43f9f5 --- /dev/null +++ b/cherab/core/math/caching/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/math/caching' + +# source files +py_files = ['__init__.py', 'utility.py'] +pyx_files = ['caching1d.pyx', 'caching2d.pyx', 'caching3d.pyx'] +pxd_files = ['__init__.pxd', 'caching1d.pxd', 'caching2d.pxd', 'caching3d.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('tests') diff --git a/cherab/core/math/caching/tests/meson.build b/cherab/core/math/caching/tests/meson.build new file mode 100644 index 00000000..b47ac420 --- /dev/null +++ b/cherab/core/math/caching/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/math/caching/tests' + +# source files +py_files = ['__init__.py', 'test_caching1d.py', 'test_caching2d.py', 'test_caching3d.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/math/function/float/function6d/meson.build b/cherab/core/math/function/float/function6d/meson.build new file mode 100644 index 00000000..56481f96 --- /dev/null +++ b/cherab/core/math/function/float/function6d/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/math/function/float/function6d' + +# source files +py_files = ['__init__.py'] +pyx_files = ['arg.pyx', 'autowrap.pyx', 'base.pyx', 'blend.pyx', 'cmath.pyx', 'constant.pyx'] +pxd_files = ['__init__.pxd', 'arg.pxd', 'autowrap.pxd', 'base.pxd', 'blend.pxd', 'cmath.pxd', 'constant.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('tests') diff --git a/cherab/core/math/function/float/function6d/tests/meson.build b/cherab/core/math/function/float/function6d/tests/meson.build new file mode 100644 index 00000000..52a8428f --- /dev/null +++ b/cherab/core/math/function/float/function6d/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/math/function/float/function6d/tests' + +# source files +py_files = ['__init__.py', 'test_arg.py', 'test_autowrap.py', 'test_base.py', 'test_cmath.py', 'test_constant.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/math/function/float/meson.build b/cherab/core/math/function/float/meson.build new file mode 100644 index 00000000..c9e54223 --- /dev/null +++ b/cherab/core/math/function/float/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/math/function/float' + +# source files +py_files = ['__init__.py'] +pyx_files = [] +pxd_files = ['__init__.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('function6d') diff --git a/cherab/core/math/function/meson.build b/cherab/core/math/function/meson.build new file mode 100644 index 00000000..9c255011 --- /dev/null +++ b/cherab/core/math/function/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/math/function' + +# source files +py_files = ['__init__.py'] +pyx_files = [] +pxd_files = ['__init__.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('float') diff --git a/cherab/core/math/integrators/meson.build b/cherab/core/math/integrators/meson.build new file mode 100644 index 00000000..1610f202 --- /dev/null +++ b/cherab/core/math/integrators/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/math/integrators' + +# source files +py_files = ['__init__.py'] +pyx_files = ['integrators1d.pyx', 'integrators2d.pyx'] +pxd_files = ['__init__.pxd', 'integrators1d.pxd', 'integrators2d.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/math/interpolators/meson.build b/cherab/core/math/interpolators/meson.build new file mode 100644 index 00000000..cec42e86 --- /dev/null +++ b/cherab/core/math/interpolators/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/math/interpolators' + +# source files +py_files = ['__init__.py'] +pyx_files = ['interpolators1d.pyx', 'interpolators2d.pyx', 'interpolators3d.pyx', 'utility.pyx'] +pxd_files = ['__init__.pxd', 'interpolators1d.pxd', 'interpolators2d.pxd', 'interpolators3d.pxd', 'utility.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('tests') diff --git a/cherab/core/math/interpolators/tests/meson.build b/cherab/core/math/interpolators/tests/meson.build new file mode 100644 index 00000000..d29aadbd --- /dev/null +++ b/cherab/core/math/interpolators/tests/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/math/interpolators/tests' + +# source files +py_files = ['__init__.py', 'data_test_interpolators3d.py', 'test_interpolators1d.py', 'test_interpolators2d.py', 'test_interpolators3d.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('scripts') diff --git a/cherab/core/math/interpolators/tests/scripts/meson.build b/cherab/core/math/interpolators/tests/scripts/meson.build new file mode 100644 index 00000000..142ca81b --- /dev/null +++ b/cherab/core/math/interpolators/tests/scripts/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/math/interpolators/tests/scripts' + +# source files +py_files = ['__init__.py', 'generate_interp_1d_c1.py', 'generate_interp_1d_c2.py', 'generate_interp_2d.py', 'generate_interp_3d.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/math/meson.build b/cherab/core/math/meson.build new file mode 100644 index 00000000..60087f45 --- /dev/null +++ b/cherab/core/math/meson.build @@ -0,0 +1,33 @@ +target_path = 'cherab/core/math' + +# source files +py_files = ['__init__.py'] +pyx_files = ['clamp.pyx', 'mappers.pyx', 'mask.pyx', 'samplers.pyx', 'slice.pyx'] +pxd_files = ['__init__.pxd', 'clamp.pxd', 'mappers.pxd', 'mask.pxd', 'samplers.pxd', 'slice.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('caching') +subdir('function') +subdir('integrators') +subdir('interpolators') +subdir('tests') +subdir('transform') diff --git a/cherab/core/math/tests/meson.build b/cherab/core/math/tests/meson.build new file mode 100644 index 00000000..42f10cfb --- /dev/null +++ b/cherab/core/math/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/math/tests' + +# source files +py_files = ['__init__.py', 'test_integrators.py', 'test_mappers.py', 'test_samplers.py', 'test_transform.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/math/transform/meson.build b/cherab/core/math/transform/meson.build new file mode 100644 index 00000000..92c34ba1 --- /dev/null +++ b/cherab/core/math/transform/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/math/transform' + +# source files +py_files = ['__init__.py'] +pyx_files = ['cylindrical.pyx', 'periodic.pyx'] +pxd_files = ['__init__.pxd', 'cylindrical.pxd', 'periodic.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/meson.build b/cherab/core/meson.build new file mode 100644 index 00000000..5c2f75a5 --- /dev/null +++ b/cherab/core/meson.build @@ -0,0 +1,36 @@ +target_path = 'cherab/core' + +# source files +py_files = ['__init__.py'] +pyx_files = ['distribution.pyx', 'species.pyx'] +pxd_files = ['__init__.pxd', 'distribution.pxd', 'species.pxd'] +data_files = ['VERSION'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('atomic') +subdir('beam') +subdir('laser') +subdir('math') +subdir('model') +subdir('plasma') +subdir('rebeam') +subdir('tests') +subdir('utility') diff --git a/cherab/core/model/attenuator/meson.build b/cherab/core/model/attenuator/meson.build new file mode 100644 index 00000000..3948e297 --- /dev/null +++ b/cherab/core/model/attenuator/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/model/attenuator' + +# source files +py_files = ['__init__.py'] +pyx_files = ['singleray.pyx'] +pxd_files = ['__init__.pxd', 'singleray.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/model/beam/meson.build b/cherab/core/model/beam/meson.build new file mode 100644 index 00000000..23381f3e --- /dev/null +++ b/cherab/core/model/beam/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/model/beam' + +# source files +py_files = ['__init__.py'] +pyx_files = ['beam_emission.pyx', 'charge_exchange.pyx'] +pxd_files = ['__init__.pxd', 'beam_emission.pxd', 'charge_exchange.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('tests') diff --git a/cherab/core/model/beam/tests/meson.build b/cherab/core/model/beam/tests/meson.build new file mode 100644 index 00000000..e60c57a0 --- /dev/null +++ b/cherab/core/model/beam/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/model/beam/tests' + +# source files +py_files = ['test_distribution.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/model/laser/meson.build b/cherab/core/model/laser/meson.build new file mode 100644 index 00000000..9a46776e --- /dev/null +++ b/cherab/core/model/laser/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/model/laser' + +# source files +py_files = ['__init__.py'] +pyx_files = ['laserspectrum.pyx', 'math_functions.pyx', 'model.pyx', 'profile.pyx'] +pxd_files = ['__init__.pxd', 'laserspectrum.pxd', 'math_functions.pxd', 'model.pxd', 'profile.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('tests') diff --git a/cherab/core/model/laser/tests/meson.build b/cherab/core/model/laser/tests/meson.build new file mode 100644 index 00000000..dc5961aa --- /dev/null +++ b/cherab/core/model/laser/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/model/laser/tests' + +# source files +py_files = ['__init__.py', 'test_laserspectrum.py', 'test_model.py', 'test_profiles.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/model/lineshape/beam/meson.build b/cherab/core/model/lineshape/beam/meson.build new file mode 100644 index 00000000..d20aa003 --- /dev/null +++ b/cherab/core/model/lineshape/beam/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/model/lineshape/beam' + +# source files +py_files = ['__init__.py'] +pyx_files = ['base.pyx', 'mse.pyx'] +pxd_files = ['__init__.pxd', 'base.pxd', 'mse.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/model/lineshape/meson.build b/cherab/core/model/lineshape/meson.build new file mode 100644 index 00000000..f27176b3 --- /dev/null +++ b/cherab/core/model/lineshape/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/model/lineshape' + +# source files +py_files = ['__init__.py'] +pyx_files = ['base.pyx', 'doppler.pyx', 'gaussian.pyx', 'multiplet.pyx', 'stark.pyx', 'zeeman.pyx'] +pxd_files = ['__init__.pxd', 'base.pxd', 'doppler.pxd', 'gaussian.pxd', 'multiplet.pxd', 'stark.pxd', 'zeeman.pxd'] +data_files = ['stark.html'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('beam') diff --git a/cherab/core/model/meson.build b/cherab/core/model/meson.build new file mode 100644 index 00000000..9cfada23 --- /dev/null +++ b/cherab/core/model/meson.build @@ -0,0 +1,32 @@ +target_path = 'cherab/core/model' + +# source files +py_files = ['__init__.py'] +pyx_files = [] +pxd_files = ['__init__.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('attenuator') +subdir('beam') +subdir('laser') +subdir('lineshape') +subdir('plasma') diff --git a/cherab/core/model/plasma/meson.build b/cherab/core/model/plasma/meson.build new file mode 100644 index 00000000..9b8dd00a --- /dev/null +++ b/cherab/core/model/plasma/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/model/plasma' + +# source files +py_files = ['__init__.py'] +pyx_files = ['bremsstrahlung.pyx', 'impact_excitation.pyx', 'recombination.pyx', 'thermal_cx.pyx', 'total_radiated_power.pyx'] +pxd_files = ['__init__.pxd', 'bremsstrahlung.pxd', 'impact_excitation.pxd', 'recombination.pxd', 'thermal_cx.pxd', 'total_radiated_power.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('tests') diff --git a/cherab/core/model/plasma/tests/meson.build b/cherab/core/model/plasma/tests/meson.build new file mode 100644 index 00000000..d449361e --- /dev/null +++ b/cherab/core/model/plasma/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/model/plasma/tests' + +# source files +py_files = ['__init__.py', 'test_models.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/plasma/meson.build b/cherab/core/plasma/meson.build new file mode 100644 index 00000000..45bf6d1b --- /dev/null +++ b/cherab/core/plasma/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/plasma' + +# source files +py_files = ['__init__.py'] +pyx_files = ['material.pyx', 'model.pyx', 'node.pyx'] +pxd_files = ['__init__.pxd', 'material.pxd', 'model.pxd', 'node.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/rebeam/distribution/meson.build b/cherab/core/rebeam/distribution/meson.build new file mode 100644 index 00000000..685624eb --- /dev/null +++ b/cherab/core/rebeam/distribution/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/rebeam/distribution' + +# source files +py_files = ['__init__.py'] +pyx_files = ['analytical.pyx', 'jorek.pyx', 'utility.pyx'] +pxd_files = ['__init__.pxd', 'analytical.pxd', 'jorek.pxd', 'utility.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/rebeam/field/meson.build b/cherab/core/rebeam/field/meson.build new file mode 100644 index 00000000..ea90a954 --- /dev/null +++ b/cherab/core/rebeam/field/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/rebeam/field' + +# source files +py_files = ['__init__.py'] +pyx_files = ['jorek.pyx'] +pxd_files = ['__init__.pxd', 'jorek.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/rebeam/math/meson.build b/cherab/core/rebeam/math/meson.build new file mode 100644 index 00000000..f6ce7372 --- /dev/null +++ b/cherab/core/rebeam/math/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/rebeam/math' + +# source files +py_files = [] +pyx_files = ['transform.pyx'] +pxd_files = ['__init__.pxd', 'transform.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/rebeam/meson.build b/cherab/core/rebeam/meson.build new file mode 100644 index 00000000..bbee00ee --- /dev/null +++ b/cherab/core/rebeam/meson.build @@ -0,0 +1,30 @@ +target_path = 'cherab/core/rebeam' + +# source files +py_files = ['__init__.py'] +pyx_files = [] +pxd_files = ['__init__.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('distribution') +subdir('field') +subdir('math') diff --git a/cherab/core/tests/meson.build b/cherab/core/tests/meson.build new file mode 100644 index 00000000..8586d58b --- /dev/null +++ b/cherab/core/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/tests' + +# source files +py_files = ['__init__.py', 'test_beam.py', 'test_beamcxline.py', 'test_bremsstrahlung.py', 'test_line_emission.py', 'test_lineshapes.py', 'test_maxwellian.py', 'test_species.py', 'test_total_radiated_power.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/core/utility/meson.build b/cherab/core/utility/meson.build new file mode 100644 index 00000000..9e2aeb9f --- /dev/null +++ b/cherab/core/utility/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/core/utility' + +# source files +py_files = ['__init__.py', 'conversion.py', 'notify.py', 'recursivedict.py'] +pyx_files = ['constants.pyx'] +pxd_files = ['__init__.pxd', 'constants.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('tests') diff --git a/cherab/core/utility/tests/meson.build b/cherab/core/utility/tests/meson.build new file mode 100644 index 00000000..935e3e01 --- /dev/null +++ b/cherab/core/utility/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/core/utility/tests' + +# source files +py_files = ['__init__.py', 'test_conversion.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/generomak/equilibrium/data/equilibrium/meson.build b/cherab/generomak/equilibrium/data/equilibrium/meson.build new file mode 100644 index 00000000..853134b3 --- /dev/null +++ b/cherab/generomak/equilibrium/data/equilibrium/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/generomak/equilibrium/data/equilibrium' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['generomak_equilibrium.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/generomak/equilibrium/data/meson.build b/cherab/generomak/equilibrium/data/meson.build new file mode 100644 index 00000000..c01974d6 --- /dev/null +++ b/cherab/generomak/equilibrium/data/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/generomak/equilibrium/data' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['generomak_equilibrium.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('equilibrium') diff --git a/cherab/generomak/equilibrium/meson.build b/cherab/generomak/equilibrium/meson.build new file mode 100644 index 00000000..d0afc75b --- /dev/null +++ b/cherab/generomak/equilibrium/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/generomak/equilibrium' + +# source files +py_files = ['__init__.py', 'equilibrium.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('data') diff --git a/cherab/generomak/machine/data/first_wall/meson.build b/cherab/generomak/machine/data/first_wall/meson.build new file mode 100644 index 00000000..67c7b64b --- /dev/null +++ b/cherab/generomak/machine/data/first_wall/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/generomak/machine/data/first_wall' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['BottomBaffle.obj', 'BottomDivertorFloor.obj', 'BottomInnerVerticalTarget.obj', 'BottomOuterVerticalTarget.obj', 'InnerDivertorBaffle.obj', 'InnerWallLimiter.obj', 'OuterWallLimiter.obj', 'TopBaffle.obj', 'TopDivertorFloor.obj', 'TopInnerVerticalTarget.obj', 'TopOuterVerticalTarget.obj'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/generomak/machine/data/meson.build b/cherab/generomak/machine/data/meson.build new file mode 100644 index 00000000..386343f0 --- /dev/null +++ b/cherab/generomak/machine/data/meson.build @@ -0,0 +1,29 @@ +target_path = 'cherab/generomak/machine/data' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('first_wall') +subdir('plasma') diff --git a/cherab/generomak/machine/data/plasma/edge/meson.build b/cherab/generomak/machine/data/plasma/edge/meson.build new file mode 100644 index 00000000..c0e04ac9 --- /dev/null +++ b/cherab/generomak/machine/data/plasma/edge/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/generomak/machine/data/plasma/edge' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/generomak/machine/data/plasma/meson.build b/cherab/generomak/machine/data/plasma/meson.build new file mode 100644 index 00000000..0e559072 --- /dev/null +++ b/cherab/generomak/machine/data/plasma/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/generomak/machine/data/plasma' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('edge') diff --git a/cherab/generomak/machine/meson.build b/cherab/generomak/machine/meson.build new file mode 100644 index 00000000..7b7cec7b --- /dev/null +++ b/cherab/generomak/machine/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/generomak/machine' + +# source files +py_files = ['__init__.py', 'first_wall.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('data') diff --git a/cherab/generomak/meson.build b/cherab/generomak/meson.build new file mode 100644 index 00000000..328b1579 --- /dev/null +++ b/cherab/generomak/meson.build @@ -0,0 +1,31 @@ +target_path = 'cherab/generomak' + +# source files +py_files = ['__init__.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('equilibrium') +subdir('machine') +subdir('plasma') +subdir('spectroscopy') diff --git a/cherab/generomak/plasma/data/core/meson.build b/cherab/generomak/plasma/data/core/meson.build new file mode 100644 index 00000000..debba220 --- /dev/null +++ b/cherab/generomak/plasma/data/core/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/generomak/plasma/data/core' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['carbon0.json', 'carbon1.json', 'carbon2.json', 'carbon3.json', 'carbon4.json', 'carbon5.json', 'carbon6.json', 'electrons.json', 'hydrogen0.json', 'hydrogen1.json', 'psi_norm.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/generomak/plasma/data/edge/meson.build b/cherab/generomak/plasma/data/edge/meson.build new file mode 100644 index 00000000..20489ff8 --- /dev/null +++ b/cherab/generomak/plasma/data/edge/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/generomak/plasma/data/edge' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['carbon0.json', 'carbon1.json', 'carbon2.json', 'carbon3.json', 'carbon4.json', 'carbon5.json', 'carbon6.json', 'electrons.json', 'hydrogen0.json', 'hydrogen1.json', 'mesh.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/generomak/plasma/data/meson.build b/cherab/generomak/plasma/data/meson.build new file mode 100644 index 00000000..00eb90b1 --- /dev/null +++ b/cherab/generomak/plasma/data/meson.build @@ -0,0 +1,29 @@ +target_path = 'cherab/generomak/plasma/data' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('core') +subdir('edge') diff --git a/cherab/generomak/plasma/meson.build b/cherab/generomak/plasma/meson.build new file mode 100644 index 00000000..778a6be6 --- /dev/null +++ b/cherab/generomak/plasma/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/generomak/plasma' + +# source files +py_files = ['__init__.py', 'plasma.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('data') diff --git a/cherab/generomak/spectroscopy/meson.build b/cherab/generomak/spectroscopy/meson.build new file mode 100644 index 00000000..22a353ec --- /dev/null +++ b/cherab/generomak/spectroscopy/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/generomak/spectroscopy' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('thomson_scattering') diff --git a/cherab/generomak/spectroscopy/thomson_scattering/meson.build b/cherab/generomak/spectroscopy/thomson_scattering/meson.build new file mode 100644 index 00000000..d267edfc --- /dev/null +++ b/cherab/generomak/spectroscopy/thomson_scattering/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/generomak/spectroscopy/thomson_scattering' + +# source files +py_files = ['objective.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/meson.build b/cherab/meson.build new file mode 100644 index 00000000..d7b116cc --- /dev/null +++ b/cherab/meson.build @@ -0,0 +1,31 @@ +target_path = 'cherab' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('core') +subdir('generomak') +subdir('openadas') +subdir('tools') diff --git a/cherab/openadas/meson.build b/cherab/openadas/meson.build new file mode 100644 index 00000000..50b609db --- /dev/null +++ b/cherab/openadas/meson.build @@ -0,0 +1,31 @@ +target_path = 'cherab/openadas' + +# source files +py_files = ['__init__.py', 'install.py', 'openadas.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('parse') +subdir('rates') +subdir('repository') +subdir('tests') diff --git a/cherab/openadas/parse/meson.build b/cherab/openadas/parse/meson.build new file mode 100644 index 00000000..8384f835 --- /dev/null +++ b/cherab/openadas/parse/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/openadas/parse' + +# source files +py_files = ['__init__.py', 'adf11.py', 'adf12.py', 'adf15.py', 'adf21.py', 'adf22.py', 'utility.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/openadas/rates/meson.build b/cherab/openadas/rates/meson.build new file mode 100644 index 00000000..71151e94 --- /dev/null +++ b/cherab/openadas/rates/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/openadas/rates' + +# source files +py_files = ['__init__.py'] +pyx_files = ['atomic.pyx', 'beam.pyx', 'cx.pyx', 'pec.pyx', 'radiated_power.pyx'] +pxd_files = ['__init__.pxd', 'atomic.pxd', 'beam.pxd', 'cx.pxd', 'pec.pxd', 'radiated_power.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/openadas/repository/beam/meson.build b/cherab/openadas/repository/beam/meson.build new file mode 100644 index 00000000..6a9f83a6 --- /dev/null +++ b/cherab/openadas/repository/beam/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/openadas/repository/beam' + +# source files +py_files = ['__init__.py', 'cx.py', 'emission.py', 'population.py', 'stopping.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/openadas/repository/meson.build b/cherab/openadas/repository/meson.build new file mode 100644 index 00000000..cca63e5b --- /dev/null +++ b/cherab/openadas/repository/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/openadas/repository' + +# source files +py_files = ['__init__.py', 'atomic.py', 'create.py', 'pec.py', 'radiated_power.py', 'utility.py', 'wavelength.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('beam') diff --git a/cherab/openadas/tests/meson.build b/cherab/openadas/tests/meson.build new file mode 100644 index 00000000..6086caa6 --- /dev/null +++ b/cherab/openadas/tests/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/openadas/tests' + +# source files +py_files = ['__init__.py', 'test_adf11_charges.py', 'test_adf15.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/emitters/meson.build b/cherab/tools/emitters/meson.build new file mode 100644 index 00000000..1ac852a3 --- /dev/null +++ b/cherab/tools/emitters/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/tools/emitters' + +# source files +py_files = ['__init__.py'] +pyx_files = ['radiation_function.pyx'] +pxd_files = ['radiation_function.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('nbi_radiator') diff --git a/cherab/tools/emitters/nbi_radiator/meson.build b/cherab/tools/emitters/nbi_radiator/meson.build new file mode 100644 index 00000000..aa63a664 --- /dev/null +++ b/cherab/tools/emitters/nbi_radiator/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/emitters/nbi_radiator' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/equilibrium/meson.build b/cherab/tools/equilibrium/meson.build new file mode 100644 index 00000000..552a4135 --- /dev/null +++ b/cherab/tools/equilibrium/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/equilibrium' + +# source files +py_files = ['__init__.py', 'eqdsk.py', 'example.py', 'plot.py'] +pyx_files = ['efit.pyx'] +pxd_files = ['efit.pxd'] +data_files = ['example.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/inversions/meson.build b/cherab/tools/inversions/meson.build new file mode 100644 index 00000000..0f2de480 --- /dev/null +++ b/cherab/tools/inversions/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/tools/inversions' + +# source files +py_files = ['__init__.py', 'admt_utils.py', 'lstsq.py', 'nnls.py', 'svd.py'] +pyx_files = ['sart.pyx', 'voxels.pyx'] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('opencl') diff --git a/cherab/tools/inversions/opencl/meson.build b/cherab/tools/inversions/opencl/meson.build new file mode 100644 index 00000000..1272b00f --- /dev/null +++ b/cherab/tools/inversions/opencl/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/inversions/opencl' + +# source files +py_files = ['__init__.py', 'opencl_utils.py', 'sart_opencl.py'] +pyx_files = [] +pxd_files = [] +data_files = ['sart_kernels.cl', 'sart_kernels_atomic.cl'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/meson.build b/cherab/tools/meson.build new file mode 100644 index 00000000..b060d42f --- /dev/null +++ b/cherab/tools/meson.build @@ -0,0 +1,36 @@ +target_path = 'cherab/tools' + +# source files +py_files = ['__init__.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('emitters') +subdir('equilibrium') +subdir('inversions') +subdir('observers') +subdir('plasmas') +subdir('primitives') +subdir('raytransfer') +subdir('spectroscopy') +subdir('tests') diff --git a/cherab/tools/observers/group/meson.build b/cherab/tools/observers/group/meson.build new file mode 100644 index 00000000..f02df550 --- /dev/null +++ b/cherab/tools/observers/group/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/observers/group' + +# source files +py_files = ['__init__.py', 'base.py', 'fibreoptic.py', 'pixel.py', 'plotting.py', 'sightline.py', 'spectroscopic.py', 'targetedpixel.py', 'targettedpixel.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/observers/meson.build b/cherab/tools/observers/meson.build new file mode 100644 index 00000000..5e2d784c --- /dev/null +++ b/cherab/tools/observers/meson.build @@ -0,0 +1,29 @@ +target_path = 'cherab/tools/observers' + +# source files +py_files = ['__init__.py', 'bolometry.py', 'calcam.py', 'intersections.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('group') +subdir('spectroscopy') diff --git a/cherab/tools/observers/spectroscopy/meson.build b/cherab/tools/observers/spectroscopy/meson.build new file mode 100644 index 00000000..ac2d308f --- /dev/null +++ b/cherab/tools/observers/spectroscopy/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/observers/spectroscopy' + +# source files +py_files = ['__init__.py', 'base.py', 'fibreoptic.py', 'sightline.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/plasmas/meson.build b/cherab/tools/plasmas/meson.build new file mode 100644 index 00000000..a42928b6 --- /dev/null +++ b/cherab/tools/plasmas/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/plasmas' + +# source files +py_files = ['__init__.py', 'ionisation_balance.py'] +pyx_files = ['gaussian_volume.pyx', 'slab.pyx'] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/primitives/meson.build b/cherab/tools/primitives/meson.build new file mode 100644 index 00000000..e1edd899 --- /dev/null +++ b/cherab/tools/primitives/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/primitives' + +# source files +py_files = ['__init__.py', 'annulus_mesh.py'] +pyx_files = ['axisymmetric_mesh.pyx', 'toroidal_mesh.pyx'] +pxd_files = ['axisymmetric_mesh.pxd', 'toroidal_mesh.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/raytransfer/meson.build b/cherab/tools/raytransfer/meson.build new file mode 100644 index 00000000..3c41d4a9 --- /dev/null +++ b/cherab/tools/raytransfer/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/raytransfer' + +# source files +py_files = ['__init__.py', 'pipelines.py', 'raytransfer.py', 'roughmetal.py'] +pyx_files = ['emitters.pyx', 'roughconductor.pyx'] +pxd_files = ['__init__.pxd', 'emitters.pxd', 'roughconductor.pxd'] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/spectroscopy/meson.build b/cherab/tools/spectroscopy/meson.build new file mode 100644 index 00000000..54ffae61 --- /dev/null +++ b/cherab/tools/spectroscopy/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/spectroscopy' + +# source files +py_files = ['__init__.py', 'instrument.py', 'polychromator.py', 'spectrometer.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/tests/data/atomic_rates_mockup/ionisation/meson.build b/cherab/tools/tests/data/atomic_rates_mockup/ionisation/meson.build new file mode 100644 index 00000000..e7c06231 --- /dev/null +++ b/cherab/tools/tests/data/atomic_rates_mockup/ionisation/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/tests/data/atomic_rates_mockup/ionisation' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['h.json', 'he.json', 'ne.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/tests/data/atomic_rates_mockup/meson.build b/cherab/tools/tests/data/atomic_rates_mockup/meson.build new file mode 100644 index 00000000..fb335e9a --- /dev/null +++ b/cherab/tools/tests/data/atomic_rates_mockup/meson.build @@ -0,0 +1,30 @@ +target_path = 'cherab/tools/tests/data/atomic_rates_mockup' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('ionisation') +subdir('recombination') +subdir('thermal_cx') diff --git a/cherab/tools/tests/data/atomic_rates_mockup/recombination/meson.build b/cherab/tools/tests/data/atomic_rates_mockup/recombination/meson.build new file mode 100644 index 00000000..0f4132f7 --- /dev/null +++ b/cherab/tools/tests/data/atomic_rates_mockup/recombination/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/tests/data/atomic_rates_mockup/recombination' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['h.json', 'he.json', 'ne.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/0/meson.build b/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/0/meson.build new file mode 100644 index 00000000..162d64e1 --- /dev/null +++ b/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/0/meson.build @@ -0,0 +1,26 @@ +target_path = 'cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/0' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['h.json', 'he.json', 'ne.json'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) diff --git a/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/meson.build b/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/meson.build new file mode 100644 index 00000000..a5ed5fd7 --- /dev/null +++ b/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/h' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('0') diff --git a/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/meson.build b/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/meson.build new file mode 100644 index 00000000..5a001b72 --- /dev/null +++ b/cherab/tools/tests/data/atomic_rates_mockup/thermal_cx/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/tools/tests/data/atomic_rates_mockup/thermal_cx' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('h') diff --git a/cherab/tools/tests/data/meson.build b/cherab/tools/tests/data/meson.build new file mode 100644 index 00000000..dd2c447e --- /dev/null +++ b/cherab/tools/tests/data/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/tools/tests/data' + +# source files +py_files = [] +pyx_files = [] +pxd_files = [] +data_files = ['geometry_matrix.npy', 'receiver.npy', 'true_emissivity.npy'] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('atomic_rates_mockup') diff --git a/cherab/tools/tests/meson.build b/cherab/tools/tests/meson.build new file mode 100644 index 00000000..e93ea3e0 --- /dev/null +++ b/cherab/tools/tests/meson.build @@ -0,0 +1,28 @@ +target_path = 'cherab/tools/tests' + +# source files +py_files = ['__init__.py', 'test_admt.py', 'test_ionization_balance.py', 'test_observer_groups.py', 'test_plasma_slabs.py', 'test_raytransfer.py', 'test_sart_opencl.py', 'test_spectroscopic_instruments.py', 'test_voxels.py'] +pyx_files = [] +pxd_files = [] +data_files = [] + +# compile cython +foreach pyx_file: pyx_files + py.extension_module( + fs.replace_suffix(pyx_file, ''), + pyx_file, + dependencies: cython_dependencies, + install: true, + subdir: target_path, + cython_args: cython_args, + c_args: c_args, + ) +endforeach + +# add python, pxd and data files to the build +py.install_sources( + py_files + pxd_files + data_files, + subdir: target_path +) + +subdir('data') diff --git a/meson.build b/meson.build new file mode 100644 index 00000000..fc56f8de --- /dev/null +++ b/meson.build @@ -0,0 +1,15 @@ +project('cherab', 'cython', + default_options: ['python.install_env=auto'], + version: run_command('cat', files('cherab/core/VERSION'), check: true).stdout().strip() +) + +py = import('python').find_installation(pure: false) +numpy = dependency('numpy', method: 'config-tool') +fs = import('fs') + +# Match current setup.py compile settings +c_args = ['-O3', '-Wno-unreachable-code-fallthrough', '-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION'] +cython_args = ['--annotate', '-X legacy_implicit_noexcept=True'] +cython_dependencies = [numpy] + +subdir('cherab')