From 85828cc2c2c3ef5c0b9b03388b9323d3d163b389 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 4 Jan 2012 23:14:55 +0000 Subject: Wed Jan 4 23:14:55 UTC 2012 --- staging/hydrogen/PKGBUILD | 40 +++ staging/hydrogen/install.patch | 12 + staging/hydrogen/lrdf_raptor2.patch | 11 + staging/kdeutils/PKGBUILD | 4 +- staging/oxine/PKGBUILD | 28 ++ ...GS-and-LDFLAGS-to-their-Config.pm-counter.patch | 83 ++++++ staging/perl/ChangeLog | 66 +++++ staging/perl/PKGBUILD | 117 +++++++++ staging/perl/fix-h2ph-and-tests.patch | 104 ++++++++ staging/perl/perl.install | 10 + staging/perl/perlbin.csh | 15 ++ staging/perl/perlbin.sh | 18 ++ staging/perl/provides.pl | 286 +++++++++++++++++++++ staging/subversion/PKGBUILD | 76 ++++++ staging/subversion/subversion.rpath.fix.patch | 10 + staging/subversion/svn | 11 + staging/subversion/svnserve | 42 +++ staging/subversion/svnserve.conf | 7 + staging/xine-lib/PKGBUILD | 44 ++++ staging/xine-ui/PKGBUILD | 42 +++ staging/xine-ui/fix_lirc.diff | 13 + staging/xine-ui/lirc-check-a89347673097.patch | 64 +++++ staging/xine-ui/lirc-makefile-a68dd15ff7ae.patch | 19 ++ staging/xine-ui/xine-ui-xdg.diff | 206 +++++++++++++++ staging/xine-ui/xine-ui.install | 13 + 25 files changed, 1339 insertions(+), 2 deletions(-) create mode 100644 staging/hydrogen/PKGBUILD create mode 100644 staging/hydrogen/install.patch create mode 100644 staging/hydrogen/lrdf_raptor2.patch create mode 100644 staging/oxine/PKGBUILD create mode 100644 staging/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch create mode 100644 staging/perl/ChangeLog create mode 100644 staging/perl/PKGBUILD create mode 100644 staging/perl/fix-h2ph-and-tests.patch create mode 100644 staging/perl/perl.install create mode 100644 staging/perl/perlbin.csh create mode 100755 staging/perl/perlbin.sh create mode 100644 staging/perl/provides.pl create mode 100644 staging/subversion/PKGBUILD create mode 100644 staging/subversion/subversion.rpath.fix.patch create mode 100644 staging/subversion/svn create mode 100755 staging/subversion/svnserve create mode 100644 staging/subversion/svnserve.conf create mode 100644 staging/xine-lib/PKGBUILD create mode 100644 staging/xine-ui/PKGBUILD create mode 100644 staging/xine-ui/fix_lirc.diff create mode 100644 staging/xine-ui/lirc-check-a89347673097.patch create mode 100644 staging/xine-ui/lirc-makefile-a68dd15ff7ae.patch create mode 100644 staging/xine-ui/xine-ui-xdg.diff create mode 100644 staging/xine-ui/xine-ui.install (limited to 'staging') diff --git a/staging/hydrogen/PKGBUILD b/staging/hydrogen/PKGBUILD new file mode 100644 index 000000000..6f497e64a --- /dev/null +++ b/staging/hydrogen/PKGBUILD @@ -0,0 +1,40 @@ +# $Id: PKGBUILD 145882 2012-01-03 18:42:57Z schiv $ +# Maintainer: tobias +# Maintainer: Ray Rashif +# Contributor: K. Piche +# Contributor: Giovanni Scafora + +pkgname=hydrogen +pkgver=0.9.5 +pkgrel=2 +pkgdesc="Advanced Drum Machine" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.hydrogen-music.org/" +depends=('libarchive' 'liblrdf' 'qt' 'jack') +makedepends=('scons') +#options=('!makeflags') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz + lrdf_raptor2.patch + install.patch) +md5sums=('e96f291d60e58f5d62fe616cee577dc0' + '2124851e890f46158189b5fa90006d40' + 'ce3a83a069b55e46aa532b55e803c9a5') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + export QTDIR=/usr + patch -Np1 -i "${srcdir}/lrdf_raptor2.patch" + # http://www.assembla.com/spaces/hydrogen/tickets/204 + patch -Np0 -i "${srcdir}/install.patch" + scons prefix=/usr libarchive=1 +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + scons DESTDIR="${pkgdir}" install +} + +# vim:set ts=2 sw=2 et: diff --git a/staging/hydrogen/install.patch b/staging/hydrogen/install.patch new file mode 100644 index 000000000..2e6e707a1 --- /dev/null +++ b/staging/hydrogen/install.patch @@ -0,0 +1,12 @@ +*** Sconstruct.org 2011-11-06 12:15:40.018119106 +0100 +--- Sconstruct 2011-11-06 12:16:21.124122432 +0100 +*************** +*** 298,304 **** + + for N in glob.glob('./data/i18n/hydrogen.*'): + env.Alias(target="install", source=env.Install(dir= env['DESTDIR'] + env['prefix'] + '/share/hydrogen/data/i18n', source=N)) +- env.Alias(target="install", source=env.Install(dir= env['DESTDIR'] + env['prefix'] + '/share/hydrogen/data', source="./data/img")) + + #add every img in ./data/img to the install list. + os.path.walk("./data/img/",install_images,env) +--- 298,303 ---- diff --git a/staging/hydrogen/lrdf_raptor2.patch b/staging/hydrogen/lrdf_raptor2.patch new file mode 100644 index 000000000..ec176b716 --- /dev/null +++ b/staging/hydrogen/lrdf_raptor2.patch @@ -0,0 +1,11 @@ +diff -baur hydrogen-0.9.5.old/Sconstruct hydrogen-0.9.5/Sconstruct +--- hydrogen-0.9.5.old/Sconstruct 2011-08-11 18:00:07.889112348 +0800 ++++ hydrogen-0.9.5/Sconstruct 2011-08-11 18:00:34.945632437 +0800 +@@ -83,6 +83,7 @@ + includes.append( './' ) + includes.append( 'gui/src/' ) + includes.append( '3rdparty/install/include' ) ++ includes.append( '/usr/include/raptor2' ) + + if sys.platform == "darwin": + ldflags.append( '-L/opt/local/lib' ) diff --git a/staging/kdeutils/PKGBUILD b/staging/kdeutils/PKGBUILD index 60a9ed46c..c5e2b8fbd 100644 --- a/staging/kdeutils/PKGBUILD +++ b/staging/kdeutils/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 144182 2011-12-04 09:19:31Z andrea $ +# $Id: PKGBUILD 145854 2012-01-03 08:13:43Z andrea $ # Maintainer: Andrea Scarpino # Contributor: Pierre Schmitz @@ -17,7 +17,7 @@ pkgname=('kdeutils-ark' 'kdeutils-superkaramba' 'kdeutils-sweeper') pkgver=4.7.4 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') url='http://www.kde.org' license=('GPL' 'LGPL' 'FDL') diff --git a/staging/oxine/PKGBUILD b/staging/oxine/PKGBUILD new file mode 100644 index 000000000..89f7836a7 --- /dev/null +++ b/staging/oxine/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 145923 2012-01-04 04:10:29Z eric $ +# Maintainer: Alexander Baldeck +# Contributor: Rouslan Solomakhin +# Contributor: dorphell + +pkgname=oxine +pkgver=0.7.1 +pkgrel=5 +pkgdesc="A lightweight, purely osd based xine frontend for set-top boxes and home entertainment systems" +arch=('i686' 'x86_64') +url="http://oxine.sourceforge.net/" +license=('GPL') +depends=('xine-lib' 'libexif' 'eject' 'libcdio' 'curl' 'libxtst') +source=(http://downloads.sourceforge.net/sourceforge/oxine/${pkgname}-${pkgver}.tar.gz) +md5sums=('2a2d05ee21892624e35cf539e532c0dd') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + sed -i 's|#include ||' configure src/download.c + ./configure --prefix=/usr --disable-hal --without-jsw --disable-extractor \ + --without-imagemagick --disable-gdkpixbuf --disable-weather + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/staging/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch b/staging/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch new file mode 100644 index 000000000..1404460df --- /dev/null +++ b/staging/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch @@ -0,0 +1,83 @@ +From bb249b0b26c2e79a6f55355ef94889070f07fd21 Mon Sep 17 00:00:00 2001 +From: Niko Tyni +Date: Thu, 28 Apr 2011 09:18:54 +0300 +Subject: [PATCH] Append CFLAGS and LDFLAGS to their Config.pm counterparts in + EU::CBuilder + +Since ExtUtils::CBuilder 0.27_04 (bleadperl commit 06e8058f27e4), +CFLAGS and LDFLAGS from the environment have overridden the Config.pm +ccflags and ldflags settings. This can cause binary incompatibilities +between the core Perl and extensions built with EU::CBuilder. + +Append to the Config.pm values rather than overriding them. +--- + .../lib/ExtUtils/CBuilder/Base.pm | 6 +++- + dist/ExtUtils-CBuilder/t/04-base.t | 25 +++++++++++++++++++- + 2 files changed, 28 insertions(+), 3 deletions(-) + +diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm +index b572312..2255c51 100644 +--- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm ++++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm +@@ -40,11 +40,13 @@ sub new { + $self->{config}{$k} = $v unless exists $self->{config}{$k}; + } + $self->{config}{cc} = $ENV{CC} if defined $ENV{CC}; +- $self->{config}{ccflags} = $ENV{CFLAGS} if defined $ENV{CFLAGS}; ++ $self->{config}{ccflags} = join(" ", $self->{config}{ccflags}, $ENV{CFLAGS}) ++ if defined $ENV{CFLAGS}; + $self->{config}{cxx} = $ENV{CXX} if defined $ENV{CXX}; + $self->{config}{cxxflags} = $ENV{CXXFLAGS} if defined $ENV{CXXFLAGS}; + $self->{config}{ld} = $ENV{LD} if defined $ENV{LD}; +- $self->{config}{ldflags} = $ENV{LDFLAGS} if defined $ENV{LDFLAGS}; ++ $self->{config}{ldflags} = join(" ", $self->{config}{ldflags}, $ENV{LDFLAGS}) ++ if defined $ENV{LDFLAGS}; + + unless ( exists $self->{config}{cxx} ) { + my ($ccpath, $ccbase, $ccsfx ) = fileparse($self->{config}{cc}, qr/\.[^.]*/); +diff --git a/dist/ExtUtils-CBuilder/t/04-base.t b/dist/ExtUtils-CBuilder/t/04-base.t +index c3bf6b5..1bb15aa 100644 +--- a/dist/ExtUtils-CBuilder/t/04-base.t ++++ b/dist/ExtUtils-CBuilder/t/04-base.t +@@ -1,7 +1,7 @@ + #! perl -w + + use strict; +-use Test::More tests => 50; ++use Test::More tests => 64; + use Config; + use Cwd; + use File::Path qw( mkpath ); +@@ -326,6 +326,29 @@ is_deeply( $mksymlists_args, + "_prepare_mksymlists_args(): got expected arguments for Mksymlists", + ); + ++my %testvars = ( ++ CFLAGS => 'ccflags', ++ LDFLAGS => 'ldflags', ++); ++ ++while (my ($VAR, $var) = each %testvars) { ++ local $ENV{$VAR}; ++ $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); ++ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); ++ isa_ok( $base, 'ExtUtils::CBuilder::Base' ); ++ like($base->{config}{$var}, qr/\Q$Config{$var}/, ++ "honours $var from Config.pm"); ++ ++ $ENV{$VAR} = "-foo -bar"; ++ $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); ++ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); ++ isa_ok( $base, 'ExtUtils::CBuilder::Base' ); ++ like($base->{config}{$var}, qr/\Q$ENV{$VAR}/, ++ "honours $VAR from the environment"); ++ like($base->{config}{$var}, qr/\Q$Config{$var}/, ++ "doesn't override $var from Config.pm with $VAR from the environment"); ++} ++ + ##### + + for ($source_file, $object_file, $lib_file) { +-- +1.7.4.4 + diff --git a/staging/perl/ChangeLog b/staging/perl/ChangeLog new file mode 100644 index 000000000..9add39e20 --- /dev/null +++ b/staging/perl/ChangeLog @@ -0,0 +1,66 @@ +2011-06-22 Angel Velasquez + * Added a patch for ExtUtils doesnt overwrite CFLAGS and LDFLAGS + * Fixed #FS22197, FS#22441, FS#24767 + * Rebuilt perl 5.14.1-2 against db 5.2.28 + +2011-06-16 Angel Velasquez + * Fixed #FS24660 + * Rebuilt against db 5.2.28 + +2011-05-16 Angel Velasquez + * perl 5.14.0 + * Removed patch for h2ph warning from 5.12.3 + * Removed provides array, you can use corelist -v 5.14.0 to know the + modules included with the perl core, through Module::CoreList (thx j3nnn1 + for the tip) + +2010-11-07 kevin + + * perl 5.12.2-1 + - Using /usr/bin/*_perl for script directories + +2010-11-06 kevin + + - Removed otherlibdirs directive from Configure + - Removed /usr/*/perl5/site_perl/5.10.1 from INC + - Finally removed legacy dirs /usr/lib/perl5/current and + /usr/lib/perl5/site_perl/current from @INC + +2010-05-23 kevin + + * perl 5.12.1-2 + - Francois updated the provides array. + +2010-05-23 kevin + + * perl 5.12.1-1 + +2010-05-16 kevin + + * perl 5.12.0-2 + +2010-05-12 kevin + + - FS#19411. Removed the for loop in perlbin.sh which didn't work on zsh. + This makes the loop variables unnecessary so the script no longer + pollutes the user's environment. + - FS#19427. Added /usr/*/perl5/site_perl/5.10.1 to otherlibdirs to support + user built modules. + +2010-05-09 kevin + + * perl 5.12.0-1 + - Modified perlbin.sh to only add existing dirs to PATH. Fixes FS#17402, + path points to non-existant directories + +2010-05-07 kevin + + - Added this changelog. + - Added -Dinc_version_list=none to fix FS#19136, double entry in @INC. + This removes the duplicates and versioned directory entries. + - Change scriptdirs to /usr/lib/perl5/{core,vendor,site}_perl/bin to fix + Fix FS#13808, binaries don't follow FHS. + - Stopped using versioned directories in sitelib and sitearch. + + +# vim: set ft=changelog ts=4 sw=4 et: diff --git a/staging/perl/PKGBUILD b/staging/perl/PKGBUILD new file mode 100644 index 000000000..85fecb1d9 --- /dev/null +++ b/staging/perl/PKGBUILD @@ -0,0 +1,117 @@ +# $Id: PKGBUILD 145893 2012-01-03 21:13:07Z bluewind $ +# Maintainer: Angel Velasquez +# Contributor: kevin +# Contributor: judd +# Contributor: francois +pkgname=perl +pkgver=5.14.2 +pkgrel=6 +pkgdesc="A highly capable, feature-rich programming language" +arch=(i686 x86_64) +license=('GPL' 'PerlArtistic') +url="http://www.perl.org" +groups=('base') +depends=('gdbm' 'db' 'coreutils' 'glibc' 'sh') +changelog=ChangeLog +source=(http://www.cpan.org/src/5.0/perl-${pkgver}.tar.bz2 +perlbin.sh +perlbin.csh +provides.pl +0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch) +install=perl.install +options=('makeflags' '!purge') +md5sums=('04a4c5d3c1f9f19d77daff8e8cd19a26' + '5ed2542fdb9a60682f215bd33701e61a' + '1f0cbbee783e8a6d32f01be5118e0d5e' + '31fc0b5bb4935414394c5cfbec2cb8e5' + 'c25d86206d649046538c3daab7874564') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + if [ "${CARCH}" = "x86_64" ]; then + # for x86_64 + arch_opts="-Dcccdlflags='-fPIC'" + else + # for i686 + arch_opts="" + fi + + ./Configure -des -Dusethreads -Duseshrplib -Doptimize="${CFLAGS}" \ + -Dprefix=/usr -Dinstallprefix=${pkgdir}/usr -Dvendorprefix=/usr \ + -Dprivlib=/usr/share/perl5/core_perl \ + -Darchlib=/usr/lib/perl5/core_perl \ + -Dsitelib=/usr/share/perl5/site_perl \ + -Dsitearch=/usr/lib/perl5/site_perl \ + -Dvendorlib=/usr/share/perl5/vendor_perl \ + -Dvendorarch=/usr/lib/perl5/vendor_perl \ + -Dscriptdir=/usr/bin/core_perl \ + -Dsitescript=/usr/bin/site_perl \ + -Dvendorscript=/usr/bin/vendor_perl \ + -Dinc_version_list=none \ + -Dman1ext=1perl -Dman3ext=3perl ${arch_opts} \ + -Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}" + patch -Np1 -i $srcdir/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch + make +} + +check() { + cd ${srcdir}/${pkgname}-${pkgver} + TEST_JOBS=$(echo $MAKEFLAGS | sed 's/.*-j\([0-9][0-9]*\).*/\1/') make test_harness +# make test +} + +package() { + # hack to work around makepkg running the subshell in check_sanity() + new_provides=($(cd "$srcdir/perl-$pkgver"; LD_PRELOAD=./libperl.so ./perl -Ilib "$srcdir/provides.pl" .)) + provides=(${new_provides[@]}) + + cd ${srcdir}/${pkgname}-${pkgver} + make install + + ### Perl Settings ### + # Change man page extensions for site and vendor module builds. + # Use archlinux email address instead of my own. + sed -e '/^man1ext=/ s/1perl/1p/' -e '/^man3ext=/ s/3perl/3pm/' \ + -e "/^cf_email=/ s/'.*'/'kevin@archlinux.org'/" \ + -e "/^perladmin=/ s/'.*'/'kevin@archlinux.org'/" \ + -i ${pkgdir}/usr/lib/perl5/core_perl/Config_heavy.pl + + ### CPAN Settings ### + # Set CPAN default config to use the site directories. + sed -e '/(makepl_arg =>/ s/""/"INSTALLDIRS=site"/' \ + -e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \ + -i ${pkgdir}/usr/share/perl5/core_perl/CPAN/FirstTime.pm + + ### CPANPLUS Settings ### + # Set CPANPLUS default config to use the site directories. + sed -e "/{'makemakerflags'}/ s/'';/'INSTALLDIRS=site';/" \ + -e "/{'buildflags'}/ s/'';/'installdirs=site';/" \ + -i ${pkgdir}/usr/share/perl5/core_perl/CPANPLUS/Config.pm + + # Profile script to set paths to perl scripts. + install -D -m755 ${srcdir}/perlbin.sh \ + ${pkgdir}/etc/profile.d/perlbin.sh + # Profile script to set paths to perl scripts on csh. (FS#22441) + install -D -m755 ${srcdir}/perlbin.csh \ + ${pkgdir}/etc/profile.d/perlbin.csh + + (cd ${pkgdir}/usr/bin; mv perl${pkgver} perl) + (cd ${pkgdir}/usr/bin/core_perl; ln -sf c2ph pstruct; ln -sf s2p psed) + grep -Rl "${pkgdir}" ${pkgdir}/usr | \ + xargs sed -i "s^${pkgdir}^^g" + + # Remove all pod files *except* those under /usr/share/perl5/core_perl/pod/ + # (FS#16488) + rm -f $pkgdir/usr/share/perl5/core_perl/*.pod + for d in $pkgdir/usr/share/perl5/core_perl/*; do + if [ -d $d -a $(basename $d) != "pod" ]; then + find $d -name *.pod -delete + fi + done + find $pkgdir/usr/lib -name *.pod -delete + find $pkgdir -name .packlist -delete + # Add /usr/lib/perl5/core_perl/CORE/ to standard library path (FS#24660) + install -dv ${pkgdir}/etc/ld.so.conf.d + echo "/usr/lib/perl5/core_perl/CORE" > ${pkgdir}/etc/ld.so.conf.d/perl.conf +} diff --git a/staging/perl/fix-h2ph-and-tests.patch b/staging/perl/fix-h2ph-and-tests.patch new file mode 100644 index 000000000..a2d176ec6 --- /dev/null +++ b/staging/perl/fix-h2ph-and-tests.patch @@ -0,0 +1,104 @@ +From 8d66b3f930dc6d88b524d103e304308ae73a46e7 Mon Sep 17 00:00:00 2001 +From: Robin Barker +Date: Thu, 22 Apr 2010 11:51:20 +0100 +Subject: [PATCH 1/1] Fix h2ph and test + +--- + lib/h2ph.t | 12 ++++++++++-- + utils/h2ph.PL | 28 +++++++++++++++++++++++----- + 2 files changed, 33 insertions(+), 7 deletions(-) + +diff --git a/lib/h2ph.t b/lib/h2ph.t +index 27dd7b9..8d62d46 100644 +--- a/lib/h2ph.t ++++ b/lib/h2ph.t +@@ -18,7 +18,7 @@ if (!(-e $extracted_program)) { + exit 0; + } + +-plan(4); ++plan(5); + + # quickly compare two text files + sub txt_compare { +@@ -41,8 +41,16 @@ $result = runperl( progfile => 'lib/h2ph.pht', + stderr => 1 ); + like( $result, qr/syntax OK$/, "output compiles"); + ++$result = runperl( progfile => '_h2ph_pre.ph', ++ switches => ['-c'], ++ stderr => 1 ); ++like( $result, qr/syntax OK$/, "preamble compiles"); ++ + $result = runperl( switches => ["-w"], +- prog => '$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);'); ++ stderr => 1, ++ prog => <<'PROG' ); ++$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht); ++PROG + is( $result, '', "output free of warnings" ); + + # cleanup +diff --git a/utils/h2ph.PL b/utils/h2ph.PL +index 8f56db4..1255807 100644 +--- a/utils/h2ph.PL ++++ b/utils/h2ph.PL +@@ -401,7 +401,10 @@ if ($opt_e && (scalar(keys %bad_file) > 0)) { + exit $Exit; + + sub expr { +- $new = '"(assembly code)"' and return if /\b__asm__\b/; # freak out. ++ if (/\b__asm__\b/) { # freak out ++ $new = '"(assembly code)"'; ++ return ++ } + my $joined_args; + if(keys(%curargs)) { + $joined_args = join('|', keys(%curargs)); +@@ -770,7 +773,7 @@ sub inc_dirs + sub build_preamble_if_necessary + { + # Increment $VERSION every time this function is modified: +- my $VERSION = 2; ++ my $VERSION = 3; + my $preamble = "$Dest_dir/_h2ph_pre.ph"; + + # Can we skip building the preamble file? +@@ -798,7 +801,16 @@ sub build_preamble_if_necessary + # parenthesized value: d=(v) + $define{$_} = $1; + } +- if ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { ++ if (/^(\w+)\((\w)\)$/) { ++ my($macro, $arg) = ($1, $2); ++ my $def = $define{$_}; ++ $def =~ s/$arg/\$\{$arg\}/g; ++ print PREAMBLE < + +use warnings 'FATAL' => 'all'; +use strict; + +package Common; + +sub evalver +{ + my ($path, $mod) = @_; + $mod ||= ""; + + open my $fh, '<', $path or die "open $path: $!"; + + while (<$fh>) { + next unless /\s*(?:\$${mod}::|\$)VERSION\s*=\s*(.+)/; + my $ver = eval $1; + return $ver unless $@; + warn qq{$path:$. bad version string "$ver"\n}; + } + + close $fh; + return undef; +} + +#----------------------------------------------------------------------------- + +package Dists; + +sub maindistfile +{ + my ($dist, $dir) = @_; + + # libpath is the modern style, installing modules under lib/ + # with dirs matching the name components. + my $libpath = join q{/}, 'lib', split /-/, "${dist}.pm"; + + # dumbpath is an old style where there's no subdirs and just + # a .pm file. + my $dumbpath = $dist; + $dumbpath =~ s/\A.+-//; + $dumbpath .= ".pm"; + + my @paths = ($libpath, $dumbpath); + # Some modules (with simple names like XSLoader, lib, etc) are + # generated by Makefile.PL. Search through their generating code. + push @paths, "${dist}_pm.PL" if $dist =~ tr/-/-/ == 0; + + for my $path (map { "$dir/$_" } @paths) { return $path if -f $path; } + return undef; +} + +sub module_ver +{ + my ($dist, $dir) = @_; + + my $path = maindistfile($dist, $dir) or return undef; + + my $mod = $dist; + $mod =~ s/-/::/g; + my $ver = Common::evalver($path, $mod); + unless ($ver) { + warn "failed to find version in module file for $dist\n"; + return undef; + } + + return $ver; +} + +sub changelog_ver +{ + my ($dist, $dir) = @_; + + my $path; + for my $tmp (glob "$dir/{Changes,ChangeLog}") { + if (-f $tmp) { $path = $tmp; last; } + } + return undef unless $path; + + open my $fh, '<', $path or die "open: $!"; + while (<$fh>) { + return $1 if /\A\s*(?:$dist[ \t]*)?([0-9._]+)/; + return $1 if /\A\s*version\s+([0-9._]+)/i; + } + close $fh; + + return undef; +} + +# for some reason podlators has a VERSION file with perl code in it +sub verfile_ver +{ + my ($dist, $dir) = @_; + + my $path = "$dir/VERSION"; + return undef unless -f $path; # no warning, only podlaters has it + + return Common::evalver($path); +} + +# scans a directory full of nicely separated dist. directories. +sub scan_distroot +{ + my ($distroot) = @_; + opendir my $cpand, "$distroot" or die "failed to open $distroot"; + my @dists = grep { !/^\./ && -d "$distroot/$_" } readdir $cpand; + closedir $cpand; + + my @found; + for my $dist (@dists) { + my $distdir = "$distroot/$dist"; + my $ver = (module_ver($dist, $distdir) + || changelog_ver($dist, $distdir) + || verfile_ver($dist, $distdir)); + + if ($ver) { push @found, [ $dist, $ver ]; } + else { warn "failed to find version for $dist\n"; } + } + return @found; +} + +sub find +{ + my ($srcdir) = @_; + return map { scan_distroot($_) } glob "$srcdir/{cpan,dist}"; +} + +#----------------------------------------------------------------------------- + +package Modules; + +use HTTP::Tiny qw(); +use File::Find qw(); +use File::stat; + +*findfile = *File::Find::find; + +sub cpan_provider +{ + my ($module) = @_; + my $url = "http://cpanmetadb.appspot.com/v1.0/package/$module"; + my $http = HTTP::Tiny->new; + my $resp = $http->get($url); + return undef unless $resp->{'success'}; + + my ($cpanpath) = $resp->{'content'} =~ /^distfile: (.*)$/m + or return undef; + + my $dist = $cpanpath; + $dist =~ s{\A.+/}{}; # remove author directory + $dist =~ s{-[^-]+\z}{}; # remove version and extension + return ($dist eq 'perl' ? undef : $dist); +} + +sub find +{ + my ($srcdir) = @_; + my $libdir = "$srcdir/lib/"; + die "failed to find $libdir directory" unless -d $libdir; + + # Find only the module files that have not changed since perl + # was extracted. We don't want the files perl just recently + # installed into lib/. We processed those already. + my @modfiles; + my $finder = sub { + return unless /[.]pm\z/; + push @modfiles, $_; + }; + findfile({ 'no_chdir' => 1, 'wanted' => $finder }, $libdir); + + # First we have to find what the oldest ctime actually is. + my $oldest = time; + @modfiles = map { + my $modfile = $_; + my $ctime = (stat $modfile)->ctime; + $oldest = $ctime if $ctime < $oldest; + [ $modfile, $ctime ]; # save ctime for later + } @modfiles; + + # Then we filter out any file that was created more than a + # few seconds after that. Process the rest. + my @mods; + for my $modfile (@modfiles) { + my ($mod, $ctime) = @$modfile; + next if $ctime - $oldest > 5; # ignore newer files + + my $path = $mod; + $mod =~ s{[.]pm\z}{}; + $mod =~ s{\A$libdir}{}; + $mod =~ s{/}{::}g; + + my $ver = Common::evalver($path) || q{}; + push @mods, [ $mod, $ver ]; + } + + # Convert modules names to the dist names who provide them. + my %seen; + my @dists; + for my $modref (@mods) { + my ($mod, $ver) = @$modref; + my $dist = cpan_provider($mod) or next; # filter out core modules + next if $seen{$dist}++; # avoid duplicate dists + push @dists, [ $dist, $ver ]; + } + return @dists; +} + +#----------------------------------------------------------------------------- + +package Dist2Pkg; + +sub name +{ + my ($name) = @_; + my $orig = $name; + + # Package names should be lowercase and consist of alphanumeric + # characters only (and hyphens!)... + $name =~ tr/A-Z/a-z/; + $name =~ tr/_+/-/; # _ and +'s converted to - (ie Tabbed-Text+Wrap) + $name =~ tr/-a-z0-9+//cd; # Delete all other chars. + $name =~ tr/-/-/s; + + # Delete leading or trailing hyphens... + $name =~ s/\A-|-\z//g; + + die qq{Dist. name '$orig' completely violates packaging standards} + unless $name; + + return "perl-$name"; +} + +sub version +{ + my ($version) = @_; + + # Package versions should be numbers and decimal points only... + $version =~ tr/-/./; + $version =~ tr/_0-9.-//cd; + + # Remove developer versions because pacman has no special logic + # to compare them to regular versions like perl does. + $version =~ s/_[^_]+\z//; + + $version =~ tr/_//d; # delete other underscores + $version =~ tr/././s; # only one period at a time + $version =~ s/\A[.]|[.]\z//g; # shouldn't start or stop with a period + + return $version; +} + +#----------------------------------------------------------------------------- + +package main; + +my %CPANNAME = ('List-Util' => 'Scalar-List-Utils', + 'Text-Tabs' => 'Text-Tabs+Wrap', + 'Cwd' => 'PathTools'); + +my $perldir = shift or die "Usage: $0 [path to perl source directory]\n"; +die "$perldir is not a valid directory." unless -d $perldir; + +my @dists = (Dists::find($perldir), Modules::find($perldir)); +for my $dist (@dists) { + my $name = $dist->[0]; + $dist->[0] = $CPANNAME{$name} if exists $CPANNAME{$name}; +} + +my @pkgs = map { + my ($name, $ver) = @$_; + $name = Dist2Pkg::name($name); + $ver = Dist2Pkg::version($ver); + [ $name, $ver ]; +} @dists; + +@pkgs = sort { $a->[0] cmp $b->[0] } @pkgs; + +for my $pkg (@pkgs) { + my ($name, $ver) = @$pkg; + print "$name=$ver\n"; +} diff --git a/staging/subversion/PKGBUILD b/staging/subversion/PKGBUILD new file mode 100644 index 000000000..d4bad140e --- /dev/null +++ b/staging/subversion/PKGBUILD @@ -0,0 +1,76 @@ +# $Id: PKGBUILD 145884 2012-01-03 18:48:03Z stephane $ +# Maintainer: Paul Mattal +# Contributor: Jason Chu + +pkgname=subversion +pkgver=1.7.2 +pkgrel=2 +pkgdesc="A Modern Concurrent Version Control System" +arch=('i686' 'x86_64') +license=('APACHE') +depends=('neon' 'apr-util' 'sqlite3' 'file') +optdepends=('libgnome-keyring' 'kdeutils-kwallet' 'bash-completion: for svn bash completion' \ + 'python2: for some hook scripts' 'ruby: for some hook scripts') +makedepends=('krb5' 'apache' 'python2' 'perl' 'swig' 'java-runtime' 'java-environment' + 'autoconf' 'db' 'e2fsprogs' 'libgnome-keyring' 'kdelibs') +backup=('etc/xinetd.d/svn' 'etc/conf.d/svnserve') +url="http://subversion.apache.org/" +provides=('svn') +options=('!makeflags' '!libtool') +source=(http://apache.mirror.rafal.ca/subversion/$pkgname-$pkgver.tar.bz2{,.asc} + svnserve svn svnserve.conf subversion.rpath.fix.patch) +sha1sums=('8c0824aeb7f42da1ff4f7cd296877af7f59812bb' + '66293923ddc1b12a43b0e86f6b6a3c23b70df6ae' + '64ba3e6ebafc08ac62f59d788f7a825fdce69573' + '73b36c046c09cec2093354911c89e3ba8056af6c' + 'ad117bf3b2a838a9a678a93fd8db1a066ad46c41' + '3d1e28408a9abb42af2e531adc0d01ce21acfad6') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + export PYTHON=/usr/bin/python2 + + patch -p0 -i ../subversion.rpath.fix.patch + sed -i 's|/usr/bin/env python|/usr/bin/env python2|' tools/hook-scripts/{,mailer/{,tests/}}*.py + + ./configure --prefix=/usr --with-apr=/usr --with-apr-util=/usr \ + --with-zlib=/usr --with-neon=/usr --with-apxs \ + --with-sqlite=/usr --with-berkeley-db=:/usr/include/:/usr/lib:db-5.3 \ + --enable-javahl --with-gnome-keyring --with-kwallet + + make external-all + make LT_LDFLAGS="-L$Fdestdir/usr/lib" local-all + make swig_pydir=/usr/lib/python2.7/site-packages/libsvn \ + swig_pydir_extra=/usr/lib/python2.7/site-packages/svn swig-py swig-pl javahl # swig-rb +} + +#check() { +# cd "${srcdir}/${pkgname}-${pkgver}" +# export LANG=C LC_ALL=C +# make check check-swig-pl check-swig-py check-javahl CLEANUP=yes # check-swig-rb +#} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + export LD_LIBRARY_PATH="${pkgdir}"/usr/lib:$LD_LIBRARY_PATH + make DESTDIR="${pkgdir}" INSTALLDIRS=vendor \ + swig_pydir=/usr/lib/python2.7/site-packages/libsvn \ + swig_pydir_extra=/usr/lib/python2.7/site-packages/svn \ + install install-swig-py install-swig-pl install-javahl # install-swig-rb + + install -d "${pkgdir}"/usr/share/subversion + cp -a tools/hook-scripts "${pkgdir}"/usr/share/subversion/ + rm -f "${pkgdir}"/usr/share/subversion/hook-scripts/*.in + + rm -f "${pkgdir}"/usr/lib/perl5/vendor_perl/auto/SVN/_Core/.packlist + rm -rf "${pkgdir}"/usr/lib/perl5/core_perl + + install -D -m 755 "${srcdir}"/svnserve "${pkgdir}"/etc/rc.d/svnserve + install -D -m 644 "${srcdir}"/svn "${pkgdir}"/etc/xinetd.d/svn + install -D -m 644 "${srcdir}"/svnserve.conf "${pkgdir}"/etc/conf.d/svnserve + + # bash completion + install -Dm 644 tools/client-side/bash_completion \ + "${pkgdir}"/etc/bash_completion.d/subversion +} diff --git a/staging/subversion/subversion.rpath.fix.patch b/staging/subversion/subversion.rpath.fix.patch new file mode 100644 index 000000000..ba6ee9e4e --- /dev/null +++ b/staging/subversion/subversion.rpath.fix.patch @@ -0,0 +1,10 @@ +--- Makefile.in.orig 2009-02-16 14:10:48.000000000 -0200 ++++ Makefile.in 2009-06-04 00:56:29.000000000 -0300 +@@ -678,6 +678,7 @@ + + $(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL + cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL ++ cd $(SWIG_PL_DIR)/native; sed -i 's|LD_RUN_PATH|DIE_RPATH_DIE|g' Makefile{,.{client,delta,fs,ra,repos,wc}} + + swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \ + $(SWIG_PL_DIR)/native/Makefile diff --git a/staging/subversion/svn b/staging/subversion/svn new file mode 100644 index 000000000..8988aaf63 --- /dev/null +++ b/staging/subversion/svn @@ -0,0 +1,11 @@ +service svn +{ + flags = REUSE + socket_type = stream + wait = no + user = root + server = /usr/bin/svnserve + server_args = -i + log_on_failure += USERID + disable = yes +} diff --git a/staging/subversion/svnserve b/staging/subversion/svnserve new file mode 100755 index 000000000..670fee742 --- /dev/null +++ b/staging/subversion/svnserve @@ -0,0 +1,42 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/svnserve + +PID=`pidof -o %PPID /usr/bin/svnserve` +case "$1" in + start) + stat_busy "Starting svnserve" + if [ -z "$PID" ]; then + if [ -n "$SVNSERVE_USER" ]; then + su -s '/bin/sh' $SVNSERVE_USER -c "/usr/bin/svnserve -d $SVNSERVE_ARGS" & + else + /usr/bin/svnserve -d $SVNSERVE_ARGS & + fi + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon svnserve + stat_done + fi + ;; + stop) + stat_busy "Stopping svnserve" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon svnserve + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/staging/subversion/svnserve.conf b/staging/subversion/svnserve.conf new file mode 100644 index 000000000..37fb7ea10 --- /dev/null +++ b/staging/subversion/svnserve.conf @@ -0,0 +1,7 @@ +# +# Parameters to be passed to svnserve +# +#SVNSERVE_ARGS="-r /path/to/some/repos" +SVNSERVE_ARGS="" + +#SVNSERVE_USER="svn" diff --git a/staging/xine-lib/PKGBUILD b/staging/xine-lib/PKGBUILD new file mode 100644 index 000000000..6b5a80f19 --- /dev/null +++ b/staging/xine-lib/PKGBUILD @@ -0,0 +1,44 @@ +# $Id: PKGBUILD 145907 2012-01-04 00:21:36Z eric $ +# Maintainer: Eric Bélanger + +pkgname=xine-lib +pkgver=1.2.0 +pkgrel=1 +pkgdesc="A multimedia playback engine" +arch=('i686' 'x86_64') +url="http://www.xine-project.org" +license=('LGPL' 'GPL') +depends=('libxvmc' 'ffmpeg' 'libxinerama') +makedepends=('wavpack' 'faad2' 'libmng' 'imagemagick' 'mesa' 'libmodplug' + 'vcdimager' 'jack' 'aalib' 'libdca' 'a52dec' 'libmad' + 'libmpcdec' 'libcaca' 'libbluray' 'gnome-vfs') +optdepends=('imagemagick: for using the imagemagick plugin' \ + 'jack: for using the jack plugin' \ + 'vcdimager: for using the vcd plugin' \ + 'mesa: for using the opengl plugin' \ + 'wavpack: for using the wavpack plugin' \ + 'faad2: for using the faad plugin' \ + 'libmng: for using the mng plugin' \ + 'aalib: for using the aalib plugin' \ + 'libmodplug: for using the modplug plugin' \ + 'libdca: for using the dca plugin' \ + 'a52dec: for using the a52 plugin' \ + 'libmad: for using the mp3 plugin' \ + 'libmpcdec: for using the musepack plugin' \ + 'libcaca: for using the caca plugin' \ + 'libbluray: for using the bluray plugin' \ + 'gnome-vfs: for using the gnome-vfs plugin') +options=('!libtool') +source=(http://downloads.sourceforge.net/sourceforge/xine/${pkgname}-${pkgver}.tar.xz) +sha1sums=('5d5385f2a0c3bb7beaba1079cd9b62c4c92a301d') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --with-wavpack --enable-vdpau --disable-optimizations + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/staging/xine-ui/PKGBUILD b/staging/xine-ui/PKGBUILD new file mode 100644 index 000000000..0a5bfc1f5 --- /dev/null +++ b/staging/xine-ui/PKGBUILD @@ -0,0 +1,42 @@ +# $Id: PKGBUILD 145909 2012-01-04 01:24:34Z eric $ +# Maintainer: Eric Bélanger + +pkgname=xine-ui +pkgver=0.99.6 +pkgrel=4 +pkgdesc="A free video player for Unix" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.xine-project.org" +depends=('xine-lib' 'curl' 'libpng' 'libxft' 'libxxf86vm' + 'xdg-utils' 'shared-mime-info' 'hicolor-icon-theme' + 'desktop-file-utils' 'lirc-utils') +makedepends=('libxt') +options=('!strip') +install=xine-ui.install +source=(http://downloads.sourceforge.net/xine/${pkgname}-${pkgver}.tar.xz + lirc-check-a89347673097.patch lirc-makefile-a68dd15ff7ae.patch + fix_lirc.diff xine-ui-xdg.diff) +sha1sums=('abbdb331898c14025ee6b132f63ab7d3c1b5b31e' + 'b2df43ede3a9d1a34b80139704a4cbbc7295c584' + '8bbd39f61de7b6991385457a4944b8ea104da88b' + '2361df9ddad59c426b0f863414c6d527b463a38a' + '9c70c6543dae6815710b239b4638ffe3843bac86') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 < "${srcdir}/lirc-check-a89347673097.patch" + patch -p1 < "${srcdir}/lirc-makefile-a68dd15ff7ae.patch" + patch -p1 < "${srcdir}/fix_lirc.diff" + patch -p1 < "${srcdir}/xine-ui-xdg.diff" + sed -i '/\#include /d' src/xitk/download.c + autoconf + ./configure --prefix=/usr --mandir=/usr/share/man \ + --with-x --enable-lirc --without-aalib --enable-debug + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" desktopdir=/usr/share/applications install +} diff --git a/staging/xine-ui/fix_lirc.diff b/staging/xine-ui/fix_lirc.diff new file mode 100644 index 000000000..93890cb5c --- /dev/null +++ b/staging/xine-ui/fix_lirc.diff @@ -0,0 +1,13 @@ +diff --git a/m4/_xine.m4 b/m4/_xine.m4 +--- a/m4/_xine.m4 ++++ b/m4/_xine.m4 +@@ -46,7 +46,8 @@ AC_DEFUN([AC_CHECK_LIRC], + fi + for llirc in $lirc_libprefix /lib /usr/lib /usr/local/lib; do + AC_CHECK_FILE(["$llirc/liblirc_client.so"], +- [LIRC_LIBS="$llirc/liblirc_client.so"] ++ [LIRC_LIBS="$llirc/liblirc_client.so" ++ found_lirc=yes] + AC_DEFINE([HAVE_LIRC],,[Define this if you have LIRC (liblirc_client) installed]), + AC_CHECK_FILE(["$llirc/liblirc_client.a"], + [LIRC_LIBS="$llirc/liblirc_client.a" diff --git a/staging/xine-ui/lirc-check-a89347673097.patch b/staging/xine-ui/lirc-check-a89347673097.patch new file mode 100644 index 000000000..c1c8d2614 --- /dev/null +++ b/staging/xine-ui/lirc-check-a89347673097.patch @@ -0,0 +1,64 @@ + +# HG changeset patch +# User Darren Salt +# Date 1268754560 0 +# Node ID a89347673097053d89675e991ab403cda04d94cd +# Parent ed3079d668ed5291d1daf7096d6b42c90ee06e11 +Resync LIRC check with gxine; no longer fails if liblircclient0.pc is missing. + +--- a/m4/_xine.m4 Sun Mar 14 18:04:46 2010 +0000 ++++ b/m4/_xine.m4 Tue Mar 16 15:49:20 2010 +0000 +@@ -25,14 +25,14 @@ + dnl + AC_DEFUN([AC_CHECK_LIRC], + [AC_ARG_ENABLE(lirc, +- [ --disable-lirc Turn off LIRC support.], +- [], enable_lirc=yes) ++ [AS_HELP_STRING([--disable-lirc], [turn off LIRC support])], ++ [given=Y], [given=N; enable_lirc=yes]) + + found_lirc=no + if test x"$enable_lirc" = xyes; then + have_lirc=yes +- PKG_CHECK_MODULES(LIRC, liblircclient0, [found_lirc=yes], []) +- if test "$LIRC_CFLAGS" != ''; then ++ PKG_CHECK_MODULES(LIRC, liblircclient0, [found_lirc=yes], [:]) ++ if test "$found_lirc" = yes; then + LIRC_INCLUDE="$LIRC_CFLAGS" + else + AC_REQUIRE_CPP +@@ -42,15 +42,20 @@ + + if test x"$LIRC_PREFIX" != "x"; then + lirc_libprefix="$LIRC_PREFIX/lib" +- LIRC_INCLUDE="-I$LIRC_PREFIX/include" ++ LIRC_INCLUDE="-I$LIRC_PREFIX/include" + fi + for llirc in $lirc_libprefix /lib /usr/lib /usr/local/lib; do +- AC_CHECK_FILE(["$llirc/liblirc_client.a"], +- [LIRC_LIBS="$llirc/liblirc_client.a" +- found_lirc=yes],,) ++ AC_CHECK_FILE(["$llirc/liblirc_client.so"], ++ [LIRC_LIBS="$llirc/liblirc_client.so"] ++ AC_DEFINE([HAVE_LIRC],,[Define this if you have LIRC (liblirc_client) installed]), ++ AC_CHECK_FILE(["$llirc/liblirc_client.a"], ++ [LIRC_LIBS="$llirc/liblirc_client.a" ++ found_lirc=yes],,) ++ ) + done + else +- AC_MSG_RESULT([*** LIRC client support not available, LIRC support will be disabled ***]); ++ test $given = Y && AC_MSG_ERROR([LIRC client support requested but not available]) ++ AC_MSG_RESULT([*** LIRC client support not available, LIRC support will be disabled ***]) + fi + fi + fi +@@ -59,7 +64,6 @@ + fi + AC_SUBST(LIRC_LIBS) + AC_SUBST(LIRC_INCLUDE) +- AM_CONDITIONAL([HAVE_LIRC], [test "x$have_lirc" = "xyes"]) + ]) + + dnl AC_C_ATTRIBUTE_ALIGNED + diff --git a/staging/xine-ui/lirc-makefile-a68dd15ff7ae.patch b/staging/xine-ui/lirc-makefile-a68dd15ff7ae.patch new file mode 100644 index 000000000..daad4f03a --- /dev/null +++ b/staging/xine-ui/lirc-makefile-a68dd15ff7ae.patch @@ -0,0 +1,19 @@ + +# HG changeset patch +# User Darren Salt +# Date 1268758696 0 +# Node ID a68dd15ff7ae4be65c2ace25ef66966d7c272514 +# Parent 882c464d4a650d09da37ade366face74452c1897 +Restore definition of HAVE_LIRC for use in makefiles. + +--- a/m4/_xine.m4 Mon Mar 15 12:03:01 2010 -0700 ++++ b/m4/_xine.m4 Tue Mar 16 16:58:16 2010 +0000 +@@ -62,6 +62,7 @@ + if test "$found_lirc" = yes; then + AC_DEFINE([HAVE_LIRC],,[Define this if you have LIRC (liblirc_client) installed]) + fi ++ AM_CONDITIONAL([HAVE_LIRC], [test "$found_lirc" = yes]) + AC_SUBST(LIRC_LIBS) + AC_SUBST(LIRC_INCLUDE) + ]) + diff --git a/staging/xine-ui/xine-ui-xdg.diff b/staging/xine-ui/xine-ui-xdg.diff new file mode 100644 index 000000000..959d674b2 --- /dev/null +++ b/staging/xine-ui/xine-ui-xdg.diff @@ -0,0 +1,206 @@ +--- xine-ui-0.99.6.orig/src/xitk/common.h ++++ xine-ui-0.99.6/src/xitk/common.h +@@ -331,6 +331,5 @@ typedef struct { + int use_root_window; + + int ssaver_enabled; +- int ssaver_timeout; + + int skip_by_chapter; +--- xine-ui-0.99.6.orig/src/xitk/main.c ++++ xine-ui-0.99.6/src/xitk/main.c +@@ -1383,6 +1383,8 @@ int main(int argc, char *argv[]) { + if (sigprocmask (SIG_BLOCK, &vo_mask, NULL)) + fprintf (stderr, "sigprocmask() failed.\n"); + ++ signal(SIGCHLD, SIG_IGN); ++ + gGui = (gGui_t *) calloc(1, sizeof(gGui_t)); + + gGui->stream = NULL; +--- xine-ui-0.99.6.orig/src/xitk/panel.c ++++ xine-ui-0.99.6/src/xitk/panel.c +@@ -356,7 +356,6 @@ void panel_update_runtime_display(void) + * Update slider thread. + */ + static void *slider_loop(void *dummy) { +- int screensaver_timer = 0; + int status, speed; + int pos, secs; + int i = 0; +@@ -441,20 +440,7 @@ static void *slider_loop(void *dummy) { + else + video_window_set_mrl((char *)gGui->mmk.mrl); + +- if(!xitk_is_window_iconified(gGui->video_display, gGui->video_window)) { +- +- if(gGui->ssaver_timeout) { +- +- if(!(i % 2)) +- screensaver_timer++; +- +- if(screensaver_timer >= gGui->ssaver_timeout) { +- screensaver_timer = 0; +- video_window_reset_ssaver(); +- +- } +- } +- } ++ video_window_suspend_ssaver(!xitk_is_window_iconified(gGui->video_display, gGui->video_window)); + + if(gGui->logo_mode == 0) { + +@@ -494,6 +480,8 @@ static void *slider_loop(void *dummy) { + stream_infos_update_infos(); + + } ++ } else { ++ video_window_suspend_ssaver(0); + } + } + +--- xine-ui-0.99.6.orig/src/xitk/videowin.c ++++ xine-ui-0.99.6/src/xitk/videowin.c +@@ -1087,6 +1087,9 @@ static void video_window_adapt_size (voi + + /* The old window should be destroyed now */ + if(old_video_window != None) { ++ /* Screensaver control is tied to our window id */ ++ video_window_suspend_ssaver(0); ++ + XDestroyWindow(gGui->video_display, old_video_window); + + if(gGui->cursor_grabbed) +@@ -2261,69 +2264,34 @@ static void video_window_handle_event (X + + } + +-void video_window_reset_ssaver(void) { ++void video_window_suspend_ssaver(int do_suspend) { ++ static int was_suspended; + +- if(gGui->ssaver_enabled && (xitk_get_last_keypressed_time() >= (long int) gGui->ssaver_timeout)) { ++ do_suspend = do_suspend && gGui->ssaver_enabled; + +-#ifdef HAVE_XTESTEXTENSION +- if(gVw.have_xtest == True) { +- +- gVw.fake_key_cur++; +- +- if(gVw.fake_key_cur >= 2) +- gVw.fake_key_cur = 0; +- +- XLockDisplay(gGui->video_display); +- XTestFakeKeyEvent(gGui->video_display, gVw.fake_keys[gVw.fake_key_cur], True, CurrentTime); +- XTestFakeKeyEvent(gGui->video_display, gVw.fake_keys[gVw.fake_key_cur], False, CurrentTime); +- XSync(gGui->video_display, False); +- XUnlockDisplay(gGui->video_display); ++ if(was_suspended != do_suspend) { ++ if(fork() == 0) { ++ char window_id[30]; ++ char *args[] = { "xdg-screensaver", NULL, window_id, NULL }; ++ int fd; ++ ++ for(fd = 3; fd < 256; fd++) ++ close(fd); ++ ++ args[1] = do_suspend ? "suspend" : "resume"; ++ sprintf(window_id, "%lu", (unsigned long)gGui->video_window); ++ execvp(args[0], args); ++ _exit(0); + } +- else +-#endif +- { +- /* Reset the gnome screensaver. Look up the command in PATH only once to save time, */ +- /* assuming its location and permission will not change during run time of xine-ui. */ +- { +- static char *const gssaver_args[] = { "gnome-screensaver-command", "--poke", NULL }; +- static char *gssaver_path = NULL; +- +- if(!gssaver_path) { +- char *path = getenv("PATH"); +- +- if(!path) +- path = "/usr/local/bin:/usr/bin"; +- do { +- char *p, *pbuf; +- int plen; +- +- for(p = path; *path && *path != ':'; path++) +- ; +- if(p == path) +- plen = 1, p = "."; +- else +- plen = path - p; +- asprintf(&pbuf, "%.*s/%s", plen, p, gssaver_args[0]); +- if ( access(pbuf, X_OK) ) { +- free(pbuf); +- gssaver_path = ""; +- } else +- gssaver_path = pbuf; +- } while(!gssaver_path[0] && *path++); +- } +- if(gssaver_path[0] && (fork() == 0)) { +- execv(gssaver_path, gssaver_args); +- exit(0); +- } +- } + +- XLockDisplay(gGui->video_display); +- XResetScreenSaver(gGui->video_display); +- XUnlockDisplay(gGui->video_display); +- } ++ was_suspended = do_suspend; + } + } + ++void video_window_reset_ssaver(void) { ++ video_window_suspend_ssaver(1); ++} ++ + void video_window_get_frame_size(int *w, int *h) { + if(w) + *w = gVw.frame_width; +--- xine-ui-0.99.6.orig/src/xitk/videowin.h ++++ xine-ui-0.99.6/src/xitk/videowin.h +@@ -81,6 +81,7 @@ void video_window_get_mag (float *xmag, + void video_window_update_logo(void); + void video_window_change_skins(int); + ++void video_window_suspend_ssaver(int do_suspend); + void video_window_reset_ssaver(void); + + void video_window_get_frame_size(int *w, int *h); +--- xine-ui-0.99.6.orig/src/xitk/event.c ++++ xine-ui-0.99.6/src/xitk/event.c +@@ -135,9 +135,6 @@ static void skip_by_chapter_cb(void *dat + gGui->skip_by_chapter = cfg->num_value; + panel_update_nextprev_tips(); + } +-static void ssaver_timeout_cb(void *data, xine_cfg_entry_t *cfg) { +- gGui->ssaver_timeout = cfg->num_value; +-} + + static void visual_anim_cb(void *data, xine_cfg_entry_t *cfg) { + +@@ -1614,14 +1611,6 @@ void gui_init (int nfiles, char *filenam + snapshot_loc_cb, + CONFIG_NO_DATA); + +- gGui->ssaver_timeout = +- xine_config_register_num (__xineui_global_xine_instance, "gui.screensaver_timeout", 10, +- _("Screensaver reset interval (s)"), +- _("Time, in seconds, between two faked events to keep a screensaver quiet, 0 to disable."), +- CONFIG_LEVEL_ADV, +- ssaver_timeout_cb, +- CONFIG_NO_DATA); +- + gGui->skip_by_chapter = + xine_config_register_bool (__xineui_global_xine_instance, "gui.skip_by_chapter", 1, + _("Chapter hopping"), + + + + + diff --git a/staging/xine-ui/xine-ui.install b/staging/xine-ui/xine-ui.install new file mode 100644 index 000000000..3b3aff7d9 --- /dev/null +++ b/staging/xine-ui/xine-ui.install @@ -0,0 +1,13 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} -- cgit v1.2.3-54-g00ecf