0
0
Fork 0
haikuports/net-libs/nodejs/nodejs12-12.22.7.recipe

91 lines
2.2 KiB
Bash

SUMMARY="A JavaScript runtime built on Chrome's V8 Engine"
DESCRIPTION="Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. \
As an asynchronous event driven JavaScript runtime, Node is designed to build scalable \
network applications. In the following \"hello world\" example, many connections can be \
handled concurrently. Upon each connection the callback is fired, but if there is no work \
to be done, Node will sleep."
HOMEPAGE="https://nodejs.org/"
COPYRIGHT="2006-2019 The Node.js Foundation"
LICENSE="BSD (2-clause)"
REVISION="1"
SOURCE_URI="https://nodejs.org/dist/v$portVersion/node-v$portVersion.tar.xz"
SOURCE_DIR="node-v$portVersion"
CHECKSUM_SHA256="cc6a23b44870679a94bd8f3c8d4e1f4b77bb2712a36888ab87463459e6785f6b"
PATCHES="nodejs-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2 ?x86"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
nodejs12$secondaryArchSuffix = $portVersion
cmd:node = $portVersion compat >= 12
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libcares$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libexecinfo$secondaryArchSuffix
lib:libnghttp2$secondaryArchSuffix
lib:libssl$secondaryArchSuffix
lib:libuv$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
REPLACES="nodejs"
PROVIDES_devel="
nodejs12${secondaryArchSuffix}_devel
"
REQUIRES_devel="
nodejs12$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libcares$secondaryArchSuffix
devel:libexecinfo$secondaryArchSuffix
devel:libnghttp2$secondaryArchSuffix
devel:libssl$secondaryArchSuffix >= 1.1
devel:libuv$secondaryArchSuffix
devel:libz$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:find
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:make
cmd:ninja
cmd:python2
cmd:which
"
BUILD()
{
./configure --with-intl=none --dest-os=haiku \
--shared-cares --shared-libuv --shared-nghttp2 --shared-openssl \
--shared-zlib \
--prefix=$prefix --without-npm
make $jobArgs
}
INSTALL()
{
make install
mkdir -p $(dirname $docDir $includeDir $manDir)
mv $prefix/include $includeDir
mv $prefix/share/man $manDir
mv $prefix/share/doc $docDir
packageEntries devel \
$developDir
strip $prefix/bin/node
rm -rf $prefix/share
}
TEST()
{
make test-only
}