--- nspluginwrapper-1.2.2.orig/debian/rules +++ nspluginwrapper-1.2.2/debian/rules @@ -0,0 +1,94 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# debian/rules that uses debhelper. + +# Uncomment this to turn on verbose mode. +# export DH_VERBOSE=1 + +# quilty comfort +include /usr/share/quilt/quilt.make + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +# Report all warnings, generate debugging symbols (don't worry, we dh_strip) +CFLAGS = -Wall -g + +# Conditional optimmisation +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +CONFIG_FLAGS = \ + --host=$(DEB_HOST_GNU_TYPE) \ + --build=$(DEB_BUILD_GNU_TYPE) \ + --prefix=/usr \ + $(NULL) + +ifneq (,$(findstring x86_64,$(DEB_HOST_GNU_TYPE))) +CONFIG_FLAGS += \ + --with-lib32=lib32 \ + --with-lib64=lib \ + --biarch \ + $(NULL) +endif + + +configure: patch configure-stamp +configure-stamp: + dh_testdir + ./configure $(CONFIG_FLAGS) \ + CFLAGS="$(CFLAGS)" \ + LDFLAGS="-Wl,-z,defs" + touch $@ + +build: configure build-stamp +build-stamp: + dh_testdir + $(MAKE) USE_SYSTEM_LSB=1 + touch $@ + +clean: clean-patched unpatch +clean-patched: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + [ ! -f Makefile ] || $(MAKE) distclean + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + $(MAKE) USE_SYSTEM_LSB=1 DESTDIR=$(CURDIR)/debian/nspluginwrapper install + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs + dh_installexamples + dh_installman debian/nspluginwrapper.1 debian/nspluginplayer.1 + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure --- nspluginwrapper-1.2.2.orig/debian/nspluginwrapper.postinst +++ nspluginwrapper-1.2.2/debian/nspluginwrapper.postinst @@ -0,0 +1,39 @@ +#!/bin/sh + +set -e + +case "$1" in + configure) + NSPLUGIN_DIRS= + for i in `ls /usr/lib/nspluginwrapper/dirs.d/* 2>/dev/null`; do + for j in `cat $i`; do + NSPLUGIN_DIRS=$NSPLUGIN_DIRS:$j + done + done + echo plugin dirs: $NSPLUGIN_DIRS + export NSPLUGIN_DIRS + if test -x /usr/bin/nspluginwrapper; then + nspluginwrapper -a -v -u + fi + + if dpkg --compare-versions "$2" lt "1.2.2-0ubuntu5"; then + rm -rf /usr/lib/mozilla/plugins/npwrapper.*.so \ + /usr/lib/firefox/plugins/npwrapper.*.so \ + /usr/lib/seamonkey/plugins/npwrapper.*.so \ + /usr/lib/iceweasel/plugins/npwrapper.*.so + fi + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + echo "postinst called with argument \`$1'" >&2 + exit 1 + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + + +exit 0 --- nspluginwrapper-1.2.2.orig/debian/copyright +++ nspluginwrapper-1.2.2/debian/copyright @@ -0,0 +1,28 @@ +This package was debianized by Rob Andrews on +Wed, 14 Feb 2007 00:12:53 +0000. + +It was downloaded from http://gwenole.beauchesne.info/en/projects/nspluginwrapper + +Upstream Author: Gwenole Beauchesne + +Copyright: 2006 Gwenole Beauchesne + +License: + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + See /usr/share/common-licenses/GPL-2 on your debian system. + +The Debian packaging is (C) 2007, Rob Andrews and +is licensed under the GPL, see `/usr/share/common-licenses/GPL-2'. --- nspluginwrapper-1.2.2.orig/debian/docs +++ nspluginwrapper-1.2.2/debian/docs @@ -0,0 +1,3 @@ +NEWS +README +TODO --- nspluginwrapper-1.2.2.orig/debian/changelog +++ nspluginwrapper-1.2.2/debian/changelog @@ -0,0 +1,339 @@ +nspluginwrapper (1.2.2-0ubuntu6.9.10.1) karmic-proposed; urgency=low + + * Fix LP: #410407 - Adobe Flash Player does not respond to mouse clicks - + work around a bug in the Adobe Flash Player plugin by disabling + client-side windows. Based on a patch by a7x + - add debian/patches/006_flash_csw_workaround.diff + - update debian/patches/series + + -- Chris Coulson Thu, 09 Sep 2010 13:11:20 +0100 + +nspluginwrapper (1.2.2-0ubuntu6) karmic; urgency=low + + * debian/patches/use_syslsb.patch; dont build LSB libs on our own; + this should unbreak flash+nspluginwrapper after latest ia32-libs + update + + use USE_SYSTEM_LSB accordingly in debian/rules + + -- Alexander Sack Sun, 09 Aug 2009 14:31:49 +0200 + +nspluginwrapper (1.2.2-0ubuntu5) jaunty; urgency=low + + * Add iceweasel dir to debian/nspluginwrapper.postinst for removal of + wrappers created before we had the fix introduced in 1.2.2-0ubuntu2 + + -- Sasa Bodiroza Wed, 08 Apr 2009 20:38:02 +0200 + +nspluginwrapper (1.2.2-0ubuntu4) jaunty; urgency=low + + * auto update all wrappers in postinst (configure); the dirs are taken + from files in /usr/lib/nspluginwrappers/dirs.d/; all dirs listed in + files living in that dir are considered for upgrading wrappers + - add debian/nspluginwrapper.postinst + * ship /usr/lib/nspluginwrapper/dirs.d/ directory + - update debian/dirs + * remove maybe-accidentially wrappers created before we had the fix + introduced in 1.2.2-0ubuntu2; + - update debian/nspluginwrapper.postinst + + -- Alexander Sack Wed, 08 Apr 2009 11:34:46 +0200 + +nspluginwrapper (1.2.2-0ubuntu3) jaunty; urgency=low + + * Add patch debian/patches/005_process_env_dirs.diff to process directories + specified in environment variable NSPLUGIN_DIRS (see patch for more info) + (LP: #345606) + + -- Sasa Bodiroza Thu, 02 Apr 2009 16:37:59 +0200 + +nspluginwrapper (1.2.2-0ubuntu2) jaunty; urgency=low + + * Remove Iceweasel dir from debian/patches/000_debian_make_symlinks.diff + * Update patch debian/patches/002_install_to_NSPLUGINDIR.diff to not install + wrappers in default paths if NSPLUGIN_DIR is specified (LP: #321814) + * Refresh patches + + -- Sasa Bodiroza Thu, 19 Mar 2009 21:42:35 +0100 + +nspluginwrapper (1.2.2-0ubuntu1) jaunty; urgency=low + + * New upstream release 1.2.2 + + -- Sasa Bodiroza Fri, 02 Jan 2009 11:20:19 +0100 + +nspluginwrapper (1.2.0-0ubuntu1) jaunty; urgency=low + + * New upstream release 1.2.0 + * Refresh quilt patches + + -- Sasa Bodiroza Sat, 27 Dec 2008 03:46:41 +0100 + +nspluginwrapper (1.1.10-0ubuntu1) jaunty; urgency=low + + * New upstream release 1.1.10 (LP: #303974) + * Refresh quilt patches + * Remove patches applied upstream: + - drop debian/patches/{006_runtime-restart,007_redhat_fork}.diff + - update debian/patches/series + + -- Sasa Bodiroza Mon, 15 Dec 2008 23:09:37 +0100 + +nspluginwrapper (1.1.2-0ubuntu1) intrepid; urgency=low + + * New upstream release: 1.1.2 (LP: #283673) + * Remove patch applied upstream: + - drop debian/patches/005_crash_in_visual_id.diff + - update update debian/patches/series + + -- Fabien Tassin Wed, 15 Oct 2008 17:34:17 +0200 + +nspluginwrapper (1.1.0-0ubuntu2) intrepid; urgency=low + + * fix firefox crashes by null-deref of visual-id by Martin Stransky + - nspluginwrapper-1.1.0-visual-id.patch (rev 1.1) + - add debian/005_crash_in_visual_id.diff + * more fedora patch synchs: + + nspluginwrapper-1.1.0-runtime-restart.patch (rev 1.2) + - add debian/patches/006_runtime-restart.diff + - update debian/patches/series + + nspluginwrapper-1.1.0-fork.patch (rev 1.2) + - add debian/patches/007_redhat_fork.diff + - update debian/patches/series + + -- Alexander Sack Tue, 02 Sep 2008 14:50:40 +0200 + +nspluginwrapper (1.1.0-0ubuntu1) intrepid; urgency=low + + * Add libcurl4-gnutls-dev as build-depenedency + + -- Sasa Bodiroza Thu, 28 Aug 2008 00:48:30 +0200 + +nspluginwrapper (1.1.0-0ubuntu1~mt2) intrepid; urgency=low + + * Bump Standards-Version in debian/control + * Fix lintian warning debian-rules-ignores-make-clean-error + + -- Sasa Bodiroza Wed, 27 Aug 2008 03:16:09 +0200 + +nspluginwrapper (1.1.0-0ubuntu1~mt1) intrepid; urgency=low + + * New upstream release + * Refresh patches + * Add manpage for nspluginplayer: + - Add debian/nspluginplayer.1 + - Add it to dh_installman call in debian/rules + * Fix Section field (universe/utils to utils) in debian/control + * Don't install empty dirs usr/sbin and usr/lib/iceweasel/plugins in + debian/dirs + + -- Sasa Bodiroza Wed, 27 Aug 2008 02:52:30 +0200 + +nspluginwrapper (1.0.0-0ubuntu1~mt1) intrepid; urgency=low + + * New upstream release + * Refresh patches: + - 000_debian_make_symlinks.diff - modify is_system_wide_plugin_wrapper() + to has_system_wide_plugin_wrapper() + - 001_remove_bashisms.diff + - 002_install_to_NSPLUGINDIR.diff + - 003_update_help_info.diff + - 004_fix_threading.diff - remove part for src/npw-viewer.c, applied + upstream + + -- Sasa Bodiroza Fri, 01 Aug 2008 03:56:07 +0200 + +nspluginwrapper (0.9.91.5-2ubuntu3~mt1) intrepid; urgency=low + + * debian/control: i386 support requires us to make a bunch of biarch + build depends arch dependent [amd64] + * 004_fix_threading.diff: we take care that i386 build succeeds and update + the thread to add the -lgthread-2.0 flag outside biarch-only scope in + Makefile + * debian/rules: if we are not on x86_64 we dont want to use the lib32 + and biarch configure switches. + + -- Alexander Sack Tue, 22 Jul 2008 16:14:26 +0200 + +nspluginwrapper (0.9.91.5-2ubuntu2) hardy; urgency=low + + * No source change rebuild to resolve crashing against xulrunner 1.9b5 + - MOTU Release approved (LP: #212855) + + -- John Dong Thu, 10 Apr 2008 14:01:35 -0400 + +nspluginwrapper (0.9.91.5-2ubuntu1) hardy; urgency=low + + [ Stefan Ebner ] + * Merge from Debian unstable. (LP: #196540) Remaining Ubuntu changes: + * debian/control: + - Modify Maintainer value to match Debian-Maintainer-Field Spec + - Removed ia32-libs-gtk and util-linux from depends + - Changed Xs-Vcs-Bzr field to Xs-Vcs-Bzr: + http://code.launchpad.net/~ubuntu-dev/nspluginwrapper/ubuntu + + [ Christopher James Halse Rogers ] + * New Ubuntu changes: + * debian/shlibs.local: + - Drop. We don't have a ia32-libs-gtk package, and the package builds + fine without it. + + -- Christopher James Halse Rogers Tue, 18 Mar 2008 20:22:14 +1100 + +nspluginwrapper (0.9.91.5-2) unstable; urgency=low + + * linux32 is now provided by util-linux, so remove runtime dep on + linux32 (no longer installable) + * Fix issues on SMP by initialising and using gthreads in glib + - patch is 004_fix_threading.diff (Closes: #458584) + * Enable 003_update_help_info.diff, which for some reason I forgot to + put into the quilt series file + * Add a shlibs.local file for ia32-libs-gtk dep generation - in the + absence of a ia32-libs-gtk-dev package, this fixes the FTBFS + Thanks to Dan Callahan (Closes: #462198) + + -- Rob Andrews Mon, 28 Jan 2008 23:27:29 +0000 + +nspluginwrapper (0.9.91.5-1ubuntu1) gutsy; urgency=low + + [ Scott Kitterman ] + * Merge from Debian unstable. Remaining Ubuntu changes: + * debian/control: + - Changed maintainer field to Ubuntu MOTU Developers + + - Moved old maintainer to XSBC-Original-Maintainer: Rob Andrews + + - Removed ia32-libs-gtk from depends + - Changed Xs-Vcs-Bzr field to Xs-Vcs-Bzr: + http://code.launchpad.net/~ubuntu-core-dev/nspluginwrapper/ubuntu + + [ Philipp Kern ] + * debian/control: + - Removed the linux32 dependency; the corresponding binary is + provided by util-linux on Ubuntu. + + -- Philipp Kern Wed, 10 Oct 2007 22:47:28 +0200 + +nspluginwrapper (0.9.91.5-1) unstable; urgency=low + + * New upstream release + * Remove 003_fix_xembed_grab_keys.diff, as 0.9.91.5 fixes this issue + * Remove manual dependencies on ia32-libs, the build-dep covers this + issue + * Add 003_update_help_info.diff, specify that a plugin is needed when + using -u option, also update manpage accordingly (Closes: #436410) + + -- Rob Andrews Sun, 02 Sep 2007 11:38:43 +0100 + +nspluginwrapper (0.9.91.4-4) unstable; urgency=low + + * Change Priority: extra to "optional" + * Add patch 002_install_to_NSPLUGINDIR.patch from Ubuntu + (thanks Alexander Sack) + * Fix XEmbed issue where plugin was able to grab keystrokes + from other applications when browser had lost focus + - patch is 003_fix_xembed_grab_keys.diff + (Closes: #435912) + + -- Rob Andrews Sun, 19 Aug 2007 20:17:33 +0100 + +nspluginwrapper (0.9.91.4-3ubuntu2) gutsy; urgency=low + + * debian/patches/series: enable previously forgotten + 002_install_to_NSPLUGINDIR.patch. + + -- Alexander Sack Fri, 10 Aug 2007 13:27:39 +0200 + +nspluginwrapper (0.9.91.4-3ubuntu1) gutsy; urgency=low + + * debian/patches: added 002_install_to_NSPLUGINDIR.patch + * debian/patches/series: updated as needed + * debian/control: + - Changed maintainer field to Ubuntu MOTU Developers + + - Moved old maintainer to XSBC-Original-Maintainer: Rob Andrews + + - Removed ia32-libs-gtk from depends + - Added ia32-libs to depends + - Added gcc-multilib to build-deps + - Changed Xs-Vcs-Bzr field to Xs-Vcs-Bzr: + http://code.launchpad.net/~ubuntu-core-dev/nspluginwrapper/ubuntu + + [ Alexander Sack ] + * sponsor upload after merging latest changes to bzr. + + -- John Vivirito Mon, 02 Jul 2007 14:30:50 -0400 + +nspluginwrapper (0.9.91.4-3) unstable; urgency=low + + * Shift to using quilt, as it helps me revision control the Debian + packaging with git + * Really should be depending on gcc-multilib, not required yet but may + break build in future + * Add manual dependency on ia32-libs for the target package, since it is + not automatically determined + * Inherit "remove bashisms" patch from Ubuntu, to remove bashisms (oddly + enough!) - patch by Anders Kaseorg + * Add a -n option to the nspluginwrapper commandline to skip creation and + destruction of symlinks - this behaviour is more predictable when + packaging plugins for Debian and derivatives + + -- Rob Andrews Fri, 29 Jun 2007 22:06:02 +0100 + +nspluginwrapper (0.9.91.4-2ubuntu2) gutsy; urgency=low + + * utils/mkruntime.sh: applied anti-bashism patch by Anders + Kaseorg (LP #121066) + + [ Alexander Sack ] + * checked and sponsored upload + + -- John Vivirito Thu, 28 Jun 2007 08:06:24 -0400 + +nspluginwrapper (0.9.91.4-2ubuntu1) gutsy; urgency=low + + [ Alexander Sack ] + * src/npw-config.c: NSPLUGIN_DIR environment can override default + mozilla_system_dir and can specify custom install dir for created + wrapper library. + * debian/control: use MOTU as maintainer; drop ia32-libs-gtk from Depends + (since gutsy provided by ia32-libs). + + -- Alexander Sack Wed, 20 Jun 2007 14:00:05 +0200 + +nspluginwrapper (0.9.91.4-2) unstable; urgency=low + + * Add build dependency on g++-multilib + (Closes: #423131, thanks Pär Andersson) + + -- Rob Andrews Thu, 10 May 2007 12:17:09 -0400 + +nspluginwrapper (0.9.91.4-1) unstable; urgency=low + + * New upstream release + * Install into /usr/lib/nspluginwrapper/plugins and symlink to + browser-specific plugin paths (Closes: #417288) + * (to compliment the above) Remove symlinks to plugins on removal + Only operates on symlinks in global directorys, includes: + /usr/lib/firefox/plugins + /usr/lib/iceweasel/plugins + /usr/lib/mozilla/plugins + * Remove ia64 from the architecture list - there isn't a compiler available + to build i386 binaries on the architecture + * Explicitly set --with-lib32, as otherwise it assumes it to be /usr/lib + * Explicitly set --with-lib64, as otherwise it assumes it to be /usr/lib64 + * Not autoconf/automake, so don't need config.sub/config.guess + + -- Rob Andrews Wed, 11 Apr 2007 19:14:03 +0100 + +nspluginwrapper (0.9.91.3-1) unstable; urgency=low + + * New upstream release + + -- Rob Andrews Mon, 5 Mar 2007 14:44:48 +0000 + +nspluginwrapper (0.9.91.2-1) unstable; urgency=low + + * Initial release (Closes: #410061) + + -- Rob Andrews Wed, 14 Feb 2007 00:12:53 +0000 + --- nspluginwrapper-1.2.2.orig/debian/nspluginwrapper.1 +++ nspluginwrapper-1.2.2/debian/nspluginwrapper.1 @@ -0,0 +1,61 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH NSPLUGINWRAPPER 1 "September 2, 2007" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +nspluginwrapper \- tool to manage nspluginwrapper-wrapped plugins +.SH SYNOPSIS +.B nspluginwrapper +.RI [ options ] +.SH DESCRIPTION +This manual page documents briefly the +.B nspluginwrapper +command. +.PP +\fBnspluginwrapper\fP is a compatibility layer to allow the usage of non-native +plugins in a web browser supporting the Netscape 4 plugin API (NPAPI). +.SH OPTIONS +A summary of options is included below. +.TP +.B \-h +Display help and exit +.TP +.B \-i \fInpPLUGIN.so\fP +Install wrapper for npPLUGIN.so into the mozilla plugins directory +.TP +.B \-r \fI/path/to/npwrapper.npPLUGIN.so\fP +Remove the wrapper for npPLUGIN.so +.TP +.B \-u \fInpPLUGIN.so\fP +Update the plugin wrapper for npPLUGIN.so +.TP +.B \-a +Set automatic mode for plugins discovery - overrides \-i and \-u to automatically determine plugins installed +.TP +.B \-l +List plugins currently installed +.TP +.B \-n +Do not create or remove any Debian browser-specific symlinks upon installation +or removal of plugin wrappers. +.TP +.B \-v +Show verbose messages +.SH AUTHOR +nspluginwrapper was written by Gwenole Beauchesne . +.PP +This manual page was written by Rob Andrews , +for the Debian project (but may be used by others). --- nspluginwrapper-1.2.2.orig/debian/nspluginplayer.1 +++ nspluginwrapper-1.2.2/debian/nspluginplayer.1 @@ -0,0 +1,65 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH NSPLUGINPLAYER 1 "August 27, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +nspluginplayer \- tool to play embedded web content +.SH SYNOPSIS +.B nspluginplayer +.RI [ option ]\ [ \-\-plugin ]\ [ name[=value] ] +.SH DESCRIPTION +This manual page documents briefly the +.B nspluginplayer +command. +.PP +\fBnspluginplayer\fP enables playing of embedded web content outside of the +web browser. +.SH USAGE +Common attributes include, which are used in place of +.RI [ name[=value] ] +parameter: +.TP +.B embed +use NP_EMBED mode +.TP +.B full +use NP_FULL mode (default) +.TP +.B src\=URI +location (URL) of the object to load +.TP +.B type\=MIME-TYPE +MIME type of the object +.TP +.B width\=WIDTH +width (in pixels) +.TP +.B height\=HEIGHT +height (in pixels) +.SH OPTIONS +A summary of options is included below. +.TP +.B \-v \-\-verbose +Enable verbose mode +.TP +.B \-f \-\-fullscreen +Start in fullscreen + +.SH AUTHOR +nspluginplayer was written by Gwenole Beauchesne . +.PP +This manual page was written by Sasa Bodiroza , +for the Ubuntu project (but may be used by others). --- nspluginwrapper-1.2.2.orig/debian/compat +++ nspluginwrapper-1.2.2/debian/compat @@ -0,0 +1 @@ +5 --- nspluginwrapper-1.2.2.orig/debian/watch +++ nspluginwrapper-1.2.2/debian/watch @@ -0,0 +1,8 @@ +# watch control file for uscan +# See uscan(1) for format + +# Compulsory line, this is a version 3 file +version=3 + +# +http://gwenole.beauchesne.info/en/projects/nspluginwrapper .*/nspluginwrapper-(.*)\.tar\.bz2 --- nspluginwrapper-1.2.2.orig/debian/control +++ nspluginwrapper-1.2.2/debian/control @@ -0,0 +1,19 @@ +Source: nspluginwrapper +Section: utils +Priority: optional +Maintainer: Ubuntu MOTU Developers +XSBC-Original-Maintainer: Rob Andrews +Build-Depends: debhelper (>= 5), quilt, autotools-dev, libc6-dev-i386 [ amd64 ], libxt-dev, x11proto-core-dev, x11proto-xext-dev, libx11-dev, libatk1.0-dev, libfontconfig1-dev, libgtk2.0-dev, libglib2.0-dev, libpango1.0-dev, ia32-libs [ amd64 ], gcc-multilib [ amd64 ], g++-multilib [ amd64 ], libcurl4-gnutls-dev +Standards-Version: 3.8.0 +Xs-Vcs-Bzr: http://bazaar.launchpad.net/~ubuntu-dev/nspluginwrapper/ubuntu + +Package: nspluginwrapper +Architecture: amd64 i386 +Depends: ${shlibs:Depends} +Description: A wrapper to run Netscape plugins on other architectures + nspluginwrapper is an Open Source compatibility plugin for Netscape 4 + (NPAPI) plugins. That is, it enables you to use plugins on platforms + they were not built for. + . + This package is built to run i386 plugins, since there are no known + binary-only plugins built for any other architecture. --- nspluginwrapper-1.2.2.orig/debian/dirs +++ nspluginwrapper-1.2.2/debian/dirs @@ -0,0 +1,5 @@ +usr/bin +usr/lib/nspluginwrapper/plugins +usr/lib/mozilla/plugins +usr/lib/firefox/plugins +usr/lib/nspluginwrapper/dirs.d/ --- nspluginwrapper-1.2.2.orig/debian/README.Debian +++ nspluginwrapper-1.2.2/debian/README.Debian @@ -0,0 +1,37 @@ +nspluginwrapper for Debian +-------------------------- + +nspluginwrapper is an RPC-based mechanism for running non-native plugins +built for the Netscape 4 plugin API (NPAPI) on architectures they were +not built for. For example, this allows you to use the Flash plugin for +the i386 architecture on an amd64 machine running a native 64-bit browser. + +It is known to work with Firefox, Iceweasel, Mozilla, Iceape and Konqueror. + +nspluginwrapper for Debian is built exclusively for the amd64 architecture +because the ia32-libs and ia32-libs-gtk packages are not available on other +architectures, and a gcc with target i386 is not available for ia64. Were +these available for, e.g. the PowerPC platform, it would be possible to +package nspluginwrapper for that platform. However, cross-compilers for the +i386 architecture would need to be made available, and this is highly +unlikely. + +Since Debian does not package any binary-only plugins, no automated +mechanism for automated nspluginwrapperisation is provided. Instead, +download the plugin and unpack it to a location where it will remain and +run: + + nspluginwrapper -i /path/to/npplugin.so + +To remove a plugin, run: + + nspluginwrapper -r ~/.mozilla/plugins/npwrapper.npplugin.so + +Alternately, install any plugins as normal into your .mozilla/plugins/ +directory and run: + + nspluginwrapper -a -u -v + +To automatically install any compatibility stubs without prompting. + + -- Rob Andrews Wed, 11 Apr 2007 19:14:03 +0100 --- nspluginwrapper-1.2.2.orig/debian/patches/001_remove_bashisms.diff +++ nspluginwrapper-1.2.2/debian/patches/001_remove_bashisms.diff @@ -0,0 +1,28 @@ +Anti-bashism patch inherited from Ubuntu. +Author: Anders Kaseorg + + -- Rob Andrews Thu, 28 Jun 2007 18:08:54 +0100 + +Index: ubuntu.1.2.2-0ubuntu1/utils/mkruntime.sh +=================================================================== +--- ubuntu.1.2.2-0ubuntu1.orig/utils/mkruntime.sh 2009-01-02 11:19:18.000000000 +0100 ++++ ubuntu.1.2.2-0ubuntu1/utils/mkruntime.sh 2009-03-07 18:38:19.000000000 +0100 +@@ -12,15 +12,15 @@ + # - Check acroread5, something is missing while loading a PDF + # - Enough for Flash Player & PluginSDK npsimple.so + +-function error() { ++error() { + echo ${1+"$@"} > /dev/stderr + } + +-function status() { ++status() { + echo ${1+"$@"} > /dev/stderr + } + +-function run() { ++run() { + status " " ${1+"$@"} + ${1+"$@"} + } --- nspluginwrapper-1.2.2.orig/debian/patches/003_update_help_info.diff +++ nspluginwrapper-1.2.2/debian/patches/003_update_help_info.diff @@ -0,0 +1,17 @@ +Fix the abstract for the '-u' option. + + -- Rob Andrews Sun, 02 Sep 2007 11:58:27 +0100 + +Index: ubuntu.1.2.2-0ubuntu1/src/npw-config.c +=================================================================== +--- ubuntu.1.2.2-0ubuntu1.orig/src/npw-config.c 2009-03-07 18:38:23.000000000 +0100 ++++ ubuntu.1.2.2-0ubuntu1/src/npw-config.c 2009-03-07 18:38:28.000000000 +0100 +@@ -1102,7 +1102,7 @@ + printf(" -a --auto flag: set automatic mode for plugins discovery\n"); + printf(" -n --native flag: allow native plugin(s) to be wrapped\n"); + printf(" -l --list list plugins currently installed\n"); +- printf(" -u --update update plugin(s) currently installed\n"); ++ printf(" -u --update [FILE(S)] update plugin(s) currently installed\n"); + printf(" -i --install [FILE(S)] install plugin(s)\n"); + printf(" -r --remove [FILE(S)] remove plugin(s)\n"); + printf("\n"); --- nspluginwrapper-1.2.2.orig/debian/patches/002_install_to_NSPLUGINDIR.diff +++ nspluginwrapper-1.2.2/debian/patches/002_install_to_NSPLUGINDIR.diff @@ -0,0 +1,32 @@ +Allow plugins to be installed to a directory specified by environment +variable NSPLUGIN_DIR. + +Patch from Alexander Sack. + + -- Rob Andrews Sat, 14 Jul 2007 18:45:00 +0100 + +Index: ubuntu.1.2.2-0ubuntu2/src/npw-config.c +=================================================================== +--- ubuntu.1.2.2-0ubuntu2.orig/src/npw-config.c 2009-03-19 21:33:48.000000000 +0100 ++++ ubuntu.1.2.2-0ubuntu2/src/npw-config.c 2009-03-19 21:34:02.000000000 +0100 +@@ -124,6 +124,10 @@ + static const char default_dir[] = LIBDIR "/mozilla/plugins"; + static const char *dir = NULL; + ++ char *plugin_dir = getenv("NSPLUGIN_DIR"); ++ if(plugin_dir) ++ return plugin_dir; ++ + if (dir == NULL) { + const char **dirs = NULL; + +@@ -826,7 +830,8 @@ + /* Install symlinks on Debian systems */ + if (has_system_wide_wrapper_plugin(plugin_path, true) + && (access("/etc/debian_version", F_OK) == 0) +- && (g_dosymlink == true)) ++ && (g_dosymlink == true) ++ && (getenv("NSPLUGIN_DIR") == NULL)) + { + static const char *ldir = NULL; + const char **ldirs = NULL; --- nspluginwrapper-1.2.2.orig/debian/patches/series +++ nspluginwrapper-1.2.2/debian/patches/series @@ -0,0 +1,8 @@ +000_debian_make_symlinks.diff +001_remove_bashisms.diff +002_install_to_NSPLUGINDIR.diff +003_update_help_info.diff +004_fix_threading.diff +005_process_env_dirs.diff +use_syslsb.patch +006_flash_csw_workaround.diff --- nspluginwrapper-1.2.2.orig/debian/patches/use_syslsb.patch +++ nspluginwrapper-1.2.2/debian/patches/use_syslsb.patch @@ -0,0 +1,180 @@ +--- + Makefile | 36 ++++++++++++++++++++++++++++++++++++ + 1 file changed, 36 insertions(+) + +Index: nspluginwrapper-1.2.2/Makefile +=================================================================== +--- nspluginwrapper-1.2.2.orig/Makefile ++++ nspluginwrapper-1.2.2/Makefile +@@ -74,21 +74,23 @@ + X_LDFLAGS = -L$(x11prefix)/$(lib64) -lX11 -lXt + ifneq (,$(findstring $(OS),netbsd dragonfly)) + X_LDFLAGS += -Wl,--rpath,$(x11prefix)/$(lib64) + endif + + ARCH_32 = $(ARCH) + ifeq ($(biarch), yes) + ARCH_32 = $(TARGET_ARCH) ++ifeq (,$(USE_SYSTEM_LSB)) + LSB_LIBS = $(LSB_OBJ_DIR)/libc.so $(LSB_OBJ_DIR)/libgcc_s_32.so + LSB_LIBS += $(LSB_CORE_STUBS:%=$(LSB_OBJ_DIR)/%.so) + LSB_LIBS += $(LSB_CORE_STATIC_STUBS:%=$(LSB_OBJ_DIR)/%.a) + LSB_LIBS += $(LSB_DESKTOP_STUBS:%=$(LSB_OBJ_DIR)/%.so) + endif ++endif + + LSB_TOP_DIR = $(SRC_PATH)/lsb-build + LSB_INC_DIR = $(LSB_TOP_DIR)/headers + LSB_SRC_DIR = $(LSB_TOP_DIR)/stub_libs + LSB_OBJ_DIR = lsb-build-$(ARCH_32) + LSB_CORE_STUBS = $(shell cat $(LSB_SRC_DIR)/core_filelist) + LSB_CORE_STATIC_STUBS = $(shell cat $(LSB_SRC_DIR)/core_static_filelist) + LSB_DESKTOP_STUBS = $(shell cat $(LSB_SRC_DIR)/desktop_filelist) +@@ -114,17 +116,21 @@ + npviewer_RAWSRCS = npw-viewer.c npw-common.c npw-malloc.c npw-rpc.c rpc.c debug.c utils.c npruntime.c + npviewer_SOURCES = $(npviewer_RAWSRCS:%.c=$(SRC_PATH)/src/%.c) + npviewer_OBJECTS = $(npviewer_RAWSRCS:%.c=npviewer-%.o) + ifeq ($(biarch),yes) + npviewer_CFLAGS = $(CFLAGS_32) + npviewer_CFLAGS += -I$(LSB_INC_DIR) + npviewer_CFLAGS += -I$(LSB_INC_DIR)/glib-2.0 + npviewer_CFLAGS += -I$(LSB_INC_DIR)/gtk-2.0 ++ifeq (,$(USE_SYSTEM_LSB)) + npviewer_LDFLAGS = $(LDFLAGS_32) -L$(LSB_OBJ_DIR) ++else ++npviewer_LDFLAGS = $(LDFLAGS_32) -L/usr/lib32/ ++endif + npviewer_LDFLAGS += -lgtk-x11-2.0 -lgdk-x11-2.0 -lgobject-2.0 -ldl -lglib-2.0 -lgthread-2.0 -lX11 -lXt + else + npviewer_CFLAGS += $(GTK_CFLAGS) + npviewer_LDFLAGS = $(GTK_LDFLAGS) $(X_LDFLAGS) + endif + npviewer_CFLAGS += $(MOZILLA_CFLAGS) + npviewer_LDFLAGS += $(libdl_LDFLAGS) $(libpthread_LDFLAGS) -lgthread-2.0 + ifeq ($(TARGET_OS):$(TARGET_ARCH),linux:i386) +@@ -152,27 +158,35 @@ + + libxpcom_LIBRARY = libxpcom.so + libxpcom_RAWSRCS = libxpcom.c debug.c + libxpcom_SOURCES = $(libxpcom_RAWSRCS:%.c=$(SRC_PATH)/src/%.c) + libxpcom_OBJECTS = $(libxpcom_RAWSRCS:%.c=libxpcom-%.o) + libxpcom_CFLAGS = $(PIC_CFLAGS) + ifeq ($(biarch),yes) + libxpcom_CFLAGS += -I$(LSB_INC_DIR) ++ifeq (,$(USE_SYSTEM_LSB)) + libxpcom_LDFLAGS = $(LDFLAGS_32) -L$(LSB_OBJ_DIR) ++else ++libxpcom_LDFLAGS = $(LDFLAGS_32) -L/usr/lib32/ ++endif + endif + + libnoxshm_LIBRARY = libnoxshm.so + libnoxshm_RAWSRCS = libnoxshm.c + libnoxshm_SOURCES = $(libnoxshm_RAWSRCS:%.c=$(SRC_PATH)/src/%.c) + libnoxshm_OBJECTS = $(libnoxshm_RAWSRCS:%.c=libnoxshm-%.o) + libnoxshm_CFLAGS = $(PIC_CFLAGS) + ifeq ($(biarch),yes) + libnoxshm_CFLAGS += -I$(LSB_INC_DIR) ++ifeq (,$(USE_SYSTEM_LSB)) + libnoxshm_LDFLAGS = $(LDFLAGS_32) -L$(LSB_OBJ_DIR) ++else ++libxpcom_LDFLAGS = $(LDFLAGS_32) -L/usr/lib32/ ++endif + endif + + npconfig_PROGRAM = npconfig + npconfig_RAWSRCS = npw-config.c + npconfig_SOURCES = $(npconfig_RAWSRCS:%.c=$(SRC_PATH)/src/%.c) + npconfig_OBJECTS = $(npconfig_RAWSRCS:%.c=npconfig-%.o) + npconfig_CFLAGS = $(GLIB_CFLAGS) + npconfig_LDFLAGS = $(GLIB_LDFLAGS) $(libdl_LDFLAGS) +@@ -230,25 +244,27 @@ + FILES += $(wildcard src/*.map) + FILES += $(wildcard tests/*.html) + FILES += $(wildcard tests/*.c tests/*.h) + FILES += $(wildcard npapi/*.h npapi/nspr/*.h npapi/nspr/obsolete/*.h) + FILES += $(LSB_TOP_DIR)/headers/core_filelist + FILES += $(addprefix $(LSB_TOP_DIR)/headers/,$(shell cat $(LSB_TOP_DIR)/headers/core_filelist)) + FILES += $(LSB_TOP_DIR)/headers/desktop_filelist + FILES += $(addprefix $(LSB_TOP_DIR)/headers/,$(shell cat $(LSB_TOP_DIR)/headers/desktop_filelist)) ++ifeq (,$(USE_SYSTEM_LSB)) + FILES += $(LSB_SRC_DIR)/LibNameMap.txt + FILES += $(LSB_SRC_DIR)/core_filelist + FILES += $(LSB_SRC_DIR)/core_static_filelist + FILES += $(LSB_SRC_DIR)/desktop_filelist + FILES += $(patsubst %,$(LSB_SRC_DIR)/%.c,$(LSB_CORE_STUBS)) + FILES += $(patsubst %,$(LSB_SRC_DIR)/%.Version,$(LSB_CORE_STUBS)) + FILES += $(patsubst %,$(LSB_SRC_DIR)/%.c,$(LSB_CORE_STATIC_STUBS)) + FILES += $(patsubst %,$(LSB_SRC_DIR)/%.c,$(LSB_DESKTOP_STUBS)) + FILES += $(patsubst %,$(LSB_SRC_DIR)/%.Version,$(LSB_DESKTOP_STUBS)) ++endif + + all: $(TARGETS) + + clean: + rm -f $(TARGETS) *.o *.os + rm -rf $(LSB_OBJ_DIR) + + distclean: clean +@@ -373,41 +389,61 @@ + svn commit -m "Generated by svn2cl." ChangeLog + + $(npwrapper_LIBRARY): $(npwrapper_OBJECTS) + $(CC) -o $@ $(DSO_LDFLAGS) $(npwrapper_OBJECTS) $(npwrapper_LDFLAGS) + + npwrapper-%.os: $(SRC_PATH)/src/%.c + $(CC) -o $@ -c $< $(PIC_CFLAGS) $(CPPFLAGS) $(npwrapper_CFLAGS) -DBUILD_WRAPPER + ++ifeq (,$(USE_SYSTEM_LSB)) + $(npviewer_PROGRAM): $(npviewer_OBJECTS) $(npviewer_MAPFILE) $(LSB_OBJ_DIR) $(LSB_LIBS) + $(CC) $(LDFLAGS_32) -o $@ $(npviewer_OBJECTS) $(npviewer_LDFLAGS) ++else ++$(npviewer_PROGRAM): $(npviewer_OBJECTS) $(npviewer_MAPFILE) ++ $(CC) $(LDFLAGS_32) -o $@ $(npviewer_OBJECTS) $(npviewer_LDFLAGS) ++endif + + npviewer-%.o: $(SRC_PATH)/src/%.c + $(CC) $(CFLAGS_32) -o $@ -c $< $(CPPFLAGS) $(npviewer_CFLAGS) -DBUILD_VIEWER + + npviewer-%.o: $(SRC_PATH)/src/%.cpp + $(CXX) $(CFLAGS_32) -o $@ -c $< $(CPPFLAGS) $(npviewer_CFLAGS) -DBUILD_VIEWER + ++ifeq (,$(USE_SYSTEM_LSB)) + $(npplayer_PROGRAM): $(npplayer_OBJECTS) $(npplayer_MAPFILE) $(LSB_OBJ_DIR) $(LSB_LIBS) + $(CC) $(LDFLAGS) -o $@ $(npplayer_OBJECTS) $(npplayer_LDFLAGS) ++else ++$(npplayer_PROGRAM): $(npplayer_OBJECTS) $(npplayer_MAPFILE) ++ $(CC) $(LDFLAGS) -o $@ $(npplayer_OBJECTS) $(npplayer_LDFLAGS) ++endif + + npplayer-%.o: $(SRC_PATH)/src/%.c + $(CC) $(CFLAGS) -o $@ -c $< $(CPPFLAGS) $(npplayer_CFLAGS) -DBUILD_PLAYER + npplayer-%.o: $(SRC_PATH)/src/tidy/%.c + $(CC) $(CFLAGS) -o $@ -c $< $(CPPFLAGS) $(npplayer_CFLAGS) -DBUILD_PLAYER + ++ifeq (,$(USE_SYSTEM_LSB)) + $(libxpcom_LIBRARY): $(libxpcom_OBJECTS) $(LSB_OBJ_DIR) $(LSB_LIBS) + $(CC) $(LDFLAGS_32) $(DSO_LDFLAGS) -o $@ $(libxpcom_OBJECTS) $(libxpcom_LDFLAGS) -Wl,$(LD_soname),libxpcom.so ++else ++$(libxpcom_LIBRARY): $(libxpcom_OBJECTS) ++ $(CC) $(LDFLAGS_32) $(DSO_LDFLAGS) -o $@ $(libxpcom_OBJECTS) $(libxpcom_LDFLAGS) -Wl,$(LD_soname),libxpcom.so ++endif + + libxpcom-%.o: $(SRC_PATH)/src/%.c + $(CC) $(CFLAGS_32) -o $@ -c $< $(CPPFLAGS) $(libxpcom_CFLAGS) -DBUILD_XPCOM + ++ifeq (,$(USE_SYSTEM_LSB)) + $(libnoxshm_LIBRARY): $(libnoxshm_OBJECTS) $(LSB_OBJ_DIR) $(LSB_LIBS) + $(CC) $(LDFLAGS_32) $(DSO_LDFLAGS) -o $@ $(libnoxshm_OBJECTS) $(libnoxshm_LDFLAGS) -Wl,$(LD_soname),libnoxshm.so ++else ++$(libnoxshm_LIBRARY): $(libnoxshm_OBJECTS) ++ $(CC) $(LDFLAGS_32) $(DSO_LDFLAGS) -o $@ $(libnoxshm_OBJECTS) $(libnoxshm_LDFLAGS) -Wl,$(LD_soname),libnoxshm.so ++endif + + libnoxshm-%.o: $(SRC_PATH)/src/%.c + $(CC) $(CFLAGS_32) -o $@ -c $< $(CPPFLAGS) $(libnoxshm_CFLAGS) + + $(npconfig_PROGRAM): $(npconfig_OBJECTS) + $(CC) -o $@ $(npconfig_OBJECTS) $(npconfig_LDFLAGS) + + npconfig-%.o: $(SRC_PATH)/src/%.c --- nspluginwrapper-1.2.2.orig/debian/patches/000_debian_make_symlinks.diff +++ nspluginwrapper-1.2.2/debian/patches/000_debian_make_symlinks.diff @@ -0,0 +1,159 @@ +Create the plugin wrapper in a global location and install a symlink into +the browser-specific plugin paths when installing globally. +Also removes the symlinks on uninstallation. + +Commandline option "-n" or "--nosymlink" doesn't perform any operations on +symlinks on installation and removal. + + -- Rob Andrews Fri, 29 Jun 2007 21:59:49 +0100 + +Index: ubuntu.1.2.2-0ubuntu1/src/npw-config.c +=================================================================== +--- ubuntu.1.2.2-0ubuntu1.orig/src/npw-config.c 2009-01-03 16:26:07.000000000 +0100 ++++ ubuntu.1.2.2-0ubuntu1/src/npw-config.c 2009-03-07 18:38:14.000000000 +0100 +@@ -44,6 +44,16 @@ + static bool g_allow_native = false; + static const char NPW_CONFIG[] = "nspluginwrapper"; + ++/* On Debian systems, we install/remove symlinks from these paths. ++ * This information is used twice, so declare globally */ ++static bool g_dosymlink = true; ++static const char *debian_link_dirs[] = { ++ LIBDIR "/mozilla/plugins", ++ LIBDIR "/firefox/plugins", ++ NULL, /* if this isn't here, it reads into whatever data is in memory after ++ possibly differing in behaviour to the same code in functions */ ++}; ++ + static void error(const char *format, ...) + { + va_list args; +@@ -161,7 +171,7 @@ + } + else if (access("/etc/debian_version", F_OK) == 0) { + static const char *debian_dirs[] = { +- "/usr/lib/mozilla/plugins", // XXX how unfortunate ++ LIBDIR "/nspluginwrapper/plugins", + }; + dirs = debian_dirs; + } +@@ -812,6 +822,49 @@ + printf(" into %s\n", d_plugin_path); + + free(plugin_data); ++ ++ /* Install symlinks on Debian systems */ ++ if (has_system_wide_wrapper_plugin(plugin_path, true) ++ && (access("/etc/debian_version", F_OK) == 0) ++ && (g_dosymlink == true)) ++ { ++ static const char *ldir = NULL; ++ const char **ldirs = NULL; ++ char *lname = NULL; ++ ++ ldirs = debian_link_dirs; ++ ++ while ((ldir = *ldirs++) != NULL) ++ { ++ if (access(ldir, F_OK) == 0) ++ { ++ /* Can write to this directory, make a symlink in it */ ++ if (g_verbose) ++ printf("And create symlink to plugin in %s: ", ldir); ++ ++ if ((lname = malloc(strlen(ldir) + strlen(NPW_WRAPPER_BASE) + strlen(plugin_base) + 3)) != NULL) ++ { ++ sprintf(lname, "%s/%s.%s", ldir, NPW_WRAPPER_BASE, plugin_base); ++ ++ if (symlink(d_plugin_path, lname) == 0) ++ { ++ if (g_verbose) ++ printf("done.\n"); ++ } ++ else ++ { ++ if (g_verbose) ++ printf("failed!\n"); ++ } ++ ++ free(lname); ++ } ++ else ++ if (g_verbose) ++ printf("*gulp* malloc() failed!\n"); ++ } ++ } ++ } + return 0; + } + +@@ -871,6 +924,48 @@ + if (unlink(plugin_path) < 0) + return 1; + ++ /* Remove links to the plugin on Debian systems */ ++ if ((access("/etc/debian_version", F_OK) == 0) && (g_dosymlink == true)) ++ { ++ static const char *ldir = NULL; ++ const char **ldirs = NULL; ++ char *lname = NULL; ++ char *plugin_base = strrchr(plugin_path, '/'); ++ char *lbuf = NULL; ++ ++ if (plugin_base == NULL) ++ return 1; ++ else ++ plugin_base++; ++ ++ ldirs = debian_link_dirs; ++ ++ while ((ldir = *ldirs++) != NULL) ++ { ++ if ((lname = malloc(strlen(ldir) + strlen(plugin_base) + 2)) == NULL) ++ return 1; ++ ++ sprintf(lname, "%s/%s", ldir, plugin_base); ++ lbuf = malloc(strlen(plugin_path) + 1); ++ ++ if (readlink(lname, lbuf, strlen(plugin_path)) > 0) ++ { ++ /* readlink doesn't null terminate */ ++ *(lbuf + strlen(plugin_path)) = 0; ++ ++ if (strcmp(lbuf, plugin_path) == 0) ++ { ++ unlink(lname); ++ if (g_verbose) ++ printf("Deleted symlink '%s' to this plugin.\n", lname); ++ } ++ } ++ ++ free(lname); ++ free(lbuf); ++ } ++ } ++ + return 0; + } + +@@ -1033,6 +1128,12 @@ + return 0; + } + ++static int process_nolink(int argc, char *argv[]) ++{ ++ g_dosymlink = false; ++ return 0; ++} ++ + static int process_list(int argvc, char *argv[]) + { + const char **plugin_dirs = get_mozilla_plugin_dirs(); +@@ -1152,6 +1253,7 @@ + { 'a', "auto", process_auto, 0 }, + { 'n', "native", process_native, 0 }, + { 'l', "list", process_list, 1 }, ++ { 'n', "nosymlinks", process_nolink, 0 }, + { 'u', "update", process_update, 1 }, + { 'i', "install", process_install, 1 }, + { 'r', "remove", process_remove, 1 }, --- nspluginwrapper-1.2.2.orig/debian/patches/006_flash_csw_workaround.diff +++ nspluginwrapper-1.2.2/debian/patches/006_flash_csw_workaround.diff @@ -0,0 +1,14 @@ +--- a/Makefile ++++ b/Makefile +@@ -333,6 +333,11 @@ install.viewer.glue:: + echo "#!/bin/sh" > $$p; \ + echo "TARGET_OS=$(TARGET_OS)" >> $$p; \ + echo "TARGET_ARCH=$(TARGET_ARCH)" >> $$p; \ ++ echo 'case "$$*" in' >> $$p; \ ++ echo "*libflashplayer*)" >> $$p; \ ++ echo " export GDK_NATIVE_WINDOWS=1" >> $$p; \ ++ echo " ;;" >> $$p; \ ++ echo "esac" >> $$p; \ + echo ". $(pkglibdir)/noarch/$(nploader_PROGRAM)" >> $$p; \ + chmod 755 $$p + do.install.libxpcom: $(libxpcom_LIBRARY) --- nspluginwrapper-1.2.2.orig/debian/patches/005_process_env_dirs.diff +++ nspluginwrapper-1.2.2/debian/patches/005_process_env_dirs.diff @@ -0,0 +1,88 @@ +Implement get_env_plugin_dirs() to return a list of directory names +specified by environment variable NSPLUGIN_DIRS. +Adjust get_mozilla_plugin_dirs() to append the mentioned list at the end. +Adjust npconfig_CFLAGS in Makefile to include glib during compile. + + -- Sasa Bodiroza Wed, 01 Apr 2009 21:50:00 +0200 +Index: ubuntu.1.2.2-0ubuntu3/src/npw-config.c +=================================================================== +--- ubuntu.1.2.2-0ubuntu3.orig/src/npw-config.c 2009-04-02 16:29:55.000000000 +0200 ++++ ubuntu.1.2.2-0ubuntu3/src/npw-config.c 2009-04-02 16:32:56.000000000 +0200 +@@ -38,6 +38,7 @@ + #include + #include + ++#include + + static bool g_auto = false; + static bool g_verbose = false; +@@ -213,6 +214,21 @@ + return plugin_path; + } + ++const gchar **get_env_plugin_dirs(int *count) ++{ ++ char *ns_plugin_dir = getenv("NSPLUGIN_DIRS"); ++ if (ns_plugin_dir == NULL) ++ return NULL; ++ *count = 0; ++ const gchar **ns_plugin_dirs = g_strsplit((gchar *)ns_plugin_dir, ":", -1); ++ const gchar **iter = ns_plugin_dirs; ++ while (*iter) { ++ (*count)++; ++ iter++; ++ } ++ return ns_plugin_dirs; ++} ++ + static const char **get_mozilla_plugin_dirs(void) + { + static const char *default_dirs[] = { +@@ -257,13 +273,23 @@ + }; + + const int n_default_dirs = (sizeof(default_dirs) / sizeof(default_dirs[0])); +- const char **dirs = malloc((n_default_dirs + 2) * sizeof(dirs[0])); ++ int n_env_dirs; ++ const gchar **env_dirs = get_env_plugin_dirs(&n_env_dirs); ++ const char **dirs = malloc((n_default_dirs + n_env_dirs + 2) * sizeof(dirs[0])); + int i, j; + for (i = 0, j = 0; i < n_default_dirs; i++) { + const char *dir = default_dirs[i]; + if (dir && access(dir, F_OK) == 0) + dirs[j++] = dir; + } ++ if (env_dirs) { ++ const gchar **iter = env_dirs; ++ while (*iter) { ++ if (*iter && access(*iter, F_OK) == 0) ++ dirs[j++] = (char *)*iter; ++ iter++; ++ } ++ } + dirs[j++] = get_user_mozilla_plugin_dir(); + dirs[j] = NULL; + return dirs; +Index: ubuntu.1.2.2-0ubuntu3/Makefile +=================================================================== +--- ubuntu.1.2.2-0ubuntu3.orig/Makefile 2009-04-02 16:29:55.000000000 +0200 ++++ ubuntu.1.2.2-0ubuntu3/Makefile 2009-04-02 16:29:55.000000000 +0200 +@@ -174,7 +174,8 @@ + npconfig_RAWSRCS = npw-config.c + npconfig_SOURCES = $(npconfig_RAWSRCS:%.c=$(SRC_PATH)/src/%.c) + npconfig_OBJECTS = $(npconfig_RAWSRCS:%.c=npconfig-%.o) +-npconfig_LDFLAGS = $(libdl_LDFLAGS) ++npconfig_CFLAGS = $(GLIB_CFLAGS) ++npconfig_LDFLAGS = $(GLIB_LDFLAGS) $(libdl_LDFLAGS) + ifneq (,$(findstring $(OS),netbsd dragonfly)) + # We will try to dlopen() the native plugin library. If that lib is + # linked against libpthread, then so must our program too. +@@ -410,7 +411,7 @@ + $(CC) -o $@ $(npconfig_OBJECTS) $(npconfig_LDFLAGS) + + npconfig-%.o: $(SRC_PATH)/src/%.c +- $(CC) -o $@ -c $< $(CPPFLAGS) $(CFLAGS) ++ $(CC) -o $@ -c $< $(CPPFLAGS) $(CFLAGS) $(npconfig_CFLAGS) + + $(nploader_PROGRAM): $(nploader_SOURCES) + sed -e "s|%NPW_LIBDIR%|$(pkglibdir)|" $< > $@ --- nspluginwrapper-1.2.2.orig/debian/patches/004_fix_threading.diff +++ nspluginwrapper-1.2.2/debian/patches/004_fix_threading.diff @@ -0,0 +1,17 @@ +Patch from svn r480, fixes SMP breakage. + + -- Rob Andrews Sat, 26 Jan 2008 03:01:31 +0000 + +Index: ubuntu.1.2.2-0ubuntu1/Makefile +=================================================================== +--- ubuntu.1.2.2-0ubuntu1.orig/Makefile 2009-01-02 11:19:18.000000000 +0100 ++++ ubuntu.1.2.2-0ubuntu1/Makefile 2009-03-07 18:38:33.000000000 +0100 +@@ -120,7 +120,7 @@ + npviewer_CFLAGS += -I$(LSB_INC_DIR)/glib-2.0 + npviewer_CFLAGS += -I$(LSB_INC_DIR)/gtk-2.0 + npviewer_LDFLAGS = $(LDFLAGS_32) -L$(LSB_OBJ_DIR) +-npviewer_LDFLAGS += -lgtk-x11-2.0 -lgdk-x11-2.0 -lgobject-2.0 -ldl -lglib-2.0 -lX11 -lXt ++npviewer_LDFLAGS += -lgtk-x11-2.0 -lgdk-x11-2.0 -lgobject-2.0 -ldl -lglib-2.0 -lgthread-2.0 -lX11 -lXt + else + npviewer_CFLAGS += $(GTK_CFLAGS) + npviewer_LDFLAGS = $(GTK_LDFLAGS) $(X_LDFLAGS)