4 changed files with 0 additions and 516 deletions
@ -1,29 +0,0 @@ |
|||||||
|
|
||||||
#include <stdio.h> |
|
||||||
#include <stdlib.h> |
|
||||||
#include <string.h> |
|
||||||
#include <unistd.h> |
|
||||||
#include <errno.h> |
|
||||||
|
|
||||||
#define NAME "node12" |
|
||||||
|
|
||||||
#define WRAP PREFIX "/bin/" NAME |
|
||||||
#define REAL PREFIX "/libexec/" NAME "/node" |
|
||||||
|
|
||||||
int main(int argn, char **argv) |
|
||||||
{ |
|
||||||
char *path; |
|
||||||
|
|
||||||
argv[0] = REAL; |
|
||||||
if ((path = getenv("NODE")) != NULL) |
|
||||||
if (strcmp(path, NAME) != 0 && strcmp(path, WRAP) != 0) |
|
||||||
argv[0] = path; |
|
||||||
|
|
||||||
if (execvp(argv[0], argv) == -1) { |
|
||||||
fprintf(stderr, "node: ERROR: failed to execute \"%s\": %s\n", argv[0], strerror(errno)); |
|
||||||
exit(1); |
|
||||||
} |
|
||||||
|
|
||||||
return 0; |
|
||||||
} |
|
||||||
|
|
@ -1,295 +0,0 @@ |
|||||||
Index: common.gypi
|
|
||||||
--- common.gypi.orig 2019-04-03 08:37:04.000000000 +0200
|
|
||||||
+++ common.gypi 2019-04-03 09:26:00.696671000 +0200
|
|
||||||
@@ -165,7 +165,7 @@
|
|
||||||
}],
|
|
||||||
],
|
|
||||||
},
|
|
||||||
- 'cflags': [ '-O3' ],
|
|
||||||
+ 'cflags': [ '-O2' ],
|
|
||||||
'conditions': [
|
|
||||||
['OS=="solaris"', {
|
|
||||||
# pull in V8's postmortem metadata
|
|
||||||
@@ -333,7 +333,7 @@
|
|
||||||
'ldflags': [ '-pthread' ],
|
|
||||||
}],
|
|
||||||
[ 'OS in "linux freebsd openbsd solaris android aix cloudabi"', {
|
|
||||||
- 'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ],
|
|
||||||
+ 'cflags': [ '-Wno-unused-parameter', ],
|
|
||||||
'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++1y' ],
|
|
||||||
'ldflags': [ '-rdynamic' ],
|
|
||||||
'target_conditions': [
|
|
||||||
@@ -435,10 +435,7 @@
|
|
||||||
'-fno-strict-aliasing',
|
|
||||||
],
|
|
||||||
'WARNING_CFLAGS': [
|
|
||||||
- '-Wall',
|
|
||||||
- '-Wendif-labels',
|
|
||||||
- '-W',
|
|
||||||
- '-Wno-unused-parameter',
|
|
||||||
+ '-Wno-unused-parameter'
|
|
||||||
],
|
|
||||||
},
|
|
||||||
'target_conditions': [
|
|
||||||
Index: deps/uv/common.gypi
|
|
||||||
--- deps/uv/common.gypi.orig 2019-04-03 08:37:08.000000000 +0200
|
|
||||||
+++ deps/uv/common.gypi 2019-04-03 09:26:00.696826000 +0200
|
|
||||||
@@ -46,7 +46,7 @@
|
|
||||||
'Release': {
|
|
||||||
'defines': [ 'NDEBUG' ],
|
|
||||||
'cflags': [
|
|
||||||
- '-O3',
|
|
||||||
+ '-O2',
|
|
||||||
],
|
|
||||||
'msvs_settings': {
|
|
||||||
'VCCLCompilerTool': {
|
|
||||||
Index: deps/uv/uv.gyp
|
|
||||||
--- deps/uv/uv.gyp.orig 2019-04-03 08:37:08.000000000 +0200
|
|
||||||
+++ deps/uv/uv.gyp 2019-04-03 09:26:00.696972000 +0200
|
|
||||||
@@ -175,7 +175,7 @@
|
|
||||||
'src/unix/udp.c',
|
|
||||||
],
|
|
||||||
'link_settings': {
|
|
||||||
- 'libraries': [ '-lm' ],
|
|
||||||
+ 'libraries': [ '-lz', '-lm' ],
|
|
||||||
'conditions': [
|
|
||||||
['OS=="solaris"', {
|
|
||||||
'ldflags': [ '-pthreads' ],
|
|
||||||
Index: deps/v8/src/base/platform/platform-freebsd.cc
|
|
||||||
--- deps/v8/src/base/platform/platform-freebsd.cc.orig 2019-04-03 08:37:09.000000000 +0200
|
|
||||||
+++ deps/v8/src/base/platform/platform-freebsd.cc 2019-04-03 09:26:00.697113000 +0200
|
|
||||||
@@ -25,6 +25,7 @@
|
|
||||||
#include <strings.h> // index
|
|
||||||
|
|
||||||
#include <cmath>
|
|
||||||
+#include <cstdio>
|
|
||||||
|
|
||||||
#undef MAP_TYPE
|
|
||||||
|
|
||||||
Index: deps/v8/src/log-utils.cc
|
|
||||||
--- deps/v8/src/log-utils.cc.orig 2019-04-03 08:37:09.000000000 +0200
|
|
||||||
+++ deps/v8/src/log-utils.cc 2019-04-03 09:26:00.697258000 +0200
|
|
||||||
@@ -2,6 +2,9 @@
|
|
||||||
// Use of this source code is governed by a BSD-style license that can be
|
|
||||||
// found in the LICENSE file.
|
|
||||||
|
|
||||||
+#include <stdio.h>
|
|
||||||
+#include <stdlib.h>
|
|
||||||
+
|
|
||||||
#include "src/log-utils.h"
|
|
||||||
|
|
||||||
#include "src/assert-scope.h"
|
|
||||||
Index: deps/v8/src/wasm/wasm-result.cc
|
|
||||||
--- deps/v8/src/wasm/wasm-result.cc.orig 2019-04-03 08:37:10.000000000 +0200
|
|
||||||
+++ deps/v8/src/wasm/wasm-result.cc 2019-04-03 09:26:00.697394000 +0200
|
|
||||||
@@ -2,6 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style license that can be
|
|
||||||
// found in the LICENSE file.
|
|
||||||
|
|
||||||
+#include <cstdarg>
|
|
||||||
+
|
|
||||||
#include "src/wasm/wasm-result.h"
|
|
||||||
|
|
||||||
#include "src/heap/factory.h"
|
|
||||||
Index: lib/dns.js
|
|
||||||
--- lib/dns.js.orig 2019-04-03 08:37:16.000000000 +0200
|
|
||||||
+++ lib/dns.js 2019-04-03 09:26:00.697537000 +0200
|
|
||||||
@@ -140,6 +140,10 @@
|
|
||||||
req.hostname = hostname;
|
|
||||||
req.oncomplete = all ? onlookupall : onlookup;
|
|
||||||
|
|
||||||
+ /* FreeBSD getaddrinfo(3) knows AI_V4MAPPED, but dislikes it */
|
|
||||||
+ if (process.platform === "freebsd")
|
|
||||||
+ hints &= ~(exports.V4MAPPED);
|
|
||||||
+
|
|
||||||
const err = cares.getaddrinfo(
|
|
||||||
req, toASCII(hostname), family, hints, verbatim
|
|
||||||
);
|
|
||||||
Index: lib/internal/modules/cjs/loader.js
|
|
||||||
--- lib/internal/modules/cjs/loader.js.orig 2019-04-03 08:37:16.000000000 +0200
|
|
||||||
+++ lib/internal/modules/cjs/loader.js 2019-04-03 09:26:00.697758000 +0200
|
|
||||||
@@ -894,7 +894,10 @@
|
|
||||||
} else {
|
|
||||||
prefixDir = path.resolve(process.execPath, '..', '..');
|
|
||||||
}
|
|
||||||
- var paths = [path.resolve(prefixDir, 'lib', 'node')];
|
|
||||||
+ var paths = [
|
|
||||||
+ path.resolve(prefixDir, '..', 'lib', 'node', 'usr'),
|
|
||||||
+ path.resolve(prefixDir, '..', 'lib', 'node', 'pkg')
|
|
||||||
+ ];
|
|
||||||
|
|
||||||
if (homeDir) {
|
|
||||||
paths.unshift(path.resolve(homeDir, '.node_libraries'));
|
|
||||||
Index: src/inspector_socket_server.cc
|
|
||||||
--- src/inspector_socket_server.cc.orig 2019-04-03 08:37:17.000000000 +0200
|
|
||||||
+++ src/inspector_socket_server.cc 2019-04-03 09:26:00.697915000 +0200
|
|
||||||
@@ -19,7 +19,7 @@
|
|
||||||
bool include_protocol);
|
|
||||||
namespace {
|
|
||||||
|
|
||||||
-static const uint8_t PROTOCOL_JSON[] = {
|
|
||||||
+static uint8_t PROTOCOL_JSON[] = {
|
|
||||||
#include "v8_inspector_protocol_json.h" // NOLINT(build/include_order)
|
|
||||||
};
|
|
||||||
|
|
||||||
Index: src/node_constants.cc
|
|
||||||
--- src/node_constants.cc.orig 2019-04-03 08:37:17.000000000 +0200
|
|
||||||
+++ src/node_constants.cc 2019-04-03 09:26:00.698129000 +0200
|
|
||||||
@@ -34,10 +34,10 @@
|
|
||||||
|
|
||||||
|
|
||||||
#if HAVE_OPENSSL
|
|
||||||
-#include <openssl/ec.h>
|
|
||||||
-#include <openssl/ssl.h>
|
|
||||||
+#include "openssl/ec.h"
|
|
||||||
+#include "openssl/ssl.h"
|
|
||||||
#ifndef OPENSSL_NO_ENGINE
|
|
||||||
-#include <openssl/engine.h>
|
|
||||||
+#include "openssl/engine.h"
|
|
||||||
#endif // !OPENSSL_NO_ENGINE
|
|
||||||
#endif // HAVE_OPENSSL
|
|
||||||
|
|
||||||
Index: src/node_crypto.cc
|
|
||||||
--- src/node_crypto.cc.orig 2019-04-03 08:37:17.000000000 +0200
|
|
||||||
+++ src/node_crypto.cc 2019-04-03 09:29:05.709241000 +0200
|
|
||||||
@@ -36,17 +36,17 @@
|
|
||||||
#include "util-inl.h"
|
|
||||||
#include "v8.h"
|
|
||||||
|
|
||||||
-#include <openssl/ec.h>
|
|
||||||
-#include <openssl/ecdh.h>
|
|
||||||
+#include "openssl/ec.h"
|
|
||||||
+#include "openssl/ecdh.h"
|
|
||||||
#ifndef OPENSSL_NO_ENGINE
|
|
||||||
-# include <openssl/engine.h>
|
|
||||||
+# include "openssl/engine.h"
|
|
||||||
#endif // !OPENSSL_NO_ENGINE
|
|
||||||
-#include <openssl/evp.h>
|
|
||||||
-#include <openssl/pem.h>
|
|
||||||
-#include <openssl/x509v3.h>
|
|
||||||
-#include <openssl/hmac.h>
|
|
||||||
-#include <openssl/rand.h>
|
|
||||||
-#include <openssl/pkcs12.h>
|
|
||||||
+#include "openssl/evp.h"
|
|
||||||
+#include "openssl/pem.h"
|
|
||||||
+#include "openssl/x509v3.h"
|
|
||||||
+#include "openssl/hmac.h"
|
|
||||||
+#include "openssl/rand.h"
|
|
||||||
+#include "openssl/pkcs12.h"
|
|
||||||
|
|
||||||
#include <cerrno>
|
|
||||||
#include <climits> // INT_MAX
|
|
||||||
Index: src/node_crypto.h
|
|
||||||
--- src/node_crypto.h.orig 2019-04-03 09:26:00.698388000 +0200
|
|
||||||
+++ src/node_crypto.h 2019-04-03 09:28:43.620825000 +0200
|
|
||||||
@@ -33,8 +33,8 @@
|
|
||||||
|
|
||||||
#include "v8.h"
|
|
||||||
|
|
||||||
-#include <openssl/err.h>
|
|
||||||
-#include <openssl/ssl.h>
|
|
||||||
+#include "openssl/err.h"
|
|
||||||
+#include "openssl/ssl.h"
|
|
||||||
|
|
||||||
namespace node {
|
|
||||||
namespace crypto {
|
|
||||||
Index: src/tls_wrap.h
|
|
||||||
--- src/tls_wrap.h.orig 2019-04-03 08:37:18.000000000 +0200
|
|
||||||
+++ src/tls_wrap.h 2019-04-03 09:26:00.698606000 +0200
|
|
||||||
@@ -31,7 +31,7 @@
|
|
||||||
#include "stream_wrap.h"
|
|
||||||
#include "v8.h"
|
|
||||||
|
|
||||||
-#include <openssl/ssl.h>
|
|
||||||
+#include "openssl/ssl.h"
|
|
||||||
|
|
||||||
#include <string>
|
|
||||||
|
|
||||||
Index: src/util.h
|
|
||||||
--- src/util.h.orig 2019-04-03 08:37:18.000000000 +0200
|
|
||||||
+++ src/util.h 2019-04-03 09:26:00.698773000 +0200
|
|
||||||
@@ -131,14 +131,23 @@
|
|
||||||
} \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
+#undef CHECK_EQ
|
|
||||||
#define CHECK_EQ(a, b) CHECK((a) == (b))
|
|
||||||
+#undef CHECK_GE
|
|
||||||
#define CHECK_GE(a, b) CHECK((a) >= (b))
|
|
||||||
+#undef CHECK_GT
|
|
||||||
#define CHECK_GT(a, b) CHECK((a) > (b))
|
|
||||||
+#undef CHECK_LE
|
|
||||||
#define CHECK_LE(a, b) CHECK((a) <= (b))
|
|
||||||
+#undef CHECK_LT
|
|
||||||
#define CHECK_LT(a, b) CHECK((a) < (b))
|
|
||||||
+#undef CHECK_NE
|
|
||||||
#define CHECK_NE(a, b) CHECK((a) != (b))
|
|
||||||
+#undef CHECK_NULL
|
|
||||||
#define CHECK_NULL(val) CHECK((val) == nullptr)
|
|
||||||
+#undef CHECK_NOT_NULL
|
|
||||||
#define CHECK_NOT_NULL(val) CHECK((val) != nullptr)
|
|
||||||
+#undef CHECK_IMPLIES
|
|
||||||
#define CHECK_IMPLIES(a, b) CHECK(!(a) || (b))
|
|
||||||
|
|
||||||
#ifdef DEBUG
|
|
||||||
@@ -166,6 +175,7 @@
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
+#undef UNREACHABLE
|
|
||||||
#define UNREACHABLE() ABORT()
|
|
||||||
|
|
||||||
// TAILQ-style intrusive list node.
|
|
||||||
Index: tools/install.py
|
|
||||||
--- tools/install.py.orig 2019-04-03 08:37:30.000000000 +0200
|
|
||||||
+++ tools/install.py 2019-04-03 09:26:00.698899000 +0200
|
|
||||||
@@ -152,10 +152,7 @@
|
|
||||||
action(['deps/v8/tools/gdbinit'], 'share/doc/node/')
|
|
||||||
action(['deps/v8/tools/lldb_commands.py'], 'share/doc/node/')
|
|
||||||
|
|
||||||
- if 'freebsd' in sys.platform or 'openbsd' in sys.platform:
|
|
||||||
- action(['doc/node.1'], 'man/man1/')
|
|
||||||
- else:
|
|
||||||
- action(['doc/node.1'], 'share/man/man1/')
|
|
||||||
+ action(['doc/node.1'], 'man/man1/')
|
|
||||||
|
|
||||||
if 'true' == variables.get('node_install_npm'): npm_files(action)
|
|
||||||
|
|
||||||
Index: tools/v8_gypfiles/toolchain.gypi
|
|
||||||
--- tools/v8_gypfiles/toolchain.gypi.orig 2019-04-03 08:37:47.000000000 +0200
|
|
||||||
+++ tools/v8_gypfiles/toolchain.gypi 2019-04-03 09:26:00.699147000 +0200
|
|
||||||
@@ -1115,12 +1115,6 @@
|
|
||||||
['OS=="solaris"', {
|
|
||||||
'defines': [ '__C99FEATURES__=1' ], # isinf() etc.
|
|
||||||
}],
|
|
||||||
- ['OS=="freebsd" or OS=="openbsd"', {
|
|
||||||
- 'cflags': [ '-I/usr/local/include' ],
|
|
||||||
- }],
|
|
||||||
- ['OS=="netbsd"', {
|
|
||||||
- 'cflags': [ '-I/usr/pkg/include' ],
|
|
||||||
- }],
|
|
||||||
['OS=="aix"', {
|
|
||||||
'defines': [
|
|
||||||
# Support for malloc(0)
|
|
||||||
@@ -1288,8 +1282,8 @@
|
|
||||||
# Don't use -O3 with sanitizers.
|
|
||||||
['asan==0 and msan==0 and lsan==0 \
|
|
||||||
and tsan==0 and ubsan==0 and ubsan_vptr==0', {
|
|
||||||
- 'cflags': ['-O3'],
|
|
||||||
- 'cflags!': ['-O2'],
|
|
||||||
+ 'cflags': ['-O2'],
|
|
||||||
+ 'cflags!': ['-O3'],
|
|
||||||
}, {
|
|
||||||
'cflags': ['-O2'],
|
|
||||||
'cflags!': ['-O3'],
|
|
||||||
@@ -1337,8 +1331,8 @@
|
|
||||||
# Don't use -O3 with sanitizers.
|
|
||||||
['asan==0 and msan==0 and lsan==0 \
|
|
||||||
and tsan==0 and ubsan==0 and ubsan_vptr==0', {
|
|
||||||
- 'cflags': ['-O3'],
|
|
||||||
- 'cflags!': ['-O2'],
|
|
||||||
+ 'cflags': ['-O2'],
|
|
||||||
+ 'cflags!': ['-O3'],
|
|
||||||
}, {
|
|
||||||
'cflags': ['-O2'],
|
|
||||||
'cflags!': ['-O3'],
|
|
@ -1,189 +0,0 @@ |
|||||||
## |
|
||||||
## node12.spec -- OpenPKG RPM Package Specification |
|
||||||
## Copyright (c) 2000-2019 OpenPKG Project <http://openpkg.org/> |
|
||||||
## |
|
||||||
## Permission to use, copy, modify, and distribute this software for |
|
||||||
## any purpose with or without fee is hereby granted, provided that |
|
||||||
## the above copyright notice and this permission notice appear in all |
|
||||||
## copies. |
|
||||||
## |
|
||||||
## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED |
|
||||||
## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
|
||||||
## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
|
||||||
## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR |
|
||||||
## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
||||||
## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
||||||
## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF |
|
||||||
## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
|
||||||
## SUCH DAMAGE. |
|
||||||
## |
|
||||||
|
|
||||||
# package version |
|
||||||
%define V_opkg 12.0.0 |
|
||||||
%define V_dist 12.0.0 |
|
||||||
|
|
||||||
# package information |
|
||||||
Name: node12 |
|
||||||
Summary: Node JavaScript Run-Time (V12) |
|
||||||
URL: http://nodejs.org/ |
|
||||||
Vendor: Node Foundation |
|
||||||
Packager: OpenPKG Project |
|
||||||
Distribution: OpenPKG Community |
|
||||||
Class: PLUS |
|
||||||
Group: Web |
|
||||||
License: MIT/BSD |
|
||||||
Version: %{V_opkg} |
|
||||||
Release: 20190423 |
|
||||||
|
|
||||||
# package options |
|
||||||
%option with_icu yes |
|
||||||
%option with_node no |
|
||||||
|
|
||||||
# list of sources |
|
||||||
Source0: https://nodejs.org/download/release/v%{V_dist}/node-v%{V_dist}.tar.xz |
|
||||||
Source1: node.c |
|
||||||
Patch0: node12.patch |
|
||||||
|
|
||||||
# build information |
|
||||||
BuildPreReq: OpenPKG, openpkg >= 20160101, make, gcc >= 5.2, gcc::with_cxx = yes, python2, pkgconfig |
|
||||||
PreReq: OpenPKG, openpkg >= 20160101 |
|
||||||
BuildPreReq: openssl11, libexecinfo, zlib, ares, libuv, nghttp2 |
|
||||||
PreReq: openssl11, libexecinfo, zlib, ares, libuv, nghttp2 |
|
||||||
%if "%{with_icu}" == "yes" |
|
||||||
BuildPreReq: icu |
|
||||||
PreReq: icu |
|
||||||
%endif |
|
||||||
%if "%{with_node}" == "yes" |
|
||||||
Provides: node = %{version} |
|
||||||
%endif |
|
||||||
|
|
||||||
%description |
|
||||||
Node.js (V12) provides an easy way to build scalable network |
|
||||||
servers in JavaScript. It is an event-driven I/O environment based |
|
||||||
on Google V8 JavaScript virtual machine version 7.4.288.21. |
|
||||||
|
|
||||||
%track |
|
||||||
prog node11 = { |
|
||||||
version = %{V_dist} |
|
||||||
url = https://nodejs.org/download/release/ |
|
||||||
regex = v(12\.\d+\.\d+)/ |
|
||||||
} |
|
||||||
|
|
||||||
%prep |
|
||||||
%setup -q -n node-v%{V_dist} |
|
||||||
%patch -p0 |
|
||||||
|
|
||||||
%build |
|
||||||
# provide local tool wrapper scripts as we cannot |
|
||||||
# reliably pass the includes via configure variables |
|
||||||
cflags="-I`pwd`/deps/v8 -I`pwd`/deps/v8/include -I`pwd`/deps/llhttp/include -I`pwd`/deps/http_parser %{l_cppflags openssl11 .}" |
|
||||||
ldflags="%{l_ldflags openssl11 .}" |
|
||||||
mkdir tool |
|
||||||
for tool in gcc g++ c%{l_nil}c c++; do |
|
||||||
( echo "#!/bin/sh" |
|
||||||
echo "exec %{l_prefix}/bin/$tool $cflags $ldflags \${1+\"\$@\"}" |
|
||||||
) >tool/$tool |
|
||||||
chmod a+x tool/$tool |
|
||||||
done |
|
||||||
PATH="`pwd`/tool:$PATH" |
|
||||||
|
|
||||||
# configure program |
|
||||||
libs="-lexecinfo -lz" |
|
||||||
case "%{l_platform -t} " in |
|
||||||
*-linux* ) libs="$libs -ldl" ;; |
|
||||||
esac |
|
||||||
CC="gcc" \ |
|
||||||
CXX="g++" \ |
|
||||||
CFLAGS="%{l_cflags -O}" \ |
|
||||||
CXXFLAGS="%{l_cxxflags -O} -Wno-deprecated-declarations" \ |
|
||||||
CPPFLAGS="%{l_cppflags openssl11 .}" \ |
|
||||||
LDFLAGS="%{l_ldflags openssl11 .}" \ |
|
||||||
LIBS="$libs" \ |
|
||||||
%{l_prefix}/bin/python2 ./configure \ |
|
||||||
--prefix=%{l_prefix} \ |
|
||||||
--shared-openssl \ |
|
||||||
--shared-openssl-includes=%{l_prefix}/include/openssl11 \ |
|
||||||
--shared-openssl-libpath=%{l_prefix}/lib/openssl11 \ |
|
||||||
--shared-openssl-libname="ssl,crypto" \ |
|
||||||
--shared-zlib \ |
|
||||||
--shared-zlib-includes=%{l_prefix}/include \ |
|
||||||
--shared-zlib-libpath=%{l_prefix}/lib \ |
|
||||||
--shared-zlib-libname="z" \ |
|
||||||
--shared-cares \ |
|
||||||
--shared-cares-includes=%{l_prefix}/include \ |
|
||||||
--shared-cares-libpath=%{l_prefix}/lib \ |
|
||||||
--shared-cares-libname="ares" \ |
|
||||||
--shared-libuv \ |
|
||||||
--shared-libuv-includes=%{l_prefix}/include \ |
|
||||||
--shared-libuv-libpath=%{l_prefix}/lib \ |
|
||||||
--shared-libuv-libname="uv" \ |
|
||||||
--shared-nghttp2 \ |
|
||||||
--shared-nghttp2-includes=%{l_prefix}/include \ |
|
||||||
--shared-nghttp2-libpath=%{l_prefix}/lib \ |
|
||||||
--shared-nghttp2-libname="nghttp2" \ |
|
||||||
%if "%{with_icu}" == "yes" |
|
||||||
--with-intl=system-icu \ |
|
||||||
%else |
|
||||||
--with-intl=small-icu \ |
|
||||||
%endif |
|
||||||
--without-snapshot \ |
|
||||||
--without-npm \ |
|
||||||
--download=none |
|
||||||
|
|
||||||
# build program |
|
||||||
%{l_make} %{l_mflags -O} |
|
||||||
|
|
||||||
# build wrapper |
|
||||||
%{l_cc} %{l_cflags -O} %{l_cppflags} -DPREFIX="\"%{l_prefix}\"" %{l_ldflags} \ |
|
||||||
-o node-wrapper %{SOURCE node.c} |
|
||||||
|
|
||||||
%install |
|
||||||
# install program |
|
||||||
%{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT |
|
||||||
|
|
||||||
# install wrapper |
|
||||||
%{l_shtool} mkdir -f -p -m 755 \ |
|
||||||
$RPM_BUILD_ROOT%{l_prefix}/libexec/node12 |
|
||||||
mv $RPM_BUILD_ROOT%{l_prefix}/bin/node \ |
|
||||||
$RPM_BUILD_ROOT%{l_prefix}/libexec/node12/node |
|
||||||
%{l_shtool} install -c -s -m 755 \ |
|
||||||
node-wrapper $RPM_BUILD_ROOT%{l_prefix}/bin/node |
|
||||||
|
|
||||||
# post-installation strip-down |
|
||||||
strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true |
|
||||||
rm -rf $RPM_BUILD_ROOT%{l_prefix}/lib/dtrace |
|
||||||
rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/systemtap |
|
||||||
rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/doc |
|
||||||
|
|
||||||
%if "%{with_node}" == "yes" |
|
||||||
# create NPM package installation areas |
|
||||||
%{l_shtool} mkdir -f -p -m 755 \ |
|
||||||
$RPM_BUILD_ROOT%{l_prefix}/lib/node/usr \ |
|
||||||
$RPM_BUILD_ROOT%{l_prefix}/lib/node/pkg |
|
||||||
%endif |
|
||||||
|
|
||||||
# post-adjust installation |
|
||||||
mv $RPM_BUILD_ROOT%{l_prefix}/bin/node \ |
|
||||||
$RPM_BUILD_ROOT%{l_prefix}/bin/node12 |
|
||||||
mv $RPM_BUILD_ROOT%{l_prefix}/include/node \ |
|
||||||
$RPM_BUILD_ROOT%{l_prefix}/include/node12 |
|
||||||
mv $RPM_BUILD_ROOT%{l_prefix}/man/man1/node.1 \ |
|
||||||
$RPM_BUILD_ROOT%{l_prefix}/man/man1/node12.1 |
|
||||||
|
|
||||||
%if "%{with_node}" == "yes" |
|
||||||
# shim as Node |
|
||||||
ln -s node12 $RPM_BUILD_ROOT%{l_prefix}/bin/node |
|
||||||
ln -s node12 $RPM_BUILD_ROOT%{l_prefix}/include/node |
|
||||||
ln -s node12.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/node.1 |
|
||||||
%endif |
|
||||||
|
|
||||||
# determine installation files |
|
||||||
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} |
|
||||||
|
|
||||||
%files -f files |
|
||||||
|
|
||||||
%clean |
|
||||||
|
|
Loading…
Reference in new issue