diff options
author | root <root@rshg054.dnsready.net> | 2012-05-26 00:02:35 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-05-26 00:02:35 +0000 |
commit | a5721a07196cf00c26ea1bfb651aab756d202ccb (patch) | |
tree | b60f984dd22f98544c8d2fd9526cc24dea3dcd25 /staging | |
parent | aa30737839de3c2a4a1287442cb9859414fb4b0a (diff) |
Sat May 26 00:02:35 UTC 2012
Diffstat (limited to 'staging')
36 files changed, 1913 insertions, 0 deletions
diff --git a/staging/graphviz/LICENSE b/staging/graphviz/LICENSE new file mode 100644 index 000000000..16cc69a52 --- /dev/null +++ b/staging/graphviz/LICENSE @@ -0,0 +1,87 @@ +Eclipse Public License - v 1.0 + +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + +1. DEFINITIONS + +"Contribution" means: + +a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and + +b) in the case of each subsequent Contributor: + +i) changes to the Program, and + +ii) additions to the Program; + +where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program. + +"Contributor" means any person or entity that distributes the Program. + +"Licensed Patents" mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program. + +"Program" means the Contributions distributed in accordance with this Agreement. + +"Recipient" means anyone who receives the Program under this Agreement, including all Contributors. + +2. GRANT OF RIGHTS + +a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form. + +b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder. + +c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program. + +d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. + +3. REQUIREMENTS + +A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that: + +a) it complies with the terms and conditions of this Agreement; and + +b) its license agreement: + +i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose; + +ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits; + +iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and + +iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange. + +When the Program is made available in source code form: + +a) it must be made available under this Agreement; and + +b) a copy of this Agreement must be included with each copy of the Program. + +Contributors may not remove or alter any copyright notices contained within the Program. + +Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution. + +4. COMMERCIAL DISTRIBUTION + +Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense. + +For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages. + +5. NO WARRANTY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations. + +6. DISCLAIMER OF LIABILITY + +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +7. GENERAL + +If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. + +If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed. + +All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive. + +Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. + +This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation. diff --git a/staging/graphviz/PKGBUILD b/staging/graphviz/PKGBUILD new file mode 100644 index 000000000..0803f3ae3 --- /dev/null +++ b/staging/graphviz/PKGBUILD @@ -0,0 +1,55 @@ +# $Id: PKGBUILD 159450 2012-05-24 13:08:54Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: kevin <kevin@archlinux.org> +# Contributor: John Proctor <jproctor@prium.net> + +pkgname=graphviz +pkgver=2.28.0 +pkgrel=10 +pkgdesc='Graph visualization software' +url='http://www.graphviz.org/' +license=('custom:EPL') +arch=('i686' 'x86_64') +depends=('libltdl' 'gd' 'librsvg' 'libxaw' 'ghostscript' 'pango' 'gts') +makedepends=('swig' 'mono' 'guile' 'lua' 'ocaml' 'perl' 'php' 'python2' 'r' 'ruby' 'tk' 'qt') +optdepends=('mono: sharp bindings' + 'guile: guile bindings' + 'lua: lua bindings' + 'ocaml: ocaml bindings' + 'perl: perl bindings' + 'php: php bindings' + 'python2: python bindings' + 'r: r bindings' + 'ruby: ruby bindings' + 'tcl: tcl bindings' + 'qt: gvedit') +source=("${url}/pub/${pkgname}/stable/SOURCES/${pkgname}-${pkgver}.tar.gz" + 'LICENSE') +sha1sums=('4725d88a13e071ee22e632de551d4a55ca08ee7d' + 'e78277e502c29abb74b9587a5dc951ec392554ea') + +options=('!libtool') +install=install + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + sed \ + -e '/"archdir"/s:$:+" '"$(echo -I/usr/include/ruby-1.9.1/{$CARCH-linux,ruby/backward,})"'":' \ + -e '/CONFIG/s:site:vendor:' \ + -i config/config_ruby.rb + + sed '/LIBPOSTFIX="64"/d' -i configure + export PYTHON=python2 + + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + # cf. http://www.graphviz.org/License.php + install -Dm644 ../LICENSE "${pkgdir}"/usr/share/licenses/graphviz/LICENSE +} diff --git a/staging/graphviz/install b/staging/graphviz/install new file mode 100644 index 000000000..65fba522b --- /dev/null +++ b/staging/graphviz/install @@ -0,0 +1,12 @@ +post_install() { + rm -f usr/lib/graphviz/config{,6} + usr/bin/dot -c +} + +post_upgrade() { + post_install +} + +pre_remove() { + rm -f usr/lib/graphviz/config{,6} +} diff --git a/staging/imagemagick/PKGBUILD b/staging/imagemagick/PKGBUILD new file mode 100644 index 000000000..eb31432ca --- /dev/null +++ b/staging/imagemagick/PKGBUILD @@ -0,0 +1,83 @@ +# $Id: PKGBUILD 159474 2012-05-24 20:45:24Z eric $ +# Maintainer: Eric Bélanger <eric@archlinux.org> + +pkgbase=imagemagick +pkgname=('imagemagick' 'imagemagick-doc') +pkgver=6.7.7.0 +pkgrel=1 +arch=('i686' 'x86_64') +url="http://www.imagemagick.org/" +license=('custom') +makedepends=('libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'ghostscript' \ + 'openexr' 'libwmf' 'librsvg' 'libxml2' 'jasper') +source=(ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz \ + perlmagick.rpath.patch) +sha1sums=('cf60b4e9ae6a55777082c7a0b1adb59f31f0865e' + '23405f80904b1de94ebd7bd6fe2a332471b8c283') + +build() { + cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.} + + sed '/AC_PATH_XTRA/d' -i configure.ac + autoreconf --install + patch -p0 -i ../perlmagick.rpath.patch + + ./configure --prefix=/usr --sysconfdir=/etc --with-modules --disable-static \ + --enable-openmp --with-wmf --with-openexr --with-xml --with-lcms2 --with-jp2 \ + --with-gslib --with-gs-font-dir=/usr/share/fonts/Type1 \ + --with-perl --with-perl-options="INSTALLDIRS=vendor" \ + --without-gvc --without-djvu --without-autotrace --without-webp \ + --without-jbig --without-fpx --without-dps --without-fftw --without-lqr + make +} + +check() { + cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.} +# make check +} + +package_imagemagick() { + pkgdesc="An image viewing/manipulation program" + depends=('perl' 'libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext') + optdepends=('ghostscript: for Ghostscript support' + 'openexr: for OpenEXR support' + 'libwmf: for WMF support' + 'librsvg: for SVG support' + 'libxml2: for XML support' + 'jasper: for JPEG-2000 support' + 'libpng: for PNG support') + backup=('etc/ImageMagick/coder.xml' + 'etc/ImageMagick/colors.xml' + 'etc/ImageMagick/delegates.xml' + 'etc/ImageMagick/log.xml' + 'etc/ImageMagick/magic.xml' + 'etc/ImageMagick/mime.xml' + 'etc/ImageMagick/policy.xml' + 'etc/ImageMagick/quantization-table.xml' + 'etc/ImageMagick/sRGB.icc' + 'etc/ImageMagick/thresholds.xml' + 'etc/ImageMagick/type.xml' + 'etc/ImageMagick/type-dejavu.xml' + 'etc/ImageMagick/type-ghostscript.xml' + 'etc/ImageMagick/type-windows.xml') + options=('!docs' 'libtool' '!emptydirs') + + cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.} + make DESTDIR="${pkgdir}" install + chmod 755 "${pkgdir}/usr/lib/perl5/vendor_perl/auto/Image/Magick/Magick.so" + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/imagemagick/LICENSE" + install -Dm644 NOTICE "${pkgdir}/usr/share/licenses/imagemagick/NOTICE" + +#Cleaning + find "${pkgdir}" -name '*.bs' -delete + rm -f "${pkgdir}"/usr/lib/*.la +} + +package_imagemagick-doc() { + pkgdesc="The ImageMagick documentation (utilities manuals and libraries API)" + + cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.} + make DESTDIR="${pkgdir}" install-data-html + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/imagemagick-doc/LICENSE" + install -Dm644 NOTICE "${pkgdir}/usr/share/licenses/imagemagick-doc/NOTICE" +} diff --git a/staging/imagemagick/perlmagick.rpath.patch b/staging/imagemagick/perlmagick.rpath.patch new file mode 100644 index 000000000..958c0f2ee --- /dev/null +++ b/staging/imagemagick/perlmagick.rpath.patch @@ -0,0 +1,10 @@ +--- Makefile.in.orig 2009-05-26 16:22:11.000000000 -0300 ++++ Makefile.in 2009-05-26 16:23:27.000000000 -0300 +@@ -10067,6 +10067,7 @@ + + @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@$(PERLMAKEFILE): perl-sources $(PERLMAKEMAKER) + @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @PERL@ Makefile.PL $(PERL_MAKE_OPTIONS) ++@WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @SED@ -i 's|LD_RUN_PATH|DIE_LD_RUN_PATH_DIE|g' Makefile + + @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@install-exec-perl: $(MAGICKCORE_LIBS) $(MAGICKWAND_LIBS) $(PERLMAKEFILE) + @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && $(MAKE) CC='@CC@' install diff --git a/staging/irssi/PKGBUILD b/staging/irssi/PKGBUILD new file mode 100644 index 000000000..e831da8f7 --- /dev/null +++ b/staging/irssi/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 159478 2012-05-24 21:17:59Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: Dan McGee <dan@archlinux.org> + +pkgname=irssi +pkgver=0.8.15 +pkgrel=6 +pkgdesc="Modular text mode IRC client with Perl scripting" +arch=('i686' 'x86_64') +url="http://irssi.org/" +license=('GPL') +depends=('glib2' 'openssl') +optdepends=('perl-libwww: for the scriptassist script') +backup=('etc/irssi.conf') +source=("http://irssi.org/files/${pkgname}-${pkgver}.tar.bz2") +options=('!libtool') +md5sums=('1dcb3f511b88df94b0c996f36668c7da') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr \ + --enable-ipv6 \ + --with-proxy \ + --sysconfdir=/etc \ + --with-perl-lib=vendor + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install +} diff --git a/staging/kdebindings-perlkde/PKGBUILD b/staging/kdebindings-perlkde/PKGBUILD new file mode 100644 index 000000000..6d6eee696 --- /dev/null +++ b/staging/kdebindings-perlkde/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 159447 2012-05-24 12:36:20Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> + +pkgname=kdebindings-perlkde +pkgver=4.8.3 +pkgrel=2 +pkgdesc="Perl bindings for the KDE libraries" +url="http://kde.org/" +arch=('i686' 'x86_64') +license=('GPL' 'LGPL' 'FDL') +groups=('kdebindings') +depends=('kdebindings-perlqt' 'kdebindings-smokekde') +makedepends=('cmake' 'automoc4' 'kdebindings-smokegen' 'kdepimlibs' + 'kdegraphics-okular' 'kdesdk-kate') +source=("http://download.kde.org/stable/${pkgver}/src/perlkde-${pkgver}.tar.xz") +sha1sums=('bfc1c3a86789832cf7747dfc854d586d86c10a99') + +build() { + cd "${srcdir}" + mkdir build + cd build + cmake ../perlkde-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package() { + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install +} diff --git a/staging/kdebindings-perlqt/PKGBUILD b/staging/kdebindings-perlqt/PKGBUILD new file mode 100644 index 000000000..a51438507 --- /dev/null +++ b/staging/kdebindings-perlqt/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 159445 2012-05-24 12:35:46Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> + +pkgname=kdebindings-perlqt +pkgver=4.8.3 +pkgrel=2 +pkgdesc="Perl bindings for the Qt libraries" +url="http://kde.org/" +arch=('i686' 'x86_64') +license=('GPL' 'LGPL' 'FDL') +groups=('kdebindings') +depends=('kdebindings-smokeqt' 'perl-list-moreutils') +makedepends=('cmake' 'automoc4' 'kdebindings-smokegen') +source=("http://download.kde.org/stable/${pkgver}/src/perlqt-${pkgver}.tar.xz") +sha1sums=('d0d0d5da1fd9c50bd19ff2bb49d6a71a2d97759f') + +build() { + cd "${srcdir}" + mkdir build + cd build + cmake ../perlqt-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package() { + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install +} diff --git a/staging/perl-bit-vector/PKGBUILD b/staging/perl-bit-vector/PKGBUILD new file mode 100644 index 000000000..198baa3ac --- /dev/null +++ b/staging/perl-bit-vector/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 159490 2012-05-25 02:23:56Z eric $ +# Maintainer: Kevin Piche <kevin@archlinux.org> +# Contributor: K. Piche <kpiche@rogers.com> + +pkgname=perl-bit-vector +_cpanname=Bit-Vector +pkgver=7.2 +pkgrel=2 +pkgdesc='Efficient bit vector, set of integers and "big int" math library' +arch=('i686' 'x86_64') +license=('GPL' 'LGPL' 'PerlArtistic') +url="http://search.cpan.org/dist/${_cpanname}/" +depends=('perl-carp-clan' 'perl') +options=('!emptydirs') +source=(http://search.cpan.org/CPAN/authors/id/A/AN/ANDK/${_cpanname}-${pkgver}.tar.gz) +md5sums=('bc6ae34738b8f889290bf50099ff8aed') + +build() { + cd "${srcdir}/${_cpanname}-$pkgver" + # install module in vendor directories. + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "${srcdir}/${_cpanname}-$pkgver" + make test +} + +package() { + cd "${srcdir}/${_cpanname}-$pkgver" + make DESTDIR="${pkgdir}" install +} diff --git a/staging/perl-compress-bzip2/PKGBUILD b/staging/perl-compress-bzip2/PKGBUILD new file mode 100644 index 000000000..6e98cea99 --- /dev/null +++ b/staging/perl-compress-bzip2/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 159454 2012-05-24 13:49:08Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> + +pkgname=perl-compress-bzip2 +_realname=Compress-Bzip2 +pkgver=2.09 +pkgrel=5 +pkgdesc="Interface to Bzip2 compression library" +arch=(i686 x86_64) +license=(GPL2) +depends=(perl bzip2) +url="http://search.cpan.org/dist/Compress-Bzip2" +options=('!emptydirs') +source=("http://search.cpan.org/CPAN/authors/id/A/AR/ARJAY/$_realname-$pkgver.tar.gz") +md5sums=('1699fde3e86f2a036f135ae606d456bf') + +build() { + cd "$srcdir/$_realname-$pkgver" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +package() { + cd "$srcdir/$_realname-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/staging/perl-crypt-openssl-bignum/PKGBUILD b/staging/perl-crypt-openssl-bignum/PKGBUILD new file mode 100644 index 000000000..e5f881bcc --- /dev/null +++ b/staging/perl-crypt-openssl-bignum/PKGBUILD @@ -0,0 +1,36 @@ +# $Id: PKGBUILD 47483 2011-05-23 15:54:16Z tdziedzic $ +# Maintainer: Florian Pritz <bluewind@xinu.at> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> + +pkgname=perl-crypt-openssl-bignum +pkgver=0.04 +pkgrel=7 +pkgdesc="OpenSSL's multiprecision integer arithmetic " +arch=('i686' 'x86_64') +url="http://search.cpan.org/dist/Crypt-OpenSSL-Bignum" +depends=('perl' 'openssl') +license=('GPL') +options=('!emptydirs') +source=(http://www.cpan.org/authors/id/I/IR/IROBERTS/Crypt-OpenSSL-Bignum-$pkgver.tar.gz) +md5sums=('9369ef722b0705c0604998559988eb18') + +build() { + cd "$srcdir/Crypt-OpenSSL-Bignum-$pkgver" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + + +check() { + cd "$srcdir/Crypt-OpenSSL-Bignum-$pkgver" + + make test +} + +package() { + cd "$srcdir/Crypt-OpenSSL-Bignum-$pkgver" + + make pure_install doc_install DESTDIR="$pkgdir" + find "$pkgdir" -name '.packlist' -delete + find "$pkgdir" -name '*.pod' -delete +} diff --git a/staging/perl-crypt-openssl-random/PKGBUILD b/staging/perl-crypt-openssl-random/PKGBUILD new file mode 100644 index 000000000..24ebde127 --- /dev/null +++ b/staging/perl-crypt-openssl-random/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 47486 2011-05-23 15:55:23Z tdziedzic $ +# Maintainer: Florian Pritz <bluewind@xinu.at> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> + +pkgname=perl-crypt-openssl-random +pkgver=0.04 +pkgrel=7 +pkgdesc="Interface to OpenSSL PRNG methods" +arch=('i686' 'x86_64') +url="http://search.cpan.org/dist/Crypt-OpenSSL-Random" +depends=('perl' 'openssl') +license=('GPL') +options=('!emptydirs') +source=(http://www.cpan.org/authors/id/I/IR/IROBERTS/Crypt-OpenSSL-Random-$pkgver.tar.gz) +md5sums=('c56ac5dbdd46122eb9b8da59613b7b0a') + +build() { + cd "$srcdir/Crypt-OpenSSL-Random-$pkgver" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$srcdir/Crypt-OpenSSL-Random-$pkgver" + + make test +} + +package() { + cd "$srcdir/Crypt-OpenSSL-Random-$pkgver" + + make pure_install doc_install DESTDIR="$pkgdir" + find "$pkgdir" -name '.packlist' -delete + find "$pkgdir" -name '*.pod' -delete +} diff --git a/staging/perl-crypt-openssl-rsa/PKGBUILD b/staging/perl-crypt-openssl-rsa/PKGBUILD new file mode 100644 index 000000000..3a44bf936 --- /dev/null +++ b/staging/perl-crypt-openssl-rsa/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 56402 2011-10-07 09:48:12Z spupykin $ +# Maintainer: Florian Pritz <bluewind@xinu.at> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> + +pkgname=perl-crypt-openssl-rsa +pkgver=0.28 +pkgrel=3 +pkgdesc="Interface to OpenSSL RSA methods" +arch=('i686' 'x86_64') +url="http://search.cpan.org/dist/Crypt-OpenSSL-RSA" +depends=('perl-crypt-openssl-random' 'perl-crypt-openssl-bignum') +license=('GPL') +options=('!emptydirs') +source=("http://search.cpan.org/CPAN/authors/id/P/PE/PERLER/Crypt-OpenSSL-RSA-$pkgver.tar.gz") +md5sums=('86217a5036fc63779c30420b5fd84129') + +build() { + cd "$srcdir/Crypt-OpenSSL-RSA-$pkgver" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "$srcdir/Crypt-OpenSSL-RSA-$pkgver" + + make test +} + +package() { + cd "$srcdir/Crypt-OpenSSL-RSA-$pkgver" + make pure_install doc_install DESTDIR="$pkgdir" + find "$pkgdir" -name '.packlist' -delete + find "$pkgdir" -name '*.pod' -delete +} diff --git a/staging/perl-crypt-ssleay/PKGBUILD b/staging/perl-crypt-ssleay/PKGBUILD new file mode 100644 index 000000000..1f5842c4a --- /dev/null +++ b/staging/perl-crypt-ssleay/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 159482 2012-05-24 21:26:53Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: François Charette <firmicus ατ gmx δοτ net> + +pkgname=perl-crypt-ssleay +pkgver=0.58 +pkgrel=4 +pkgdesc="OpenSSL glue that provides LWP https support" +arch=('i686' 'x86_64') +url="http://search.cpan.org/dist/Crypt-SSLeay" +license=('GPL' 'PerlArtistic') +depends=('openssl') +options=('!emptydirs') +source=(http://www.cpan.org/CPAN/authors/id/N/NA/NANIS/Crypt-SSLeay-$pkgver.tar.gz) +md5sums=('fbf3d12e58462cee00ea63239c0b13c7') + +build() { + cd "${srcdir}/Crypt-SSLeay-${pkgver}" + + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make + make test +} + +package() { + cd "${srcdir}/Crypt-SSLeay-${pkgver}" + make install DESTDIR="${pkgdir}" + + find ${pkgdir} -name '.packlist' -delete + find ${pkgdir} -name '*.pod' -delete +} diff --git a/staging/perl-dbd-mysql/PKGBUILD b/staging/perl-dbd-mysql/PKGBUILD new file mode 100644 index 000000000..471b3b7a6 --- /dev/null +++ b/staging/perl-dbd-mysql/PKGBUILD @@ -0,0 +1,45 @@ +# $Id: PKGBUILD 159494 2012-05-25 03:17:36Z eric $ +# Maintainer: kevin <kevin@archlinux.org> +# Contributor: Eric Johnson <eric@coding-zone.com> + +pkgname=perl-dbd-mysql +_realname=DBD-mysql +pkgver=4.020 +pkgrel=3 +pkgdesc="Perl/CPAN DBD::mysql module for interacting with MySQL via DBD" +arch=(i686 x86_64) +license=('GPL' 'PerlArtistic') +url="http://search.cpan.org/dist/${_realname}/" +depends=('libmysqlclient' 'perl-dbi' 'perl>=5.14.0') +makedepends=('mysql') +options=(!emptydirs) +source=(http://search.cpan.org/CPAN/authors/id/C/CA/CAPTTOFU/${_realname}-${pkgver}.tar.gz) +md5sums=('a2bf8808bbd45298e84dde06afbd58e9') + +build() { + cd "${srcdir}/${_realname}-${pkgver}" + + # install module in vendor directories. + perl Makefile.PL INSTALLDIRS=vendor --testsocket=/tmp/socket.mysql + make +} + +check() { + cd "${srcdir}/${_realname}-${pkgver}" + mkdir -p /tmp/mysql_test + mysql_install_db \ + --basedir=/usr \ + --datadir=/tmp/mysql_test + mysqld -P 17999 \ + --socket=/tmp/socket.mysql \ + --datadir=/tmp/mysql_test & + sleep 10 + DAEMON_PORT=$! + make test || true + kill -9 $DAEMON_PORT +} + +package() { + cd "${srcdir}/${_realname}-${pkgver}" + make install DESTDIR="${pkgdir}" +} diff --git a/staging/perl-dbi/PKGBUILD b/staging/perl-dbi/PKGBUILD new file mode 100644 index 000000000..a6f8b2444 --- /dev/null +++ b/staging/perl-dbi/PKGBUILD @@ -0,0 +1,36 @@ +# $Id: PKGBUILD 159492 2012-05-25 02:52:01Z eric $ +# Maintainer: kevin <kevin@archlinux.org> +# Contributor: Matt Thompson <mattt@defunct.ca> + +pkgname=perl-dbi +_realname=DBI +pkgver=1.618 +pkgrel=2 +pkgdesc="Database independent interface for Perl" +arch=('i686' 'x86_64') +license=('GPL' 'PerlArtistic') +url="http://search.cpan.org/dist/${_realname}/" +depends=('perl') +options=('!emptydirs') +source=(http://www.cpan.org/authors/id/T/TI/TIMB/${_realname}-${pkgver}.tar.gz) +md5sums=('5ad29b56f7457f22bd1ca1c871b30719') + +build() { + cd "${srcdir}/${_realname}-${pkgver}" + + # install module in vendor directories. + perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "${srcdir}/${_realname}-${pkgver}" + make test +} + +package() { + cd "${srcdir}/${_realname}-${pkgver}" + make install DESTDIR="${pkgdir}" +} + +# vim: ts=2 sw=2 et ft=sh diff --git a/staging/perl-fcgi/PKGBUILD b/staging/perl-fcgi/PKGBUILD new file mode 100644 index 000000000..320844d7e --- /dev/null +++ b/staging/perl-fcgi/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 159484 2012-05-24 21:30:37Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: François Charette <firmicus ατ gmx δοτ net> + +pkgname=perl-fcgi +pkgver=0.74 +pkgrel=3 +pkgdesc="Fast CGI" +arch=('i686' 'x86_64') +url="http://search.cpan.org/dist/FCGI" +license=('GPL' 'PerlArtistic') +depends=('perl') +options=('!emptydirs') +source=("http://www.cpan.org/CPAN/authors/id/F/FL/FLORA/FCGI-${pkgver}.tar.gz") +md5sums=('462a77a0072480fea791a4d3095eb486') + +build() { + cd "${srcdir}/FCGI-${pkgver}" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "${srcdir}/FCGI-${pkgver}" + make test +} + +package() { + cd "${srcdir}/FCGI-${pkgver}" + make install DESTDIR="${pkgdir}" +} diff --git a/staging/perl-locale-gettext/PKGBUILD b/staging/perl-locale-gettext/PKGBUILD new file mode 100644 index 000000000..cb0d8bc3b --- /dev/null +++ b/staging/perl-locale-gettext/PKGBUILD @@ -0,0 +1,43 @@ +# $Id: PKGBUILD 159486 2012-05-24 21:34:25Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: Mark Rosenstand <mark@borkware.net> +# Contributor: Paul Mattal <paul@archlinux.org> + +pkgname=perl-locale-gettext +_realname=gettext +pkgver=1.05 +pkgrel=9 +pkgdesc="Permits access from Perl to the gettext() family of functions" +arch=('i686' 'x86_64') +license=('GPL' 'PerlArtistic') +url="http://search.cpan.org/dist/${_realname}/" +depends=('gettext' 'perl') +options=(!emptydirs) +source=("http://search.cpan.org/CPAN/authors/id/P/PV/PVANDRY/${_realname}-${pkgver}.tar.gz" + 'compatibility-with-POSIX-module.patch') +md5sums=('f3d3f474a1458f37174c410dfef61a46' + '854302f34d01a2f8ae739187788973dd') + +build() { + cd "${srcdir}/${_realname}-${pkgver}" + + patch -Np1 -i ${srcdir}/compatibility-with-POSIX-module.patch + # install module in vendor directories. + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make +} + +check() { + cd "${srcdir}/${_realname}-${pkgver}" + + make test +} + +package() { + cd "${srcdir}/${_realname}-${pkgver}" + make install DESTDIR="${pkgdir}" + + # remove perllocal.pod and .packlist + find "${pkgdir}" -name perllocal.pod -delete + find "${pkgdir}" -name .packlist -delete +} diff --git a/staging/perl-locale-gettext/compatibility-with-POSIX-module.patch b/staging/perl-locale-gettext/compatibility-with-POSIX-module.patch new file mode 100644 index 000000000..ad675516b --- /dev/null +++ b/staging/perl-locale-gettext/compatibility-with-POSIX-module.patch @@ -0,0 +1,10 @@ +--- a/gettext.pm 2005-05-31 20:11:16.000000000 -0700 ++++ b/gettext.pm 2009-10-07 12:39:42.000000000 -0700 +@@ -32,6 +32,7 @@ + =cut + + use Carp; ++use POSIX qw(:locale_h); + + require Exporter; + require DynaLoader; diff --git a/staging/perl-net-ssleay/PKGBUILD b/staging/perl-net-ssleay/PKGBUILD new file mode 100644 index 000000000..78733dbbd --- /dev/null +++ b/staging/perl-net-ssleay/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 159480 2012-05-24 21:23:03Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: Manolis Tzanidakis + +pkgname=perl-net-ssleay +_cpanname=Net-SSLeay +pkgver=1.48 +pkgrel=2 +pkgdesc="Perl extension for using OpenSSL" +arch=('i686' 'x86_64') +license=('custom:BSD') +url="http://search.cpan.org/dist/${_cpanname}/" +depends=('openssl') +options=(!emptydirs) +replaces=('net-ssleay') +provides=('net-ssleay') +source=("http://www.cpan.org/authors/id/M/MI/MIKEM/${_cpanname}-${pkgver}.tar.gz") +md5sums=('4e10d9da28f26732e37807820bf72af5') + +build() { + cd ${srcdir}/${_cpanname}-${pkgver} + + # install module in vendor directories. + PERL_MM_USE_DEFAULT=1 perl Makefile.PL -- INSTALLDIRS=vendor + make +} + +package() { + cd ${srcdir}/${_cpanname}-${pkgver} + + make install DESTDIR=${pkgdir} + + # remove perllocal.pod and .packlist + find ${pkgdir} -name perllocal.pod -delete + find ${pkgdir} -name .packlist -delete + + install -D -m644 README "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/staging/perl-time-hires/PKGBUILD b/staging/perl-time-hires/PKGBUILD new file mode 100644 index 000000000..d0e8d638f --- /dev/null +++ b/staging/perl-time-hires/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 159488 2012-05-24 21:38:51Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: mezcal <fila at pruda dot com> + +pkgname=perl-time-hires +pkgver=1.9725 +pkgrel=2 +pkgdesc="Perl module: high resolution time, sleep, and alarm" +arch=('i686' 'x86_64') +license=('PerlArtistic') +url="http://search.cpan.org/dist/Time-HiRes/" +depends=('perl') +options=(!emptydirs) +source=("http://search.cpan.org/CPAN/authors/id/Z/ZE/ZEFRAM/Time-HiRes-${pkgver}.tar.gz") +md5sums=('cb1108c076d26f3d2fed0bb91313135a') + +build() { + cd "${srcdir}/Time-HiRes-${pkgver}" + + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + + make +} + +check() { + cd "${srcdir}/Time-HiRes-${pkgver}" + + make test +} + +package() { + cd "${srcdir}/Time-HiRes-${pkgver}" + + make install DESTDIR="${pkgdir}" +} 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 <ntyni@debian.org> +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 <angvp@archlinux.org> + * 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 <angvp@archlinux.org> + * Fixed #FS24660 + * Rebuilt against db 5.2.28 + +2011-05-16 Angel Velasquez <angvp@archlinux.org> + * 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 <kevin@archlinux.org> + + * perl 5.12.2-1 + - Using /usr/bin/*_perl for script directories + +2010-11-06 kevin <kevin@archlinux.org> + + - 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 <kevin@archlinux.org> + + * perl 5.12.1-2 + - Francois updated the provides array. + +2010-05-23 kevin <kevin@archlinux.org> + + * perl 5.12.1-1 + +2010-05-16 kevin <kevin@archlinux.org> + + * perl 5.12.0-2 + +2010-05-12 kevin <kevin@archlinux.org> + + - 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 <kevin@archlinux.org> + + * 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 <kevin@archlinux.org> + + - 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..4204a4983 --- /dev/null +++ b/staging/perl/PKGBUILD @@ -0,0 +1,116 @@ +# $Id: PKGBUILD 159441 2012-05-24 12:05:52Z bluewind $ +# Maintainer: Angel Velasquez <angvp@archlinux.org> +# Contributor: kevin <kevin.archlinux.org> +# Contributor: judd <jvinet.zeroflux.org> +# Contributor: francois <francois.archlinux.org> +pkgname=perl +pkgver=5.16.0 +pkgrel=2 +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) +install=perl.install +options=('makeflags' '!purge') +md5sums=('15a2f95fb27231e10998240f13acf961' + '5ed2542fdb9a60682f215bd33701e61a' + '1f0cbbee783e8a6d32f01be5118e0d5e' + '999c3eea6464860704abbb055a0f0896') + +# workaround to let the integrity check find the correct provides array +if [[ ${0##*/} = "parse_pkgbuilds.sh" ]]; then + true && provides=($(bsdtar -q -O -xf "/srv/ftp/pool/packages/$pkgname-$pkgver-$pkgrel-$CARCH.pkg.tar.xz" .PKGINFO | sed -rn 's#^provides = (.*)#\1#p')) +fi + +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}" + 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 +} diff --git a/staging/perl/digest_eval_hole.diff b/staging/perl/digest_eval_hole.diff new file mode 100644 index 000000000..47904137b --- /dev/null +++ b/staging/perl/digest_eval_hole.diff @@ -0,0 +1,61 @@ +From 4b6a7324284e7435a361c58f7ddb32fc0c635bd0 Mon Sep 17 00:00:00 2001 +From: "Michael G. Schwern" <schwern@pobox.com> +Date: Mon, 3 Oct 2011 19:05:29 +0100 +Subject: Close the eval "require $module" security hole in + Digest->new($algorithm) + +Also the filter was incomplete. + +Bug-Debian: http://bugs.debian.org/644108 + +Patch-Name: fixes/digest_eval_hole.diff +--- + cpan/Digest/Digest.pm | 6 ++++-- + cpan/Digest/t/security.t | 14 ++++++++++++++ + 2 files changed, 18 insertions(+), 2 deletions(-) + create mode 100644 cpan/Digest/t/security.t + +diff --git a/cpan/Digest/Digest.pm b/cpan/Digest/Digest.pm +index 384dfc8..d714434 100644 +--- a/cpan/Digest/Digest.pm ++++ b/cpan/Digest/Digest.pm +@@ -24,7 +24,7 @@ sub new + shift; # class ignored + my $algorithm = shift; + my $impl = $MMAP{$algorithm} || do { +- $algorithm =~ s/\W+//; ++ $algorithm =~ s/\W+//g; + "Digest::$algorithm"; + }; + $impl = [$impl] unless ref($impl); +@@ -35,7 +35,9 @@ sub new + ($class, @args) = @$class if ref($class); + no strict 'refs'; + unless (exists ${"$class\::"}{"VERSION"}) { +- eval "require $class"; ++ my $pm_file = $class . ".pm"; ++ $pm_file =~ s{::}{/}g; ++ eval { require $pm_file }; + if ($@) { + $err ||= $@; + next; +diff --git a/cpan/Digest/t/security.t b/cpan/Digest/t/security.t +new file mode 100644 +index 0000000..5cba122 +--- /dev/null ++++ b/cpan/Digest/t/security.t +@@ -0,0 +1,14 @@ ++#!/usr/bin/env perl ++ ++# Digest->new() had an exploitable eval ++ ++use strict; ++use warnings; ++ ++use Test::More tests => 1; ++ ++use Digest; ++ ++$LOL::PWNED = 0; ++eval { Digest->new(q[MD;5;$LOL::PWNED = 42]) }; ++is $LOL::PWNED, 0; 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 <rmbarker@cpan.org> +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 <<DEFINE; ++unless (defined &$macro) { sub $macro(\$) { my (\$$arg) = \@_; \"$def\" } } ++ ++DEFINE ++ } elsif ++ ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { + # float: + print PREAMBLE + "unless (defined &$_) { sub $_() { $1 } }\n\n"; +@@ -807,8 +819,14 @@ sub build_preamble_if_necessary + print PREAMBLE + "unless (defined &$_) { sub $_() { $1 } }\n\n"; + } elsif ($define{$_} =~ /^\w+$/) { +- print PREAMBLE +- "unless (defined &$_) { sub $_() { &$define{$_} } }\n\n"; ++ my $def = $define{$_}; ++ if ($isatype{$def}) { ++ print PREAMBLE ++ "unless (defined &$_) { sub $_() { \"$def\" } }\n\n"; ++ } else { ++ print PREAMBLE ++ "unless (defined &$_) { sub $_() { &$def } }\n\n"; ++ } + } else { + print PREAMBLE + "unless (defined &$_) { sub $_() { \"", +-- +1.6.5.2.74.g610f9.dirty + diff --git a/staging/perl/perl.install b/staging/perl/perl.install new file mode 100644 index 000000000..a355c5bbe --- /dev/null +++ b/staging/perl/perl.install @@ -0,0 +1,10 @@ +# arg 1: the new package version +post_install() { + for ver in 5.8.{0,1,2,3,4,5,6,7,8}; do + [ -h usr/lib/perl5/$ver ] && rm usr/lib/perl5/$ver + [ -h usr/lib/perl5/site_perl/$ver ] && rm usr/lib/perl5/site_perl/$ver + [ -h usr/bin/perl$ver ] && rm usr/bin/perl$ver + done + return 0 +} + diff --git a/staging/perl/perlbin.csh b/staging/perl/perlbin.csh new file mode 100644 index 000000000..535f0b18d --- /dev/null +++ b/staging/perl/perlbin.csh @@ -0,0 +1,15 @@ +# Set path to perl scriptdirs if they exist +# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts +# Added /usr/bin/*_perl dirs for scripts +# Remove /usr/lib/perl5/*_perl/bin in next release + +[ -d /usr/bin/site_perl ] && setenv PATH ${PATH}:/usr/bin/site_perl +[ -d /usr/lib/perl5/site_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/site_perl/bin + +[ -d /usr/bin/vendor_perl ] && setenv PATH ${PATH}:/usr/bin/vendor_perl +[ -d /usr/lib/perl5/vendor_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/vendor_perl/bin + +[ -d /usr/bin/core_perl ] && setenv PATH ${PATH}:/usr/bin/core_perl + +# If you have modules in non-standard directories you can add them here. +#export PERLLIB=dir1:dir2 diff --git a/staging/perl/perlbin.sh b/staging/perl/perlbin.sh new file mode 100755 index 000000000..20f830436 --- /dev/null +++ b/staging/perl/perlbin.sh @@ -0,0 +1,18 @@ +# Set path to perl scriptdirs if they exist +# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts +# Added /usr/bin/*_perl dirs for scripts +# Remove /usr/lib/perl5/*_perl/bin in next release + +[ -d /usr/bin/site_perl ] && PATH=$PATH:/usr/bin/site_perl +[ -d /usr/lib/perl5/site_perl/bin ] && PATH=$PATH:/usr/lib/perl5/site_perl/bin + +[ -d /usr/bin/vendor_perl ] && PATH=$PATH:/usr/bin/vendor_perl +[ -d /usr/lib/perl5/vendor_perl/bin ] && PATH=$PATH:/usr/lib/perl5/vendor_perl/bin + +[ -d /usr/bin/core_perl ] && PATH=$PATH:/usr/bin/core_perl + +export PATH + +# If you have modules in non-standard directories you can add them here. +#export PERLLIB=dir1:dir2 + diff --git a/staging/perl/provides.pl b/staging/perl/provides.pl new file mode 100644 index 000000000..d2cdc762e --- /dev/null +++ b/staging/perl/provides.pl @@ -0,0 +1,299 @@ +# provides.pl +## +# Script for printing out a provides list of every CPAN distribution +# that is bundled with perl. You can run it before building perl +# or you can run it after building perl. Required modules are in core +# for perl 5.13 and above. It might be nice if this didn't require +# HTTP::Tiny and maybe just used wget or curl. +# +# This script uses HTTP::Tiny to query Tatsuhiko Miyagawa's webapp at +# cpanmetadb.plackperl.org to cross-reference module files to their +# providing CPAN distribution. Thank you Miyagawa! +# +# - Justin "juster" Davis <jrcd83@gmail.com> + +use warnings 'FATAL' => 'all'; +use strict; + +package Common; + +sub evalver +{ + my ($path, $mod) = @_; + + open my $fh, '<', $path or die "open $path: $!"; + + my $m = ($mod + ? qr/(?:\$${mod}::VERSION|\$VERSION)/ + : qr/\$VERSION/); + + while (my $ln = <$fh>) { + next unless $ln =~ /\s*$m\s*=\s*.+/; + chomp $ln; + my $ver = do { no strict; eval $ln }; + return $ver unless $@; + die qq{$path:$. bad version string in "$ln"\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.plackperl.org/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/; + return if m{\Q$libdir\E[^/]+/t/}; # ignore testing modules + 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, $mod) || 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/vim/PKGBUILD b/staging/vim/PKGBUILD new file mode 100644 index 000000000..7545d062e --- /dev/null +++ b/staging/vim/PKGBUILD @@ -0,0 +1,216 @@ +# $Id: PKGBUILD 159453 2012-05-24 13:34:26Z tdziedzic $ +# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> +# Maintainer: tobias [ tobias at archlinux org ] +# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> + +pkgbase=vim +pkgname=('vim' 'gvim' 'vim-runtime') +_topver=7.3 +_patchlevel=515 +__hgrev=8201108e9cf0 +_versiondir="vim${_topver//./}" +pkgver=${_topver}.${_patchlevel} +pkgrel=2 +arch=('i686' 'x86_64') +license=('custom:vim') +url="http://www.vim.org" +makedepends=('gpm' 'python2' 'ruby' 'libxt' 'desktop-file-utils' 'gtk2' 'lua') +source=("ftp://ftp.archlinux.org/other/vim/vim-${pkgver}.tar.xz" + "ftp://ftp.archlinux.org/other/vim/vim-${pkgver}.tar.xz.sig" + 'pythoncomplete.vim::http://www.vim.org/scripts/download_script.php?src_id=10872' + 'vimrc' + 'archlinux.vim' + 'gvim.desktop') +sha1sums=('10d7642d5062effdb51f53952622f9338003bbbf' + '0c1c584c1a2a2a279507f793cd5eff82863c625b' + '4d9dcfb32874aa5467e6f06e418aeb4e675daaf2' + '3494baf53a63581ba69f86a81293640ff681c5c5' + '25dd3c2ce436e73a367c8f73b68f7f6889682437' + '4a579cf66590d711f49c5dfb4a25e5df116ff7ba') + +# source PKGBUILD && mksource +mksource() { + + [[ -x /usr/bin/hg ]] || (echo "hg not found. Install mercurial." && return 1) + + __hgroot='http://vim.googlecode.com/hg/' + __hgrepo='vim' + __hgbranch='default' + + hg clone -b ${__hgbranch} -u ${__hgrev} "${__hgroot}${__hgrepo}" ${__hgrepo} + + pushd ${__hgrepo} + if (( $(hg id -n) < $(hg id -nr ${__hgbranch}) )); then + printf 'You are not building the latest revision!\n' + printf "Consider updating __hgrev to $(hg id -r ${__hgbranch}).\n" + fi + popd + + mv vim ${pkgname}-${pkgver} + find ${pkgname}-${pkgver} -depth -type d -name .hg -exec rm -rf {} \; + rm ${pkgname}-${pkgver}/{.hgignore,.hgtags} + tar -cJf ${pkgname}-${pkgver}.tar.xz ${pkgname}-${pkgver}/* + rm -r ${pkgname}-${pkgver} + #gpg --detach-sign --use-agent -u ${GPGKEY} ${pkgname}-${pkgver}.tar.xz +} + +build() { + # remove -O2 because there is a crash with python because of it + # fedora br: https://bugzilla.redhat.com/show_bug.cgi?id=817196 + export CFLAGS="${CFLAGS/-O2 /}" + + cd "${srcdir}" + + cp -a ${pkgname}-${pkgver} vim-build + + # define the place for the global (g)vimrc file (set to /etc/vimrc) + sed -i 's|^.*\(#define SYS_.*VIMRC_FILE.*"\) .*$|\1|' \ + vim-build/src/feature.h + sed -i 's|^.*\(#define VIMRC_FILE.*"\) .*$|\1|' \ + vim-build/src/feature.h + # fix python name + sed -i -e 's|vi_cv_path_python, python|vi_cv_path_python, python2|' \ + vim-build/src/configure.in + (cd vim-build/src && autoconf) + + cp -a vim-build gvim-build + + cd "${srcdir}"/vim-build + + ./configure --prefix=/usr --localstatedir=/var/lib/vim \ + --with-features=big --with-compiledby=ArchLinux \ + --enable-gpm --enable-acl --with-x=no \ + --disable-gui --enable-multibyte --enable-cscope \ + --disable-netbeans --enable-perlinterp --disable-pythoninterp \ + --disable-python3interp --disable-rubyinterp --disable-luainterp + + make + + cd "${srcdir}"/gvim-build + + ./configure --prefix=/usr --localstatedir=/var/lib/vim \ + --with-features=big --with-compiledby=ArchLinux \ + --enable-gpm --enable-acl --with-x=yes \ + --enable-gui=gtk2 --enable-multibyte --enable-cscope \ + --enable-netbeans --enable-perlinterp --enable-pythoninterp \ + --disable-python3interp --enable-rubyinterp --enable-luainterp + + make +} + +check() { + # disable tests because they seem to freeze + + cd "${srcdir}"/vim-build + + #make test + + cd "${srcdir}"/gvim-build + + #make test +} + +package_vim() { + pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor' + depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm') + conflicts=('gvim') + + cd "${srcdir}"/vim-build + make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install + + # provided by (n)vi in core + rm "${pkgdir}"/usr/bin/{ex,view} + + # delete some manpages + find "${pkgdir}"/usr/share/man -type d -name 'man1' 2>/dev/null | \ + while read _mandir; do + cd ${_mandir} + rm -f ex.1 view.1 # provided by (n)vi + rm -f evim.1 # this does not make sense if we have no GUI + done + + # Runtime provided by runtime package + rm -r "${pkgdir}"/usr/share/vim + + # license + install -Dm644 "${srcdir}"/vim-${pkgver}/runtime/doc/uganda.txt \ + "${pkgdir}"/usr/share/licenses/${pkgname}/license.txt +} + +package_gvim() { + pkgdesc='Vi Improved, a highly configurable, improved version of the vi text editor (with advanced features, such as a GUI)' + depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm' 'ruby' 'libxt' + 'desktop-file-utils' 'gtk2' 'lua' 'python2') + provides=("vim=${pkgver}-${pkgrel}") + conflicts=('vim') + install=gvim.install + + cd "${srcdir}"/gvim-build + make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install + + # provided by (n)vi in core + rm "${pkgdir}"/usr/bin/{ex,view} + + # delete some manpages + find "${pkgdir}"/usr/share/man -type d -name 'man1' 2>/dev/null | \ + while read _mandir; do + cd ${_mandir} + rm -f ex.1 view.1 # provided by (n)vi + done + + # Move the runtime for later packaging + mv "${pkgdir}"/usr/share/vim "${srcdir}"/runtime-install + + # freedesktop links + install -Dm644 "${srcdir}"/gvim.desktop \ + "${pkgdir}"/usr/share/applications/gvim.desktop + install -Dm644 runtime/vim48x48.png "${pkgdir}"/usr/share/pixmaps/gvim.png + + # license + install -Dm644 "${srcdir}"/vim-${pkgver}/runtime/doc/uganda.txt \ + "${pkgdir}"/usr/share/licenses/${pkgname}/license.txt +} + +package_vim-runtime() { + pkgdesc='Runtime for vim and gvim' + depends=('perl' 'gawk') + backup=('etc/vimrc') + + # Install the runtime split from gvim + install -dm755 "${pkgdir}"/usr/share + mv "${srcdir}"/runtime-install "${pkgdir}"/usr/share/vim + + # Don't forget logtalk.dict + install -Dm644 "${srcdir}"/gvim-build/runtime/ftplugin/logtalk.dict \ + "${pkgdir}"/usr/share/vim/${_versiondir}/ftplugin/logtalk.dict + + # fix FS#17216 + sed -i 's|messages,/var|messages,/var/log/messages.log,/var|' \ + "${pkgdir}"/usr/share/vim/${_versiondir}/filetype.vim + + # patch filetype.vim for better handling of pacman related files + sed -i "s/rpmsave/pacsave/;s/rpmnew/pacnew/;s/,\*\.ebuild/\0,PKGBUILD*,*.install/" \ + "${pkgdir}"/usr/share/vim/${_versiondir}/filetype.vim + sed -i "/find the end/,+3{s/changelog_date_entry_search/changelog_date_end_entry_search/}" \ + "${pkgdir}"/usr/share/vim/${_versiondir}/ftplugin/changelog.vim + + # make Aaron happy + install -Dm644 "${srcdir}"/pythoncomplete.vim \ + "${pkgdir}"/usr/share/vim/${_versiondir}/autoload/pythoncomplete.vim + + # rc files + install -Dm644 "${srcdir}"/vimrc "${pkgdir}"/etc/vimrc + install -Dm644 "${srcdir}"/archlinux.vim \ + "${pkgdir}"/usr/share/vim/vimfiles/archlinux.vim + + # rgb.txt file + install -Dm644 "${srcdir}"/vim-${pkgver}/runtime/rgb.txt \ + "${pkgdir}"/usr/share/vim/${_versiondir}/rgb.txt + + # license + install -dm755 "${pkgdir}"/usr/share/licenses/vim-runtime + ln -s /usr/share/vim/${_versiondir}/doc/uganda.txt \ + "${pkgdir}"/usr/share/licenses/vim-runtime/license.txt +} + +# vim:set sw=2 sts=2 et: diff --git a/staging/vim/archlinux.vim b/staging/vim/archlinux.vim new file mode 100644 index 000000000..148bb930f --- /dev/null +++ b/staging/vim/archlinux.vim @@ -0,0 +1,26 @@ +" The ArchLinux global vimrc - setting only a few sane defaults +" +" Maintainer: Tobias Kieslich [tobias funnychar archlinux dot org] +" +" NEVER EDIT THIS FILE, IT'S OVERWRITTEN UPON UPGRADES, GLOBAL CONFIGURATION +" SHALL BE DONE IN /etc/vimrc, USER SPECIFIC CONFIGURATION IN ~/.vimrc + +" Normally we use vim-extensions. If you want true vi-compatibility +" remove change the following statements +set nocompatible " Use Vim defaults instead of 100% vi compatibility +set backspace=indent,eol,start " more powerful backspacing + +" Now we set some defaults for the editor +set history=50 " keep 50 lines of command line history +set ruler " show the cursor position all the time + +" Suffixes that get lower priority when doing tab completion for filenames. +" These are files we are not likely to want to edit or read. +set suffixes=.bak,~,.swp,.o,.info,.aux,.log,.dvi,.bbl,.blg,.brf,.cb,.ind,.idx,.ilg,.inx,.out,.toc + + +if has('gui_running') + " Make shift-insert work like in Xterm + map <S-Insert> <MiddleMouse> + map! <S-Insert> <MiddleMouse> +endif diff --git a/staging/vim/gvim.desktop b/staging/vim/gvim.desktop new file mode 100644 index 000000000..675357da5 --- /dev/null +++ b/staging/vim/gvim.desktop @@ -0,0 +1,63 @@ +[Desktop Entry] +Name=Vi IMproved +Name[bg]=Vi Ðåäàêòîð +Name[ca]=Vi Millorat +Name[da]=Vi forbedret +Name[eo]=VIM +Name[et]=Täiustatud Vi (vim) +Name[fr]=Vi étendu (VIM) +Name[he]=רפושמ Vi +Name[hu]=Vi +Name[is]=Vi IMproved ritillinn +Name[it]=Vi iMproved +Name[no]=Vi IMproved (forbedret VI) +Name[pl]=Poprawiony VI (vim) +Name[ro]=VIM +Name[ru]=Улучшенный VI +Name[sk]=Vi IMpreved +Name[sl]=Izboljšani vi (vim) +Name[sv]=Förbättrad Vi +Name[zh_CN.GB2312]=改进的 Vi +Comment=Powerful text editor with scripting functions and macro recorder +Comment[bg]=Ðåäàêòîð ñ ìíîãî âúçìîæíîñòè +Comment[ca]=Editor vi potent +Comment[cs]=Mocný textový editor vi +Comment[da]=En kraftig vi tekstbehandler +Comment[de]=Ein leistungsfähiger vi-Editor +Comment[el]=Πανίσχυρος διορθωτής vi +Comment[eo]=VIM similas al redaktilo "vi", sed havas aldonajn ecojn +Comment[es]=Una versión mejorada del editor vi +Comment[et]=Võimas tekstiredaktor vi +Comment[fi]=Tehokas vi-tekstieditori +Comment[fr]=Éditeur vi puissant +Comment[gl]=Potente editor vi +Comment[he]=Vi המצועה בר ךרועה +Comment[hr]=Napredni vi uređivač +Comment[hu]=Vi szövegszerkesztő +Comment[is]=Öflug útgáfa vi ritilsins +Comment[it]=Un editor vi potenziato +Comment[ja]=強力なViエディタ +Comment[lt]=Galingas vi redaktorius +Comment[mk]=Моќен VI уредувач +Comment[nl]=Krachtige vi-editor +Comment[no]=En kraftig vi-redigerer +Comment[no_NY]=Kraftig vi-tekstredigeringsprogram +Comment[pl]=Edytor vi +Comment[pt]=Um poderoso editor de texto +Comment[ro]=Un editor de texte VI, puternic +Comment[ru]=Мощный текстовый редактор vi +Comment[sk]=Silný textový procesor vi +Comment[sl]=Zmogljivi urejevalnik vi +Comment[sr]=Moćni vi editor +Comment[sv]=En kraftfull texteditor +Comment[ta]=ºì¾¢Å¡öó¾ vi ¦¾¡ÌôÀ¡Ç÷ +Comment[tr]=Güçlü vi düzenleyicisi +Comment[uk]=Потужний редактор vi +Comment[zh_CN.GB2312]=功能强大的 vi 编辑器 +MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; +Exec=gvim -f %F +Icon=gvim +Type=Application +Terminal=false +X-XClassHintResName=VIM +Categories=Utility;TextEditor; diff --git a/staging/vim/gvim.install b/staging/vim/gvim.install new file mode 100644 index 000000000..2eaa60550 --- /dev/null +++ b/staging/vim/gvim.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/staging/vim/vimrc b/staging/vim/vimrc new file mode 100644 index 000000000..92d3ff980 --- /dev/null +++ b/staging/vim/vimrc @@ -0,0 +1,16 @@ +" All system-wide defaults are set in $VIMRUNTIME/archlinux.vim (usually just +" /usr/share/vim/vimfiles/archlinux.vim) and sourced by the call to :runtime +" you can find below. If you wish to change any of those settings, you should +" do it in this file (/etc/vimrc), since archlinux.vim will be overwritten +" everytime an upgrade of the vim packages is performed. It is recommended to +" make changes after sourcing archlinux.vim since it alters the value of the +" 'compatible' option. + +" This line should not be removed as it ensures that various options are +" properly set to work with the Vim-related packages. +runtime! archlinux.vim + +" If you prefer the old-style vim functionalty, add 'runtime! vimrc_example.vim' +" Or better yet, read /usr/share/vim/vim72/vimrc_example.vim or the vim manual +" and configure vim to your own liking! + diff --git a/staging/weechat/PKGBUILD b/staging/weechat/PKGBUILD new file mode 100644 index 000000000..70b5ad435 --- /dev/null +++ b/staging/weechat/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 159476 2012-05-24 21:06:54Z giovanni $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: lucke <lucke at o2 dot pl> + +pkgname=weechat +pkgver=0.3.7 +pkgrel=2 +pkgdesc="Fast, light and extensible IRC client (curses UI)" +arch=('i686' 'x86_64') +url="http://www.weechat.org/" +license=('GPL') +depends=('gnutls' 'curl' 'libgcrypt') +makedepends=('cmake' 'pkgconfig' 'perl' 'python2' 'lua' 'tcl' 'ruby' 'aspell') +optdepends=('perl' 'python2' 'lua' 'tcl' 'ruby' 'aspell') +options=('!libtool') +source=("http://www.weechat.org/files/src/${pkgname}-${pkgver}.tar.bz2") +md5sums=('62bb5002b2ba9e5816dfeededc3fa276') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + mkdir build + cd build + cmake .. -DPREFIX=/usr \ + -DPYTHON_EXECUTABLE=/usr/bin/python2 \ + -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}/build" + + make DESTDIR="${pkgdir}/" install +} |