diff --git a/src/meson.build b/src/meson.build index 6d6d59cca0f..5b4df8a8290 100644 --- a/src/meson.build +++ b/src/meson.build @@ -127,6 +127,7 @@ curl = declare_dependency( cc.find_library('curl'), ] ) +# Cannot be found via pkg-config ec = declare_dependency( dependencies: [ cc.find_library('ec'), diff --git a/src/sage/geometry/meson.build b/src/sage/geometry/meson.build index ce70f0d691a..4964ad981a5 100644 --- a/src/sage/geometry/meson.build +++ b/src/sage/geometry/meson.build @@ -41,6 +41,6 @@ endforeach install_subdir('hyperbolic_space', install_dir: sage_install_dir / 'geometry') install_subdir('hyperplane_arrangement', install_dir: sage_install_dir / 'geometry') -install_subdir('polyhedron', install_dir: sage_install_dir / 'geometry') +subdir('polyhedron') install_subdir('riemannian_manifolds', install_dir: sage_install_dir / 'geometry') subdir('triangulation') diff --git a/src/sage/geometry/polyhedron/combinatorial_polyhedron/meson.build b/src/sage/geometry/polyhedron/combinatorial_polyhedron/meson.build new file mode 100644 index 00000000000..fcf98755cb1 --- /dev/null +++ b/src/sage/geometry/polyhedron/combinatorial_polyhedron/meson.build @@ -0,0 +1,25 @@ +py.install_sources( + 'all.py', + subdir: 'sage/geometry/polyhedron/combinatorial_polyhedron', +) + +extension_data = { + 'base': files('base.pyx'), + 'combinatorial_face': files('combinatorial_face.pyx'), + 'conversions': files('conversions.pyx'), + 'face_iterator': files('face_iterator.pyx'), + 'face_list_data_structure': files('face_list_data_structure.pyx'), + 'list_of_faces': files('list_of_faces.pyx'), + 'polyhedron_face_lattice': files('polyhedron_face_lattice.pyx'), +} + +foreach name, pyx : extension_data + py.extension_module(name, + sources: pyx, + subdir: 'sage/geometry/polyhedron/combinatorial_polyhedron', + install: true, + include_directories: [inc_cpython, inc_data_structures, inc_rings], + dependencies: [py_dep, cysignals, gmp], + ) +endforeach + diff --git a/src/sage/geometry/polyhedron/meson.build b/src/sage/geometry/polyhedron/meson.build new file mode 100644 index 00000000000..3234e6b0167 --- /dev/null +++ b/src/sage/geometry/polyhedron/meson.build @@ -0,0 +1,43 @@ +py.install_sources( + 'all.py', + 'backend_cdd.py', + 'backend_cdd_rdf.py', + 'backend_field.py', + 'backend_normaliz.py', + 'backend_number_field.py', + 'backend_polymake.py', + 'backend_ppl.py', + 'base.py', + 'base0.py', + 'base1.py', + 'base2.py', + 'base3.py', + 'base4.py', + 'base5.py', + 'base6.py', + 'base7.py', + 'base_QQ.py', + 'base_RDF.py', + 'base_ZZ.py', + 'base_mutable.py', + 'base_number_field.py', + 'cdd_file_format.py', + 'constructor.py', + 'double_description.py', + 'double_description_inhomogeneous.py', + 'face.py', + 'generating_function.py', + 'lattice_euclidean_group_element.py', + 'library.py', + 'misc.py', + 'palp_database.py', + 'parent.py', + 'plot.py', + 'ppl_lattice_polygon.py', + 'ppl_lattice_polytope.py', + 'representation.py', + subdir: 'sage/geometry/polyhedron', +) + +subdir('combinatorial_polyhedron') +install_subdir('modules', install_dir: sage_install_dir / 'geometry/polyhedron') diff --git a/src/sage/libs/coxeter3/meson.build b/src/sage/libs/coxeter3/meson.build index 877508d7916..8d9ea2019dc 100644 --- a/src/sage/libs/coxeter3/meson.build +++ b/src/sage/libs/coxeter3/meson.build @@ -1,3 +1,4 @@ +coxeter3 = cc.find_library('coxeter3', required: false) py.install_sources( '__init__.py', 'all__sagemath_coxeter3.py', @@ -6,18 +7,20 @@ py.install_sources( ) -extension_data_cpp = { - # 'coxeter': files('coxeter.pyx'), # not yet on conda -} +if coxeter3.found() + extension_data_cpp = { + 'coxeter': files('coxeter.pyx'), + } -foreach name, pyx : extension_data_cpp - py.extension_module(name, - sources: pyx, - subdir: 'sage/libs/coxeter3', - install: true, - override_options : ['cython_language=cpp'], - include_directories: [], - dependencies: [py_dep, cysignals, coxeter3], - ) -endforeach + foreach name, pyx : extension_data_cpp + py.extension_module(name, + sources: pyx, + subdir: 'sage/libs/coxeter3', + install: true, + override_options : ['cython_language=cpp'], + include_directories: [], + dependencies: [py_dep, cysignals, coxeter3], + ) + endforeach +endif diff --git a/src/sage/libs/eclib/meson.build b/src/sage/libs/eclib/meson.build index d47852e4d7b..5f5766801a3 100644 --- a/src/sage/libs/eclib/meson.build +++ b/src/sage/libs/eclib/meson.build @@ -20,7 +20,7 @@ foreach name, pyx : extension_data_cpp install: true, override_options : ['cython_language=cpp'], include_directories: [inc_cpython, inc_ext, inc_flint, inc_ntl, inc_rings], - dependencies: [py_dep, cysignals, flint, gmp], + dependencies: [py_dep, cysignals, flint, gmp, ec], ) endforeach diff --git a/src/sage/modular/arithgroup/farey.cpp b/src/sage/modular/arithgroup/farey.cpp index 209391676de..5c912b46ca9 100644 --- a/src/sage/modular/arithgroup/farey.cpp +++ b/src/sage/modular/arithgroup/farey.cpp @@ -29,7 +29,7 @@ #include #include "farey.hpp" -#include "sage/modular/arithgroup/farey_symbol.h" +#include "farey_symbol.h" using namespace std; diff --git a/src/sage/modular/arithgroup/meson.build b/src/sage/modular/arithgroup/meson.build index 50dca19bc89..23772d05a33 100644 --- a/src/sage/modular/arithgroup/meson.build +++ b/src/sage/modular/arithgroup/meson.build @@ -28,7 +28,7 @@ foreach name, pyx : extension_data endforeach extension_data_cpp = { - 'farey_symbol': files('farey_symbol.pyx'), + 'farey_symbol': files('farey_symbol.pyx', 'sl2z.cpp', 'farey.cpp'), } foreach name, pyx : extension_data_cpp diff --git a/src/sage/rings/meson.build b/src/sage/rings/meson.build index 442800e8eab..63438447097 100644 --- a/src/sage/rings/meson.build +++ b/src/sage/rings/meson.build @@ -101,7 +101,7 @@ foreach name, pyx : extension_data endforeach extension_data_cpp = { - 'bernmm': files('bernmm.pyx'), + 'bernmm': files('bernmm.pyx', 'bernmm/bern_modp.cpp', 'bernmm/bern_modp_util.cpp'),#, 'bernmm/bern_rat.cpp'), - TODO: Compilation error 'bernoulli_mod_p': files('bernoulli_mod_p.pyx'), 'fraction_field_FpT': files('fraction_field_FpT.pyx'), 'rational': files('rational.pyx'), diff --git a/src/sage/rings/polynomial/pbori/meson.build b/src/sage/rings/polynomial/pbori/meson.build index c087b554e01..56482234dda 100644 --- a/src/sage/rings/polynomial/pbori/meson.build +++ b/src/sage/rings/polynomial/pbori/meson.build @@ -3,11 +3,8 @@ brial = declare_dependency( cc.find_library('brial', required: false), ] ) -brial_groebner = declare_dependency( - dependencies: [ - cc.find_library('brial-groebner', required: false), - ] -) +# Cannot be found via pkg-config +brial_groebner = cc.find_library('brial_groebner') py.install_sources( 'PyPolyBoRi.py', diff --git a/src/sage/schemes/hyperelliptic_curves/meson.build b/src/sage/schemes/hyperelliptic_curves/meson.build index b64793152ec..35cdc5c72a8 100644 --- a/src/sage/schemes/hyperelliptic_curves/meson.build +++ b/src/sage/schemes/hyperelliptic_curves/meson.build @@ -20,7 +20,7 @@ py.install_sources( ) extension_data_cpp = { - 'hypellfrob': files('hypellfrob.pyx'), + 'hypellfrob': files('hypellfrob.pyx', 'hypellfrob/hypellfrob.cpp', 'hypellfrob/recurrences_ntl.cpp'), } foreach name, pyx : extension_data_cpp diff --git a/src/sage/stats/distributions/meson.build b/src/sage/stats/distributions/meson.build index 1eb9d97f24f..b5b8a74e3bb 100644 --- a/src/sage/stats/distributions/meson.build +++ b/src/sage/stats/distributions/meson.build @@ -6,7 +6,7 @@ py.install_sources( ) extension_data = { - 'discrete_gaussian_integer': files('discrete_gaussian_integer.pyx'), + 'discrete_gaussian_integer': files('discrete_gaussian_integer.pyx', 'dgs_gauss_mp.c', 'dgs_gauss_dp.c', 'dgs_bern.c'), } foreach name, pyx : extension_data