diff --git a/releases.json b/releases.json index b493f3a539..da557a987b 100644 --- a/releases.json +++ b/releases.json @@ -4965,6 +4965,14 @@ "3.1.0-1" ] }, + "xsimd": { + "dependency_names": [ + "xsimd" + ], + "versions": [ + "14.2.0-1" + ] + }, "xtensor": { "dependency_names": [ "xtensor" diff --git a/subprojects/packagefiles/xsimd/meson.build b/subprojects/packagefiles/xsimd/meson.build new file mode 100644 index 0000000000..7442782075 --- /dev/null +++ b/subprojects/packagefiles/xsimd/meson.build @@ -0,0 +1,33 @@ +project( + 'xsimd', + 'cpp', + license: 'BSD-3-Clause', + meson_version: '>=0.56.0', + version: '14.2.0', +) + +xsimd_inc = include_directories('include') +xtl_dep = dependency( + 'xtl', + version: '>=0.7.0', + required: get_option('xtl_complex'), +) + +if xtl_dep.found() + complex_args = ['-DXSIMD_ENABLE_XTL_COMPLEX=1'] +else + complex_args = [] +endif + +xsimd_dep = declare_dependency( + include_directories: xsimd_inc, + dependencies: xtl_dep, + compile_args: complex_args, +) + +install_subdir( + 'include/xsimd', + install_dir: get_option('includedir'), +) + +meson.override_dependency('xsimd', xsimd_dep) diff --git a/subprojects/packagefiles/xsimd/meson_options.txt b/subprojects/packagefiles/xsimd/meson_options.txt new file mode 100644 index 0000000000..e47f1ff846 --- /dev/null +++ b/subprojects/packagefiles/xsimd/meson_options.txt @@ -0,0 +1,5 @@ +option( + 'xtl_complex', + type: 'feature', + description: 'Support for complex numbers from xtl', +) diff --git a/subprojects/xsimd.wrap b/subprojects/xsimd.wrap new file mode 100644 index 0000000000..39706456be --- /dev/null +++ b/subprojects/xsimd.wrap @@ -0,0 +1,9 @@ +[wrap-file] +directory = xsimd-14.2.0 +source_url = https://github.com/xtensor-stack/xsimd/archive/refs/tags/14.2.0.tar.gz +source_filename = xsimd-14.2.0.tar.gz +source_hash = 21e841ab684b05331e81e7f782431753a029ef7b7d9d6d3ddab837e7782a40ee +patch_directory = xsimd + +[provide] +dependency_names = xsimd