--- /dev/null
+Description: Copy headers on install instead of symlinking
+Author: Rico Tzschichholz <ricotz@ubuntu.com>
+Forwarded: no
+Last-Update: 2014-10-29
+
+---
+
+Index: b/python/mozbuild/mozbuild/backend/recursivemake.py
+===================================================================
+--- a/python/mozbuild/mozbuild/backend/recursivemake.py
++++ b/python/mozbuild/mozbuild/backend/recursivemake.py
+@@ -796,7 +796,7 @@
+ return
+
+ for source, dest, _ in self._walk_hierarchy(obj, exports):
+- self._install_manifests['dist_include'].add_symlink(source, dest)
++ self._install_manifests['dist_include'].add_copy(source, dest)
+
+ if not os.path.exists(source):
+ raise Exception('File listed in EXPORTS does not exist: %s' % source)
--- /dev/null
+Add major version to pkg-config filename.
+Author: Rico Tzschichholz <ricotz@ubuntu.com>
+Forwarded: no
+Last-Update: 2015-05-04
+
+Index: b/js/src/Makefile.in
+===================================================================
+--- a/js/src/Makefile.in
++++ b/js/src/Makefile.in
+@@ -214,10 +214,10 @@
+ $(JS_CONFIG_NAME): js-config
+ cp $^ $@
+
+-$(LIBRARY_NAME).pc: js.pc
++$(JS_LIBRARY_NAME).pc: js.pc
+ cp $^ $@
+
+-install:: $(LIBRARY_NAME).pc
++install:: $(JS_LIBRARY_NAME).pc
+ $(SYSINSTALL) $^ $(DESTDIR)$(libdir)/pkgconfig
+
+ install:: js-config.h
EAPI=6
WANT_AUTOCONF="2.1"
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="threads"
-inherit autotools toolchain-funcs multilib python-any-r1 versionator pax-utils mozcoreconf-v4
+inherit autotools toolchain-funcs pax-utils mozcoreconf-v4
MY_PN="mozjs"
MY_P="${MY_PN}-${PV/_/.}"
RESTRICT="ia64? ( test )"
#S="${WORKDIR}/${MY_P%.rc*}"
-S="${WORKDIR}/mozjs-38.0.0"
+S="${WORKDIR}/${MY_PN}-${SLOT}.0.0"
BUILDDIR="${S}/js/src"
RDEPEND=">=dev-libs/nspr-4.10.10
sys-libs/readline:0=
>=sys-libs/zlib-1.2.3
system-icu? ( >=dev-libs/icu-51.1:= )"
-DEPEND="${RDEPEND}
- ${PYTHON_DEPS}
- app-arch/zip
- virtual/pkgconfig"
+DEPEND="${RDEPEND}"
pkg_setup(){
if [[ ${MERGE_TYPE} != "binary" ]]; then
src_prepare() {
eapply "${FILESDIR}"/${PN}-38-jsapi-tests.patch \
"${FILESDIR}"/mozjs38-1269317.patch \
- "${FILESDIR}"/mozjs38-fix-tracelogger.patch
+ "${FILESDIR}"/mozjs38-fix-tracelogger.patch \
+ "${FILESDIR}"/mozjs38-copy-headers.patch \
+ "${FILESDIR}"/mozjs38-pkg-config-version.patch
eapply_user
}
src_configure() {
- export SHELL=/bin/sh
+ export SHELL="${SHELL:-${EPREFIX%/}/bin/bash}"
+
cd "${BUILDDIR}" || die
econf \
host_jsoplengen.o || die
fi
- MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ MOZ_MAKE_FLAGS="${MAKEOPTS}"
emake \
MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \
HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \
cd "${BUILDDIR}" || die
emake DESTDIR="${D}" install
+ mv "${ED}"usr/bin/js-config{,${SLOT}} || die
+ mv "${ED}"usr/bin/js{,${SLOT}} || die
if ! use minimal; then
if use jit; then
- pax-mark m "${ED}/usr/bin/js${SLOT}"
+ pax-mark m "${ED}"usr/bin/js${SLOT}
fi
else
- rm -f "${ED}/usr/bin/js${SLOT}"
+ rm -f "${ED}"/usr/bin/js${SLOT}
fi
if ! use static-libs; then
EAPI=6
WANT_AUTOCONF="2.1"
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="threads"
-inherit autotools toolchain-funcs multilib python-any-r1 versionator pax-utils mozcoreconf-v4
+inherit autotools toolchain-funcs pax-utils mozcoreconf-v4
MY_PN="mozjs"
MY_P="${MY_PN}-${PV/_/.}"
RESTRICT="ia64? ( test )"
S="${WORKDIR}/${MY_P%.rc*}"
-#S="${WORKDIR}/mozjs-38.0.0"
BUILDDIR="${S}/js/src"
RDEPEND=">=dev-libs/nspr-4.10.10
sys-libs/readline:0=
>=sys-libs/zlib-1.2.3
system-icu? ( >=dev-libs/icu-51.1:= )"
-DEPEND="${RDEPEND}
- ${PYTHON_DEPS}
- app-arch/zip
- virtual/pkgconfig"
+DEPEND="${RDEPEND}"
pkg_setup(){
if [[ ${MERGE_TYPE} != "binary" ]]; then
}
src_prepare() {
- eapply "${FILESDIR}"/${PN}-38-jsapi-tests.patch
- eapply "${FILESDIR}"/mozjs45-1266366.patch
+ eapply "${FILESDIR}"/${PN}-38-jsapi-tests.patch \
+ "${FILESDIR}"/mozjs45-1266366.patch \
+ "${FILESDIR}"/mozjs38-pkg-config-version.patch
+
+ # apply relevant (modified) patches from gentoo's firefox-45 patchset
eapply "${FILESDIR}"/ff45
eapply_user
}
src_configure() {
- export SHELL=/bin/sh
+ export SHELL="${SHELL:-${EPREFIX%/}/bin/bash}"
cd "${BUILDDIR}" || die
econf \
host_jsoplengen.o || die
fi
- MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" \
emake \
MOZ_OPTIMIZE_FLAGS="" MOZ_DEBUG_FLAGS="" \
HOST_OPTIMIZE_FLAGS="" MODULE_OPTIMIZE_FLAGS="" \
cd "${BUILDDIR}" || die
emake DESTDIR="${D}" install
+ # re-slot due to upstream stripping out most of the slotting
+ mv "${ED}"usr/bin/js-config{,${SLOT}} || die
+ mv "${ED}"usr/bin/js{,${SLOT}} || die
if ! use minimal; then
if use jit; then
- pax-mark m "${ED}/usr/bin/js${SLOT}"
+ pax-mark m "${ED}"usr/bin/js${SLOT}
fi
else
- rm -f "${ED}/usr/bin/js${SLOT}"
+ rm -f "${ED}"usr/bin/js${SLOT}
fi
if ! use static-libs; then
#--- END OF EXAMPLES ---
+# Ian Stakenvicius <axs@gentoo.org> (28 Feb 2017)
+# Installs symlinks to ${S} instead of copies of files,
+# will unmask once fixed
+dev-lang/spidermonkey:45
+
# Matt Turner <mattst88@gentoo.org> (26 Feb 2017)
# Integrated into xorg-server since 1.17. Removal in 30 days.
# Bug #611058