mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-21 13:03:31 -04:00
sci-electronics/kactus2: add 3.14.1, drop old versions
This release moves KactusColors and LibraryModel into libKactusAPI, so the executable now links symbols from it. Force the in-tree lib dir ahead of /usr/lib64 in the link path, otherwise an already installed kactus2 shadows the fresh library and the build fails with undefined references. Also drop py3.10/py3.11 and the stale 3.12/3.13 ebuilds. Signed-off-by: Huang Rui <vowstar@gmail.com>
This commit is contained in:
94
sci-electronics/kactus2/kactus2-3.14.1.ebuild
Normal file
94
sci-electronics/kactus2/kactus2-3.14.1.ebuild
Normal file
@@ -0,0 +1,94 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="8"
|
||||
|
||||
PYTHON_COMPAT=( python3_{12..14} )
|
||||
inherit flag-o-matic python-r1 qmake-utils xdg
|
||||
|
||||
DESCRIPTION="A open source IP-XACT-based tool"
|
||||
HOMEPAGE="
|
||||
https://research.tuni.fi/system-on-chip/tools/
|
||||
https://github.com/kactus2/kactus2dev
|
||||
"
|
||||
|
||||
if [[ "${PV}" == "9999" ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/${PN}/${PN}dev.git"
|
||||
else
|
||||
SRC_URI="https://github.com/${PN}/${PN}dev/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64"
|
||||
S="${WORKDIR}/${PN}dev-${PV}"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
RDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
dev-qt/qtbase:6=[cups,gui,network,opengl,widgets,xml]
|
||||
dev-qt/qtsvg:6
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
dev-lang/swig
|
||||
dev-qt/qttools:6[linguist,qdoc]
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# Fix QA pre-stripped warnings, bug 781674
|
||||
find . -type f -name \*.pro -exec sed -e '$a\\nCONFIG+=nostrip' -i '{}' + || die
|
||||
# Fix bug 854081
|
||||
python_setup
|
||||
sed -e "s|PYTHON_CONFIG=.*|PYTHON_CONFIG=${EPYTHON}-config|" -i .qmake.conf || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
default
|
||||
# The in-tree libKactusAPI and libIPXACTmodels must take link precedence
|
||||
# over any copy from an already installed kactus2, otherwise the qmake
|
||||
# LIBS order searches /usr/lib64 before ./executable and the binary links
|
||||
# against the old ABI, failing with undefined references to freshly added
|
||||
# symbols. LFLAGS precede LIBS, so a build-dir -L here wins.
|
||||
append-ldflags "-L${S}/executable"
|
||||
# Fix bug 854075
|
||||
# Fix bug 854078
|
||||
eqmake6 Kactus2_Solution.pro
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
default
|
||||
python_compile() {
|
||||
cp -TR "${S}/" "${BUILD_DIR}/" || die
|
||||
# Fix bug 854081
|
||||
python_setup
|
||||
sed -e "s|PYTHON_CONFIG=.*|PYTHON_CONFIG=${EPYTHON}-config|" -i .qmake.conf || die
|
||||
export PYTHON_C_FLAGS="$(python_get_CFLAGS)"
|
||||
export PYTHON_LIBS="$(python_get_LIBS)"
|
||||
pushd "PythonAPI" || die
|
||||
eqmake6 PREFIX="$(python_get_library_path)"
|
||||
emake
|
||||
rm _pythonAPI.so || die
|
||||
cp libPythonAPI.so.1.0.0 _pythonAPI.so || die
|
||||
popd
|
||||
}
|
||||
python_foreach_impl run_in_build_dir python_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Can't use default, set INSTALL_ROOT and workaround parallel install bug
|
||||
emake -j1 INSTALL_ROOT="${D}" install
|
||||
python_install() {
|
||||
pushd "PythonAPI" || die
|
||||
python_domodule _pythonAPI.so
|
||||
python_domodule pythonAPI.py
|
||||
popd
|
||||
}
|
||||
python_foreach_impl run_in_build_dir python_install
|
||||
}
|
||||
Reference in New Issue
Block a user