|
4 | 4 | # With Elixir archive: |
5 | 5 | # |
6 | 6 | # ELIXIR_ZIP=Precompiled.zip OTP_VERSION=25.3.2.2 ./build.sh |
7 | | -# |
8 | | -# With Elixir version: |
9 | | -# |
10 | | -# ELIXIR_VERSION=1.14.5 OTP_VERSION=25.3.2.2 ./build.sh |
11 | 7 | set -euo pipefail |
12 | 8 |
|
13 | | -OTP_VERSION="${OTP_VERSION:-26.0}" |
14 | | -otp_release=`echo "${OTP_VERSION}" | cut -d. -f1` |
15 | | - |
16 | 9 | mkdir -p tmp |
| 10 | +rm -rf tmp/elixir |
| 11 | +unzip -d "tmp/elixir" "${ELIXIR_ZIP}" |
17 | 12 |
|
18 | | -ELIXIR_VERSION="${ELIXIR_VERSION:-}" |
19 | | -if [ -n "${ELIXIR_VERSION}" ]; then |
20 | | - ELIXIR_ZIP="tmp/elixir-${ELIXIR_VERSION}-otp-${otp_release}.zip" |
21 | | - if [ ! -f "${ELIXIR_ZIP}" ]; then |
22 | | - url="https://github.com/elixir-lang/elixir/releases/download/v${ELIXIR_VERSION}/elixir-otp-${otp_release}.zip" |
23 | | - echo "downloading ${url}" |
24 | | - curl --fail -L -o "${ELIXIR_ZIP}" "${url}" |
25 | | - fi |
26 | | - basename=elixir-${ELIXIR_VERSION}-otp-${otp_release} |
27 | | -else |
28 | | - basename=elixir-otp-${otp_release} |
29 | | -fi |
30 | | - |
31 | | -if [ ! -d "tmp/${basename}" ]; then |
32 | | - unzip -d "tmp/${basename}" "${ELIXIR_ZIP}" |
33 | | -fi |
| 13 | +elixir_version=`cat tmp/elixir/VERSION` |
| 14 | +otp_release=`erl -noshell -eval 'io:put_chars(erlang:system_info(otp_release)), halt().'` |
| 15 | +otp_version=`erl -noshell -eval '{ok, Vsn} = file:read_file(code:root_dir() ++ "/releases/" ++ erlang:system_info(otp_release) ++ "/OTP_VERSION"), io:put_chars(Vsn), halt().'` |
| 16 | +elixir_exe=elixir-otp-${otp_release}.exe |
34 | 17 |
|
35 | 18 | # brew install makensis |
36 | 19 | # apt install -y nsis |
37 | 20 | # choco install -y nsis |
38 | 21 | export PATH="/c/Program Files (x86)/NSIS:${PATH}" |
39 | 22 | makensis \ |
40 | | - -X"OutFile tmp\\${basename}.exe" \ |
41 | | - -DOTP_VERSION=${OTP_VERSION} \ |
| 23 | + -X"OutFile tmp\\${elixir_exe}" \ |
42 | 24 | -DOTP_RELEASE="${otp_release}" \ |
43 | | - -DELIXIR_DIR=tmp\\${basename} \ |
| 25 | + -DOTP_VERSION=${otp_version} \ |
| 26 | + -DELIXIR_DIR=tmp\\elixir \ |
| 27 | + -DELIXIR_VERSION=${elixir_version} \ |
44 | 28 | installer.nsi |
45 | 29 |
|
46 | | -echo "Installer path: tmp/${basename}.exe" |
| 30 | +echo "Installer path: tmp/${elixir_exe}" |
0 commit comments