diff options
Diffstat (limited to 'meta-offline-voice-agent/recipes-python/python3-scipy')
6 files changed, 197 insertions, 0 deletions
diff --git a/meta-offline-voice-agent/recipes-python/python3-scipy/files/0001-Allow-passing-flags-via-FARCH-for-mach.patch b/meta-offline-voice-agent/recipes-python/python3-scipy/files/0001-Allow-passing-flags-via-FARCH-for-mach.patch new file mode 100644 index 00000000..8a874af4 --- /dev/null +++ b/meta-offline-voice-agent/recipes-python/python3-scipy/files/0001-Allow-passing-flags-via-FARCH-for-mach.patch @@ -0,0 +1,44 @@ +From 973767f29391eca1c76292556de03cdd7520c07d Mon Sep 17 00:00:00 2001 +From: Erik Boto <erik.boto@gmail.com> +Date: Tue, 3 Nov 2020 09:08:56 -0700 +Subject: [PATCH] Allow passing flags via FARCH for mach + +Enable passing options via FARCH, so that the flags for setting the +correct floating point ABI is propagated properly to the fortran +compiler. + +This fixes an issue where the mach lib would otherwise be built as +soft-float, even though the target arch is hard-float. +--- + scipy/integrate/setup.py | 3 +-- + scipy/special/setup.py | 3 +-- + 2 files changed, 2 insertions(+), 4 deletions(-) + +diff --git a/scipy/integrate/setup.py b/scipy/integrate/setup.py +index 11ce3d1..8e4a3dc 100755 +--- a/scipy/integrate/setup.py ++++ b/scipy/integrate/setup.py +@@ -34,8 +34,7 @@ def configuration(parent_package='',top_path=None): + quadpack_test_src = [join('tests','_test_multivariate.c')] + odeint_banded_test_src = [join('tests', 'banded5x5.f')] + +- config.add_library('mach', sources=mach_src, config_fc={'noopt': (__file__, 1)}, +- _pre_build_hook=pre_build_hook) ++ config.add_library('mach', sources=mach_src, _pre_build_hook=pre_build_hook) + config.add_library('quadpack', sources=quadpack_src, _pre_build_hook=pre_build_hook) + config.add_library('lsoda', sources=lsoda_src, _pre_build_hook=pre_build_hook) + config.add_library('vode', sources=vode_src, _pre_build_hook=pre_build_hook) +diff --git a/scipy/special/setup.py b/scipy/special/setup.py +index 81eb09f..260cfb3 100755 +--- a/scipy/special/setup.py ++++ b/scipy/special/setup.py +@@ -46,8 +46,7 @@ def configuration(parent_package='',top_path=None): + amos_src = [join('amos','*.f')] + cdf_src = [join('cdflib','*.f')] + specfun_src = [join('specfun','*.f')] +- config.add_library('sc_mach',sources=mach_src, +- config_fc={'noopt':(__file__,1)}) ++ config.add_library('sc_mach',sources=mach_src) + config.add_library('sc_amos',sources=amos_src) + config.add_library('sc_cdf',sources=cdf_src) + config.add_library('sc_specfun',sources=specfun_src) diff --git a/meta-offline-voice-agent/recipes-python/python3-scipy/files/static-lib.patch b/meta-offline-voice-agent/recipes-python/python3-scipy/files/static-lib.patch new file mode 100644 index 00000000..05b6133a --- /dev/null +++ b/meta-offline-voice-agent/recipes-python/python3-scipy/files/static-lib.patch @@ -0,0 +1,32 @@ +diff --git a/scipy/stats/setup.py b/scipy/stats/setup.py +index 52a5a36f0..fb5c16a6b 100644 +--- a/scipy/stats/setup.py ++++ b/scipy/stats/setup.py +@@ -64,10 +64,10 @@ def configuration(parent_package='', top_path=None): + biasedurn_libs = [] + biasedurn_libdirs = [] + else: +- biasedurn_libs = ['npyrandom', 'npymath'] +- biasedurn_libdirs = [join(np.get_include(), +- '..', '..', 'random', 'lib')] +- biasedurn_libdirs += get_info('npymath')['library_dirs'] ++ biasedurn_libs = [join(os.environ["NUMPY_INCLUDE_PATH"], ++ '..', '..', 'random', 'lib', 'libnpyrandom.a')] ++ biasedurn_libs.append([join(os.environ["NUMPY_INCLUDE_PATH"], ++ '..', '..', 'core', 'lib', 'libnpymath.a')]) + + ext = config.add_extension( + '_biasedurn', +@@ -79,11 +79,10 @@ def configuration(parent_package='', top_path=None): + 'biasedurn/stoc1.cpp', + 'biasedurn/stoc3.cpp'], + include_dirs=[np.get_include()], +- library_dirs=biasedurn_libdirs, +- libraries=biasedurn_libs, + define_macros=[('R_BUILD', None)], + language='c++', + depends=['biasedurn/stocR.h'], ++ extra_objects=biasedurn_libs, + ) + ext._pre_build_hook = pre_build_hook + diff --git a/meta-offline-voice-agent/recipes-python/python3-scipy/python3-beniget_0.4.1.bb b/meta-offline-voice-agent/recipes-python/python3-scipy/python3-beniget_0.4.1.bb new file mode 100644 index 00000000..cfd31447 --- /dev/null +++ b/meta-offline-voice-agent/recipes-python/python3-scipy/python3-beniget_0.4.1.bb @@ -0,0 +1,11 @@ +SUMMARY = "A static analyzer for Python2 and Python3 code" +HOMEPAGE = "https://github.com/serge-sans-paille/beniget/" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=02550c296a72ab0b70961eb70a5a7242" + +SRC_URI[md5sum] = "a2bbe7f17f10f9c127d8ef00692ddc55" +SRC_URI[sha256sum] = "75554b3b8ad0553ce2f607627dad3d95c60c441189875b98e097528f8e23ac0c" + +inherit pypi setuptools3 + +BBCLASSEXTEND = "native" diff --git a/meta-offline-voice-agent/recipes-python/python3-scipy/python3-pythran_0.11.0.bb b/meta-offline-voice-agent/recipes-python/python3-scipy/python3-pythran_0.11.0.bb new file mode 100644 index 00000000..deabb9b5 --- /dev/null +++ b/meta-offline-voice-agent/recipes-python/python3-scipy/python3-pythran_0.11.0.bb @@ -0,0 +1,14 @@ +SUMMARY = "Ahead of Time compiler for numeric kernels" +HOMEPAGE = "https://pythran.readthedocs.io/" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=e277a0b6033e0cb3d510c86b74144b01" + +SRC_URI[md5sum] = "e09e90484771937ab499380858bdb18d" +SRC_URI[sha256sum] = "0b2cba712e09f7630879dff69f268460bfe34a6d6000451b47d598558a92a875" + +DEPENDS += "python3-gast" + +inherit pypi setuptools3 + +RDEPENDS:${PN} += "python3-beniget python3-gast" +BBCLASSEXTEND = "native" diff --git a/meta-offline-voice-agent/recipes-python/python3-scipy/python3-scipy-native_1.8.1.bb b/meta-offline-voice-agent/recipes-python/python3-scipy/python3-scipy-native_1.8.1.bb new file mode 100644 index 00000000..ca46f9db --- /dev/null +++ b/meta-offline-voice-agent/recipes-python/python3-scipy/python3-scipy-native_1.8.1.bb @@ -0,0 +1,44 @@ +SUMMARY = "SciPy: Scientific Library for Python" +HOMEPAGE = "https://www.scipy.org" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=27ca2e35416b6316570bf126e08b7062" + +SRC_URI = "https://pypi.python.org/packages/source/s/scipy/scipy-${PV}.tar.gz \ + file://0001-Allow-passing-flags-via-FARCH-for-mach.patch \ + " + +SRC_URI[md5sum] = "df5ce79288fc457238aeef18e8f70dfc" +SRC_URI[sha256sum] = "9e3fb1b0e896f14a85aa9a28d5f755daaeeb54c897b746df7a55ccb02b340f33" + +S = "${WORKDIR}/scipy-${PV}" + +DEPENDS += " \ + ${PYTHON_PN}-numpy-native \ + ${PYTHON_PN}-pybind11-native \ + ${PYTHON_PN}-pythran-native \ + ${PYTHON_PN}-gast-native \ + ${PYTHON_PN}-beniget-native \ + ${PYTHON_PN}-ply-native \ + lapack-native \ +" + +CLEANBROKEN = "1" + +inherit setuptools3 native + +export LAPACK = "${STAGING_LIBDIR}" +export BLAS = "${STAGING_LIBDIR}" + +export F90 = "${FC}" + +# Numpy expects the LDSHARED env variable to point to a single +# executable, but OE sets it to include some flags as well. So we split +# the existing LDSHARED variable into the base executable and flags, and +# prepend the flags into LDFLAGS +LDFLAGS:prepend := "${@" ".join(d.getVar('LDSHARED', True).split()[1:])} " +export LDSHARED := "${@d.getVar('LDSHARED', True).split()[0]}" + +# Tell Numpy to look in target sysroot site-packages directory for libraries +LDFLAGS:append = " -L${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/core/lib" + +INSANE_SKIP:${PN} = "already-stripped" diff --git a/meta-offline-voice-agent/recipes-python/python3-scipy/python3-scipy_1.8.1.bb b/meta-offline-voice-agent/recipes-python/python3-scipy/python3-scipy_1.8.1.bb new file mode 100644 index 00000000..2c9424e6 --- /dev/null +++ b/meta-offline-voice-agent/recipes-python/python3-scipy/python3-scipy_1.8.1.bb @@ -0,0 +1,52 @@ +SUMMARY = "SciPy: Scientific Library for Python" +HOMEPAGE = "https://www.scipy.org" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=27ca2e35416b6316570bf126e08b7062" + +SRC_URI += " \ + file://0001-Allow-passing-flags-via-FARCH-for-mach.patch \ + file://static-lib.patch \ +" +SRC_URI[md5sum] = "df5ce79288fc457238aeef18e8f70dfc" +SRC_URI[sha256sum] = "9e3fb1b0e896f14a85aa9a28d5f755daaeeb54c897b746df7a55ccb02b340f33" + +DEPENDS += " \ + ${PYTHON_PN}-numpy \ + ${PYTHON_PN}-numpy-native \ + ${PYTHON_PN}-pybind11-native \ + ${PYTHON_PN}-pythran-native \ + ${PYTHON_PN}-gast-native \ + ${PYTHON_PN}-beniget-native \ + ${PYTHON_PN}-ply-native \ + lapack \ +" + +inherit pypi setuptools3 + +RDEPENDS:${PN} += " \ + ${PYTHON_PN}-numpy \ + lapack \ +" + +CLEANBROKEN = "1" + +export LAPACK = "${STAGING_LIBDIR}" +export BLAS = "${STAGING_LIBDIR}" + +export F90 = "${TARGET_PREFIX}gfortran" +export F77 = "${TARGET_PREFIX}gfortran" +export FARCH = "${TUNE_CCARGS}" + +export NUMPY_INCLUDE_PATH = "${STAGING_DIR_TARGET}/usr/lib/python${PYTHON_BASEVERSION}/site-packages/numpy/core/include" + +# Numpy expects the LDSHARED env variable to point to a single +# executable, but OE sets it to include some flags as well. So we split +# the existing LDSHARED variable into the base executable and flags, and +# prepend the flags into LDFLAGS +LDFLAGS:prepend := "${@" ".join(d.getVar('LDSHARED', True).split()[1:])} " +export LDSHARED := "${@d.getVar('LDSHARED', True).split()[0]}" + +# Tell Numpy to look in target sysroot site-packages directory for libraries +LDFLAGS:append = " -L${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/core/lib" + +INSANE_SKIP:${PN} = "already-stripped" |