diff options
Diffstat (limited to 'dev-lang/mujs/mujs-1.3.3.ebuild')
-rw-r--r-- | dev-lang/mujs/mujs-1.3.3.ebuild | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/dev-lang/mujs/mujs-1.3.3.ebuild b/dev-lang/mujs/mujs-1.3.3.ebuild new file mode 100644 index 000000000000..3f02a773e3e3 --- /dev/null +++ b/dev-lang/mujs/mujs-1.3.3.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic multilib toolchain-funcs + +DESCRIPTION="An embeddable JavaScript interpreter written in C" +HOMEPAGE="https://mujs.com/ https://github.com/ccxvii/mujs" +SRC_URI="https://mujs.com/downloads/${P}.tar.gz" + +LICENSE="ISC" +# The subslot matches the SONAME +SLOT="0/${PV}" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos" + +RDEPEND="sys-libs/readline:=" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-flags.patch +) + +src_prepare() { + default + + tc-export AR CC + + append-cflags -fPIC + + # The library's ABI (and API) might change in new releases + # Diff 'usr/include/mujs.h' across releases to validate + if [[ ${CHOST} == *-darwin* ]] ; then + append-cflags -Wl,-install_name,"${EPREFIX}"/usr/$(get_libdir)/lib${PN}.${PV}.dylib + else + append-cflags -Wl,-soname=lib${PN}.so.${PV} + fi +} + +src_compile() { + # We need to use ${PV} for the pkgconfig file, see: #784461 + emake \ + VERSION=${PV} \ + XCFLAGS="${CFLAGS}" \ + XLDFLAGS="${LDFLAGS}" \ + prefix=/usr \ + release +} + +src_install() { + emake \ + DESTDIR="${ED}" \ + VERSION=${PV} \ + libdir="/usr/$(get_libdir)" \ + prefix=/usr \ + install-shared + + mv -v "${ED}"/usr/$(get_libdir)/lib${PN}$(get_libname) "${ED}"/usr/$(get_libdir)/lib${PN}$(get_libname ${PV}) || die "Failed adding version suffix to mujs shared library" + dosym lib${PN}$(get_libname ${PV}) /usr/$(get_libdir)/lib${PN}$(get_libname) + dosym lib${PN}$(get_libname ${PV}) /usr/$(get_libdir)/lib${PN}$(get_libname ${PV:0:1}) +} |