# SPDX-License-Identifier: CC0-1.0 language = 'Gleam' display = 'Gleam (Gleam 1.12.0 (OTP 28.0.2))' license = [ { name = 'Apache-2.0', url = 'https://github.com/gleam-lang/gleam/blob/main/LICENCE' }, ] library.bidict = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/bidict' }, ], version = '1.0.0' } library.bigdecimal = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/bigdecimal' }, ], version = '1.1.0' } library.bigi = { license = [ { name = 'MIT', url = 'https://hex.pm/packages/bigi' }, ], indirect = true } library.bitsandbobs = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/bitsandbobs' }, ], version = '1.1.0' } library.dijkstra = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/dijkstra' }, ], version = '1.0.0' } library.gleam_community_maths = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/gleam_community_maths' }, ], version = '2.0.0' } library.gleam_deque = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/gleam_deque' }, ], version = '1.0.0' } library.gleam_regexp = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/gleam_regexp' }, ], version = '1.1.1' } library.gleam_stdlib = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/gleam_stdlib' }, ], version = '0.63.0' } library.gleam_yielder = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/gleam_yielder' }, ], version = '1.1.0' } library.gleamy_structures = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/gleamy_structures' }, ], version = '1.2.0' } library.glearray = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/glearray' }, ], version = '2.1.0' } library.gleeunit = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/gleeunit' }, ], indirect = true } library.ieee_float = { license = [ { name = 'MIT', url = 'https://hex.pm/packages/ieee_float' }, ], version = '1.5.0' } library.iv = { license = [ { name = 'BSD-3-Clause', url = 'https://hex.pm/packages/iv' }, ], version = '1.3.2' } library.stdin = { license = [ { name = 'MIT', url = 'https://hex.pm/packages/stdin' }, ], version = '2.0.2' } library.trie_again = { license = [ { name = 'Apache-2.0', url = 'https://hex.pm/packages/trie_again' }, ], version = '1.1.3' } filename = 'src/judge.gleam' install = ''' AC_OTP_VERSION=28.0.2 AC_GLEAM_VERSION=1.12.0 sudo apt-get update sudo apt-get install -y libssl-dev unixodbc-dev pushd /tmp # Install Erlang OTP wget -q -O erlang.tar.gz https://github.com/erlang/otp/releases/download/OTP-${AC_OTP_VERSION}/otp_src_${AC_OTP_VERSION}.tar.gz mkdir erlang tar -C erlang --strip-components=1 -xf erlang.tar.gz pushd erlang ./configure --without-termcap make -j$(nproc) sudo make install popd # Install Gleam wget -q -O gleam.tar.gz https://github.com/gleam-lang/gleam/releases/download/v${AC_GLEAM_VERSION}/gleam-v${AC_GLEAM_VERSION}-x86_64-unknown-linux-musl.tar.gz sudo tar -C /usr/local/bin -xf gleam.tar.gz popd # Create Project gleam new . # Install libraries gleam add \ bidict@1.0.0 \ bigdecimal@1.1.0 \ bitsandbobs@1.1.0 \ dijkstra@1.0.0 \ gleam_community_maths@2.0.0 \ gleam_deque@1.0.0 \ gleam_regexp@1.1.1 \ gleam_stdlib@0.63.0 \ gleam_yielder@1.1.0 \ gleamy_structures@1.2.0 \ glearray@2.1.0 \ ieee_float@1.5.0 \ iv@1.3.2 \ stdin@2.0.2 \ trie_again@1.1.3 \ # build and run gleam build gleam run --no-print-progress # cleanup rm -fr build/dev/erlang/judge ''' compile = ''' gleam build --no-print-progress ''' object = 'build/dev/erlang/judge/ebin/judge.beam' execution = [ 'gleam', 'run', '--no-print-progress', ]