summaryrefslogtreecommitdiffstats
path: root/abs/extra/nodejs
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/nodejs')
-rw-r--r--abs/extra/nodejs/PKGBUILD69
1 files changed, 50 insertions, 19 deletions
diff --git a/abs/extra/nodejs/PKGBUILD b/abs/extra/nodejs/PKGBUILD
index 7cada4d..2bb2da5 100644
--- a/abs/extra/nodejs/PKGBUILD
+++ b/abs/extra/nodejs/PKGBUILD
@@ -1,5 +1,6 @@
-# $Id: PKGBUILD 78912 2012-10-27 18:07:12Z bpiotrowski $
-# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Contributor Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: James Campos <james.r.campos@gmail.com>
# Contributor: BlackEagle < ike DOT devolder AT gmail DOT com >
@@ -8,20 +9,31 @@
# Contributor: TIanyi Cui <tianyicui@gmail.com>
pkgname=nodejs
-pkgver=0.8.14
-pkgrel=1
+pkgver=0.10.32
+_npmver=2.0.2
+pkgrel=3
pkgdesc='Evented I/O for V8 javascript'
arch=('i686' 'x86_64')
url='http://nodejs.org/'
license=('MIT')
-depends=('openssl' 'python2' 'v8')
-checkdepends=('curl') # curl used for check()
+depends=('openssl')
+provides=('nodejs-node-gyp')
+makedepends=('python2' 'git' 'procps-ng')
+optdepends=('python2: for node-gyp')
+checkdepends=('curl')
options=('!emptydirs')
-source=(http://nodejs.org/dist/v${pkgver}/node-v${pkgver}.tar.gz)
-md5sums=('284fd2c7578064c339d9cf6a3a475ac7')
+source=("http://nodejs.org/dist/v$pkgver/node-v$pkgver.tar.gz"
+ git+https://github.com/npm/npm.git#tag=v$_npmver)
+sha256sums=('c2120d0e3d2d191654cb11dbc0a33a7216d53732173317681da9502be0030f10'
+ 'SKIP')
-build() {
- cd node-v${pkgver}
+prepare() {
+ cd node-v$pkgver
+
+ # We need newer version of npm to fix bugs
+ rm -r deps/npm
+ ln -s "$srcdir/npm" deps
+ rm -r "$srcdir/npm/.git"
msg 'Fixing for python2 name'
find -type f -exec sed \
@@ -30,32 +42,51 @@ build() {
-e 's_^#!/usr/bin/python$_&2_' \
-e "s_'python'_'python2'_" -i {} \;
find test/ -type f -exec sed 's_python _python2 _' -i {} \;
- export PYTHON=python2
+}
+
+build() {
+ cd node-v$pkgver
+ export PYTHON=python2
./configure \
--prefix=/usr \
--shared-openssl
make
+
+ cd ../npm
+ ../node-v$pkgver/node cli.js install ronn marked
+ PATH="$srcdir/node-v$pkgver:$PATH" make
+ ../node-v$pkgver/node cli.js uninstall ronn marked
}
check() {
- cd node-v${pkgver}
- make test || true
+ cd node-v$pkgver
+ make test || warning "Tests failed"
}
package() {
- cd node-v${pkgver}
+ cd node-v$pkgver
- make DESTDIR=$pkgdir install
+ make DESTDIR="$pkgdir" install
# install docs as per user request
- install -d $pkgdir/usr/share/doc/nodejs
- cp -r doc/api/*.html \
- $pkgdir/usr/share/doc/nodejs
+ install -d "$pkgdir"/usr/share/doc/nodejs
+ cp -r doc/api/{*.html,assets} \
+ "$pkgdir"/usr/share/doc/nodejs
install -D -m644 LICENSE \
- $pkgdir/usr/share/licenses/nodejs/LICENSE
+ "$pkgdir"/usr/share/licenses/nodejs/LICENSE
+
+ install -d "$pkgdir"/usr/share/man/{man1,man3,man5,man7}
+ for _dir in man1 man3 man5 man7; do
+ cd "$pkgdir"/usr/lib/node_modules/npm/man/$_dir
+ for _file in *; do
+ ln -s /usr/lib/node_modules/npm/man/$_dir/$_file "$pkgdir"/usr/share/man/$_dir/
+ done
+ done
+
+ ln -s /usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js "$pkgdir"/usr/bin/node-gyp
}
# vim:set ts=2 sw=2 et: