-
Notifications
You must be signed in to change notification settings - Fork 4
/
v8
36 lines (29 loc) · 1.13 KB
/
v8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# New CXX20 binary requires at least MacOS 13, which we only want to assume on arm64
if [ $(arch | grep arm) ]; then
bottle="https://github.com/autobrew/bundler/releases/download/v8-12.7.224.16/v8-12.7.224.16-universal.tar.xz"
CXXSTD=CXX20
else
bottle="https://github.com/autobrew/bundler/releases/download/v8-11.7.439.14/v8-11.7.439.14-universal.tar.xz"
CXXSTD=CXX17
fi
# Debug
echo "Using autobrew bundle: $(basename $bottle)"
# Skip if disabled
if [ "$DISABLE_AUTOBREW" ]; then return 0; fi
BREWDIR="$PWD/.deps"
if [ ! -f ".deps/lib/libv8_monolith.a" ]; then
mkdir -p $BREWDIR
curl -sSL $bottle -o libs.tar.xz
tar -xf libs.tar.xz --strip 1 -C $BREWDIR
rm -f libs.tar.xz
# old versions of V8 look under /opt
mkdir -p $BREWDIR/opt/v8
ln -s $BREWDIR/{include,lib} $BREWDIR/opt/v8/
ln -s $BREWDIR/lib $BREWDIR/opt/v8/libexec
fi
# Hardcoded flags
PKG_LIBS="-L$BREWDIR/lib -lv8_monolith"
PKG_CFLAGS="-I$BREWDIR/include -DV8_COMPRESS_POINTERS -DV8_ENABLE_SANDBOX"
# Skip pointer-compression and sandbox feature tests
sed -e "s|@cflags@|$PKG_CFLAGS|" -e "s|@libs@|$PKG_LIBS|" -e "s|CXX11|${CXXSTD}|" src/Makevars.in > src/Makevars
exit 0