diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /www-plugins/nspluginwrapper | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'www-plugins/nspluginwrapper')
10 files changed, 292 insertions, 0 deletions
diff --git a/www-plugins/nspluginwrapper/Manifest b/www-plugins/nspluginwrapper/Manifest new file mode 100644 index 000000000000..eecd2b78ffca --- /dev/null +++ b/www-plugins/nspluginwrapper/Manifest @@ -0,0 +1 @@ +DIST nspluginwrapper-1.4.4.tar.gz 412513 SHA256 f2ed94d42dbbb5370b000a3f30d2b601eb2b09d5742b2842cd0d70e862fab2bb SHA512 41126d98284cae6d25d23233b08ccca0dea841d457d4e41210282c6ab4c0fbf020f2ab4173ce39db8a47a1db20840bcc856f9c7309aa2e6ef2a777e3f2ebf503 WHIRLPOOL 537325919cbba8ce456c30a466f6e2c9fe546da829538afc7807f4201a06ebd7d89f9671b46fac09944a76d8064289530790ccf1ff2b6e5d596b2116447c991e diff --git a/www-plugins/nspluginwrapper/files/nspluginwrapper-1.3.0-gdk-native-windows.patch b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.3.0-gdk-native-windows.patch new file mode 100644 index 000000000000..977af6c97e85 --- /dev/null +++ b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.3.0-gdk-native-windows.patch @@ -0,0 +1,13 @@ +diff -up nspluginwrapper-1.3.0/src/npw-viewer.sh.old nspluginwrapper-1.3.0/src/npw-viewer.sh +--- nspluginwrapper-1.3.0/src/npw-viewer.sh.old 2009-11-16 12:57:53.000000000 +0100 ++++ nspluginwrapper-1.3.0/src/npw-viewer.sh 2009-12-04 16:16:27.000000000 +0100 +@@ -77,6 +77,9 @@ NPW_USE_XSHM=${NPW_USE_XSHM:-yes} + NPW_USE_VALGRIND=${NPW_USE_VALGRIND:-no} + can_use_valgrind="no" + ++# Compiz/Flash workaround (rhbz#542424) ++export GDK_NATIVE_WINDOWS=1 ++ + if test "$ARCH" != "$TARGET_ARCH"; then + case $TARGET_ARCH in + i386) diff --git a/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-compile-on-hardened.patch b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-compile-on-hardened.patch new file mode 100644 index 000000000000..6d9adc20e9b3 --- /dev/null +++ b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-compile-on-hardened.patch @@ -0,0 +1,12 @@ +diff -ur nspluginwrapper-1.4.4.orig2//Makefile nspluginwrapper-1.4.4/Makefile +--- nspluginwrapper-1.4.4.orig2//Makefile 2011-07-14 11:56:52.674790086 -0400 ++++ nspluginwrapper-1.4.4/Makefile 2011-07-14 12:01:00.281197722 -0400 +@@ -337,7 +337,7 @@ + @[ -d $(LSB_OBJ_DIR) ] || mkdir $(LSB_OBJ_DIR) > /dev/null 2>&1 + + $(LSB_OBJ_DIR)/%.o: $(LSB_SRC_DIR)/%.c $(LSB_OBJ_DIR) +- $(CC) $(CFLAGS_32) -nostdinc -fno-builtin -I. -I$(LSB_INC_DIR) -c $< -o $@ ++ $(CC) $(CFLAGS_32) -nostdinc -fno-builtin -I. -I$(LSB_INC_DIR) -c -fno-stack-protector $< -o $@ + + $(LSB_OBJ_DIR)/%.a: $(LSB_OBJ_DIR)/%.o + $(AR) rc $@ $< diff --git a/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-dont-include-gthread.patch b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-dont-include-gthread.patch new file mode 100644 index 000000000000..c1d404ab75d2 --- /dev/null +++ b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-dont-include-gthread.patch @@ -0,0 +1,12 @@ +diff --git a/src/npw-player.c b/src/npw-player.c +index a99b8f7..217b5ba 100644 +--- a/src/npw-player.c ++++ b/src/npw-player.c +@@ -25,7 +25,6 @@ + #include <unistd.h> + #include <glib.h> + #include <glib/gstdio.h> +-#include <glib/gthread.h> + #include <gtk/gtk.h> + #include <gdk/gdkx.h> + #include <gdk/gdkkeysyms.h> diff --git a/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-dont-unload-libraries.patch b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-dont-unload-libraries.patch new file mode 100644 index 000000000000..70793f9e7626 --- /dev/null +++ b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-dont-unload-libraries.patch @@ -0,0 +1,14 @@ +diff --git a/src/npw-config.c b/src/npw-config.c +index e9e8007..4ad4bc1 100644 +--- a/src/npw-config.c ++++ b/src/npw-config.c +@@ -534,7 +534,8 @@ static bool is_wrapper_plugin(const char *plugin_path, NPW_PluginInfo *out_plugi + return false; + + bool ret = is_wrapper_plugin_handle(handle, out_plugin_info); +- dlclose(handle); ++ /* Intentionally leak the handle; many libraries crash when unloaded. */ ++ /* dlclose(handle); */ + return ret; + } + diff --git a/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-link-to-libdl.patch b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-link-to-libdl.patch new file mode 100644 index 000000000000..28e8f65cf745 --- /dev/null +++ b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-link-to-libdl.patch @@ -0,0 +1,13 @@ +diff --git a/Makefile b/Makefile +index e36a991..2a40671 100644 +--- a/Makefile ++++ b/Makefile +@@ -142,7 +142,7 @@ npplayer_CFLAGS += $(GTK_CFLAGS) $(GLIB_CFLAGS) $(MOZILLA_CFLAGS) $(CURL_CFLAGS + npplayer_LDFLAGS = $(LDFLAGS) + npplayer_LDFLAGS += $(libpthread_LDFLAGS) + npplayer_LIBS = $(GTK_LIBS) $(GLIB_LIBS) $(CURL_LIBS) $(X_LIBS) +-npplayer_LIBS += $(libpthread_LIBS) $(libsocket_LIBS) ++npplayer_LIBS += $(libdl_LIBS) $(libpthread_LIBS) $(libsocket_LIBS) + + libnoxshm_LIBRARY = libnoxshm.so + libnoxshm_RAWSRCS = libnoxshm.c diff --git a/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-link-to-libgthread.patch b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-link-to-libgthread.patch new file mode 100644 index 000000000000..56030c473c42 --- /dev/null +++ b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-link-to-libgthread.patch @@ -0,0 +1,15 @@ +diff --git a/configure b/configure +index 5f3dd86..09c400a 100755 +--- a/configure ++++ b/configure +@@ -499,8 +499,8 @@ fi + + # check for Glib 2.0 compile CFLAGS + if $pkgconfig --exists glib-2.0; then +- GLIB_CFLAGS=`$pkgconfig --cflags glib-2.0` +- GLIB_LIBS=`$pkgconfig --libs glib-2.0` ++ GLIB_CFLAGS=`$pkgconfig --cflags glib-2.0 gthread-2.0` ++ GLIB_LIBS=`$pkgconfig --libs glib-2.0 gthread-2.0` + GLIB_VERSION=`$pkgconfig --modversion glib-2.0` + else + echo "GLIB 2.0 environment not found" diff --git a/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-parallel-make.patch b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-parallel-make.patch new file mode 100644 index 000000000000..95a7e49d6afa --- /dev/null +++ b/www-plugins/nspluginwrapper/files/nspluginwrapper-1.4.4-parallel-make.patch @@ -0,0 +1,91 @@ +diff -ur nspluginwrapper-1.4.2.orig//Makefile nspluginwrapper-1.4.2/Makefile +--- nspluginwrapper-1.4.2.orig//Makefile 2011-06-04 14:41:40.000000000 -0400 ++++ nspluginwrapper-1.4.2/Makefile 2011-06-16 22:11:07.059551179 -0400 +@@ -14,7 +14,7 @@ + endif + + ifeq ($(INSTALL),) +-INSTALL = install ++INSTALL = install -D + ifneq (,$(findstring $(OS),solaris)) + INSTALL = $(SRC_PATH)/utils/install.sh + endif +@@ -236,44 +236,40 @@ + uninstall.mkruntime: + rm -f $(DESTDIR)$(npcommondir)/mkruntime + +-install: install.dirs install.player install.wrapper install.viewer install.libnoxshm install.loader install.config +-install.dirs: +- mkdir -p $(DESTDIR)$(npcommondir) || : +- mkdir -p $(DESTDIR)$(nphostdir) || : +- mkdir -p $(DESTDIR)$(nptargetdir) || : ++install: install.player install.wrapper install.viewer install.libnoxshm install.loader install.config + ifeq ($(build_player),yes) +-install.player: install.dirs $(npplayer_PROGRAM) ++install.player: $(npplayer_PROGRAM) + $(INSTALL) -m 755 $(STRIP_OPT) $(npplayer_PROGRAM) $(DESTDIR)$(nphostdir)/$(npplayer_PROGRAM) + mkdir -p $(DESTDIR)$(bindir) + $(LN_S) $(nphostdir)/$(npplayer_PROGRAM) $(DESTDIR)$(bindir)/nspluginplayer + else + install.player: + endif +-install.wrapper: install.dirs $(npwrapper_LIBRARY) ++install.wrapper: $(npwrapper_LIBRARY) + $(INSTALL) -m 755 $(STRIP_OPT) $(npwrapper_LIBRARY) $(DESTDIR)$(nphostdir)/$(npwrapper_LIBRARY) + ifeq ($(build_viewer),yes) +-install.viewer: install.dirs install.viewer.bin install.viewer.glue +-install.libnoxshm: install.dirs do.install.libnoxshm ++install.viewer: install.viewer.bin install.viewer.glue ++install.libnoxshm: do.install.libnoxshm + else + install.viewer: + install.libnoxshm: + endif +-install.viewer.bin: install.dirs $(npviewer_PROGRAM) ++install.viewer.bin: $(npviewer_PROGRAM) + $(INSTALL) -m 755 $(STRIP_OPT) $(npviewer_PROGRAM) $(DESTDIR)$(nptargetdir)/$(npviewer_PROGRAM) +-install.viewer.glue:: install.dirs ++install.viewer.glue:: install.viewer.bin + p=$(DESTDIR)$(nptargetdir)/$(npviewer_PROGRAM:%.bin=%); \ + echo "#!/bin/sh" > $$p; \ + echo "TARGET_OS=$(TARGET_OS)" >> $$p; \ + echo "TARGET_ARCH=$(TARGET_ARCH)" >> $$p; \ + echo ". $(npcommondir)/$(nploader_PROGRAM)" >> $$p; \ + chmod 755 $$p +-do.install.libnoxshm: install.dirs $(libnoxshm_LIBRARY) ++do.install.libnoxshm: $(libnoxshm_LIBRARY) + $(INSTALL) -m 755 $(STRIP_OPT) $(libnoxshm_LIBRARY) $(DESTDIR)$(nptargetdir)/$(libnoxshm_LIBRARY) +-install.config: install.dirs $(npconfig_PROGRAM) ++install.config: $(npconfig_PROGRAM) + $(INSTALL) -m 755 $(STRIP_OPT) $(npconfig_PROGRAM) $(DESTDIR)$(nphostdir)/$(npconfig_PROGRAM) + mkdir -p $(DESTDIR)$(bindir) + $(LN_S) $(nphostdir)/$(npconfig_PROGRAM) $(DESTDIR)$(bindir)/nspluginwrapper +-install.loader: install.dirs $(nploader_PROGRAM) ++install.loader: $(nploader_PROGRAM) + $(INSTALL) -m 755 $(nploader_PROGRAM) $(DESTDIR)$(npcommondir)/$(nploader_PROGRAM) + install.mkruntime: $(SRC_PATH)/utils/mkruntime.sh + $(INSTALL) -m 755 $< $(DESTDIR)$(npcommondir)/mkruntime +Only in nspluginwrapper-1.4.4: .Makefile.swp +diff -ur nspluginwrapper-1.4.4.orig//Makefile nspluginwrapper-1.4.4/Makefile +--- nspluginwrapper-1.4.4.orig//Makefile 2011-06-30 23:18:57.000000000 -0400 ++++ nspluginwrapper-1.4.4/Makefile 2011-07-14 11:56:52.674790086 -0400 +@@ -333,16 +333,16 @@ + sed -e 's|%NPW_VIEWER_DIR%|$(nptargetdir_var)|' $< > $@ + chmod 755 $@ + +-$(LSB_OBJ_DIR):: ++$(LSB_OBJ_DIR): + @[ -d $(LSB_OBJ_DIR) ] || mkdir $(LSB_OBJ_DIR) > /dev/null 2>&1 + +-$(LSB_OBJ_DIR)/%.o: $(LSB_SRC_DIR)/%.c ++$(LSB_OBJ_DIR)/%.o: $(LSB_SRC_DIR)/%.c $(LSB_OBJ_DIR) + $(CC) $(CFLAGS_32) -nostdinc -fno-builtin -I. -I$(LSB_INC_DIR) -c $< -o $@ + + $(LSB_OBJ_DIR)/%.a: $(LSB_OBJ_DIR)/%.o + $(AR) rc $@ $< + +-$(LSB_OBJ_DIR)/libc.so: $(LSB_OBJ_DIR)/libc_main.so $(LSB_OBJ_DIR)/libc_nonshared.a ++$(LSB_OBJ_DIR)/libc.so: $(LSB_OBJ_DIR)/libc_main.so $(LSB_OBJ_DIR)/libc_nonshared.a $(LSB_OBJ_DIR) + @echo "OUTPUT_FORMAT($(TARGET_ELF_ARCH))" > $@ + @echo "GROUP ( $(LSB_OBJ_DIR)/libc_main.so $(LSB_OBJ_DIR)/libc_nonshared.a )" >> $@ + diff --git a/www-plugins/nspluginwrapper/metadata.xml b/www-plugins/nspluginwrapper/metadata.xml new file mode 100644 index 000000000000..195e9883808c --- /dev/null +++ b/www-plugins/nspluginwrapper/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>amd64</herd> +<maintainer> + <email>chutzpah@gentoo.org</email> + <name>Patrick McLean</name> +</maintainer> +</pkgmetadata> + diff --git a/www-plugins/nspluginwrapper/nspluginwrapper-1.4.4-r3.ebuild b/www-plugins/nspluginwrapper/nspluginwrapper-1.4.4-r3.ebuild new file mode 100644 index 000000000000..f0b9a86c2d78 --- /dev/null +++ b/www-plugins/nspluginwrapper/nspluginwrapper-1.4.4-r3.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils multilib nsplugins flag-o-matic toolchain-funcs + +DESCRIPTION="Netscape Plugin Wrapper - Load 32bit plugins on 64bit browser" +HOMEPAGE="http://nspluginwrapper.org/" +SRC_URI="http://web.mit.edu/davidben/Public/nspluginwrapper/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64" +IUSE="" + +RDEPEND=">=x11-libs/gtk+-2:2 + net-misc/curl + >=sys-apps/util-linux-2.13 + >=dev-libs/glib-2.34.3[abi_x86_32(-)] + >=x11-libs/gtk+-2.24.23:2[abi_x86_32(-)] + >=x11-libs/libX11-1.6.2[abi_x86_32(-)] + >=x11-libs/libXt-1.1.4[abi_x86_32(-)]" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +autoinstall() { + if [[ -x /usr/bin/${PN} ]]; then + einfo "Auto installing 32bit plugins..." + ${PN} -a -i + ls /usr/$(get_libdir)/nsbrowser/plugins + + # Remove wrappers if equivalent 64-bit plugins exist + # TODO: May be better to patch nspluginwrapper so it doesn't create + # duplicate wrappers in the first place... + local DIR64="${ROOT}/usr/$(get_libdir)/nsbrowser/plugins/" + for f in "${DIR64}"/npwrapper.*.so; do + local PLUGIN=${f##*/npwrapper.} + if [[ -f ${DIR64}/${PLUGIN} ]]; then + einfo " Removing duplicate wrapper for native 64-bit ${PLUGIN}" + ${PN} -r "${f}" + fi + done + fi +} + +src_prepare() { + epatch "${FILESDIR}/${PN}-1.3.0-gdk-native-windows.patch" + + epatch "${FILESDIR}/${P}-parallel-make.patch" + epatch "${FILESDIR}/${P}-compile-on-hardened.patch" + epatch "${FILESDIR}/${P}-dont-unload-libraries.patch" + epatch "${FILESDIR}/${P}-dont-include-gthread.patch" + epatch "${FILESDIR}/${P}-link-to-libdl.patch" + epatch "${FILESDIR}/${P}-link-to-libgthread.patch" + + sed -i -r "s:^libnoxshm_LDFLAGS = :libnoxshm_LDFLAGS = -L/usr/$(ABI=x86 get_libdir)/ :" \ + Makefile || die "sed failed" +} + +src_configure() { + replace-flags -O3 -O2 + + ./configure \ + --with-cc="$(tc-getCC)" \ + --with-cxx="$(tc-getCXX)" \ + --enable-biarch \ + --target-cpu=i386 \ + --with-lib32=$(ABI=x86 get_libdir) \ + --with-lib64=$(get_libdir) \ + --pkglibdir=/usr/$(get_libdir)/${PN} \ + || die "configure failed" +} + +src_compile() { + emake LDFLAGS_32="$(get_abi_CFLAGS x86) ${LDFLAGS}" +} + +src_install() { + emake DESTDIR="${D}" install + + dosym "/usr/$(get_libdir)/${PN}/x86_64/linux/npconfig" "/usr/bin/${PN}" + + keepdir "/usr/$(get_libdir)/${PLUGINS_DIR}" + + dodoc NEWS README TODO +} + +pkg_postinst() { + autoinstall + elog "Any 32bit plugins you currently have installed have now been" + elog "configured to work in a 64bit browser. Any plugins you install in" + elog "the future will first need to be setup with:" + elog " \"nspluginwrapper -i <path-to-32bit-plugin>\"" + elog "before they will function in a 64bit browser" + elog +} + +# this is terribly ugly, but without a way to query portage as to whether +# we are upgrading/reinstalling a package versus unmerging, I can't think of +# a better way + +pkg_prerm() { + einfo "Removing wrapper plugins..." + ${PN} --auto --remove +} + +pkg_postrm() { + autoinstall +} |