[#653] Upgrade to GraalVM 20.3.0
This commit is contained in:
parent
db5466d3c4
commit
9a80a47cfa
11 changed files with 108 additions and 64 deletions
|
|
@ -70,7 +70,7 @@ jobs:
|
||||||
working_directory: ~/repo
|
working_directory: ~/repo
|
||||||
environment:
|
environment:
|
||||||
LEIN_ROOT: "true"
|
LEIN_ROOT: "true"
|
||||||
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-20.2.0
|
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-20.3.0
|
||||||
BABASHKA_PLATFORM: linux # used in release script
|
BABASHKA_PLATFORM: linux # used in release script
|
||||||
BABASHKA_TEST_ENV: native
|
BABASHKA_TEST_ENV: native
|
||||||
BABASHKA_XMX: "-J-Xmx6500m"
|
BABASHKA_XMX: "-J-Xmx6500m"
|
||||||
|
|
@ -104,9 +104,9 @@ jobs:
|
||||||
name: Download GraalVM
|
name: Download GraalVM
|
||||||
command: |
|
command: |
|
||||||
cd ~
|
cd ~
|
||||||
if ! [ -d graalvm-ce-java11-20.2.0 ]; then
|
if ! [ -d graalvm-ce-java11-20.3.0 ]; then
|
||||||
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
fi
|
fi
|
||||||
- run:
|
- run:
|
||||||
name: Build binary
|
name: Build binary
|
||||||
|
|
@ -126,7 +126,7 @@ jobs:
|
||||||
- save_cache:
|
- save_cache:
|
||||||
paths:
|
paths:
|
||||||
- ~/.m2
|
- ~/.m2
|
||||||
- ~/graalvm-ce-java11-20.2.0
|
- ~/graalvm-ce-java11-20.3.0
|
||||||
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
||||||
- store_artifacts:
|
- store_artifacts:
|
||||||
path: /tmp/release
|
path: /tmp/release
|
||||||
|
|
@ -141,7 +141,7 @@ jobs:
|
||||||
working_directory: ~/repo
|
working_directory: ~/repo
|
||||||
environment:
|
environment:
|
||||||
LEIN_ROOT: "true"
|
LEIN_ROOT: "true"
|
||||||
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-20.2.0
|
GRAALVM_HOME: /home/circleci/graalvm-ce-java11-20.3.0
|
||||||
BABASHKA_PLATFORM: linux-static # used in release script
|
BABASHKA_PLATFORM: linux-static # used in release script
|
||||||
BABASHKA_TEST_ENV: native
|
BABASHKA_TEST_ENV: native
|
||||||
BABASHKA_STATIC: true
|
BABASHKA_STATIC: true
|
||||||
|
|
@ -176,9 +176,9 @@ jobs:
|
||||||
name: Download GraalVM
|
name: Download GraalVM
|
||||||
command: |
|
command: |
|
||||||
cd ~
|
cd ~
|
||||||
if ! [ -d graalvm-ce-java11-20.2.0 ]; then
|
if ! [ -d graalvm-ce-java11-20.3.0 ]; then
|
||||||
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
fi
|
fi
|
||||||
- run:
|
- run:
|
||||||
name: Build binary
|
name: Build binary
|
||||||
|
|
@ -198,7 +198,7 @@ jobs:
|
||||||
- save_cache:
|
- save_cache:
|
||||||
paths:
|
paths:
|
||||||
- ~/.m2
|
- ~/.m2
|
||||||
- ~/graalvm-ce-java11-20.2.0
|
- ~/graalvm-ce-java11-20.3.0
|
||||||
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
key: linux-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
||||||
- store_artifacts:
|
- store_artifacts:
|
||||||
path: /tmp/release
|
path: /tmp/release
|
||||||
|
|
@ -212,7 +212,7 @@ jobs:
|
||||||
xcode: "12.0.0"
|
xcode: "12.0.0"
|
||||||
environment:
|
environment:
|
||||||
MACOSX_DEPLOYMENT_TARGET: 10.13 # 10.12 is EOL
|
MACOSX_DEPLOYMENT_TARGET: 10.13 # 10.12 is EOL
|
||||||
GRAALVM_HOME: /Users/distiller/graalvm-ce-java11-20.2.0/Contents/Home
|
GRAALVM_HOME: /Users/distiller/graalvm-ce-java11-20.3.0/Contents/Home
|
||||||
BABASHKA_PLATFORM: macos # used in release script
|
BABASHKA_PLATFORM: macos # used in release script
|
||||||
BABASHKA_TEST_ENV: native
|
BABASHKA_TEST_ENV: native
|
||||||
BABASHKA_XMX: "-J-Xmx6500m"
|
BABASHKA_XMX: "-J-Xmx6500m"
|
||||||
|
|
@ -240,9 +240,9 @@ jobs:
|
||||||
command: |
|
command: |
|
||||||
cd ~
|
cd ~
|
||||||
ls -la
|
ls -la
|
||||||
if ! [ -d graalvm-ce-java11-20.2.0 ]; then
|
if ! [ -d graalvm-ce-java11-20.3.0 ]; then
|
||||||
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-darwin-amd64-20.2.0.tar.gz
|
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-darwin-amd64-20.3.0.tar.gz
|
||||||
tar xzf graalvm-ce-java11-darwin-amd64-20.2.0.tar.gz
|
tar xzf graalvm-ce-java11-darwin-amd64-20.3.0.tar.gz
|
||||||
fi
|
fi
|
||||||
- run:
|
- run:
|
||||||
name: Build binary
|
name: Build binary
|
||||||
|
|
@ -264,7 +264,7 @@ jobs:
|
||||||
- save_cache:
|
- save_cache:
|
||||||
paths:
|
paths:
|
||||||
- ~/.m2
|
- ~/.m2
|
||||||
- ~/graalvm-ce-java11-20.2.0
|
- ~/graalvm-ce-java11-20.3.0
|
||||||
key: mac-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
key: mac-{{ checksum "project.clj" }}-{{ checksum ".circleci/config.yml" }}
|
||||||
- store_artifacts:
|
- store_artifacts:
|
||||||
path: /tmp/release
|
path: /tmp/release
|
||||||
|
|
|
||||||
72
.github/workflows/build.yml
vendored
72
.github/workflows/build.yml
vendored
|
|
@ -44,17 +44,17 @@ jobs:
|
||||||
uses: actions/cache@v1
|
uses: actions/cache@v1
|
||||||
id: cache-graalvm
|
id: cache-graalvm
|
||||||
with:
|
with:
|
||||||
path: ~/graalvm-ce-java11-20.2.0
|
path: ~/graalvm-ce-java11-20.3.0
|
||||||
key: ${{ runner.os }}-graalvm-20.2.0
|
key: ${{ runner.os }}-graalvm-20.3.0
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-graalvm-20.2.0
|
${{ runner.os }}-graalvm-20.3.0
|
||||||
|
|
||||||
- name: Download GraalVM
|
- name: Download GraalVM
|
||||||
run: |
|
run: |
|
||||||
cd ~
|
cd ~
|
||||||
if ! [ -d graalvm-ce-java11-20.2.0 ]; then
|
if ! [ -d graalvm-ce-java11-20.3.0 ]; then
|
||||||
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Fetch deps
|
- name: Fetch deps
|
||||||
|
|
@ -64,18 +64,18 @@ jobs:
|
||||||
|
|
||||||
- name: Run tests
|
- name: Run tests
|
||||||
run: |
|
run: |
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
script/test
|
script/test
|
||||||
|
|
||||||
- name: Test libraries
|
- name: Test libraries
|
||||||
run: |
|
run: |
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
sudo script/install-clojure
|
sudo script/install-clojure
|
||||||
script/run_lib_tests
|
script/run_lib_tests
|
||||||
|
|
||||||
- name: Build uberjar
|
- name: Build uberjar
|
||||||
run: |
|
run: |
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
script/uberjar
|
script/uberjar
|
||||||
|
|
||||||
- name: Babashka version
|
- name: Babashka version
|
||||||
|
|
@ -132,17 +132,17 @@ jobs:
|
||||||
uses: actions/cache@v1
|
uses: actions/cache@v1
|
||||||
id: cache-graalvm
|
id: cache-graalvm
|
||||||
with:
|
with:
|
||||||
path: ~/graalvm-ce-java11-20.2.0
|
path: ~/graalvm-ce-java11-20.3.0
|
||||||
key: ${{ runner.os }}-graalvm-20.2.0
|
key: ${{ runner.os }}-graalvm-20.3.0
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-graalvm-20.2.0
|
${{ runner.os }}-graalvm-20.3.0
|
||||||
|
|
||||||
- name: Download GraalVM
|
- name: Download GraalVM
|
||||||
run: |
|
run: |
|
||||||
cd ~
|
cd ~
|
||||||
if ! [ -d graalvm-ce-java11-20.2.0 ]; then
|
if ! [ -d graalvm-ce-java11-20.3.0 ]; then
|
||||||
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Babashka version
|
- name: Babashka version
|
||||||
|
|
@ -155,13 +155,13 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
||||||
export BABASHKA_XMX="-J-Xmx6g"
|
export BABASHKA_XMX="-J-Xmx6g"
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
|
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
|
||||||
script/compile
|
script/compile
|
||||||
|
|
||||||
- name: Test binary
|
- name: Test binary
|
||||||
run: |
|
run: |
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
BABASHKA_TEST_ENV=native script/test
|
BABASHKA_TEST_ENV=native script/test
|
||||||
|
|
||||||
- name: Install clojure
|
- name: Install clojure
|
||||||
|
|
@ -170,7 +170,7 @@ jobs:
|
||||||
|
|
||||||
- name: Test libraries
|
- name: Test libraries
|
||||||
run: |
|
run: |
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
BABASHKA_TEST_ENV=native script/run_lib_tests
|
BABASHKA_TEST_ENV=native script/run_lib_tests
|
||||||
|
|
||||||
- uses: actions/upload-artifact@v1
|
- uses: actions/upload-artifact@v1
|
||||||
|
|
@ -212,17 +212,17 @@ jobs:
|
||||||
uses: actions/cache@v1
|
uses: actions/cache@v1
|
||||||
id: cache-graalvm
|
id: cache-graalvm
|
||||||
with:
|
with:
|
||||||
path: ~/graalvm-ce-java11-20.2.0
|
path: ~/graalvm-ce-java11-20.3.0
|
||||||
key: ${{ runner.os }}-graalvm-20.2.0
|
key: ${{ runner.os }}-graalvm-20.3.0
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-graalvm-20.2.0
|
${{ runner.os }}-graalvm-20.3.0
|
||||||
|
|
||||||
- name: Download GraalVM
|
- name: Download GraalVM
|
||||||
run: |
|
run: |
|
||||||
cd ~
|
cd ~
|
||||||
if ! [ -d graalvm-ce-java11-20.2.0 ]; then
|
if ! [ -d graalvm-ce-java11-20.3.0 ]; then
|
||||||
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
tar xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
tar xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Babashka version
|
- name: Babashka version
|
||||||
|
|
@ -235,7 +235,7 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
||||||
export BABASHKA_XMX="-J-Xmx6g"
|
export BABASHKA_XMX="-J-Xmx6g"
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
export BABASHKA_STATIC=true
|
export BABASHKA_STATIC=true
|
||||||
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
|
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
|
||||||
script/compile
|
script/compile
|
||||||
|
|
@ -243,7 +243,7 @@ jobs:
|
||||||
- name: Test binary
|
- name: Test binary
|
||||||
run: |
|
run: |
|
||||||
./bb '(+ 1 2 3)'
|
./bb '(+ 1 2 3)'
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
BABASHKA_TEST_ENV=native script/test
|
BABASHKA_TEST_ENV=native script/test
|
||||||
|
|
||||||
- name: Install clojure
|
- name: Install clojure
|
||||||
|
|
@ -252,7 +252,7 @@ jobs:
|
||||||
|
|
||||||
- name: Test libraries
|
- name: Test libraries
|
||||||
run: |
|
run: |
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0"
|
||||||
BABASHKA_TEST_ENV=native script/run_lib_tests
|
BABASHKA_TEST_ENV=native script/run_lib_tests
|
||||||
|
|
||||||
- uses: actions/upload-artifact@v1
|
- uses: actions/upload-artifact@v1
|
||||||
|
|
@ -285,17 +285,17 @@ jobs:
|
||||||
uses: actions/cache@v1
|
uses: actions/cache@v1
|
||||||
id: cache-graalvm
|
id: cache-graalvm
|
||||||
with:
|
with:
|
||||||
path: ~/graalvm-ce-java11-20.2.0
|
path: ~/graalvm-ce-java11-20.3.0
|
||||||
key: ${{ runner.os }}-graalvm-20.2.0
|
key: ${{ runner.os }}-graalvm-20.3.0
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-graalvm-20.2.0
|
${{ runner.os }}-graalvm-20.3.0
|
||||||
|
|
||||||
- name: Download GraalVM
|
- name: Download GraalVM
|
||||||
run: |
|
run: |
|
||||||
cd ~
|
cd ~
|
||||||
if ! [ -d graalvm-ce-java11-20.2.0 ]; then
|
if ! [ -d graalvm-ce-java11-20.3.0 ]; then
|
||||||
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-darwin-amd64-20.2.0.tar.gz
|
curl -O -sL https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-darwin-amd64-20.3.0.tar.gz
|
||||||
tar xzf graalvm-ce-java11-darwin-amd64-20.2.0.tar.gz
|
tar xzf graalvm-ce-java11-darwin-amd64-20.3.0.tar.gz
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Babashka version
|
- name: Babashka version
|
||||||
|
|
@ -308,19 +308,19 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
export BABASHKA_JAR=babashka-${{ steps.babashka-version.outputs.version }}-standalone.jar
|
||||||
export BABASHKA_XMX="-J-Xmx6g"
|
export BABASHKA_XMX="-J-Xmx6g"
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0/Contents/Home"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0/Contents/Home"
|
||||||
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
|
cp babashka-${{ steps.babashka-version.outputs.version }}-reflection.json reflection.json
|
||||||
script/compile
|
script/compile
|
||||||
|
|
||||||
- name: Test binary
|
- name: Test binary
|
||||||
run: |
|
run: |
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0/Contents/Home"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0/Contents/Home"
|
||||||
sudo script/install-leiningen
|
sudo script/install-leiningen
|
||||||
BABASHKA_TEST_ENV=native script/test
|
BABASHKA_TEST_ENV=native script/test
|
||||||
|
|
||||||
- name: Test libraries
|
- name: Test libraries
|
||||||
run: |
|
run: |
|
||||||
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.2.0/Contents/Home"
|
export GRAALVM_HOME="$HOME/graalvm-ce-java11-20.3.0/Contents/Home"
|
||||||
sudo script/install-clojure
|
sudo script/install-clojure
|
||||||
BABASHKA_TEST_ENV=native script/run_lib_tests
|
BABASHKA_TEST_ENV=native script/run_lib_tests
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,13 +3,13 @@ FROM clojure:lein-2.9.1 AS BASE
|
||||||
RUN apt update
|
RUN apt update
|
||||||
RUN apt install --no-install-recommends -yy curl unzip build-essential zlib1g-dev
|
RUN apt install --no-install-recommends -yy curl unzip build-essential zlib1g-dev
|
||||||
WORKDIR "/opt"
|
WORKDIR "/opt"
|
||||||
RUN curl -sLO https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
RUN curl -sLO https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
RUN tar -xzf graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
|
RUN tar -xzf graalvm-ce-java11-linux-amd64-20.3.0.tar.gz
|
||||||
|
|
||||||
ARG BABASHKA_XMX="-J-Xmx3g"
|
ARG BABASHKA_XMX="-J-Xmx3g"
|
||||||
|
|
||||||
ENV GRAALVM_HOME="/opt/graalvm-ce-java11-20.2.0"
|
ENV GRAALVM_HOME="/opt/graalvm-ce-java11-20.3.0"
|
||||||
ENV JAVA_HOME="/opt/graalvm-ce-java11-20.2.0/bin"
|
ENV JAVA_HOME="/opt/graalvm-ce-java11-20.3.0/bin"
|
||||||
ENV PATH="$JAVA_HOME:$PATH"
|
ENV PATH="$JAVA_HOME:$PATH"
|
||||||
ENV BABASHKA_XMX=$BABASHKA_XMX
|
ENV BABASHKA_XMX=$BABASHKA_XMX
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ image: Visual Studio 2017
|
||||||
clone_folder: C:\projects\babashka
|
clone_folder: C:\projects\babashka
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
GRAALVM_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-20.2.0
|
GRAALVM_HOME: C:\projects\babashka\graalvm\graalvm-ce-java11-20.3.0
|
||||||
BABASHKA_XMX: "-J-Xmx5g"
|
BABASHKA_XMX: "-J-Xmx5g"
|
||||||
|
|
||||||
cache:
|
cache:
|
||||||
|
|
@ -44,7 +44,7 @@ build_script:
|
||||||
- cmd: >-
|
- cmd: >-
|
||||||
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"
|
||||||
|
|
||||||
powershell -Command "if (Test-Path('graalvm')) { return } else { (New-Object Net.WebClient).DownloadFile('https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/graalvm-ce-java11-windows-amd64-20.2.0.zip', 'graalvm.zip') }"
|
powershell -Command "if (Test-Path('graalvm')) { return } else { (New-Object Net.WebClient).DownloadFile('https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.3.0/graalvm-ce-java11-windows-amd64-20.3.0.zip', 'graalvm.zip') }"
|
||||||
|
|
||||||
powershell -Command "if (Test-Path('graalvm')) { return } else { Expand-Archive graalvm.zip graalvm }"
|
powershell -Command "if (Test-Path('graalvm')) { return } else { Expand-Archive graalvm.zip graalvm }"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
- Install [lein](https://leiningen.org/) for producing uberjars
|
- Install [lein](https://leiningen.org/) for producing uberjars
|
||||||
- Download [GraalVM](https://www.graalvm.org/downloads/). Currently we use *java11-20.2.0*.
|
- Download [GraalVM](https://www.graalvm.org/downloads/). Currently we use *java11-20.3.0*.
|
||||||
- For Windows, installing Visual Studio 2019 with the "Desktop development
|
- For Windows, installing Visual Studio 2019 with the "Desktop development
|
||||||
with C++" workload is recommended.
|
with C++" workload is recommended.
|
||||||
- Set `$GRAALVM_HOME` to the GraalVM distribution directory. On macOS this can look like:
|
- Set `$GRAALVM_HOME` to the GraalVM distribution directory. On macOS this can look like:
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
# Developing Babashka
|
# Developing Babashka
|
||||||
|
|
||||||
You need [lein](https://leiningen.org/) for running JVM tests and/or producing uberjars. For building binaries you need GraalVM. Currently we use java11-20.2.0.
|
You need [lein](https://leiningen.org/) for running JVM tests and/or producing uberjars. For building binaries you need GraalVM. Currently we use java11-20.3.0.
|
||||||
|
|
||||||
## Clone repository
|
## Clone repository
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,7 @@
|
||||||
"-Dclojure.spec.skip-macros=true"]
|
"-Dclojure.spec.skip-macros=true"]
|
||||||
:main babashka.main
|
:main babashka.main
|
||||||
:aot :all}
|
:aot :all}
|
||||||
:native-image {:dependencies [[borkdude/clj-reflector-graal-java11-fix "0.0.1-graalvm-20.2.0"]]}
|
:native-image {:dependencies [[borkdude/clj-reflector-graal-java11-fix "0.0.1-graalvm-20.3.0"]]}
|
||||||
:reflection {:main babashka.impl.classes/generate-reflection-file}}
|
:reflection {:main babashka.impl.classes/generate-reflection-file}}
|
||||||
:aliases {"bb" ["with-profile" "test" "run" "-m" "babashka.main"]}
|
:aliases {"bb" ["with-profile" "test" "run" "-m" "babashka.main"]}
|
||||||
:deploy-repositories [["clojars" {:url "https://clojars.org/repo"
|
:deploy-repositories [["clojars" {:url "https://clojars.org/repo"
|
||||||
|
|
|
||||||
26
resources/CutOffSunAwtWwwContentAudioAiff.java
Normal file
26
resources/CutOffSunAwtWwwContentAudioAiff.java
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
import org.graalvm.nativeimage.Platform;
|
||||||
|
import org.graalvm.nativeimage.Platforms;
|
||||||
|
import com.oracle.svm.core.annotate.TargetClass;
|
||||||
|
import com.oracle.svm.core.annotate.Delete;
|
||||||
|
|
||||||
|
public final class CutOffSunAwtWwwContentAudioAiff {
|
||||||
|
}
|
||||||
|
|
||||||
|
// @Platforms(Platform.DARWIN.class)
|
||||||
|
// @TargetClass(className = "sun.net.spi.DefaultProxySelector")
|
||||||
|
// @Delete
|
||||||
|
// final class Target_sun_net_spi_DefaultProxySelector {
|
||||||
|
// }
|
||||||
|
|
||||||
|
// @Platforms(Platform.DARWIN.class)
|
||||||
|
|
||||||
|
// This cuts of access to the javax.sound package via java.net.HttpUrlConnection:
|
||||||
|
// sun.awt.www.content.audio.aiff.getContent ->
|
||||||
|
// java.net.ContentHandler.getContent ->
|
||||||
|
// java.net.URLConnection.getContent()
|
||||||
|
|
||||||
|
@Platforms(Platform.DARWIN.class)
|
||||||
|
@TargetClass(className = "sun.awt.www.content.audio.aiff")
|
||||||
|
@Delete
|
||||||
|
final class Target_sun_awt_www_content_audio_aiff {
|
||||||
|
}
|
||||||
|
|
@ -51,9 +51,9 @@
|
||||||
;; OR
|
;; OR
|
||||||
;;
|
;;
|
||||||
;; We could have them as environment variables
|
;; We could have them as environment variables
|
||||||
(def current-graal-version "20.1.0")
|
(def current-graal-version "20.2.0")
|
||||||
(def current-java-version "java11")
|
(def current-java-version "java11")
|
||||||
(def valid-graal-bumps ["19.3.2" "20.1.0" "20.2.0"])
|
(def valid-graal-bumps ["19.3.2" "20.1.0" "20.2.0" "20.3.0"])
|
||||||
(def valid-java-bumps ["java8" "java11"])
|
(def valid-java-bumps ["java8" "java11"])
|
||||||
|
|
||||||
(def cl-options
|
(def cl-options
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@ export PATH=$GRAALVM_HOME/bin:$PATH
|
||||||
|
|
||||||
SVM_JAR=$(find -L "$GRAALVM_HOME" | grep svm.jar)
|
SVM_JAR=$(find -L "$GRAALVM_HOME" | grep svm.jar)
|
||||||
"$GRAALVM_HOME/bin/javac" -cp "$SVM_JAR" resources/CutOffCoreServicesDependencies.java
|
"$GRAALVM_HOME/bin/javac" -cp "$SVM_JAR" resources/CutOffCoreServicesDependencies.java
|
||||||
|
"$GRAALVM_HOME/bin/javac" -cp "$SVM_JAR" resources/CutOffSunAwtWwwContentAudioAiff.java
|
||||||
|
|
||||||
if [ -z "$BABASHKA_JAR" ]; then
|
if [ -z "$BABASHKA_JAR" ]; then
|
||||||
lein with-profiles +reflection,+native-image "do" run
|
lein with-profiles +reflection,+native-image "do" run
|
||||||
|
|
@ -43,8 +44,8 @@ args=( "-jar" "$BABASHKA_JAR"
|
||||||
"-H:IncludeResources=BABASHKA_VERSION"
|
"-H:IncludeResources=BABASHKA_VERSION"
|
||||||
"-H:IncludeResources=SCI_VERSION"
|
"-H:IncludeResources=SCI_VERSION"
|
||||||
"-H:ReflectionConfigurationFiles=reflection.json"
|
"-H:ReflectionConfigurationFiles=reflection.json"
|
||||||
"--initialize-at-run-time=java.lang.Math\$RandomNumberGeneratorHolder"
|
|
||||||
"--initialize-at-build-time"
|
"--initialize-at-build-time"
|
||||||
|
# "-H:+PrintAnalysisCallTree"
|
||||||
"-H:Log=registerResource:"
|
"-H:Log=registerResource:"
|
||||||
"-H:EnableURLProtocols=http,https,jar"
|
"-H:EnableURLProtocols=http,https,jar"
|
||||||
"--enable-all-security-services"
|
"--enable-all-security-services"
|
||||||
|
|
@ -54,6 +55,16 @@ args=( "-jar" "$BABASHKA_JAR"
|
||||||
"--no-server"
|
"--no-server"
|
||||||
"--report-unsupported-elements-at-runtime"
|
"--report-unsupported-elements-at-runtime"
|
||||||
"--initialize-at-run-time=org.postgresql.sspi.SSPIClient"
|
"--initialize-at-run-time=org.postgresql.sspi.SSPIClient"
|
||||||
|
"--native-image-info"
|
||||||
|
"--verbose"
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.AudioFileReader"
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiFileReader"
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.MixerProvider"
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.FormatConversionProvider"
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.AudioFileWriter"
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiDeviceProvider"
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.SoundbankReader"
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiFileWriter"
|
||||||
"$BABASHKA_XMX" )
|
"$BABASHKA_XMX" )
|
||||||
|
|
||||||
BABASHKA_STATIC=${BABASHKA_STATIC:-}
|
BABASHKA_STATIC=${BABASHKA_STATIC:-}
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,6 @@ call %GRAALVM_HOME%\bin\native-image.cmd ^
|
||||||
"-H:IncludeResources=BABASHKA_VERSION" ^
|
"-H:IncludeResources=BABASHKA_VERSION" ^
|
||||||
"-H:IncludeResources=SCI_VERSION" ^
|
"-H:IncludeResources=SCI_VERSION" ^
|
||||||
"-H:ReflectionConfigurationFiles=reflection.json" ^
|
"-H:ReflectionConfigurationFiles=reflection.json" ^
|
||||||
"--initialize-at-run-time=java.lang.Math$RandomNumberGeneratorHolder" ^
|
|
||||||
"--initialize-at-build-time" ^
|
"--initialize-at-build-time" ^
|
||||||
"--initialize-at-run-time=org.postgresql.sspi.SSPIClient" ^
|
"--initialize-at-run-time=org.postgresql.sspi.SSPIClient" ^
|
||||||
"-H:EnableURLProtocols=http,https,jar" ^
|
"-H:EnableURLProtocols=http,https,jar" ^
|
||||||
|
|
@ -41,6 +40,14 @@ call %GRAALVM_HOME%\bin\native-image.cmd ^
|
||||||
"-H:Log=registerResource:" ^
|
"-H:Log=registerResource:" ^
|
||||||
"--no-fallback" ^
|
"--no-fallback" ^
|
||||||
"--verbose" ^
|
"--verbose" ^
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.AudioFileReader" ^
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiFileReader" ^
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.MixerProvider" ^
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.FormatConversionProvider" ^
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.sampled.spi.AudioFileWriter" ^
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiDeviceProvider" ^
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.SoundbankReader" ^
|
||||||
|
"-H:ServiceLoaderFeatureExcludeServices=javax.sound.midi.spi.MidiFileWriter" ^
|
||||||
"%BABASHKA_XMX%"
|
"%BABASHKA_XMX%"
|
||||||
|
|
||||||
if %errorlevel% neq 0 exit /b %errorlevel%
|
if %errorlevel% neq 0 exit /b %errorlevel%
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue