aboutsummaryrefslogtreecommitdiffstats
path: root/community/erlang/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/erlang/APKBUILD')
-rw-r--r--community/erlang/APKBUILD90
1 files changed, 72 insertions, 18 deletions
diff --git a/community/erlang/APKBUILD b/community/erlang/APKBUILD
index 1cf6f1aef89..ca3d771cb46 100644
--- a/community/erlang/APKBUILD
+++ b/community/erlang/APKBUILD
@@ -1,17 +1,33 @@
# Contributor: Michael Mason <ms13sp@gmail.com>
# Contributor: Gabriele Santomaggio <g.santomaggio@gmail.com>
# Contributor: Marlus Saraiva <marlus.saraiva@gmail.com>
-# Maintainer: Daniel Isaksen <d@duniel.no>
+# Contributor: Daniel Isaksen <d@duniel.no>
+# Maintainer: Celeste <cielesti@protonmail.com>
+
+# NOTE: Please do NOT upgrade to X.0 releases of Erlang, as they tend
+# to have breaking changes which require the rest of the ecosystem to
+# catch up with. If in doubt, do a test rebuild of community/elixir.
+
pkgname=erlang
-pkgver=23.2.6
+pkgver=26.2.4
pkgrel=0
pkgdesc="General-purpose programming language and runtime environment"
url="https://www.erlang.org/"
license="Apache-2.0"
-arch="all !mips !mips64"
-makedepends="perl-dev perl zlib-dev ncurses-dev openssl-dev openjdk8
- unixodbc-dev autoconf wxgtk-dev glu-dev"
+arch="all"
+makedepends="
+ autoconf
+ glu-dev
+ ncurses-dev
+ openssl-dev
+ perl
+ perl-dev
+ unixodbc-dev
+ wxwidgets-dev
+ zlib-dev
+ "
subpackages="$pkgname-dev
+ $pkgname-doc
$pkgname-debugger:_mv_erlang_lib
$pkgname-dialyzer:_mv_erlang_lib
$pkgname-et:_mv_erlang_lib
@@ -25,15 +41,29 @@ source="https://github.com/erlang/otp/releases/download/OTP-$pkgver/otp_src_$pkg
builddir="$srcdir/otp_src_$pkgver"
+# Disable Java support (jinterface) on architectures that lack OpenJDK
+case "$CTARGET_ARCH" in
+ x86|armhf|armv7|x86_64|aarch64|ppc64le|s390x)
+ makedepends="$makedepends openjdk8"
+ export PATH="/usr/lib/jvm/java-1.8-openjdk/bin:$PATH"
+ ;;
+ *)
+ ;;
+esac
+
# secfixes:
+# 26.2.1-r0:
+# - CVE-2023-48795
+# 25.0.3-r0:
+# - CVE-2022-37026
# 23.2.5-r0:
# - CVE-2020-35733
build() {
- export CPPFLAGS="-D_BSD_SOURCE $CPPFLAGS"
- export PATH="/usr/lib/jvm/java-1.8-openjdk/bin:$PATH"
+ # it's a whole language runtime
+ export CFLAGS="$CFLAGS -O2 -D_BSD_SOURCE"
+ export CXXFLAGS="$CXXFLAGS -O2"
- ./otp_build autoconf
./configure \
--prefix=/usr \
--sysconfdir=/etc \
@@ -45,6 +75,7 @@ build() {
--enable-shared-zlib \
--enable-ssl=dynamic-ssl-lib
make
+ make DOC_TARGETS="chunks man" docs
}
check() {
@@ -52,19 +83,30 @@ check() {
}
package() {
- make DESTDIR="$pkgdir" install
+ make DESTDIR="$pkgdir" \
+ DOC_TARGETS="chunks man" \
+ install \
+ install-docs
+
+ cd "$pkgdir"
+
+ rm -vr usr/lib/erlang/doc \
+ usr/lib/erlang/COPYRIGHT \
+ usr/lib/erlang/PR.template \
+ usr/lib/erlang/README.md
}
_mv_erlang_lib() {
- local lib=$(echo ${subpkgname#$pkgname-} | tr '-' '_')
+ local lib=$(echo ${subpkgname#"$pkgname-"} | tr '-' '_')
depends="$pkgname=$pkgver-r$pkgrel"
case "$lib" in
- debugger) depends="$pkgname-wx=$pkgver-$pkgrel";;
- dialyzer) depends="$pkgname-wx=$pkgver-$pkgrel";;
- et) depends="$pkgname-wx=$pkgver-$pkgrel";;
+ debugger) depends="$pkgname-wx=$pkgver-r$pkgrel";;
+ dialyzer) depends="$pkgname-wx=$pkgver-r$pkgrel";;
+ et) depends="$pkgname-wx=$pkgver-r$pkgrel";;
megaco) depends="$pkgname-debugger=$pkgver-r$pkgrel $pkgname-et=$pkgver-r$pkgrel";;
- observer) depends="$pkgname-et=$pkgver-r$pkgrel $pkgname-wx=$pkgver-$pkgrel";;
- reltool) depends="$pkgname-wx=$pkgver-$pkgrel";;
+ observer) depends="$pkgname-et=$pkgver-r$pkgrel $pkgname-wx=$pkgver-r$pkgrel";;
+ reltool) depends="$pkgname-wx=$pkgver-r$pkgrel";;
+ wx) depends="$pkgname=$pkgver-r$pkgrel xauth terminus-font";;
esac
mkdir -p "$subpkgdir"/usr/lib/erlang/lib
@@ -108,6 +150,16 @@ dev() {
done
}
+doc() {
+ default_doc
+ pkgdesc="$pkgdesc (documentation chunks and man pages)"
+
+ amove usr/lib/erlang/*/info \
+ usr/lib/erlang/lib/*/doc \
+ usr/lib/erlang/lib/*/info \
+ usr/lib/erlang/man
+}
+
# helper script to manually check the dependencies of subpackages
verifydeps() {
local _p
@@ -120,11 +172,13 @@ verifydeps() {
local _pkginfo="$pkgdir/../.control.$_p"/.PKGINFO
msg "$_p"
grep '^depend =' $_pkginfo || true
- find "$_subdir" -name '*.app' | while read f; do
+ find "$_subdir" -name '*.app' | while read -r _f; do
echo " $_f"
- sed -n '/{runtime_dependencies/,/}/p' $f
+ sed -n '/{runtime_dependencies/,/}/p' $_f
done
done
}
-sha512sums="61b1292c7b2aba67af9d343c8e8f2a95c379c54d8d58be62f96178dfb73f61eb2b19dce0a620193bfbdd00969f0865339d1cd142eabcc1061d543574742b4ad1 otp_src_23.2.6.tar.gz"
+sha512sums="
+865561793c301c02b10b4601b3ddd332f1a3a8c163927650592abbe5e80ff7a31c501429eef53497cbaab9277cebfe70eeeb88844b2f83b048ac17e37726d64d otp_src_26.2.4.tar.gz
+"