| 1 | # Copyright 1999-2011 Gentoo Foundation |
1 | # Copyright 1999-2012 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/office-ext.eclass,v 1.2 2011/11/12 12:03:05 scarabeus Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/office-ext.eclass,v 1.4 2012/05/09 20:33:16 scarabeus Exp $ |
| 4 | |
4 | |
| 5 | # @ECLASS: office-ext.eclass |
5 | # @ECLASS: office-ext.eclass |
| 6 | # @AUTHOR: |
6 | # @AUTHOR: |
| 7 | # Tomáš Chvátal <scarabeus@gentoo.org> |
7 | # Tomáš Chvátal <scarabeus@gentoo.org> |
| 8 | # @MAINTAINER: |
8 | # @MAINTAINER: |
| … | |
… | |
| 10 | # @BLURB: Eclass for installing libreoffice/openoffice extensions |
10 | # @BLURB: Eclass for installing libreoffice/openoffice extensions |
| 11 | # @DESCRIPTION: |
11 | # @DESCRIPTION: |
| 12 | # Eclass for easing maitenance of libreoffice/openoffice extensions. |
12 | # Eclass for easing maitenance of libreoffice/openoffice extensions. |
| 13 | |
13 | |
| 14 | case "${EAPI:-0}" in |
14 | case "${EAPI:-0}" in |
| 15 | 4) OEXT_EXPORTED_FUNCTIONS="src_install pkg_postinst pkg_prerm" ;; |
15 | 4) OEXT_EXPORTED_FUNCTIONS="src_unpack src_install pkg_postinst pkg_prerm" ;; |
| 16 | *) die "EAPI=${EAPI} is not supported" ;; |
16 | *) die "EAPI=${EAPI} is not supported" ;; |
| 17 | esac |
17 | esac |
| 18 | |
18 | |
| 19 | inherit eutils multilib |
19 | inherit eutils multilib |
| 20 | |
20 | |
| … | |
… | |
| 29 | die "OO_EXTENSIONS variable is not an array." |
29 | die "OO_EXTENSIONS variable is not an array." |
| 30 | fi |
30 | fi |
| 31 | |
31 | |
| 32 | DEPEND="virtual/ooo" |
32 | DEPEND="virtual/ooo" |
| 33 | RDEPEND="virtual/ooo" |
33 | RDEPEND="virtual/ooo" |
|
|
34 | |
|
|
35 | # Most projects actually do not provide any workdir and we do not unpack the |
|
|
36 | # .oxt file at all. |
|
|
37 | S="${WORKDIR}" |
|
|
38 | |
|
|
39 | # @FUNCTION: office-ext_src_unpack |
|
|
40 | # @DESCRIPTION: |
|
|
41 | # Flush the cache after removal of an extension. |
|
|
42 | office-ext_src_unpack() { |
|
|
43 | debug-print-function ${FUNCNAME} "$@" |
|
|
44 | local i |
|
|
45 | |
|
|
46 | default |
|
|
47 | |
|
|
48 | for i in ${OO_EXTENSIONS[@]}; do |
|
|
49 | # Copy only if the oxt is present, sometimes they are in tarballs |
|
|
50 | # so we want to fail only when we do need to do the cp. |
|
|
51 | if [[ -f "${DISTDIR}/${i}" ]] ; then |
|
|
52 | debug-print "${FUNCNAME}: cp -v \"${DISTDIR}/${i}\" \"${S}\"" |
|
|
53 | cp -v "${DISTDIR}/${i}" "${S}" || die |
|
|
54 | fi |
|
|
55 | done |
|
|
56 | } |
| 34 | |
57 | |
| 35 | # @FUNCTION: office-ext_flush_unopkg_cache |
58 | # @FUNCTION: office-ext_flush_unopkg_cache |
| 36 | # @DESCRIPTION: |
59 | # @DESCRIPTION: |
| 37 | # Flush the cache after removal of an extension. |
60 | # Flush the cache after removal of an extension. |
| 38 | office-ext_flush_unopkg_cache() { |
61 | office-ext_flush_unopkg_cache() { |