commit:     1a59549ee5b33d01b739bfc44e9c4463249af2ec
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 11 09:07:15 2019 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Aug 11 09:07:15 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1a59549e

dev-lang/mujs: bumped up to 1.0.6, added subslot, bug #670106

Added a comment why gentoo adds such a fine-grained SONAME:
library changes ABI (and API) all the time: functions are
added and removed.

Reported-by: Andreas Sturmlechner
Closes: https://bugs.gentoo.org/670106
Package-Manager: Portage-2.3.71, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-lang/mujs/Manifest          |  1 +
 dev-lang/mujs/mujs-1.0.6.ebuild | 58 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 59 insertions(+)

diff --git a/dev-lang/mujs/Manifest b/dev-lang/mujs/Manifest
index 0200ee406a7..c99e3bce086 100644
--- a/dev-lang/mujs/Manifest
+++ b/dev-lang/mujs/Manifest
@@ -1 +1,2 @@
 DIST mujs-1.0.5.tar.gz 119353 BLAKE2B 
48f1b598e50d5804b0d64230cdd6b4d3f719187ea0906f45c9f45baee2c8df59c6fd09dc25afc9e1ce4e20a9866d158d16a4632bec552fddd8fac70b20e2363f
 SHA512 
c1c59b5e80e0e5f580f30dfc0b4707b6a1e44a73c746b9783bb24d91429ddf8ed670a7663478300cc568cfc15a511720b6d18be2ade40a3a66fc7ab8f3933c2d
+DIST mujs-1.0.6.tar.gz 121385 BLAKE2B 
b74da9cc9df6c51d81fe4b6170fddd9bfd3e37cc1c48509ddbcc9b657feb7169cfa98427770a118fb9c0923e70320668198739ea111cbd5d1c2303b2ada7093d
 SHA512 
c3062348dcc79b8ea3726fc528b3ba765d3462232059617b9ab221ba47fa904cc81a305a6199a9a2cea24a2d891ca63d475b4884cd4e53fa715b3a55f51ca4d9

diff --git a/dev-lang/mujs/mujs-1.0.6.ebuild b/dev-lang/mujs/mujs-1.0.6.ebuild
new file mode 100644
index 00000000000..fdae6f9f0a1
--- /dev/null
+++ b/dev-lang/mujs/mujs-1.0.6.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="An embeddable Javascript interpreter in C."
+HOMEPAGE="
+       https://mujs.com/
+       https://github.com/ccxvii/mujs/
+"
+SRC_URI="https://github.com/ccxvii/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="AGPL-3"
+# subslot matches SONAME
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 
~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="static-libs"
+
+RDEPEND="sys-libs/readline:0="
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-1.0.5-flags.patch"
+)
+
+src_prepare() {
+       default
+
+       tc-export AR CC
+
+       # library's ABI (and API) changes in ~each release:
+       # diff 'usr/includemujs.h' across releases to validate
+       append-cflags -fPIC -Wl,-soname=lib${PN}.so.${PV}
+}
+
+src_compile() {
+       emake VERSION=${PV} prefix=/usr shared
+}
+
+src_install() {
+       local myeconfargs=(
+               DESTDIR="${ED}"
+               install-shared
+               libdir="/usr/$(get_libdir)"
+               prefix="/usr"
+               VERSION="${PV}"
+               $(usex static-libs install-static '')
+       )
+
+       emake "${myeconfargs[@]}"
+
+       mv -v "${ED}"/usr/$(get_libdir)/lib${PN}.so{,.${PV}} || die
+
+       dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so
+       dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so.${PV:0:1}
+}

Reply via email to