diff options
Diffstat (limited to 'media-gfx/libredwg')
-rw-r--r-- | media-gfx/libredwg/Manifest | 2 | ||||
-rw-r--r-- | media-gfx/libredwg/libredwg-0.13.3.ebuild | 114 |
2 files changed, 116 insertions, 0 deletions
diff --git a/media-gfx/libredwg/Manifest b/media-gfx/libredwg/Manifest index 08c5cdf81c2a..ae20f76140ce 100644 --- a/media-gfx/libredwg/Manifest +++ b/media-gfx/libredwg/Manifest @@ -1,6 +1,8 @@ DIST libredwg-0.13.2.tar.gz 20627421 BLAKE2B 7d11c5f390a2e9d1afbe26b07a44e3b38a2734df39a0e499b55c59e873686625adf66a0a25de4509dee3fe285488e8d89e2e176e2aaa7c0a13c52abe6472b910 SHA512 ae93bf958c196cc54b8c05664e7201b82a3975845d544ae45cde437d716507ef1de08bf89615b5a67cf3841a014782af335031668ad59b34721a78648caaba67 +DIST libredwg-0.13.3.tar.gz 20749296 BLAKE2B c39a98dab385a2d2a1603eff6347a9c91ba5b526085f0b36b761486be57a4ba1aaa44eb4fb70178fa6f0425797991fef89e51c2dd61b352829e2ebc39215248a SHA512 cf0baf477d053eb6ab2feaeda187f2d92211c7d28aa50318c1c8d7acf1b9c463258fa3a388dddce266bf44e0d4e4cf1bd3aa591c918f8a253515919e5c1b3f57 DIST libredwg-0.13.tar.gz 20613784 BLAKE2B 26bab07b651b75b483b5211c77610a7d0af1f6adaca956a5766a6602c6c7e07fe0be3ec976a2119920c3d2df92c827cd9a9632563a91b4467159adb941ca39f7 SHA512 11585b4dcf83c2304e01010f68eb03da14c8d6affef944254a30067acb981d7f02507a932ad4509dfd65252e43d19c22966cc51945621764c4283daf0a1f0ab4 DIST libredwg-85695f3d5903b1cd5b4030efe50db3b4f5f3c928.tar.gz 12597 BLAKE2B cd01f6c446d5d129545fdae07c0101d133e1f4e69ee62e94c27c3c2853dcc30854f40aed0c6f38f6594c5f5eb9e7b2d18d3b2e4f487b7bf1a3f7f39facde38bc SHA512 1d08cfa6216e0fe671dab77a0bd0b4ef0c4eb174878eba909c680e0ee93a82079b3cbf60afe2de7b0078258de8bcc588961e59cf0c14fe5f2d1f70db639ef95a EBUILD libredwg-0.13.2.ebuild 2808 BLAKE2B d297fae57d55f3ac039d791870242af3692da80314f96e2388fbbde59ac7ca678b5ee5b5429ed8194aeeeabd11c7ceb8e05b1dfcc2db453c8f5245dd573b1b80 SHA512 fee4244e5d428c979b9efca95bb3b492c35d603a2f22fa0de5f5b5ea019aa34bb1142b96008207f124b301edd5cfda521cbcffa7f4b47c81e62f4f9eaf836d11 +EBUILD libredwg-0.13.3.ebuild 2808 BLAKE2B d297fae57d55f3ac039d791870242af3692da80314f96e2388fbbde59ac7ca678b5ee5b5429ed8194aeeeabd11c7ceb8e05b1dfcc2db453c8f5245dd573b1b80 SHA512 fee4244e5d428c979b9efca95bb3b492c35d603a2f22fa0de5f5b5ea019aa34bb1142b96008207f124b301edd5cfda521cbcffa7f4b47c81e62f4f9eaf836d11 EBUILD libredwg-0.13.ebuild 2808 BLAKE2B d297fae57d55f3ac039d791870242af3692da80314f96e2388fbbde59ac7ca678b5ee5b5429ed8194aeeeabd11c7ceb8e05b1dfcc2db453c8f5245dd573b1b80 SHA512 fee4244e5d428c979b9efca95bb3b492c35d603a2f22fa0de5f5b5ea019aa34bb1142b96008207f124b301edd5cfda521cbcffa7f4b47c81e62f4f9eaf836d11 MISC metadata.xml 406 BLAKE2B c39713a8733c296d7b9c8d87210f1bec2bcebf415d2dcb6e6326fd6a89e9b84b44bffd781cd953de35894220b51277d39c3fd80ad8c9fe8f22cb29fdb920467c SHA512 a474d5abfc3db689b006dad09dc5ab003526141269d30e6acb7c241054be518a21f6a034ed9939a75098386cd01012d460bf70e0c12f0f14023ac48682c44e81 diff --git a/media-gfx/libredwg/libredwg-0.13.3.ebuild b/media-gfx/libredwg/libredwg-0.13.3.ebuild new file mode 100644 index 000000000000..57215dfb3169 --- /dev/null +++ b/media-gfx/libredwg/libredwg-0.13.3.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 +} |