From 22fb56bfd37cb097aa2a6cd208590475654c89f0 Mon Sep 17 00:00:00 2001 From: Stefan Langenmaier Date: Mon, 7 Nov 2016 23:05:22 -0500 Subject: dev-util/eclipse-sdk-bin: 4.6.1a version bump to latest stable eclipse release --- dev-util/eclipse-sdk-bin/Manifest | 2 + .../eclipse-sdk-bin/eclipse-sdk-bin-4.6.1a.ebuild | 111 +++++++++++++++++++++ .../files/eclipse-sdk-bin-4.6.1a-eclipse-bin | 50 ++++++++++ .../files/eclipse-sdk-bin-4.6.1a-eclipserc-bin | 29 ++++++ 4 files changed, 192 insertions(+) create mode 100644 dev-util/eclipse-sdk-bin/eclipse-sdk-bin-4.6.1a.ebuild create mode 100644 dev-util/eclipse-sdk-bin/files/eclipse-sdk-bin-4.6.1a-eclipse-bin create mode 100644 dev-util/eclipse-sdk-bin/files/eclipse-sdk-bin-4.6.1a-eclipserc-bin diff --git a/dev-util/eclipse-sdk-bin/Manifest b/dev-util/eclipse-sdk-bin/Manifest index 2052f00..f2f54f8 100644 --- a/dev-util/eclipse-sdk-bin/Manifest +++ b/dev-util/eclipse-sdk-bin/Manifest @@ -4,3 +4,5 @@ DIST eclipse-java-mars-2-linux-gtk-4.5.2.tar.gz 174126444 SHA256 679e50bb3c98d2d DIST eclipse-java-mars-2-linux-gtk-x86_64-4.5.2.tar.gz 174274778 SHA256 ec8300fab617db38a817919f59b137b6422aac54336b46cbf5a873af62f898d6 SHA512 d8b402585737172ec6b482c21974056d6d170b576fb979456a41809054b1ee931db33ebab594adbb76077debbf2e43edfd4f4ad56b6b8d3192b7a49b020a78f5 WHIRLPOOL d38a798d6f4e121029a0296ddc43f67a04a37ab2bd406a5866f0befa18c5f514e1f16b43509ff9fa4a57049717df865dbf7251970e48cb22c486a21c23fe341c DIST eclipse-java-mars-R-linux-gtk-4.5.0.tar.gz 169974282 SHA256 43089aa4738d05e92fd24cf320336e8ab1cfd2e66ce07de9955a40bf7a08de87 SHA512 de17412b82c6150268142e99858f26641b465c1c296a1a13d413a47226dc9a01db26bd07985c926b5fe80e0225ff7b3e0ef35137fce31e0bb261ae5cc96cc888 WHIRLPOOL 9ccbcc5c36711531a2f93daf8bab92892f589822cee09f5751fcf0ab7a1fe3e183100cfe4a9e71ecefe3a04a1b2bae2843162b27250a052ed4846f343fa0bbb1 DIST eclipse-java-mars-R-linux-gtk-x86_64-4.5.0.tar.gz 170118332 SHA256 2eeea5e563001f6812bad97e159befe4152bf8ef49124c98e635fd68104a1727 SHA512 9997a23d29e95c91177cd7460291caab46f04ca9b4af52b724c0d61577a16fa69b0aa4cdd01322aba21a05da24380d3f9395f799be4af8fc41c373353573a517 WHIRLPOOL 4d468c1959e2f9dd5b5fd661e60b56c55aa6d5fbc4b090d749237dfb56146213ab51716c8f645a288357b9302975d84a9aa502f94b07d78a7da31d84dead48db +DIST eclipse-java-neon-1a-linux-gtk-4.6.1a.tar.gz 167851000 SHA256 45bfc03c8e8afe114f2f557286d70066193a020d1dcaf71787405f6abd08d1c6 SHA512 5f6130b08a15711adfd73da0e6c0c071d07f979f866c489cec7b9ae02b459ecbd19694a29efcd314c8065a8f00e874cae97cbdd2c2bd9359e679c02dd1275afd WHIRLPOOL e4bb2b9579a9e8456e79ed9694a641f20f767f4afaffdff5eacc959797cb6d3127fbf18a33fb1849f90870ffb5a736d367cd77fb29de3ffe70015f374696062c +DIST eclipse-java-neon-1a-linux-gtk-x86_64-4.6.1a.tar.gz 168001174 SHA256 cd22d953dee2db30d86c51a50189dd062c8ac68c5776cbe525a7f852986f23b5 SHA512 8a28c76ea81bedb22b6e808b0f0ea4942d723cff407c63f9948f8d22f7719c66d45617f701cffda5d377bd4d69d0a5da07be06aeeb387ec7ff23a47502ffa219 WHIRLPOOL 0d431404f6b4a89ab92cea6261e7ee3385e665039c13bb5de890f334a2bbce0cb0146afae7710478c863459aef699c818194159ec36dac83c2033f6324ec0239 diff --git a/dev-util/eclipse-sdk-bin/eclipse-sdk-bin-4.6.1a.ebuild b/dev-util/eclipse-sdk-bin/eclipse-sdk-bin-4.6.1a.ebuild new file mode 100644 index 0000000..3f7aea6 --- /dev/null +++ b/dev-util/eclipse-sdk-bin/eclipse-sdk-bin-4.6.1a.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit eutils versionator java-utils-2 + +SR="$(get_version_component_range 3-)" +RNAME="neon" + +SRC_BASE="http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/${RNAME}/${SR}/eclipse-java-${RNAME}-${SR}-linux-gtk" + +DESCRIPTION="Eclipse SDK" +HOMEPAGE="http://www.eclipse.org" +SRC_URI=" + amd64? ( ${SRC_BASE}-x86_64.tar.gz&r=1 -> eclipse-java-${RNAME}-${SR}-linux-gtk-x86_64-${PV}.tar.gz ) + x86? ( ${SRC_BASE}.tar.gz&r=1 -> eclipse-java-${RNAME}-${SR}-linux-gtk-${PV}.tar.gz ) + " + +LICENSE="EPL-1.0" +SLOT="$(get_version_component_range 1-2)" +KEYWORDS="~amd64 ~x86" +IUSE="lombok" + +CDEPEND=" + >=dev-java/commons-httpclient-3.1:3 + >=dev-java/icu4j-56.1:56 + >=dev-java/javax-inject-1:0 + >=dev-java/jsr250-1.2:0 + >=dev-java/xml-commons-resolver-1.2:0 + " +DEPEND="${CDEPEND}" +RDEPEND=">=virtual/jdk-1.8 + x11-libs/gtk+:3 + lombok? ( dev-java/lombok-bin ) + ${CDEPEND}" + +S="${WORKDIR}"/eclipse + +_unbundle_single() { + local mode="${1}" destination_jar="${2}" package="${3}" package_jar="${4}" + local abs_destination_jar="${PWD}/${destination_jar}" + local backup_dir="${T}"/${destination_jar##*/}.dir + + if [[ "${mode}" = delete ]]; then + # Backup META-INF/MANIFEST.MF with checksums + # Then delete .jar file + mkdir -p "${backup_dir}"/META-INF + unzip -p "${destination_jar}" META-INF/MANIFEST.MF \ + | sed -e '/^Name:/d' -e '/^SHA1-Digest:/d' -e '/^\s*$/d' \ + > "${backup_dir}"/META-INF/MANIFEST.MF || die + rm "${destination_jar}" || die + elif [[ "${mode}" = wire ]]; then + einfo "Replacing bundled ${destination_jar}..." + # Create new .jar based on system-wide build + # In the process, apply META-INF/MANIFEST.MF backup + java-pkg_jar-from "${package}" "${package_jar}" "${destination_jar}" + local source_jar="$(readlink -f "${destination_jar}")" + rm "${destination_jar}" || die + + cp "${source_jar}" "${destination_jar}" || die + ( cd "${backup_dir}" \ + && [[ -f "${abs_destination_jar}" ]] \ + && zip "${abs_destination_jar}" META-INF/MANIFEST.MF >/dev/null + ) || die + fi +} + +_unbundle_known() { + local mode="${1}" + + # https://wiki.gentoo.org/wiki/Eclipse/Building_From_Source + _unbundle_single "${mode}" plugins/com.ibm.icu_56.1.0.v201601250100.jar icu4j-56 icu4j.jar + _unbundle_single "${mode}" plugins/javax.annotation_1.2.0.v201602091430.jar jsr250 jsr250.jar + _unbundle_single "${mode}" plugins/javax.inject_1.0.0.v20091030.jar javax-inject javax-inject.jar + _unbundle_single "${mode}" plugins/org.apache.commons.httpclient_3.1.0.v201012070820.jar commons-httpclient-3 commons-httpclient.jar + _unbundle_single "${mode}" plugins/org.apache.xml.resolver_1.2.0.v201005080400.jar xml-commons-resolver xml-commons-resolver.jar +} + +src_prepare() { + _unbundle_known delete + + ewarn 'Binary dependencies left to unbundle:' + ewarn "$(find -type f -name '*.jar' -not -wholename '*/org.eclipse*' | sort | sed 's,^\./,,')" + + _unbundle_known wire + + cp "${FILESDIR}"/${P}-eclipse-bin "${T}/eclipse-bin-${SLOT}" || die + cp "${FILESDIR}"/${P}-eclipserc-bin "${T}/eclipserc-bin-${SLOT}" || die + sed "s,%SLOT%,${SLOT},g" -i "${T}"/eclipse{,rc}-bin-${SLOT} || die + + eapply_user +} + +src_install() { + local dest=/opt/${PN}-${SLOT} + + insinto ${dest} + doins -r features icon.xpm plugins artifacts.xml p2 eclipse.ini configuration dropins + + exeinto ${dest} + doexe eclipse + + dohtml -r readme/* + + dobin "${T}"/eclipse-bin-${SLOT} + insinto /etc + doins "${T}"/eclipserc-bin-${SLOT} + make_desktop_entry "eclipse-bin-${SLOT}" "Eclipse ${RNAME^}/${PV} (bin)" "${dest}/icon.xpm" +} diff --git a/dev-util/eclipse-sdk-bin/files/eclipse-sdk-bin-4.6.1a-eclipse-bin b/dev-util/eclipse-sdk-bin/files/eclipse-sdk-bin-4.6.1a-eclipse-bin new file mode 100644 index 0000000..d71ee14 --- /dev/null +++ b/dev-util/eclipse-sdk-bin/files/eclipse-sdk-bin-4.6.1a-eclipse-bin @@ -0,0 +1,50 @@ +#! /bin/bash +# +# Tiny startup wrapper for Eclipse +# +# Copyright (c) 2004, Karl Trygve Kalleberg +# Copyright (c) 2007-2008, Jean-Noël Rivasseau +# Copyright (c) 2004-2008, Gentoo Foundation +# Copyright (c) 2015, Sebastian Pipping +# Copyright (c) 2016, Stefan Langenmaier +# +# Licensed under the GNU General Public License, version 2 +# + +[[ -f "/etc/eclipserc-bin-%SLOT%" ]] && . "/etc/eclipserc-bin-%SLOT%" +[[ -f "$HOME/gentoo/.eclipserc" ]] && . "$HOME/gentoo/.eclipserc" + +ECLIPSE_HOME=${ECLIPSE_HOME:="/opt/eclipse-sdk-bin-%SLOT%"} +ECLIPSE_BIN="${ECLIPSE_HOME}/eclipse" + +if [[ ! -x "${ECLIPSE_BIN}" ]] ; then + echo "Failed to find executable '${ECLIPSE_BIN}'" > /dev/stderr + exit 1 +fi + +if [[ $(id -u) -eq 0 ]] ; then + echo "Do not run eclipse as root user! Exiting ..." > /dev/stderr + exit 1 +fi + +case "$(java-config -f)" in + *gcj*) + export JAVA_PKG_CLASSMAP="${ECLIPSE_HOME}/eclipse.gcjdb" + ;; +esac + +[ -n "${ECLIPSE_XMS}" ] && VM_ARGS="${VM_ARGS} -Xms${ECLIPSE_XMS}" +[ -n "${ECLIPSE_XMX}" ] && VM_ARGS="${VM_ARGS} -Xmx${ECLIPSE_XMX}" +[ -n "${ECLIPSE_PERMSIZE}" ] && VM_ARGS="${VM_ARGS} -XX:PermSize=${ECLIPSE_PERMSIZE}" +[ -n "${ECLIPSE_MAX_PERMSIZE}" ] && VM_ARGS="${VM_ARGS} -XX:MaxPermSize=${ECLIPSE_MAX_PERMSIZE}" + +# lombok support +[ -n "${LOMBOK_JAR}" ] && [ -f "${LOMBOK_JAR}" ] && VM_ARGS="${VM_ARGS} -javaagent:${LOMBOK_JAR}" + +# Fix for JRE 1.5. +export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/lib + +# option to switch GTK backend +[ -n "${SWT_GTK3}" ] && export SWT_GTK3="${SWT_GTK3}" + +exec "${ECLIPSE_BIN}" -vm $(java-config --java) "$@" "${ECLIPSE_USER_ARGS}" -vmargs ${VM_ARGS} diff --git a/dev-util/eclipse-sdk-bin/files/eclipse-sdk-bin-4.6.1a-eclipserc-bin b/dev-util/eclipse-sdk-bin/files/eclipse-sdk-bin-4.6.1a-eclipserc-bin new file mode 100644 index 0000000..ba750e5 --- /dev/null +++ b/dev-util/eclipse-sdk-bin/files/eclipse-sdk-bin-4.6.1a-eclipserc-bin @@ -0,0 +1,29 @@ +# This file specifies some initial Eclipse settings, like memory allowed +# These settings only affect Eclipse startup and overall configuration +# Main Eclipse configuration should be done within Eclipse (with the GUI) + +# Following variables controls the minimal and maximum amounts of memory +# allocated to Eclipse (respectively). +# Increase those numbers if you get OutOfMemory errors. + +ECLIPSE_XMS=128m +ECLIPSE_XMX=256m + +# Following variables controls the minimal and maximum amounts of memory +# allocated to the permanent generation space. +# This space contains data related to all classes. +# Thus, if you use a lot of Eclipse plugins, it is recommended to uncomment +# these variables and even increase it, if you have enough RAM. +# Else you will get crashes related to OutOfMemory in PermGen exceptions. + +#ECLIPSE_PERMSIZE=64m +#ECLIPSE_MAX_PERMSIZE=128m + +# Eclipse 4.5 Mars has some visual issues with GTK>=3.16 +# SWT_GTK3=1 - to enable GTK3 +# SWT_GTK3=0 - to enable GTK2 +SWT_GTK3=1 + +# Default lombok.jar +# can also be unset/overwritten by the user +LOMBOK_JAR=/usr/share/lombok/lombok.jar -- cgit v1.2.3-65-gdbad