This patch allows for building of sub-packages ( node-sqlite3 ) with 
USE_SYSTRACE enabled, and also prevents future downloading of node 
distfile.  

Index: Makefile
===================================================================
RCS file: /cvs/ports/www/node/Makefile,v
retrieving revision 1.35
diff -N -u -p Makefile
--- Makefile    8 May 2012 15:38:01 -0000       1.35
+++ Makefile    9 May 2012 02:31:52 -0000
@@ -11,7 +11,7 @@ COMMENT=      V8 JavaScript for clients and servers
 NODE_VERSION=  v0.6.17
 DISTNAME=      node-${NODE_VERSION}
 PKGNAME=       ${DISTNAME:S/v//g}
-REVISION=      1
+REVISION=      2
 
 CATEGORIES=    www devel
 
Index: patches/patch-deps_npm_node_modules_node-gyp_lib_install_js
===================================================================
RCS file: patches/patch-deps_npm_node_modules_node-gyp_lib_install_js
diff -N -u -p patches/patch-deps_npm_node_modules_node-gyp_lib_install_js
--- /dev/null   8 May 2012 20:31:52 -0000
+++ patches/patch-deps_npm_node_modules_node-gyp_lib_install_js 9 May 2012 
02:31:52 -0000
@@ -0,0 +1,30 @@
+$OpenBSD$
+--- deps/npm/node_modules/node-gyp/lib/install.js.orig Tue May  8 20:06:20 2012
++++ deps/npm/node_modules/node-gyp/lib/install.js      Tue May  8 20:08:56 2012
+@@ -166,11 +166,21 @@ function install (gyp, argv, callback) {
+     extracter.on('error', cb)
+     extracter.on('end', afterTarball)
+ 
+-    // download the tarball, gunzip and extract!
+-    var req = download(tarballUrl, downloadError)
+-      .pipe(gunzip)
+-      .pipe(extracter)
+-
++      var filePath = '/usr/ports/distfiles/node-v' + version + '.tar.gz';
++      gyp.info('If this fails, please ensure ' + filePath + ' exists!!')
++      fs.stat(filePath, function(err, stat) {
++              if (err) {
++                      // download the tarball
++                      var req = download(tarballUrl, downloadError)
++                        .pipe(gunzip)
++                        .pipe(extracter)
++              } else {
++                      // use existing tarball
++                      fs.createReadStream(filePath)
++                        .pipe(gunzip)
++                        .pipe(extracter)
++              }
++      });
+     // something went wrong downloading the tarball?
+     function downloadError (err, res) {
+       if (err || res.statusCode != 200) {

Reply via email to