/[gentoo-x86]/eclass/vdr-plugin.eclass
Gentoo

Contents of /eclass/vdr-plugin.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.70 - (hide annotations) (download)
Thu Oct 8 08:12:50 2009 UTC (4 years, 9 months ago) by zzam
Branch: MAIN
Changes since 1.69: +19 -13 lines
Improve disable file stripping. Be less verbose. Update example ebuild code.

1 zzam 1.1 # Copyright 1999-2005 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3 zzam 1.70 # $Header: /var/cvsroot/gentoo-x86/eclass/vdr-plugin.eclass,v 1.69 2009/03/24 21:10:13 zzam Exp $
4 zzam 1.1 #
5     # Author:
6     # Matthias Schwarzott <zzam@gentoo.org>
7 hd_brummy 1.27 # Joerg Bornkessel <hd_brummy@gentoo.org>
8 zzam 1.1
9     # vdr-plugin.eclass
10     #
11     # eclass to create ebuilds for vdr plugins
12     #
13    
14 zzam 1.70 # Example ebuild (basic version without patching):
15 zzam 1.1 #
16 zzam 1.70 # EAPI="2"
17 zzam 1.1 # inherit vdr-plugin
18     # IUSE=""
19     # SLOT="0"
20     # DESCRIPTION="vdr Plugin: DVB Frontend Status Monitor (signal strengt/noise)"
21     # HOMEPAGE="http://www.saunalahti.fi/~rahrenbe/vdr/femon/"
22     # SRC_URI="http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/${P}.tgz"
23     # LICENSE="GPL-2"
24     # KEYWORDS="~x86"
25 zzam 1.70 # DEPEND=">=media-video/vdr-1.6.0"
26 zzam 1.1 #
27 swegener 1.4 #
28 zzam 1.1
29 zzam 1.70 # For patching you should modify src_prepare phase:
30     #
31     # src_prepare() {
32     # epatch "${FILESDIR}"/${P}-xxx.patch
33     # vdr-plugin_src_prepare
34     # }
35    
36 zzam 1.17 # Installation of a config file for the plugin
37     #
38     # If ${VDR_CONFD_FILE} is set install this file
39     # else install ${FILESDIR}/confd if it exists.
40 zzam 1.2
41 zzam 1.17 # Gets installed as /etc/conf.d/vdr.${VDRPLUGIN}.
42     # For the plugin vdr-femon this would be /etc/conf.d/vdr.femon
43 zzam 1.2
44    
45 zzam 1.17 # Installation of an rc-addon file for the plugin
46     #
47     # If ${VDR_RCADDON_FILE} is set install this file
48     # else install ${FILESDIR}/rc-addon.sh if it exists.
49     #
50 zzam 1.22 # Gets installed under ${VDR_RC_DIR}/plugin-${VDRPLUGIN}.sh
51 zzam 1.35 # (in example vdr-femon this would be /usr/share/vdr/rcscript/plugin-femon.sh)
52 zzam 1.2 #
53     # This file is sourced by the startscript when plugin is activated in /etc/conf.d/vdr
54     # It could be used for special startup actions for this plugins, or to create the
55     # plugin command line options from a nicer version of a conf.d file.
56 zzam 1.1
57 hd_brummy 1.27 # HowTo use own local patches; Example
58     #
59     # Add to your /etc/make.conf:
60     # VDR_LOCAL_PATCHES_DIR="/usr/local/patch"
61     #
62     # Add two DIR's in your local patch dir, ${PN}/${PV},
63     # e.g for vdr-burn-0.1.0 should be:
64     # /usr/local/patch/vdr-burn/0.1.0/
65     #
66     # all patches which ending on diff or patch in this DIR will automatically applied
67     #
68    
69 zzam 1.22 inherit base multilib eutils flag-o-matic
70 zzam 1.1
71 zzam 1.39 IUSE=""
72 zzam 1.15
73 zzam 1.1 # Name of the plugin stripped from all vdrplugin-, vdr- and -cvs pre- and postfixes
74     VDRPLUGIN="${PN/#vdrplugin-/}"
75 zzam 1.2 VDRPLUGIN="${VDRPLUGIN/#vdr-/}"
76 zzam 1.1 VDRPLUGIN="${VDRPLUGIN/%-cvs/}"
77    
78     DESCRIPTION="vdr Plugin: ${VDRPLUGIN} (based on vdr-plugin.eclass)"
79    
80     # works in most cases
81     S="${WORKDIR}/${VDRPLUGIN}-${PV}"
82    
83     # depend on headers for DVB-driver
84 zzam 1.65 COMMON_DEPEND=">=media-tv/gentoo-vdr-scripts-0.4.2"
85    
86     DEPEND="${COMMON_DEPEND}
87 zzam 1.50 media-tv/linuxtv-dvb-headers"
88 zzam 1.65 RDEPEND="${COMMON_DEPEND}
89     >=app-admin/eselect-vdr-0.0.2"
90 zzam 1.2
91 zzam 1.69 # this is a hack for ebuilds like vdr-xineliboutput that want to
92     # conditionally install a vdr-plugin
93     if [[ "${GENTOO_VDR_CONDITIONAL:-no}" = "yes" ]]; then
94     # make DEPEND conditional
95     IUSE="${IUSE} vdr"
96     DEPEND="vdr? ( ${DEPEND} )"
97     RDEPEND="vdr? ( ${RDEPEND} )"
98     fi
99    
100 zzam 1.37 # New method of storing plugindb
101     # Called from src_install
102     # file maintained by normal portage-methods
103     create_plugindb_file() {
104     local NEW_VDRPLUGINDB_DIR=/usr/share/vdr/vdrplugin-rebuild/
105 zzam 1.50 local DB_FILE="${NEW_VDRPLUGINDB_DIR}/${CATEGORY}-${PF}"
106     insinto "${NEW_VDRPLUGINDB_DIR}"
107 zzam 1.52
108     # BUG: portage-2.1.4_rc9 will delete the EBUILD= line, so we cannot use this code.
109     # cat <<-EOT > "${D}/${DB_FILE}"
110     # VDRPLUGIN_DB=1
111     # CREATOR=ECLASS
112     # EBUILD=${CATEGORY}/${PN}
113     # EBUILD_V=${PVR}
114     # EOT
115     {
116     echo "VDRPLUGIN_DB=1"
117     echo "CREATOR=ECLASS"
118     echo "EBUILD=${CATEGORY}/${PN}"
119     echo "EBUILD_V=${PVR}"
120 zzam 1.60 echo "PLUGINS=\"$@\""
121 zzam 1.52 } > "${D}/${DB_FILE}"
122 zzam 1.37 }
123    
124     # Delete files created outside of vdr-plugin.eclass
125     # vdrplugin-rebuild.ebuild converted plugindb and files are
126     # not deleted by portage itself - should only be needed as
127     # long as not every system has switched over to
128 zzam 1.51 # vdrplugin-rebuild-0.2 / gentoo-vdr-scripts-0.4.2
129 zzam 1.37 delete_orphan_plugindb_file() {
130 hd_brummy 1.40 #elog Testing for orphaned plugindb file
131 zzam 1.37 local NEW_VDRPLUGINDB_DIR=/usr/share/vdr/vdrplugin-rebuild/
132 zzam 1.50 local DB_FILE="${ROOT}/${NEW_VDRPLUGINDB_DIR}/${CATEGORY}-${PF}"
133 zzam 1.37
134     # file exists
135     [[ -f ${DB_FILE} ]] || return
136    
137     # will portage handle the file itself
138 zzam 1.50 if grep -q CREATOR=ECLASS "${DB_FILE}"; then
139 hd_brummy 1.40 #elog file owned by eclass - don't touch it
140 zzam 1.37 return
141     fi
142    
143 hd_brummy 1.40 elog "Removing orphaned plugindb-file."
144 zzam 1.41 elog "\t#rm ${DB_FILE}"
145 zzam 1.50 rm "${DB_FILE}"
146 zzam 1.37 }
147    
148 zzam 1.45
149     create_header_checksum_file()
150     {
151     # Danger: Not using $ROOT here, as compile will also not use it !!!
152     # If vdr in $ROOT and / differ, plugins will not run anyway
153    
154 zzam 1.60 local CHKSUM="header-md5-vdr"
155    
156 zzam 1.45 if [[ -f ${VDR_CHECKSUM_DIR}/header-md5-vdr ]]; then
157 zzam 1.60 cp "${VDR_CHECKSUM_DIR}/header-md5-vdr" "${CHKSUM}"
158     elif type -p md5sum >/dev/null 2>&1; then
159     (
160     cd "${VDR_INCLUDE_DIR}"
161     md5sum *.h libsi/*.h|LC_ALL=C sort --key=2
162     ) > "${CHKSUM}"
163 zzam 1.45 else
164 zzam 1.60 die "Could not create md5 checksum of headers"
165 zzam 1.45 fi
166 zzam 1.60
167     insinto "${VDR_CHECKSUM_DIR}"
168     local p_name
169     for p_name; do
170     newins "${CHKSUM}" "header-md5-${p_name}"
171     done
172 zzam 1.45 }
173    
174 zzam 1.55 fix_vdr_libsi_include()
175     {
176 zzam 1.70 #einfo "Fixing include of libsi-headers"
177 zzam 1.55 local f
178     for f; do
179     sed -i "${f}" \
180     -e '/#include/s:"\(.*libsi.*\)":<\1>:' \
181     -e '/#include/s:<.*\(libsi/.*\)>:<vdr/\1>:'
182     done
183     }
184    
185     vdr_patchmakefile() {
186     einfo "Patching Makefile"
187     [[ -e Makefile ]] || die "Makefile of plugin can not be found!"
188     cp Makefile "${WORKDIR}"/Makefile.before
189    
190 zzam 1.60 # plugin makefiles use VDRDIR in strange ways
191     # assumptions:
192     # 1. $(VDRDIR) contains Make.config
193     # 2. $(VDRDIR) contains config.h
194     # 3. $(VDRDIR)/include/vdr contains the headers
195     # 4. $(VDRDIR) contains main vdr Makefile
196     # 5. $(VDRDIR)/locale exists
197     # 6. $(VDRDIR) allows to access vdr source files
198     #
199     # We only have one directory (for now /usr/include/vdr),
200     # that contains vdr-headers and Make.config.
201     # To satisfy 1-3 we do this:
202     # Set VDRDIR=/usr/include/vdr
203     # Set VDRINCDIR=/usr/include
204     # Change $(VDRDIR)/include to $(VDRINCDIR)
205    
206 zzam 1.55 sed -i Makefile \
207     -e "s:^VDRDIR.*$:VDRDIR = ${VDR_INCLUDE_DIR}:" \
208 zzam 1.60 -e "/^VDRDIR/a VDRINCDIR = ${VDR_INCLUDE_DIR%/vdr}" \
209     -e '/VDRINCDIR.*=/!s:$(VDRDIR)/include:$(VDRINCDIR):' \
210     \
211 zzam 1.59 -e 's:-I$(DVBDIR)/include::' \
212     -e 's:-I$(DVBDIR)::'
213 zzam 1.55
214     # maybe needed for multiproto:
215     #sed -i Makefile \
216     # -e "s:^DVBDIR.*$:DVBDIR = ${DVB_INCLUDE_DIR}:" \
217     # -e 's:-I$(DVBDIR)/include:-I$(DVBDIR):'
218    
219     if ! grep -q APIVERSION Makefile; then
220     ebegin " Converting to APIVERSION"
221     sed -i Makefile \
222     -e 's:^APIVERSION = :APIVERSION ?= :' \
223     -e 's:$(LIBDIR)/$@.$(VDRVERSION):$(LIBDIR)/$@.$(APIVERSION):' \
224     -e '/VDRVERSION =/a\APIVERSION = $(shell sed -ne '"'"'/define APIVERSION/s/^.*"\\(.*\\)".*$$/\\1/p'"'"' $(VDRDIR)/config.h)'
225     eend $?
226     fi
227    
228     # Correcting Compile-Flags
229     # Do not overwrite CXXFLAGS, add LDFLAGS if missing
230     sed -i Makefile \
231     -e '/^CXXFLAGS[[:space:]]*=/s/=/?=/' \
232     -e '/LDFLAGS/!s:-shared:$(LDFLAGS) -shared:'
233    
234     # Disabling file stripping, useful for debugging
235     sed -i Makefile \
236     -e '/@.*strip/d' \
237     -e '/strip \$(LIBDIR)\/\$@/d' \
238 zzam 1.70 -e 's/STRIP.*=.*$/STRIP = true/'
239 zzam 1.55
240     # Use a file instead of a variable as single-stepping via ebuild
241     # destroys environment.
242     touch "${WORKDIR}"/.vdr-plugin_makefile_patched
243     }
244    
245     vdr_add_local_patch() {
246     if test -d "${VDR_LOCAL_PATCHES_DIR}/${PN}"; then
247     echo
248     einfo "Applying local patches"
249     for LOCALPATCH in "${VDR_LOCAL_PATCHES_DIR}/${PN}/${PV}"/*.{diff,patch}; do
250     test -f "${LOCALPATCH}" && epatch "${LOCALPATCH}"
251     done
252     fi
253     }
254    
255 zzam 1.56 vdr_has_gettext() {
256     has_version ">=media-video/vdr-1.5.7"
257     }
258    
259     plugin_has_gettext() {
260     [[ -d po ]]
261     }
262    
263     vdr_i18n_convert_to_gettext() {
264     local i18n_tool="${ROOT}/usr/share/vdr/bin/i18n-to-gettext.pl"
265    
266     if [[ ${NO_GETTEXT_HACK} == "1" ]]; then
267     ewarn "Conversion to gettext disabled in ebuild"
268     return 1
269     fi
270    
271     if [[ ! -x ${i18n_tool} ]]; then
272     eerror "Missing ${i18n_tool}"
273     eerror "Please re-emerge vdr"
274     die "Missing ${i18n_tool}"
275     fi
276    
277     ebegin "Auto converting translations to gettext"
278     # call i18n-to-gettext tool
279     # take all texts missing tr call into special file
280     "${i18n_tool}" 2>/dev/null \
281     |sed -e '/^"/!d' \
282     -e '/^""$/d' \
283     -e 's/\(.*\)/trNOOP(\1)/' \
284     > dummy-translations-trNOOP.c
285    
286     # if there were untranslated texts just run it again
287     # now the missing calls are listed in
288     # dummy-translations-trNOOP.c
289     if [[ -s dummy-translations-trNOOP.c ]]; then
290     "${i18n_tool}" &>/dev/null
291     fi
292    
293     # now use the modified Makefile
294     if [[ -f Makefile.new ]]; then
295     mv Makefile.new Makefile
296     eend 0 ""
297     else
298     eend 1 "Conversion to gettext failed. Plugin needs fixing."
299     return 1
300     fi
301     }
302 zzam 1.55
303 zzam 1.56 vdr_i18n_disable_gettext() {
304 zzam 1.70 #einfo "Disabling gettext support in plugin"
305    
306 zzam 1.56 # Remove i18n Target if using older vdr
307     sed -i Makefile \
308     -e '/^all:/s/ i18n//'
309     }
310 zzam 1.55
311 zzam 1.56 vdr_i18n() {
312     if vdr_has_gettext; then
313 zzam 1.70 #einfo "VDR has gettext support"
314 zzam 1.56 if plugin_has_gettext; then
315 zzam 1.70 #einfo "Plugin has gettext support, fine"
316 zzam 1.62 if [[ ${NO_GETTEXT_HACK} == "1" ]]; then
317 zzam 1.70 ewarn "Please remove unneeded NO_GETTEXT_HACK from ebuild."
318 zzam 1.62 fi
319 zzam 1.55 else
320 zzam 1.56 vdr_i18n_convert_to_gettext
321     if [[ $? != 0 ]]; then
322 zzam 1.58 eerror ""
323     eerror "Plugin will have only english OSD texts"
324     eerror "it needs manual fixing."
325 zzam 1.56 fi
326     fi
327     else
328 zzam 1.70 #einfo "VDR has no gettext support"
329 zzam 1.56 if plugin_has_gettext; then
330     vdr_i18n_disable_gettext
331 zzam 1.55 fi
332     fi
333     }
334    
335     vdr-plugin_copy_source_tree() {
336     pushd . >/dev/null
337     cp -r "${S}" "${T}"/source-tree
338     cd "${T}"/source-tree
339     cp "${WORKDIR}"/Makefile.before Makefile
340 zzam 1.59 # TODO: Fix this, maybe no longer needed
341 zzam 1.55 sed -i Makefile \
342     -e "s:^DVBDIR.*$:DVBDIR = ${DVB_INCLUDE_DIR}:" \
343     -e 's:^CXXFLAGS:#CXXFLAGS:' \
344     -e 's:-I$(DVBDIR)/include:-I$(DVBDIR):' \
345     -e 's:-I$(VDRDIR) -I$(DVBDIR):-I$(DVBDIR) -I$(VDRDIR):'
346     popd >/dev/null
347     }
348    
349     vdr-plugin_install_source_tree() {
350     einfo "Installing sources"
351     destdir="${VDRSOURCE_DIR}/vdr-${VDRVERSION}/PLUGINS/src/${VDRPLUGIN}"
352     insinto "${destdir}-${PV}"
353     doins -r "${T}"/source-tree/*
354    
355     dosym "${VDRPLUGIN}-${PV}" "${destdir}"
356     }
357    
358     vdr-plugin_print_enable_command() {
359 zzam 1.64 local p_name c=0 l=""
360     for p_name in ${vdr_plugin_list}; do
361     c=$(( c+1 ))
362     l="$l ${p_name#vdr-}"
363     done
364    
365 zzam 1.55 elog
366 zzam 1.64 case $c in
367     1) elog "Installed plugin${l}" ;;
368     *) elog "Installed $c plugins:${l}" ;;
369     esac
370     elog "To activate a plugin execute this command:"
371     elog "\teselect vdr-plugin enable <plugin_name> ..."
372 zzam 1.55 elog
373     }
374    
375 zzam 1.69 has_vdr() {
376     [[ -f "${VDR_INCLUDE_DIR}"/config.h ]]
377     }
378 zzam 1.55
379     ## exported functions
380    
381 zzam 1.1 vdr-plugin_pkg_setup() {
382     # -fPIC is needed for shared objects on some platforms (amd64 and others)
383     append-flags -fPIC
384    
385 zzam 1.22 # Where should the plugins live in the filesystem
386     VDR_PLUGIN_DIR="/usr/$(get_libdir)/vdr/plugins"
387     VDR_CHECKSUM_DIR="${VDR_PLUGIN_DIR%/plugins}/checksums"
388    
389 zzam 1.35 # was /usr/lib/... some time ago
390     # since gentoo-vdr-scripts-0.3.6 it works with /usr/share/...
391     VDR_RC_DIR="/usr/share/vdr/rcscript"
392 zzam 1.22
393     # Pathes to includes
394 zzam 1.29 VDR_INCLUDE_DIR="/usr/include/vdr"
395 zzam 1.22 DVB_INCLUDE_DIR="/usr/include"
396    
397 zzam 1.48 TMP_LOCALE_DIR="${WORKDIR}/tmp-locale"
398     LOCDIR="/usr/share/vdr/locale"
399    
400 zzam 1.69 if ! has_vdr; then
401     # set to invalid values to detect abuses
402     VDRVERSION="eclass_no_vdr_installed"
403     APIVERSION="eclass_no_vdr_installed"
404    
405     if [[ "${GENTOO_VDR_CONDITIONAL:-no}" = "yes" ]] && ! use vdr; then
406     einfo "VDR not found!"
407     else
408     # if vdr is required
409     die "VDR not found!"
410     fi
411     return
412     fi
413    
414 zzam 1.50 VDRVERSION=$(awk -F'"' '/define VDRVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h)
415     APIVERSION=$(awk -F'"' '/define APIVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h)
416 zzam 1.18 [[ -z ${APIVERSION} ]] && APIVERSION="${VDRVERSION}"
417    
418 zzam 1.55 einfo "Compiling against"
419     einfo "\tvdr-${VDRVERSION} [API version ${APIVERSION}]"
420 zzam 1.1 }
421    
422 zzam 1.66 vdr-plugin_src_util() {
423 zzam 1.1
424     while [ "$1" ]; do
425    
426     case "$1" in
427 zzam 1.66 all)
428     vdr-plugin_src_util unpack add_local_patch patchmakefile i18n
429     ;;
430 zzam 1.68 prepare|all_but_unpack)
431 zzam 1.66 vdr-plugin_src_util add_local_patch patchmakefile i18n
432 zzam 1.34 ;;
433 zzam 1.1 unpack)
434 zzam 1.12 base_src_unpack
435 zzam 1.1 ;;
436 zzam 1.55 add_local_patch)
437     cd "${S}" || die "Could not change to plugin-source-directory!"
438     vdr_add_local_patch
439     ;;
440 zzam 1.1 patchmakefile)
441 zzam 1.55 cd "${S}" || die "Could not change to plugin-source-directory!"
442     vdr_patchmakefile
443 zzam 1.1 ;;
444 zzam 1.55 i18n)
445     cd "${S}" || die "Could not change to plugin-source-directory!"
446     vdr_i18n
447 hd_brummy 1.27 ;;
448 zzam 1.1 esac
449    
450     shift
451     done
452     }
453    
454 zzam 1.66 vdr-plugin_src_unpack() {
455     if [[ -z ${VDR_INCLUDE_DIR} ]]; then
456     eerror "Wrong use of vdr-plugin.eclass."
457     eerror "An ebuild for a vdr-plugin will not work without calling vdr-plugin_pkg_setup."
458     echo
459     eerror "Please report this at bugs.gentoo.org."
460     die "vdr-plugin_pkg_setup not called!"
461     fi
462     if [ -z "$1" ]; then
463     case "${EAPI:-0}" in
464     2)
465     vdr-plugin_src_util unpack
466     ;;
467     *)
468     vdr-plugin_src_util all
469     ;;
470     esac
471    
472     else
473     vdr-plugin_src_util $@
474     fi
475     }
476    
477     vdr-plugin_src_prepare() {
478 zzam 1.67 base_src_prepare
479 zzam 1.68 vdr-plugin_src_util prepare
480 zzam 1.66 }
481    
482 zzam 1.1 vdr-plugin_src_compile() {
483 zzam 1.68 [ -z "$1" ] && vdr-plugin_src_compile copy_source compile
484 zzam 1.6
485 zzam 1.7 while [ "$1" ]; do
486    
487     case "$1" in
488 zzam 1.68 copy_source)
489 zzam 1.7 [[ -n "${VDRSOURCE_DIR}" ]] && vdr-plugin_copy_source_tree
490     ;;
491     compile)
492 zzam 1.33 if [[ ! -f ${WORKDIR}/.vdr-plugin_makefile_patched ]]; then
493 zzam 1.32 eerror "Wrong use of vdr-plugin.eclass."
494     eerror "An ebuild for a vdr-plugin will not work without"
495     eerror "calling vdr-plugin_src_unpack to patch the Makefile."
496     echo
497     eerror "Please report this at bugs.gentoo.org."
498     die "vdr-plugin_src_unpack not called!"
499     fi
500 zzam 1.50 cd "${S}"
501 zzam 1.7
502 zzam 1.65 BUILD_TARGETS=${BUILD_TARGETS:-${VDRPLUGIN_MAKE_TARGET:-all}}
503    
504 zzam 1.48 emake ${BUILD_PARAMS} \
505 zzam 1.65 ${BUILD_TARGETS} \
506 zzam 1.48 LOCALEDIR="${TMP_LOCALE_DIR}" \
507 zzam 1.61 LIBDIR="${S}" \
508 zzam 1.60 TMPDIR="${T}" \
509 zzam 1.48 || die "emake failed"
510 zzam 1.7 ;;
511     esac
512 zzam 1.1
513 zzam 1.7 shift
514     done
515 zzam 1.1 }
516    
517     vdr-plugin_src_install() {
518 zzam 1.6 [[ -n "${VDRSOURCE_DIR}" ]] && vdr-plugin_install_source_tree
519 zzam 1.46 cd "${WORKDIR}"
520 zzam 1.1
521 zzam 1.22 if [[ -n ${VDR_MAINTAINER_MODE} ]]; then
522 zzam 1.50 local mname="${P}-Makefile"
523     cp "${S}"/Makefile "${mname}.patched"
524     cp Makefile.before "${mname}.before"
525 zzam 1.22
526 zzam 1.50 diff -u "${mname}.before" "${mname}.patched" > "${mname}.diff"
527 zzam 1.22
528     insinto "/usr/share/vdr/maintainer-data/makefile-changes"
529 zzam 1.50 doins "${mname}.diff"
530 zzam 1.22
531     insinto "/usr/share/vdr/maintainer-data/makefile-before"
532 zzam 1.50 doins "${mname}.before"
533 zzam 1.22
534     insinto "/usr/share/vdr/maintainer-data/makefile-patched"
535 zzam 1.50 doins "${mname}.patched"
536 zzam 1.22
537     fi
538    
539 zzam 1.60
540 zzam 1.61
541     cd "${S}"
542     insinto "${VDR_PLUGIN_DIR}"
543     doins libvdr-*.so.*
544    
545     # create list of all created plugin libs
546 zzam 1.64 vdr_plugin_list=""
547     local p_name
548 zzam 1.60 for p in libvdr-*.so.*; do
549     p_name="${p%.so*}"
550     p_name="${p_name#lib}"
551 zzam 1.64 vdr_plugin_list="${vdr_plugin_list} ${p_name}"
552 zzam 1.60 done
553    
554 zzam 1.64 create_header_checksum_file ${vdr_plugin_list}
555     create_plugindb_file ${vdr_plugin_list}
556 zzam 1.48
557 zzam 1.56 if vdr_has_gettext && [[ -d ${TMP_LOCALE_DIR} ]]; then
558 zzam 1.48 einfo "Installing locales"
559     cd "${TMP_LOCALE_DIR}"
560     insinto "${LOCDIR}"
561     doins -r *
562     fi
563    
564     cd "${S}"
565 zzam 1.23 local docfile
566     for docfile in README* HISTORY CHANGELOG; do
567     [[ -f ${docfile} ]] && dodoc ${docfile}
568     done
569 zzam 1.2
570 zzam 1.17 # if VDR_CONFD_FILE is empty and ${FILESDIR}/confd exists take it
571     [[ -z ${VDR_CONFD_FILE} ]] && [[ -e ${FILESDIR}/confd ]] && VDR_CONFD_FILE=${FILESDIR}/confd
572    
573     if [[ -n ${VDR_CONFD_FILE} ]]; then
574 zzam 1.44 newconfd "${VDR_CONFD_FILE}" vdr.${VDRPLUGIN}
575 zzam 1.17 fi
576    
577    
578     # if VDR_RCADDON_FILE is empty and ${FILESDIR}/rc-addon.sh exists take it
579     [[ -z ${VDR_RCADDON_FILE} ]] && [[ -e ${FILESDIR}/rc-addon.sh ]] && VDR_RCADDON_FILE=${FILESDIR}/rc-addon.sh
580    
581     if [[ -n ${VDR_RCADDON_FILE} ]]; then
582     insinto "${VDR_RC_DIR}"
583     newins "${VDR_RCADDON_FILE}" plugin-${VDRPLUGIN}.sh
584     fi
585 zzam 1.1 }
586    
587 zzam 1.50 vdr-plugin_pkg_postinst() {
588     vdr-plugin_print_enable_command
589    
590 zzam 1.17 if [[ -n "${VDR_CONFD_FILE}" ]]; then
591 zzam 1.50 elog "Please have a look at the config-file"
592     elog "\t/etc/conf.d/vdr.${VDRPLUGIN}"
593 hd_brummy 1.40 elog
594 zzam 1.13 fi
595 zzam 1.1 }
596    
597 zzam 1.2 vdr-plugin_pkg_postrm() {
598 zzam 1.37 delete_orphan_plugindb_file
599 zzam 1.2 }
600    
601 zzam 1.36 vdr-plugin_pkg_config() {
602 zzam 1.54 ewarn "emerge --config ${PN} is no longer supported"
603 zzam 1.50 vdr-plugin_print_enable_command
604 zzam 1.36 }
605    
606 zzam 1.66 case "${EAPI:-0}" in
607     2)
608     EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_compile src_install pkg_postinst pkg_postrm pkg_config
609     ;;
610     *)
611     EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst pkg_postrm pkg_config
612     ;;
613     esac

  ViewVC Help
Powered by ViewVC 1.1.20