diff options
Diffstat (limited to 'dev-python/cvxopt')
-rw-r--r-- | dev-python/cvxopt/Manifest | 1 | ||||
-rw-r--r-- | dev-python/cvxopt/cvxopt-1.3.0.ebuild | 178 | ||||
-rw-r--r-- | dev-python/cvxopt/files/cvxopt-1.3.0-versioneer-buildfix.patch | 33 |
3 files changed, 0 insertions, 212 deletions
diff --git a/dev-python/cvxopt/Manifest b/dev-python/cvxopt/Manifest index 4b6128412973..67c8346dcc93 100644 --- a/dev-python/cvxopt/Manifest +++ b/dev-python/cvxopt/Manifest @@ -1,2 +1 @@ -DIST cvxopt-1.3.0.gh.tar.gz 4120085 BLAKE2B f4cb23146897d3f4b24e0fc4d59bd89e2c5b49c83aecdbec02297abbea8a16ecab85a02e9c187debbf3a03cc62e4c46128acefbec2af7ea20558e7fa1d1c0bd0 SHA512 b719100abb0b049765963dc4ca9f646b508a319b5f8390aa7a0578056d32a32573e195c136ffb907a57135e337887d2256c9a0883e63dad966dab43cad0bf58a DIST cvxopt-1.3.1.gh.tar.gz 3958725 BLAKE2B 48b5477f27323da3c5ba69eb993250fe54e793ebb757c84d77ff5c63fb47a649a4a15137d32efd747627ccd629096fd4ac3c70912222fe3e367f0fc062760266 SHA512 9531b83785589c55192e1daa98e3a78288b429a67d2704c8953b9def1a2f8dd4389d17be43fd5deb6c051485e43e5e0e726a2752d126d7289163d7a5a02205dc diff --git a/dev-python/cvxopt/cvxopt-1.3.0.ebuild b/dev-python/cvxopt/cvxopt-1.3.0.ebuild deleted file mode 100644 index 56afe5241bea..000000000000 --- a/dev-python/cvxopt/cvxopt-1.3.0.ebuild +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{9..11} ) - -inherit distutils-r1 toolchain-funcs - -DESCRIPTION="Python package for convex optimization" -HOMEPAGE=" - https://cvxopt.org/ - https://github.com/cvxopt/cvxopt/ - https://pypi.org/project/cvxopt/ -" -SRC_URI=" - https://github.com/${PN}/${PN}/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="+dsdp examples fftw +glpk gsl" - -DEPEND=" - virtual/blas - virtual/lapack - sci-libs/amd:0= - sci-libs/cholmod:0= - sci-libs/colamd:0= - sci-libs/suitesparseconfig:0= - sci-libs/umfpack:0= - dsdp? ( sci-libs/dsdp:0= ) - fftw? ( sci-libs/fftw:3.0= ) - glpk? ( >=sci-mathematics/glpk-4.49:0= ) - gsl? ( sci-libs/gsl:0= ) -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - virtual/pkgconfig -" - -PATCHES=( "${FILESDIR}/cvxopt-1.3.0-versioneer-buildfix.patch" ) - -distutils_enable_sphinx doc/source --no-autodoc -distutils_enable_tests pytest - -# The BLAS_LIB and LAPACK_LIB variables (among others) in cvxopt's -# setup.py are passed in as colon-delimited strings. So, for example, -# if your blas "l" flags are "-lblas -lcblas", then cvxopt wants -# "blas;cblas" for BLAS_LIB. -# -# The following function takes a flag type ("l", "L", or "I") as its -# first argument and a list of packages as its remaining arguments. It -# outputs a list of libraries, library paths, or include paths, -# respectively, for the given packages, retrieved using pkg-config and -# deduplicated, in the appropriate format. -# -cvxopt_output() { - local FLAGNAME="${1}" - shift - local PACKAGES="${@}" - - local PKGCONFIG_MODE - case "${FLAGNAME}" in - l) PKGCONFIG_MODE="--libs-only-l";; - L) PKGCONFIG_MODE="--libs-only-L";; - I) PKGCONFIG_MODE="--cflags-only-I";; - *) echo "invalid flag name: ${FLAGNAME}"; exit 1;; - esac - - local CVXOPT_OUTPUT="" - local PKGCONFIG_ITEM - for PKGCONFIG_ITEM in $($(tc-getPKG_CONFIG) ${PKGCONFIG_MODE} ${PACKAGES}) - do - # First strip off the leading "-l", "-L", or "-I", and replace - # it with a semicolon... - PKGCONFIG_ITEM=";${PKGCONFIG_ITEM#-${FLAGNAME}}" - - # Now check to see if this element is already present in the - # list, and skip it if it is. This eliminates multiple entries - # from winding up in the list when multiple package arguments are - # passed to this function. - if [[ "${CVXOPT_OUTPUT}" != "${CVXOPT_OUTPUT%${PKGCONFIG_ITEM}}" ]] - then - # It was already the last entry in the list, so skip it. - continue - elif [[ "${CVXOPT_OUTPUT}" != "${CVXOPT_OUTPUT%${PKGCONFIG_ITEM};*}" ]] - then - # It was an earlier entry in the list. These two cases are - # separate to ensure that we can e.g. find ";m" at the end - # of the list, but that we don't find ";metis" in the process. - continue - fi - - # It isn't in the list yet, so append it. - CVXOPT_OUTPUT+="${PKGCONFIG_ITEM}" - done - - # Strip the leading ";" from ";foo;bar" before output. - echo "${CVXOPT_OUTPUT#;}" -} - -python_prepare_all() { - # Mandatory dependencies. - export CVXOPT_BLAS_LIB="$(cvxopt_output l blas)" - export CVXOPT_BLAS_LIB_DIR="${EPREFIX}/usr/$(get_libdir);$(cvxopt_output L blas)" - export CVXOPT_LAPACK_LIB="$(cvxopt_output l lapack)" - export CVXOPT_SUITESPARSE_LIB_DIR="${EPREFIX}/usr/$(get_libdir);$(cvxopt_output L umfpack cholmod amd colamd suitesparseconfig)" - - # Most of these CVXOPT_* variables can be blank or have "empty" - # entries and the resulting command-line with e.g. "-L -L/some/path" - # won't hurt anything. The INC_DIR variables, however, cause - # problems, because at least gcc doesn't like a bare "-I". We - # pre-populate these variable with something safe so that setup.py - # doesn't look in the wrong place if pkg-config doesn't return any - # extra -I directories. This is - # - # https://github.com/cvxopt/cvxopt/issues/167 - # - CVXOPT_SUITESPARSE_INC_DIR="${EPREFIX}/usr/include" - local SUITESPARSE_LOCAL_INCS="$(cvxopt_output I umfpack cholmod amd colamd suitesparseconfig)" - if [[ -n "${SUITESPARSE_LOCAL_INCS}" ]]; then - CVXOPT_SUITESPARSE_INC_DIR+=";${SUITESPARSE_LOCAL_INCS}" - fi - export CVXOPT_SUITESPARSE_INC_DIR - - # optional dependencies - if use dsdp; then - # no pkg-config file at the moment - export CVXOPT_BUILD_DSDP=1 - export CVXOPT_DSDP_LIB_DIR="${EPREFIX}/usr/$(get_libdir)" - export CVXOPT_DSDP_INC_DIR="${EPREFIX}/usr/include" - fi - - if use fftw; then - export CVXOPT_BUILD_FFTW=1 - export CVXOPT_FFTW_LIB_DIR="${EPREFIX}/usr/$(get_libdir);$(cvxopt_output L fftw3)" - CVXOPT_FFTW_INC_DIR="${EPREFIX}/usr/include" - FFTW_LOCAL_INCS="$(cvxopt_output I fftw3)" - if [[ -n "${FFTW_LOCAL_INCS}" ]]; then - CVXOPT_FFTW_INC_DIR+=";${FFTW_LOCAL_INCS}" - fi - export CVXOPT_FFTW_INC_DIR - fi - - if use glpk; then - # no pkg-config file at the moment - export CVXOPT_BUILD_GLPK=1 - export CVXOPT_GLPK_LIB_DIR="${EPREFIX}/usr/$(get_libdir)" - export CVXOPT_GLPK_INC_DIR="${EPREFIX}/usr/include" - fi - - if use gsl; then - export CVXOPT_BUILD_GSL=1 - export CVXOPT_GSL_LIB_DIR="${EPREFIX}/usr/$(get_libdir);$(cvxopt_output L gsl)" - CVXOPT_GSL_INC_DIR="${EPREFIX}/usr/include" - GSL_LOCAL_INCS="$(cvxopt_output I gsl)" - if [[ -n "${GSL_LOCAL_INCS}" ]]; then - CVXOPT_GSL_INC_DIR+=";${GSL_LOCAL_INCS}" - fi - export CVXOPT_GSL_INC_DIR - fi - - distutils-r1_python_prepare_all -} - -python_install_all() { - distutils-r1_python_install_all - if use examples; then - dodoc -r examples - docompress -x "/usr/share/doc/${PF}/examples" - fi -} diff --git a/dev-python/cvxopt/files/cvxopt-1.3.0-versioneer-buildfix.patch b/dev-python/cvxopt/files/cvxopt-1.3.0-versioneer-buildfix.patch deleted file mode 100644 index 2cc28bc7f781..000000000000 --- a/dev-python/cvxopt/files/cvxopt-1.3.0-versioneer-buildfix.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 764665fb080e5aec235a64029246cb58becf5591 Mon Sep 17 00:00:00 2001 -From: Michael Orlitzky <michael@orlitzky.com> -Date: Sat, 7 May 2022 12:44:31 -0400 -Subject: [PATCH 1/1] FIX: skip version update on `build_ext` if .py does not - exist - -Upstream versioneer commit 280fb6ce89af73ac6ced3c66354a16506a57fc6c -ported to cvxopt's bundled copy. See also: - - https://github.com/python-versioneer/python-versioneer/issues/296 ---- - versioneer.py | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/versioneer.py b/versioneer.py -index 414cb9d..47bdd40 100644 ---- a/versioneer.py -+++ b/versioneer.py -@@ -1847,6 +1847,11 @@ def get_cmdclass(cmdclass=None): - # it with an updated value - target_versionfile = os.path.join(self.build_lib, - cfg.versionfile_build) -+ if not os.path.exists(target_versionfile): -+ print(f"Warning: {target_versionfile} does not exist, skipping " -+ "version update. This can happen if you are running build_ext " -+ "without first running build_py.") -+ return - print("UPDATING %s" % target_versionfile) - write_to_version_file(target_versionfile, versions) - cmds["build_ext"] = cmd_build_ext --- -2.35.1 - |