| 1 | # Copyright 1999-2004 Gentoo Foundation |
1 | # Copyright 1999-2011 Gentoo Foundation |
| 2 | # Distributed under the terms of the GNU General Public License v2 |
2 | # Distributed under the terms of the GNU General Public License v2 |
| 3 | # $Header: /var/cvsroot/gentoo-x86/eclass/java-vm-2.eclass,v 1.35 2011/10/29 14:36:34 caster Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/java-vm-2.eclass,v 1.37 2011/11/12 13:05:33 sera Exp $ |
| 4 | |
4 | |
| 5 | # ----------------------------------------------------------------------------- |
5 | # ----------------------------------------------------------------------------- |
| 6 | # @eclass-begin |
6 | # @eclass-begin |
| 7 | # @eclass-shortdesc Java Virtual Machine eclass |
7 | # @eclass-shortdesc Java Virtual Machine eclass |
| 8 | # @eclass-maintainer java@gentoo.org |
8 | # @eclass-maintainer java@gentoo.org |
| … | |
… | |
| 94 | eselect java-nsplugin set ${extra_args} ${VMHANDLE} |
94 | eselect java-nsplugin set ${extra_args} ${VMHANDLE} |
| 95 | } |
95 | } |
| 96 | |
96 | |
| 97 | java-vm-2_pkg_prerm() { |
97 | java-vm-2_pkg_prerm() { |
| 98 | # Although REPLACED_BY_VERSION is EAPI=4, we shouldn't need to check EAPI for this use case |
98 | # Although REPLACED_BY_VERSION is EAPI=4, we shouldn't need to check EAPI for this use case |
| 99 | if [[ "$(java-config -f 2>/dev/null)" == "${VMHANDLE}" && -z "${REPLACED_BY_VERSION}" ]]; then |
99 | if [[ "$(GENTOO_VM="" java-config -f 2>/dev/null)" == "${VMHANDLE}" && -z "${REPLACED_BY_VERSION}" ]]; then |
| 100 | ewarn "It appears you are removing your system-vm!" |
100 | ewarn "It appears you are removing your system-vm!" |
| 101 | ewarn "Please run java-config -L to list available VMs," |
101 | ewarn "Please run java-config -L to list available VMs," |
| 102 | ewarn "then use java-config -S to set a new system-vm!" |
102 | ewarn "then use java-config -S to set a new system-vm!" |
| 103 | fi |
103 | fi |
| 104 | } |
104 | } |
| … | |
… | |
| 202 | elog "missing dependencies (see bug #177925 for more info). Note that some parts" |
202 | elog "missing dependencies (see bug #177925 for more info). Note that some parts" |
| 203 | elog "of the JVM may require dependencies that are pulled only through respective" |
203 | elog "of the JVM may require dependencies that are pulled only through respective" |
| 204 | elog "USE flags (typically X, alsa, odbc) and some Java code may fail without them." |
204 | elog "USE flags (typically X, alsa, odbc) and some Java code may fail without them." |
| 205 | } |
205 | } |
| 206 | |
206 | |
|
|
207 | # ----------------------------------------------------------------------------- |
|
|
208 | # @ebuild-function java-vm_sandbox-predict |
|
|
209 | # |
|
|
210 | # Install a sandbox control file. Specified paths won't cause a sandbox |
|
|
211 | # violation if opened read write but no write takes place. See bug 388937#c1 |
|
|
212 | # |
|
|
213 | # @example |
|
|
214 | # java-vm_sandbox-predict /dev/random /proc/self/coredump_filter |
|
|
215 | # ----------------------------------------------------------------------------- |
|
|
216 | java-vm_sandbox-predict() { |
|
|
217 | debug-print-function ${FUNCNAME} "$*" |
|
|
218 | [[ -z "${1}" ]] && die "${FUNCNAME} takes at least one argument" |
|
|
219 | |
|
|
220 | has ${EAPI:-0} 0 1 2 && ! use prefix && ED="${D}" |
|
|
221 | |
|
|
222 | local path path_arr=("$@") |
|
|
223 | IFS=":" path="${path_arr[*]}" |
|
|
224 | dodir /etc/sandbox.d |
|
|
225 | echo "SANDBOX_PREDICT=\"${path}\"" > "${ED}/etc/sandbox.d/20${VMHANDLE}" \ |
|
|
226 | || die "Failed to write sandbox control file" |
|
|
227 | } |
|
|
228 | |
| 207 | java_get_plugin_dir_() { |
229 | java_get_plugin_dir_() { |
| 208 | has ${EAPI:-0} 0 1 2 && ! use prefix && EPREFIX= |
230 | has ${EAPI:-0} 0 1 2 && ! use prefix && EPREFIX= |
| 209 | echo "${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins |
231 | echo "${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins |
| 210 | } |
232 | } |
| 211 | |
233 | |