sdrtrunk: WIP, push openjdk 15 first

This commit is contained in:
blshkv 2020-11-02 22:33:23 +08:00
parent a5cd292c69
commit 3261cf49e7
No known key found for this signature in database
GPG key ID: 32BDCED870788F04
8 changed files with 232 additions and 0 deletions

View file

@ -0,0 +1,4 @@
DIST OpenJDK15U-jdk_aarch64_linux_hotspot_15.0.1_9.tar.gz 204293353 BLAKE2B e9ed5f52a4a493aa84ac7f236e07963bea0d9b6ec15f8a5e5ce1cfbd509f2f3ce02b3e072a8db5bea510057031cca7141349c9f39731128fcc284ad549ca164c SHA512 3c55e212b2ee35718345fce8fc3d2bfac94a673eea6ffd0f019bc099eb62c61b90ece3b69bf9abad5c5c119340969f701c664e7d8fa1f7e363e83c2d84241dce
DIST OpenJDK15U-jdk_arm_linux_hotspot_15.0.1_9.tar.gz 190092254 BLAKE2B aec9c3548424b7baba06e575cfafe0ab2ec2bf5ad140a8540d8998c60fb0fcbd324fa9f6d25ccc57130e27ecf22699dea411510b81ff5230759373915c862a7b SHA512 4bf975c57e45aca5e72b4edc14bccd32cc8f1429a7544cddabb0c470b71fc91695a7e3df8a7c94fceb0ba1b1005ab875a80e15e9e64c689321045a6f8ba4e0ea
DIST OpenJDK15U-jdk_ppc64le_linux_hotspot_15.0.1_9.tar.gz 188859845 BLAKE2B 9e401a97172416a7b069b67da07c10c1943a475957ee7987aa398f3fe76f36a53a6e698e4207ea4a48d59ea192e4fc25af265ca31401eea11e435939c7244f9c SHA512 0b3460692ba1222fe5ca6491b76318a69dc97f2a601011085c4ed060e969ad6660fb76e816db18f9c60bbd5b6a3b5b1ed6c1cead9b2c73c26d49fd69aaec80dc
DIST OpenJDK15U-jdk_x64_linux_hotspot_15.0.1_9.tar.gz 206689671 BLAKE2B b8292b630c6f114cfae3567191735eedc32def974f551fb3edce795ea16eb2c6a8d6c02da4fd7a8c669ec10e09675d2169dbda74f5de6243164d9dbc4fc1329b SHA512 d538aac5f9b4521350587e0148e1bb67af7a69505a6b74061d05caf4552f89e0d4d701c22cd6c2259e0a8b88f92bce9005e74b81707beab5c76cfa865ba30646

View file

@ -0,0 +1,16 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
VERSION="AdoptOpenJDK ${PV}"
JAVA_HOME="${EPREFIX}/opt/${P}"
JDK_HOME="${EPREFIX}/opt/${P}"
JAVAC="\${JAVA_HOME}/bin/javac"
PATH="\${JAVA_HOME}/bin"
ROOTPATH="\${JAVA_HOME}/bin"
LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
MANPATH=""
PROVIDES_TYPE="JDK JRE"
PROVIDES_VERSION="${SLOT}"
BOOTCLASSPATH=""
GENERATION="2"
ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"

View file

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>gyakovlev@gentoo.org</email>
<name>Georgy Yakovlev</name>
</maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<longdescription>
Java™ is the world's leading programming language and platform.
The code for Java is open source and available at OpenJDK™.
AdoptOpenJDK provides prebuilt OpenJDK binaries from a fully open source set of build scripts and infrastructure.
</longdescription>
<use>
<flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs (used to be X flag)</flag>
<flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
<flag name="source">Install JVM sources</flag>
</use>
</pkgmetadata>

View file

@ -0,0 +1,111 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit java-vm-2 toolchain-funcs eapi7-ver
abi_uri() {
echo "${2-$1}? (
https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk-${MY_PV}/OpenJDK${SLOT}U-jdk_${1}_linux_hotspot_${MY_PV//+/_}.tar.gz
)"
}
MY_PV=${PV/_p/+}
SLOT=${MY_PV%%[.+]*}
SRC_URI="
$(abi_uri arm)
$(abi_uri aarch64 arm64)
$(abi_uri ppc64le ppc64)
$(abi_uri x64 amd64)
"
DESCRIPTION="Prebuilt Java JDK binaries provided by AdoptOpenJDK"
HOMEPAGE="https://adoptopenjdk.net"
LICENSE="GPL-2-with-classpath-exception"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
IUSE="alsa cups +gentoo-vm headless-awt selinux source"
RDEPEND="
media-libs/fontconfig:1.0
media-libs/freetype:2
>=sys-apps/baselayout-java-0.1.0-r1
>=sys-libs/glibc-2.29-r7:*
sys-libs/zlib
alsa? ( media-libs/alsa-lib )
cups? ( net-print/cups )
selinux? ( sec-policy/selinux-java )
!headless-awt? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrender
x11-libs/libXtst
)"
RESTRICT="preserve-libs splitdebug"
QA_PREBUILT="*"
S="${WORKDIR}/jdk-${MY_PV}"
pkg_pretend() {
if [[ "$(tc-is-softfloat)" != "no" ]]; then
die "These binaries require a hardfloat system."
fi
}
src_install() {
local dest="/opt/${P}"
local ddest="${ED%/}/${dest#/}"
# Not sure why they bundle this as it's commonly available and they
# only do so on x86_64. It's needed by libfontmanager.so. IcedTea
# also has an explicit dependency while Oracle seemingly dlopens it.
rm -vf lib/libfreetype.so || die
# Oracle and IcedTea have libjsoundalsa.so depending on
# libasound.so.2 but AdoptOpenJDK only has libjsound.so. Weird.
if ! use alsa ; then
rm -v lib/libjsound.* || die
fi
if use headless-awt ; then
rm -v lib/lib*{[jx]awt,splashscreen}* || die
fi
if ! use source ; then
rm -v lib/src.zip || die
fi
rm -v lib/security/cacerts || die
dosym ../../../../etc/ssl/certs/java/cacerts \
"${dest}"/lib/security/cacerts
dodir "${dest}"
cp -pPR * "${ddest}" || die
# provide stable symlink
dosym "${P}" "/opt/${PN}-${SLOT}"
use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
java-vm_set-pax-markings "${ddest}"
java-vm_revdep-mask
java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
}
pkg_postinst() {
java-vm-2_pkg_postinst
if use gentoo-vm ; then
ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
ewarn "recognised by the system. This will almost certainly break"
ewarn "many java ebuilds as they are not ready for openjdk-11"
else
ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
ewarn "will not be recognised by the system. For example, simply calling"
ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
ewarn "fully supports Java 11. This JDK must therefore be invoked using its"
ewarn "absolute location under ${EPREFIX}/opt/${P}."
fi
}

View file

@ -0,0 +1 @@
DIST sdrtrunk-0.4.0.tar.gz 1696076 BLAKE2B d21d6a2f15bc509193623a83c42b6e2bb1917ab469dc88498cfe0b6b39fc716dead01b8f529e20449f347318e9b509bfcfc820226b2d7fa5cd413a72ddb61f9b SHA512 1fe90b6a60236811ede5488349aea98c2d6742e53e679152fd695ede98692dc80059a4ed908d0c4316d82bb4be974ed40a4f4b0db3fb2305006fc7a9b15e22d7

View file

@ -0,0 +1,16 @@
--- a/build.gradle.orig 2019-06-02 13:41:20.000000000 +0800
+++ b/build.gradle 2019-06-02 22:20:05.277340865 +0800
@@ -1,6 +1,12 @@
buildscript {
repositories {
- jcenter()
+ if ('allow' == System.properties['build.network_access']) {
+ jcenter()
+ } else {
+ maven {
+ url "WORK_DIR/dependencies"
+ }
+ }
}
dependencies {
classpath 'com.netflix.nebula:gradle-ospackage-plugin:5.3.0' // RPM & DEB support

View file

@ -0,0 +1,12 @@
allprojects {
repositories {
if ('allow' == System.properties['build.network_access']) {
mavenCentral()
jcenter()
} else {
maven {
url "WORK_DIR/dependencies"
}
}
}
}

View file

@ -0,0 +1,50 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="decoding, monitoring, recording and streaming trunked mobile and related radio protocols"
HOMEPAGE="https://github.com/DSheirer/sdrtrunk"
SRC_URI="https://github.com/DSheirer/sdrtrunk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
#WIP
#KEYWORDS="~amd64 ~x86"
LICENSE="GPL-3"
SLOT="0"
#java-pkg-2 sets java based on RDEPEND so the java slot in rdepend is used to build
RDEPEND="|| ( dev-java/openjdk-bin:15 )"
DEPEND="${RDEPEND}
dev-java/gradle-bin:6.3"
#src_prepare() {
# eapply "${FILESDIR}"/1.5.2-build.patch
# mkdir -p ".gradle/init.d"
# cp "${FILESDIR}"/1.5.2-repos.gradle .gradle/init.d/repos.gradle || die "cp failed"
# sed -i "s|WORK_DIR|${WORKDIR}|g" .gradle/init.d/repos.gradle || die "sed failed"
# sed -i "s|WORK_DIR|${WORKDIR}|g" build.gradle || die "sed failed"
# eapply_user
#}
#src_compile() {
#./gradlew clean build
# GRADLE="gradle-5.2.1 --gradle-user-home .gradle --console rich --no-daemon"
# GRADLE="${GRADLE} --offline"
# unset TERM
# ${GRADLE} jar -x check -x test || die
#}
#src_install() {
# insinto /usr/share/"${PN}"
# doins "build/libs/${P}.jar"
# doicon ./src/linux/resources/jd_icon_128.png
# domenu ./src/linux/resources/jd-gui.desktop
# echo -e "#!/bin/sh\njava -jar /usr/share/${PN}/${P}.jar >/dev/null 2>&1 &\n" > "${PN}"
# dobin "${PN}"
#}