summaryrefslogtreecommitdiff
path: root/repo/system/js78/js78.xibuild
blob: 9e553ed0bd6d54aa377763f42e3662a9c309eca0 (plain)
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#!/bin/sh

MAKEDEPS="gcc autoconf2-13 icu rust zlib which zip clang llvm patch make python-six python-mach"
DEPS="readline nspr bash zlib"

PKG_VER=78.15.0
SOURCE=https://archive.mozilla.org/pub/firefox/releases/${PKG_VER}esr/source/firefox-${PKG_VER}esr.source.tar.xz
ADDITIONAL="
    disable-jslint.patch
    fd6847c9416f9eebde636e21d794d25d1be8791d.patch
    fix-musl-build.patch
    fix-python3.10-compilation.patch
    fix-rust-target.patch
    "

DESC="JavaScript interpreter and libraries - Version 78"

prepare () {
    apply_patches
    export LDFLAGS="$LDFLAGS -Wl,-z,stack-size=1048576"

    mountpoint -q /dev/shm || mount -t tmpfs devshm /dev/shm
    export RUST_TARGET="x86_64-unknown-linux-musl"
    export CFLAGS="$CFLAGS -no-pie" CXXFLAGS="$CXXFLAGS -no-pie"
}

build () {
    mkdir build
    cd    build 

    SHELL=/bin/bash PYTHON=/usr/bin/python3 \
        ../js/src/configure --prefix=/usr \
                --with-intl-api \
                --with-system-icu \
                --with-system-nspr \
                --with-system-zlib \
                --enable-ctypes \
                --enable-hardening \
                --enable-optimize="$CFLAGS -O2" \
                --enable-readline \
                --enable-release \
                --enable-shared-js \
                --enable-system-ffi \
                --enable-tests \
                --disable-debug \
                --disable-debug-symbols \
                --disable-jemalloc \
                --disable-strip

    make
}

check () {
    dist/bin/jsapi-tests \
		--format=none \
		--exclude-random \
		basic
}

package () {
    make DESTDIR=$PKG_DEST install 
    [ -f $PKG_DEST/usr/lib/libjs_static.ajs ] && rm $PKG_DEST/usr/lib/libjs_static.ajs 
    sed -i '/@NSPR_CFLAGS@/d' $PKG_DEST/usr/bin/js78-config
}