diff options
Diffstat (limited to 'community/erlang/APKBUILD')
-rw-r--r-- | community/erlang/APKBUILD | 90 |
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 +" |