summaryrefslogtreecommitdiff
path: root/sci-electronics/klayout
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sci-electronics/klayout
reinit the tree, so we can have metadata
Diffstat (limited to 'sci-electronics/klayout')
-rw-r--r--sci-electronics/klayout/Manifest8
-rw-r--r--sci-electronics/klayout/files/klayout-0.23.10-Makefile.conf.linux-gentoo45
-rw-r--r--sci-electronics/klayout/files/klayout-0.24.9-c++11-no-throw-in-destuctor.patch34
-rw-r--r--sci-electronics/klayout/klayout-0.24.10.ebuild70
-rw-r--r--sci-electronics/klayout/klayout-9999.ebuild76
-rw-r--r--sci-electronics/klayout/metadata.xml12
6 files changed, 245 insertions, 0 deletions
diff --git a/sci-electronics/klayout/Manifest b/sci-electronics/klayout/Manifest
new file mode 100644
index 000000000000..ca1da79575e8
--- /dev/null
+++ b/sci-electronics/klayout/Manifest
@@ -0,0 +1,8 @@
+AUX klayout-0.23.10-Makefile.conf.linux-gentoo 1014 SHA256 763f7ebad013aa8d029eb4675eb3226f1c4dbe0806e6cef40a0e8f48472a535f SHA512 4317565d0da30a8e0a0fe4573cfce68bb2ffb45cc92b63ce98361ec73d4e350a807700f0d3ed0f600a609e975e7b0c840dd32c2e7194e8cf44a0f0d1a5276faa WHIRLPOOL 2c1d3c3eff1a0a5e3d8382761db223951bcff9848b9debf95fba0f3d1703ebd723afc5b9f8552bfeae6db15a1b3fbb34f76e47f9bff2e5f19cc9be1e96fa2a2f
+AUX klayout-0.24.9-c++11-no-throw-in-destuctor.patch 1180 SHA256 f950fc0e4b3de411b8d709182e9da949dc7abf8fa6421071c4bc25e703bc7dc6 SHA512 cc18dc64109f770e930c9ed65b8429cef21796f8ba4389be4facda8aba284709cc41281b7bf3de7f8422d3480454ef08f08ae20a1b07697bdf4f201f12ef723e WHIRLPOOL f052e575df4e83e3c33e4c0e205368616f99f6966b5198e66ded81611f4ed358f484c8e0386e0657cec3f33335a0ae0633d7c712a9381b6644be6d5df42ae852
+DIST klayout-0.24.10.tar.gz 11262007 SHA256 b1462ec68add037a5d9d040599b2bd96cc399e57dfd9fd46bbf3e8f54c07418d SHA512 0043b91e2dae9321299c217697c93af27bc7d795209bdf95248eee3690b97728854f9f82cc95f77f05a2cfbcae6a716ae594fe2485e04ed0a3f5d950abc0a31b WHIRLPOOL fe1d4079fbc3aa9fec1da8fb48595fa6edd65060f7081f80592dc86b371c4428934629a5c7838212577416fc66f194e6677f595992734c922c2ee89c6029cbd7
+EBUILD klayout-0.24.10.ebuild 1536 SHA256 ec85352790e60d899b6508bba1d699e3f99a2deac952806bea2445f5ffafc0a1 SHA512 eb405924cf6082e617c3802e5b8ff05549ff0457ccacea6382b8039d64d5e09552ec09c0398b98d47c291d35897dcd46979cfd7a3cfa69cd6cce5d245c2f15a1 WHIRLPOOL 995002db732cc96df497507170ea86a60d158fd9f8298a063d57f2ff9a609f54d184559eab4c43dbaab39ad46ad404a90060a8a0c3ca9e9ad8233c5eee7d3d9d
+EBUILD klayout-9999.ebuild 1505 SHA256 1ec6e41b9f33bb0bb0e4a8af82491e9cb9e898a737bc28d005505b8aabf79a5d SHA512 ff5f66552044222cca86918ef196889b65d015579035770b2e09cc6b5b31c10f1c6479b1ea45b29135c5cc60b0307fba1bc34c2c104d7a0da193a3a82b720561 WHIRLPOOL 59283de59aa3d139e5748e48365b50c73e558573eb120704816f0d1b0210ed18646cae174187a2574dbdf29cc8b2d25ff7c00bfc24f5dcba591e2b9b4e1a6f6e
+MISC ChangeLog 2916 SHA256 618cbdbd29c3b5cb3cd2125c1a322abfeb34d5f4d22b899c72c31c1ecf0aadce SHA512 7852b1fd4ba3d6e8503c5d94f79e51d8ab84af7f83b421c717597c34ca981cd85946135e36f330fc83e779850541a361707b3279584784038f2d493a34428f53 WHIRLPOOL 9a7b18956cf4557ccb85935c3c9d00d3d4de754a36399b317a543e4706043fa7b8c8cdc65d9f090c486878324765dc13a6ceb816f7369c98e5645b8eef913abb
+MISC ChangeLog-2015 4286 SHA256 bc0bdca8fa37de915a09ec0536b8d9689bb03f9efb936585b10c32ebddf8f4f3 SHA512 090ad0afae25f8c155e0fbb3fa5ee9d2664db7c61ca14e5e06d0ba10bede626825b7618e4ae390a043777a912d8f366b4d82125cb81104c2cc893bfc300f3f86 WHIRLPOOL 9f9864442fe6a50db83443b9a5638fa73b2cb09d0278e92ba559b11036d8edda96dce4ad82be1a8ee570714cdf814992ee674d9209f797cce0dc9338c28e6b6c
+MISC metadata.xml 380 SHA256 e2d7b4c1d91e34243c4b45abd03d3e48572bca050b2cd4c899515d38cb0a7454 SHA512 92ee6b53a7dfed04d5a2aef510e0f2f0dcc70903258d5d4cb6ee497521cbb41214b7a45000693a0ecb66029767a48988c45b9b7fb78a09dc813710a9283d2f7d WHIRLPOOL fec0b1a6214ffe7c9f0802ebbbcbb62586ec496258e5d323cccbf7a364f29c7815f499cd4a3af03ab201b98cf235910861668eb7f1f82c2fef51606ae3bedb9d
diff --git a/sci-electronics/klayout/files/klayout-0.23.10-Makefile.conf.linux-gentoo b/sci-electronics/klayout/files/klayout-0.23.10-Makefile.conf.linux-gentoo
new file mode 100644
index 000000000000..d51b60a31db9
--- /dev/null
+++ b/sci-electronics/klayout/files/klayout-0.23.10-Makefile.conf.linux-gentoo
@@ -0,0 +1,45 @@
+
+# Configuration file for
+# gcc, Linux, 64bit
+# release build
+
+# Compiler options
+
+# Compiler general
+INC=-I$(TOP_SOURCE) -I$(SOURCE) -I. -I$(QTINCLUDE)
+DEFS=-DQT_THREAD_SUPPORT -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII
+
+# C++
+CXXOPT_DEP=-MM -MG
+CXXWARN=-Wall -pedantic -Wno-deprecated -Woverloaded-virtual \
+ -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing
+CXXOPT=-c $(CXXFLAGS) -o
+CXXOPT_SO=-fPIC $(CXXOPT)
+
+# C
+CCOPT_DEP=-MM -MG
+CCWARN=
+CCOPT=-c $(CFLAGS) -o
+CCOPT_SO=-fPIC $(CCOPT)
+
+# Linker
+LINK=$(CXX)
+LOPT=-Wl,-E ${LDFLAGS} -o
+LOPT_SO=-shared -fPIC $(LOPT)
+
+LIBS=-L$(QTLIB) -lQtGui -lQtCore -lQtXml -lQtNetwork -lQtSql -lQtDesigner -lrt -lstdc++ -lcrypt -ldl -lz -lpthread
+
+.PHONY: install
+install:
+ mkdir -p $(INSTALL_BINDIR)
+ cp main/$(EXEC_NAME) $(INSTALL_BINDIR)
+ for bin in $(OTHER_BIN) ; \
+ do \
+ cp main/$$bin $(INSTALL_BINDIR) ; \
+ done
+ for plugin in $(PLUGINS) ; \
+ do \
+ cp $$plugin/*.so $(INSTALL_BINDIR) ; \
+ done
+ chmod 755 $(INSTALL_BINDIR) $(INSTALL_BINDIR)/*
+
diff --git a/sci-electronics/klayout/files/klayout-0.24.9-c++11-no-throw-in-destuctor.patch b/sci-electronics/klayout/files/klayout-0.24.9-c++11-no-throw-in-destuctor.patch
new file mode 100644
index 000000000000..4cb6473d58c5
--- /dev/null
+++ b/sci-electronics/klayout/files/klayout-0.24.9-c++11-no-throw-in-destuctor.patch
@@ -0,0 +1,34 @@
+# Fixes "error: throw will always call terminate() [-Werror=terminate]". Gentoo bug 612978.
+
+--- a/src/tlAssert.h.old
++++ b/src/tlAssert.h
+@@ -27,6 +27,16 @@
+
+ #include "config.h"
+
++// For >=C++11, mark assertion_failed() with attribute [[noreturn]] and call std::terminate().
++// Or else, throw int(0) to tell the compiler that the assertion will not return.
++#if __cplusplus < 201103L
++#define ATTRIB_ASSERT KLAYOUT_DLL
++#define END_ASSERT throw int(0)
++#else
++#define ATTRIB_ASSERT [[noreturn]] KLAYOUT_DLL
++#define END_ASSERT std::terminate()
++#endif
++
+ namespace tl
+ {
+
+@@ -34,10 +44,10 @@
+ * @brief The corresponding assert macro
+ */
+
+-KLAYOUT_DLL void assertion_failed (const char *filename, unsigned int line, const char *condition);
++ATTRIB_ASSERT void assertion_failed (const char *filename, unsigned int line, const char *condition);
+
+ // the throw int(0) instruction will tell the compiler that the assertion will not return
+-#define tl_assert(COND) if (!(COND)) { tl::assertion_failed (__FILE__, __LINE__, #COND); throw int(0); }
++#define tl_assert(COND) if (!(COND)) { tl::assertion_failed (__FILE__, __LINE__, #COND); END_ASSERT; }
+
+ } // namespace tl
+
diff --git a/sci-electronics/klayout/klayout-0.24.10.ebuild b/sci-electronics/klayout/klayout-0.24.10.ebuild
new file mode 100644
index 000000000000..5f3954deb383
--- /dev/null
+++ b/sci-electronics/klayout/klayout-0.24.10.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+USE_RUBY="ruby22"
+# note: define maximally ONE implementation here
+
+RUBY_OPTIONAL=no
+inherit eutils multilib toolchain-funcs ruby-ng
+
+DESCRIPTION="Viewer and editor for GDS and OASIS integrated circuit layouts"
+HOMEPAGE="http://www.klayout.de/"
+SRC_URI="http://www.klayout.org/downloads/source/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ dev-qt/designer:4
+ dev-qt/qtgui:4[qt3support]
+ sys-libs/zlib
+ $(ruby_implementations_depend)
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.24.9-c++11-no-throw-in-destuctor.patch
+)
+
+all_ruby_prepare() {
+ # now we generate the stub build configuration file for the home-brew build system
+ cp "${FILESDIR}/${PN}-0.23.10-Makefile.conf.linux-gentoo" "${S}/config/Makefile.conf.linux-gentoo" || die
+}
+
+each_ruby_configure() {
+ ./build.sh \
+ -dry-run \
+ -platform linux-gentoo \
+ -bin bin \
+ -ruby ${RUBY} \
+ -qtbin /usr/lib64/qt4/bin \
+ -qtinc /usr/include/qt4 \
+ -qtlib /usr/$(get_libdir)/qt4 || die "Configuration failed"
+}
+
+each_ruby_compile() {
+ cd build.linux-gentoo
+ tc-export CC CXX AR LD RANLIB
+ export AR="${AR} -r"
+ emake all
+}
+
+each_ruby_install() {
+ cd build.linux-gentoo
+ emake install
+
+ cd ..
+ dobin bin/klayout
+
+ insinto /usr/share/${PN}/testdata/gds
+ doins testdata/gds/*.gds
+ insinto /usr/share/${PN}/testdata/oasis
+ doins testdata/oasis/*.oas testdata/oasis/*.ot
+
+ insinto /usr/share/${PN}
+ doins -r testdata/ruby
+}
diff --git a/sci-electronics/klayout/klayout-9999.ebuild b/sci-electronics/klayout/klayout-9999.ebuild
new file mode 100644
index 000000000000..d6a39fafedfe
--- /dev/null
+++ b/sci-electronics/klayout/klayout-9999.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+RUBY_OPTIONAL=no
+USE_RUBY="ruby22"
+# note: define maximally ONE implementation here
+
+PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
+
+inherit eutils multilib 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="http://www.klayout.org/downloads/source/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Viewer and editor for GDS and OASIS integrated circuit layouts"
+HOMEPAGE="http://www.klayout.de/"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND="
+ dev-qt/designer:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ 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 /usr/lib64/qt5/bin/qmake \
+ -ruby "${RUBY}" \
+ -python "${PYTHON}" \
+ -build . \
+ -bin "${T}/bin" \
+ -rpath "/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* "${ED}/usr/$(get_libdir)/klayout/" || die
+
+ dobin *
+}
diff --git a/sci-electronics/klayout/metadata.xml b/sci-electronics/klayout/metadata.xml
new file mode 100644
index 000000000000..1a98144ab66b
--- /dev/null
+++ b/sci-electronics/klayout/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>dilfridge@gentoo.org</email>
+ <name>Andreas K. Huettel</name>
+</maintainer>
+<maintainer type="project">
+ <email>sci-electronics@gentoo.org</email>
+ <name>Gentoo Electronics Project</name>
+</maintainer>
+</pkgmetadata>