pantry/projects/erlang.org/package.yml
Jacob Heider a886d7a769 fix(erlang)
closes #6184
2024-06-12 13:23:04 -04:00

102 lines
2.2 KiB
YAML

distributable:
url: https://github.com/erlang/otp/releases/download/OTP-{{ version.raw }}/otp_src_{{ version.raw }}.tar.gz
strip-components: 1
provides:
- bin/ct_run
- bin/dialyzer
- bin/epmd
- bin/erl
- bin/erlc
- bin/escript
- bin/run_erl
- bin/to_erl
- bin/typer
interprets:
extensions: erl
args: escript
versions:
github: erlang/otp/releases
strip: /^OTP /
dependencies:
openssl.org: ^1.1
invisible-island.net/ncurses: '*'
linux/x86-64:
gnu.org/gcc/libstdcxx: '*'
runtime:
env:
ERL_ROOTDIR: ${{prefix}}/lib/erlang
build:
dependencies:
perl.org: '>=5'
linux/x86-64:
gnu.org/gcc: '*'
script:
- ./configure $ARGS
- make -j {{hw.concurrency}}
- make install
env:
CC: cc
CXX: c++
LD: ld
CFLAGS: -O2 -g $CFLAGS
ERL_TOP: $SRCROOT
ARGS:
- --disable-debug
- --disable-silent-rules
- --prefix={{prefix}}
- --enable-dynamic-ssl-lib
- --enable-hipe
- --enable-smp-support
- --enable-threads
- --enable-pie
- --with-ssl={{deps.openssl.org.prefix}}
- --without-javac
linux/x86-64:
CC: gcc
CXX: g++
LD: gcc
darwin:
ARGS:
- --enable-darwin-64bit
- --enable-kernel-poll
- --with-dynamic-trace=dtrace
test:
dependencies:
pkgx.sh: 1
script:
- epmd -kill || true
- epmd -daemon -address 127.0.0.1 -relaxed_command_check
- run: test "$(escript $FIXTURE 10)" = "factorial 10 = 3628800"
fixture:
extname: erl
content: |
#!/usr/bin/env escript
%% -*- erlang -*-
%%! -smp enable -sname factorial -mnesia debug verbose
main([String]) ->
try
N = list_to_integer(String),
F = fac(N),
io:format("factorial ~w = ~w\n", [N,F])
catch
_:_ ->
usage()
end;
main(_) ->
usage().
usage() ->
io:format("usage: factorial integer\n").
fac(0) -> 1;
fac(N) -> N * fac(N-1).
- epmd -kill || true
env:
ERL_DIST_PORT: $(pkgx get-port | tail -n1)