diff --git a/sci-electronics/klayout/Manifest b/sci-electronics/klayout/Manifest index 0017ec4b0a6dc..a3c569278cebb 100644 --- a/sci-electronics/klayout/Manifest +++ b/sci-electronics/klayout/Manifest @@ -1 +1,2 @@ +DIST klayout-0.29.11.tar.gz 97526183 BLAKE2B 6da5c4590ae14c46f677b0e87fd001c89731db15abcbce42c3a22844a2277be7998c80cf8e39f0df8d3bdcc00ac39290fab87973ec3cf6aa21d4967f047ef143 SHA512 a03bc5e3ca612e0dab894a193e7f942ef4fb8860364fcdda2128b55fd81c82eb2c8122a1e340c03097a9def7942d151ba115def8322e3c103fcec09d4849f6dd DIST klayout-0.29.7.tar.gz 97112729 BLAKE2B 3e6d97bcbef5a1ef34ab6ac035db88dfa7f590ef7ab5d3b6312248244cbe4538407db0278b6c7dc2f0a5a4a966d21ee60d1f11200327773979852ecb835ec078 SHA512 361337d028b8266abd2c5114643a7b2074c794f5685b336658168f09df1f3e4826de2d3cb1e094bd2f08616d6f0be78c8f6b44144c74367dcaf65785476ab8ae diff --git a/sci-electronics/klayout/klayout-0.29.11.ebuild b/sci-electronics/klayout/klayout-0.29.11.ebuild new file mode 100644 index 0000000000000..7dd60f77e4372 --- /dev/null +++ b/sci-electronics/klayout/klayout-0.29.11.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUBY_OPTIONAL=no +USE_RUBY="ruby32" +# note: define maximally ONE implementation here + +PYTHON_COMPAT=( python3_{11,12,13} ) + +inherit toolchain-funcs python-single-r1 ruby-ng + +if [[ ${PV} = 9999* ]]; then + EGIT_REPO_URI="https://github.com/klayoutmatthias/${PN}.git" + inherit git-r3 + EGIT_CHECKOUT_DIR=${WORKDIR}/all/${P} +else + SRC_URI="https://www.klayout.org/downloads/source/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Viewer and editor for GDS and OASIS integrated circuit layouts" +HOMEPAGE="https://www.klayout.de/" +LICENSE="GPL-2" +SLOT="0" +REQUIRED_USE=${PYTHON_REQUIRED_USE} + +RDEPEND=" + dev-qt/designer:5 + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtmultimedia:5[widgets] + dev-qt/qtnetwork:5[ssl] + dev-qt/qtprintsupport:5 + dev-qt/qtsql:5 + dev-qt/qtsvg:5 + dev-qt/qttest:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + dev-qt/qtxmlpatterns:5 + dev-libs/libgit2:= + sys-libs/zlib + ${PYTHON_DEPS} + $(ruby_implementations_depend) +" +DEPEND="${RDEPEND}" + +pkg_setup() { + python-single-r1_pkg_setup + ruby-ng_pkg_setup +} + +each_ruby_configure() { + tc-export CC CXX AR LD RANLIB + export CFLAGS CXXFLAGS + ./build.sh \ + -expert \ + -dry-run \ + -qmake "$EPREFIX/usr/$(get_libdir)/qt5/bin/qmake" \ + -ruby "${RUBY}" \ + -python "${PYTHON}" \ + -build . \ + -bin "${T}/bin" \ + -rpath "$EPREFIX/usr/$(get_libdir)/klayout" \ + -option "${MAKEOPTS}" \ + -with-qtbinding \ + -without-64bit-coord \ + -qt5 || die "Configuration failed" +} + +each_ruby_compile() { + emake all +} + +each_ruby_install() { + emake install + + cd "${T}/bin" || die + + dodir "/usr/$(get_libdir)/klayout" + mv lib* lay_plugins db_plugins "${ED}/usr/$(get_libdir)/klayout/" || die + + mkdir -p "${D}/$(python_get_sitedir)" || die + mv pymod/* "${D}/$(python_get_sitedir)/" || die + rmdir pymod || die + + dobin * + + python_optimize +}