summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Ammerlaan <andrewammerlaan@gentoo.org>2024-02-06 12:11:45 +0100
committerAndrew Ammerlaan <andrewammerlaan@gentoo.org>2024-02-06 12:29:47 +0100
commit5de53d6ac8c84016c626a2efa13c626c9c7c0252 (patch)
tree8891fc54c1d20f8c66765354dd55237ab52979af
parentwww-client/firefox: add 122.0.1 (diff)
downloadgentoo-5de53d6ac8c84016c626a2efa13c626c9c7c0252.tar.gz
gentoo-5de53d6ac8c84016c626a2efa13c626c9c7c0252.tar.bz2
gentoo-5de53d6ac8c84016c626a2efa13c626c9c7c0252.zip
media-gfx/libredwg: add 0.13
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
-rw-r--r--media-gfx/libredwg/Manifest1
-rw-r--r--media-gfx/libredwg/libredwg-0.13.ebuild114
2 files changed, 115 insertions, 0 deletions
diff --git a/media-gfx/libredwg/Manifest b/media-gfx/libredwg/Manifest
index 1237ca5922c7..d8e2d67e3035 100644
--- a/media-gfx/libredwg/Manifest
+++ b/media-gfx/libredwg/Manifest
@@ -1,4 +1,5 @@
DIST libredwg-0.12.5.6321.tar.gz 20413375 BLAKE2B 4645228ca6e4b8624df33b5584b3645a7e40cfa4840b7fd2473cb1b062c61973d89e0fdaf108ca8105835b3c5f4197d030339798c08a2c790b0ead2595b69bd4 SHA512 25ac81e4a6db1f0dea201a24b3cff7a865a18e67e1fa8fbdcecc4e95542812eb66907612593c9afa93aad51fa0e107226b495a477ceed76af4b8b71eadd99e5e
DIST libredwg-0.12.5.6564.tar.gz 20424314 BLAKE2B c89b0a045190249eee5437ffde76fcc9b5cfa2017bfeb746de897cc191b9dd6b883694bd3b88f539782d5a3a8314620b2e51f538d91499743d67a862a8b29815 SHA512 68f35f5f16cf4c7537b563c0519eaca9d4aa0cd798067d60548e357579e427104e36aa9f3a65405949a869c8c8de4a47610ba97367fb1e2153ec89620fd54d97
DIST libredwg-0.12.5.6938.tar.gz 20513164 BLAKE2B f70909fb32db8c03ca20e9d39a54073bf614c6826c45764a3616913322b0ac2d2e1bb57961ccd9108f068f4bd3a72b9349d9e30159c857372b938e9d2e525235 SHA512 6a53501ffed57b4dc8b8c34104f987f549b5bd3bd7335aee0fc69f2a3fecd694e8fbc672bf325414e0bb2b7e8bfd9bb7542efaf1dc1392aec5b70ab45529f11a
+DIST libredwg-0.13.tar.gz 20613784 BLAKE2B 26bab07b651b75b483b5211c77610a7d0af1f6adaca956a5766a6602c6c7e07fe0be3ec976a2119920c3d2df92c827cd9a9632563a91b4467159adb941ca39f7 SHA512 11585b4dcf83c2304e01010f68eb03da14c8d6affef944254a30067acb981d7f02507a932ad4509dfd65252e43d19c22966cc51945621764c4283daf0a1f0ab4
DIST libredwg-85695f3d5903b1cd5b4030efe50db3b4f5f3c928.tar.gz 12597 BLAKE2B cd01f6c446d5d129545fdae07c0101d133e1f4e69ee62e94c27c3c2853dcc30854f40aed0c6f38f6594c5f5eb9e7b2d18d3b2e4f487b7bf1a3f7f39facde38bc SHA512 1d08cfa6216e0fe671dab77a0bd0b4ef0c4eb174878eba909c680e0ee93a82079b3cbf60afe2de7b0078258de8bcc588961e59cf0c14fe5f2d1f70db639ef95a
diff --git a/media-gfx/libredwg/libredwg-0.13.ebuild b/media-gfx/libredwg/libredwg-0.13.ebuild
new file mode 100644
index 000000000000..57215dfb3169
--- /dev/null
+++ b/media-gfx/libredwg/libredwg-0.13.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DOCS_BUILDER="doxygen"
+# File is hardcoded to be run from ../ so we use this instead of DOCS_DIR
+DOCS_CONFIG_NAME="doc/Doxyfile"
+
+inherit autotools docs python-single-r1 perl-functions
+
+JSMN_COMMIT="85695f3d5903b1cd5b4030efe50db3b4f5f3c928"
+
+DESCRIPTION="C library to handle DWG files"
+HOMEPAGE="https://www.gnu.org/software/libredwg/ https://github.com/LibreDWG/libredwg"
+SRC_URI="
+ https://github.com/LibreDWG/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/zserge/jsmn/archive/${JSMN_COMMIT}.tar.gz -> ${PN}-${JSMN_COMMIT}.tar.gz
+"
+
+LICENSE="GPL-3+ MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# https://github.com/LibreDWG/libredwg/issues/342
+RESTRICT="test"
+
+IUSE="debug python perl static-libs"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+ perl? ( dev-lang/perl )
+ dev-libs/libpcre2
+ dev-libs/pslib
+"
+DEPEND="${RDEPEND}
+ python? ( dev-lang/swig )
+ perl? ( dev-lang/swig )
+"
+BDEPEND="|| (
+ sys-devel/gcc[sanitize]
+ sys-libs/compiler-rt-sanitizers[asan(-)]
+ )
+ dev-vcs/git
+"
+
+src_unpack() {
+ # Build system really wants jsmn to be here
+ default
+ rm -r "${S}/jsmn" || die
+ mv "${WORKDIR}/jsmn-${JSMN_COMMIT}" "${S}/jsmn" || die
+}
+
+src_prepare() {
+ default
+ # Fix variable references itself error, fails in src_install otherwise.
+ sed -i -e 's/TEXINPUTS="$(TEXINPUTS)$(PATH_SEPARATOR)$(TEXINFO_TEX_DIR)"/TEXINPUTS="$(PATH_SEPARATOR)$(TEXINFO_TEX_DIR)"/g' doc/Makefile.am || die
+ # https://github.com/LibreDWG/libredwg/issues/404
+ # Workaround: release tarball does not include dwg2ps.1.
+ # Upstream autotools stuff has to be run in git repo
+ git init -q || die
+ git config --global user.email "larry@gentoo.org" || die
+ git config --global user.name "Larry the Cow" || die
+ git add . || die
+ git commit -qm 'init' || die
+ git tag ${PV} || die
+ eautoreconf
+}
+
+src_configure() {
+ perl_set_version
+ local myconf=(
+ --enable-write
+ --enable-dxf
+ --enable-json
+ --disable-gcov
+ --disable-werror
+ $(use_enable !debug release)
+ $(use_enable debug trace)
+ $(use_enable debug)
+ $(use_enable static-libs static)
+ $(use_enable python python "${EPYTHON}")
+ $(usex perl "--with-perl-install=vendor" "--with-perl-install=no")
+ )
+
+ if use python || use perl; then
+ myconf+=( --enable-bindings )
+ else
+ myconf+=( --disable-bindings )
+ fi
+
+ econf ${myconf[@]}
+}
+
+src_compile() {
+ perl_set_version
+ emake
+ docs_compile
+}
+
+src_install() {
+ perl_set_version
+ default
+ use python && python_optimize
+ # remove .la files if static-libs disabled
+ if ! use static-libs; then
+ rm "${ED}/usr/$(get_libdir)/libredwg.la" || die
+ if use python; then
+ rm "${D}/$(python_get_sitedir)/_LibreDWG.la" || die
+ fi
+ fi
+}