diff options
author | Alfredo Tupone <tupone@gentoo.org> | 2023-03-18 17:45:49 +0100 |
---|---|---|
committer | Alfredo Tupone <tupone@gentoo.org> | 2023-03-18 18:06:29 +0100 |
commit | 8d69281eb3a1fd8b67bfa735b73fb4e84253c850 (patch) | |
tree | d48c334f61666f225a3e9663c9bfa8c8673a42a2 /dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild | |
parent | app-crypt/debian-archive-keyring: 2023.2 (diff) | |
download | gentoo-8d69281eb3a1fd8b67bfa735b73fb4e84253c850.tar.gz gentoo-8d69281eb3a1fd8b67bfa735b73fb4e84253c850.tar.bz2 gentoo-8d69281eb3a1fd8b67bfa735b73fb4e84253c850.zip |
dev-tcltk/tcl3d: fix on musl
Closes: https://bugs.gentoo.org/831455
Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
Diffstat (limited to 'dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild')
-rw-r--r-- | dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild b/dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild new file mode 100644 index 000000000000..b295909cdc56 --- /dev/null +++ b/dev-tcltk/tcl3d/tcl3d-0.5.0-r1.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="Tcl bindings to OpenGL and other 3D libraries" +HOMEPAGE="http://www.tcl3d.org" +SRC_URI="http://www.tcl3d.org/download/${P}.distrib/${PN}-src-${PV}.zip" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="debug ode osg sdl truetype" + +RDEPEND="dev-lang/tcl:0= + dev-lang/tk:0= + x11-libs/libXi + x11-libs/libXmu + virtual/opengl + virtual/glu + ode? ( dev-games/ode ) + osg? ( dev-games/openscenegraph ) + truetype? ( media-libs/ftgl ) + sdl? ( media-libs/libsdl )" +DEPEND="${RDEPEND} + >=dev-lang/swig-1.3.38:0= + app-arch/unzip" + +S="${WORKDIR}/${PN}" +PATCHES=( + "${FILESDIR}/${P}-include-tk-dir-and-permissive.patch" + "${FILESDIR}/${P}-implicit.patch" +) + +src_prepare() { + sed -i \ + -e '/\..$(DSEP)pkgIndex.tcl/d' \ + tcl3d*/Makefile \ + || die + + default +} + +src_configure() { + local _TCL_V=( $(echo 'puts [info tclversion]' | tclsh | tr '.' ' ') ) + local _TCL_FV="${_TCL_V[0]}.${_TCL_V[1]}" + + einfo "Configuring for Tcl ${_TCL_FV}" + sed -i \ + -e 's:^\(TCLMAJOR\) *=\(.*\)$:\1 = '${_TCL_V[0]}':' \ + -e 's:^\(TCLMINOR\) *=\(.*\)$:\1 = '${_TCL_V[1]}':' \ + -e "s:lib64:$(get_libdir):" \ + config_Linux* || die + + # Fix libSDL link + sed -i -e 's:-lSDL-1\.2:-lSDL:g' tcl3dSDL/Makefile || die +} + +src_compile() { + append-flags -fPIC + use debug || append-flags -DNDEBUG + + # Configure wrapper + local CONFIG_PLUGIN="WRAP_GL2PS=" + use truetype || CONFIG_PLUGIN+=" WRAP_FTGL=" + use ode || CONFIG_PLUGIN+=" WRAP_ODE=" + use osg || CONFIG_PLUGIN+=" WRAP_OSG=" + use sdl || CONFIG_PLUGIN+=" WRAP_SDL=" + + # Restricting build to -j1 since it seems that if we build it in parallel, + # it fails with the "tcl3dOsg" project attempting to import glewdefs.i, + # and not finding it. + emake \ + -j1 \ + INSTDIR="/usr" \ + OPT="${CFLAGS}" \ + CC="$(tc-getCC) -c" \ + CXX="$(tc-getCXX) -c" \ + LD="$(tc-getLD)" \ + LDOUT="${LDFLAGS} -o" \ + SHLIB_LD="$(tc-getCC) -shared" \ + SHLIB_LDXX="$(tc-getCXX) -shared" \ + ${CONFIG_PLUGIN} +} + +src_install() { + emake INSTDIR="${D}/usr" DESTDIR="${D}" INSTLIB="${D}/usr/$(get_libdir)" install + insinto /usr/$(get_libdir)/${PN}${PV} + doins pkgIndex.tcl +} |