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

Diff of /eclass/vdr-plugin.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.59 Revision 1.77
1# Copyright 1999-2005 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/Attic/vdr-plugin.eclass,v 1.59 2008/04/23 13:56:20 zzam Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/Attic/vdr-plugin.eclass,v 1.77 2011/12/31 01:01:56 hd_brummy Exp $
4# 4#
5# Author: 5# Author:
6# Matthias Schwarzott <zzam@gentoo.org> 6# Matthias Schwarzott <zzam@gentoo.org>
7# Joerg Bornkessel <hd_brummy@gentoo.org> 7# Joerg Bornkessel <hd_brummy@gentoo.org>
8 8
9# vdr-plugin.eclass 9# vdr-plugin.eclass
10# 10#
11# eclass to create ebuilds for vdr plugins 11# eclass to create ebuilds for vdr plugins
12# 12#
13 13
14# Example ebuild (vdr-femon): 14# Example ebuild (basic version without patching):
15# 15#
16# EAPI="2"
16# inherit vdr-plugin 17# inherit vdr-plugin
17# IUSE="" 18# IUSE=""
18# SLOT="0" 19# SLOT="0"
19# DESCRIPTION="vdr Plugin: DVB Frontend Status Monitor (signal strengt/noise)" 20# DESCRIPTION="vdr Plugin: DVB Frontend Status Monitor (signal strengt/noise)"
20# HOMEPAGE="http://www.saunalahti.fi/~rahrenbe/vdr/femon/" 21# HOMEPAGE="http://www.saunalahti.fi/~rahrenbe/vdr/femon/"
21# SRC_URI="http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/${P}.tgz" 22# SRC_URI="http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/${P}.tgz"
22# LICENSE="GPL-2" 23# LICENSE="GPL-2"
23# KEYWORDS="~x86" 24# KEYWORDS="~x86"
24# DEPEND=">=media-video/vdr-1.3.27" 25# DEPEND=">=media-video/vdr-1.6.0"
25# 26#
26# 27#
28
29# For patching you should modify src_prepare phase:
30#
31# src_prepare() {
32# epatch "${FILESDIR}"/${P}-xxx.patch
33# vdr-plugin_src_prepare
34# }
27 35
28# Installation of a config file for the plugin 36# Installation of a config file for the plugin
29# 37#
30# If ${VDR_CONFD_FILE} is set install this file 38# If ${VDR_CONFD_FILE} is set install this file
31# else install ${FILESDIR}/confd if it exists. 39# else install ${FILESDIR}/confd if it exists.
57# 65#
58# all patches which ending on diff or patch in this DIR will automatically applied 66# all patches which ending on diff or patch in this DIR will automatically applied
59# 67#
60 68
61inherit base multilib eutils flag-o-matic 69inherit base multilib eutils flag-o-matic
70
71if ! has "${EAPI:-0}" 0 1 2 3; then
72 die "API of vdr-plugin.eclass in EAPI=\"${EAPI}\" not established"
73fi
62 74
63IUSE="" 75IUSE=""
64 76
65# Name of the plugin stripped from all vdrplugin-, vdr- and -cvs pre- and postfixes 77# Name of the plugin stripped from all vdrplugin-, vdr- and -cvs pre- and postfixes
66VDRPLUGIN="${PN/#vdrplugin-/}" 78VDRPLUGIN="${PN/#vdrplugin-/}"
71 83
72# works in most cases 84# works in most cases
73S="${WORKDIR}/${VDRPLUGIN}-${PV}" 85S="${WORKDIR}/${VDRPLUGIN}-${PV}"
74 86
75# depend on headers for DVB-driver 87# depend on headers for DVB-driver
76DEPEND=">=media-tv/gentoo-vdr-scripts-0.3.8 88COMMON_DEPEND=">=media-tv/gentoo-vdr-scripts-0.4.2"
77 || ( >=media-tv/gentoo-vdr-scripts-0.4.2 >=media-tv/vdrplugin-rebuild-0.2 ) 89
78 >=app-admin/eselect-vdr-0.0.2 90DEPEND="${COMMON_DEPEND}
79 media-tv/linuxtv-dvb-headers" 91 media-tv/linuxtv-dvb-headers"
92RDEPEND="${COMMON_DEPEND}
93 >=app-admin/eselect-vdr-0.0.2"
80 94
95# this is a hack for ebuilds like vdr-xineliboutput that want to
96# conditionally install a vdr-plugin
97if [[ "${GENTOO_VDR_CONDITIONAL:-no}" = "yes" ]]; then
98 # make DEPEND conditional
99 IUSE="${IUSE} vdr"
100 DEPEND="vdr? ( ${DEPEND} )"
101 RDEPEND="vdr? ( ${RDEPEND} )"
102fi
81 103
82# New method of storing plugindb 104# New method of storing plugindb
83# Called from src_install 105# Called from src_install
84# file maintained by normal portage-methods 106# file maintained by normal portage-methods
85create_plugindb_file() { 107create_plugindb_file() {
97 { 119 {
98 echo "VDRPLUGIN_DB=1" 120 echo "VDRPLUGIN_DB=1"
99 echo "CREATOR=ECLASS" 121 echo "CREATOR=ECLASS"
100 echo "EBUILD=${CATEGORY}/${PN}" 122 echo "EBUILD=${CATEGORY}/${PN}"
101 echo "EBUILD_V=${PVR}" 123 echo "EBUILD_V=${PVR}"
124 echo "PLUGINS=\"$@\""
102 } > "${D}/${DB_FILE}" 125 } > "${D}/${DB_FILE}"
103} 126}
104 127
105# Delete files created outside of vdr-plugin.eclass 128# Delete files created outside of vdr-plugin.eclass
106# vdrplugin-rebuild.ebuild converted plugindb and files are 129# vdrplugin-rebuild.ebuild converted plugindb and files are
130create_header_checksum_file() 153create_header_checksum_file()
131{ 154{
132 # Danger: Not using $ROOT here, as compile will also not use it !!! 155 # Danger: Not using $ROOT here, as compile will also not use it !!!
133 # If vdr in $ROOT and / differ, plugins will not run anyway 156 # If vdr in $ROOT and / differ, plugins will not run anyway
134 157
158 local CHKSUM="header-md5-vdr"
159
160 if [[ -f ${VDR_CHECKSUM_DIR}/header-md5-vdr ]]; then
161 cp "${VDR_CHECKSUM_DIR}/header-md5-vdr" "${CHKSUM}"
162 elif type -p md5sum >/dev/null 2>&1; then
163 (
164 cd "${VDR_INCLUDE_DIR}"
165 md5sum *.h libsi/*.h|LC_ALL=C sort --key=2
166 ) > "${CHKSUM}"
167 else
168 die "Could not create md5 checksum of headers"
169 fi
170
135 insinto "${VDR_CHECKSUM_DIR}" 171 insinto "${VDR_CHECKSUM_DIR}"
136 if [[ -f ${VDR_CHECKSUM_DIR}/header-md5-vdr ]]; then 172 local p_name
137 newins "${VDR_CHECKSUM_DIR}/header-md5-vdr header-md5-${PN}" 173 for p_name; do
138 else 174 newins "${CHKSUM}" "header-md5-${p_name}"
139 if type -p md5sum >/dev/null 2>&1; then 175 done
140 cd "${S}"
141 (
142 cd "${VDR_INCLUDE_DIR}"
143 md5sum *.h libsi/*.h|LC_ALL=C sort --key=2
144 ) > header-md5-${PN}
145 doins header-md5-${PN}
146 fi
147 fi
148} 176}
149 177
150fix_vdr_libsi_include() 178fix_vdr_libsi_include()
151{ 179{
152 einfo "Fixing include of libsi-headers" 180 #einfo "Fixing include of libsi-headers"
153 local f 181 local f
154 for f; do 182 for f; do
155 sed -i "${f}" \ 183 sed -i "${f}" \
156 -e '/#include/s:"\(.*libsi.*\)":<\1>:' \ 184 -e '/#include/s:"\(.*libsi.*\)":<\1>:' \
157 -e '/#include/s:<.*\(libsi/.*\)>:<vdr/\1>:' 185 -e '/#include/s:<.*\(libsi/.*\)>:<vdr/\1>:'
161vdr_patchmakefile() { 189vdr_patchmakefile() {
162 einfo "Patching Makefile" 190 einfo "Patching Makefile"
163 [[ -e Makefile ]] || die "Makefile of plugin can not be found!" 191 [[ -e Makefile ]] || die "Makefile of plugin can not be found!"
164 cp Makefile "${WORKDIR}"/Makefile.before 192 cp Makefile "${WORKDIR}"/Makefile.before
165 193
166 ebegin " Setting Pathes" 194 # plugin makefiles use VDRDIR in strange ways
195 # assumptions:
196 # 1. $(VDRDIR) contains Make.config
197 # 2. $(VDRDIR) contains config.h
198 # 3. $(VDRDIR)/include/vdr contains the headers
199 # 4. $(VDRDIR) contains main vdr Makefile
200 # 5. $(VDRDIR)/locale exists
201 # 6. $(VDRDIR) allows to access vdr source files
202 #
203 # We only have one directory (for now /usr/include/vdr),
204 # that contains vdr-headers and Make.config.
205 # To satisfy 1-3 we do this:
206 # Set VDRDIR=/usr/include/vdr
207 # Set VDRINCDIR=/usr/include
208 # Change $(VDRDIR)/include to $(VDRINCDIR)
209
167 sed -i Makefile \ 210 sed -i Makefile \
168 -e "s:^VDRDIR.*$:VDRDIR = ${VDR_INCLUDE_DIR}:" \ 211 -e "s:^VDRDIR.*$:VDRDIR = ${VDR_INCLUDE_DIR}:" \
169 -e "s:^LIBDIR.*$:LIBDIR = ${S}:" \ 212 -e "/^VDRDIR/a VDRINCDIR = ${VDR_INCLUDE_DIR%/vdr}" \
170 -e "s:^TMPDIR.*$:TMPDIR = ${T}:" \ 213 -e '/VDRINCDIR.*=/!s:$(VDRDIR)/include:$(VDRINCDIR):' \
171 -e 's:-I$(VDRDIR)/include:-I'"${VDR_INCLUDE_DIR%vdr}"':' \ 214 \
172 -e "/^DVBDIR/d" \
173 -e 's:-I$(DVBDIR)/include::' \ 215 -e 's:-I$(DVBDIR)/include::' \
174 -e 's:-I$(DVBDIR)::' 216 -e 's:-I$(DVBDIR)::'
175 eend $?
176 217
177 # maybe needed for multiproto: 218 # maybe needed for multiproto:
178 #sed -i Makefile \ 219 #sed -i Makefile \
179 # -e "s:^DVBDIR.*$:DVBDIR = ${DVB_INCLUDE_DIR}:" \ 220 # -e "s:^DVBDIR.*$:DVBDIR = ${DVB_INCLUDE_DIR}:" \
180 # -e 's:-I$(VDRDIR)/include -I$(DVBDIR)/include:-I$(DVBDIR)/include -I$(VDRDIR)/include:' \
181 # -e 's:-I$(DVBDIR)/include:-I$(DVBDIR):' 221 # -e 's:-I$(DVBDIR)/include:-I$(DVBDIR):'
182 222
183 if ! grep -q APIVERSION Makefile; then 223 if ! grep -q APIVERSION Makefile; then
184 ebegin " Converting to APIVERSION" 224 ebegin " Converting to APIVERSION"
185 sed -i Makefile \ 225 sed -i Makefile \
197 237
198 # Disabling file stripping, useful for debugging 238 # Disabling file stripping, useful for debugging
199 sed -i Makefile \ 239 sed -i Makefile \
200 -e '/@.*strip/d' \ 240 -e '/@.*strip/d' \
201 -e '/strip \$(LIBDIR)\/\$@/d' \ 241 -e '/strip \$(LIBDIR)\/\$@/d' \
202 -e '/@.*\$(STRIP)/d' 242 -e 's/STRIP.*=.*$/STRIP = true/'
203 243
204 # Use a file instead of a variable as single-stepping via ebuild 244 # Use a file instead of a variable as single-stepping via ebuild
205 # destroys environment. 245 # destroys environment.
206 touch "${WORKDIR}"/.vdr-plugin_makefile_patched 246 touch "${WORKDIR}"/.vdr-plugin_makefile_patched
207} 247}
223plugin_has_gettext() { 263plugin_has_gettext() {
224 [[ -d po ]] 264 [[ -d po ]]
225} 265}
226 266
227vdr_i18n_convert_to_gettext() { 267vdr_i18n_convert_to_gettext() {
268 if has_version ">=media-video/vdr-1.7.22"; then
269 local i18n_tool="${ROOT}/usr/share/vdr/bin/i18n-to-gettext"
270 else
228 local i18n_tool="${ROOT}/usr/share/vdr/bin/i18n-to-gettext.pl" 271 local i18n_tool="${ROOT}/usr/share/vdr/bin/i18n-to-gettext.pl"
272 fi
229 273
230 if [[ ${NO_GETTEXT_HACK} == "1" ]]; then 274 if [[ ${NO_GETTEXT_HACK} == "1" ]]; then
231 ewarn "Conversion to gettext disabled in ebuild" 275 ewarn "Conversion to gettext disabled in ebuild"
232 return 1 276 return 1
233 fi 277 fi
263 return 1 307 return 1
264 fi 308 fi
265} 309}
266 310
267vdr_i18n_disable_gettext() { 311vdr_i18n_disable_gettext() {
268 ebegin "Disabling gettext support in plugin" 312 #einfo "Disabling gettext support in plugin"
313
269 # Remove i18n Target if using older vdr 314 # Remove i18n Target if using older vdr
270 sed -i Makefile \ 315 sed -i Makefile \
271 -e '/^all:/s/ i18n//' 316 -e '/^all:/s/ i18n//'
272 eend 0
273} 317}
274 318
275vdr_i18n() { 319vdr_i18n() {
276 if vdr_has_gettext; then 320 if vdr_has_gettext; then
277 einfo "VDR has gettext support" 321 #einfo "VDR has gettext support"
278 if plugin_has_gettext; then 322 if plugin_has_gettext; then
279 einfo "Plugin has gettext support, fine" 323 #einfo "Plugin has gettext support, fine"
324 if [[ ${NO_GETTEXT_HACK} == "1" ]]; then
325 ewarn "Please remove unneeded NO_GETTEXT_HACK from ebuild."
326 fi
280 else 327 else
281 vdr_i18n_convert_to_gettext 328 vdr_i18n_convert_to_gettext
282 if [[ $? != 0 ]]; then 329 if [[ $? != 0 ]]; then
283 eerror "" 330 eerror ""
284 eerror "Plugin will have only english OSD texts" 331 eerror "Plugin will have only english OSD texts"
285 eerror "it needs manual fixing." 332 eerror "it needs manual fixing."
286 fi 333 fi
287 fi 334 fi
288 else 335 else
289 einfo "VDR has no gettext support" 336 #einfo "VDR has no gettext support"
290 if plugin_has_gettext; then 337 if plugin_has_gettext; then
291 vdr_i18n_disable_gettext 338 vdr_i18n_disable_gettext
292 fi 339 fi
293 fi 340 fi
294} 341}
315 362
316 dosym "${VDRPLUGIN}-${PV}" "${destdir}" 363 dosym "${VDRPLUGIN}-${PV}" "${destdir}"
317} 364}
318 365
319vdr-plugin_print_enable_command() { 366vdr-plugin_print_enable_command() {
367 local p_name c=0 l=""
368 for p_name in ${vdr_plugin_list}; do
369 c=$(( c+1 ))
370 l="$l ${p_name#vdr-}"
371 done
372
320 elog 373 elog
374 case $c in
375 1) elog "Installed plugin${l}" ;;
376 *) elog "Installed $c plugins:${l}" ;;
377 esac
321 elog "To activate this vdr-plugin execute the following command:" 378 elog "To activate a plugin execute this command:"
322 elog "\teselect vdr-plugin enable ${PN#vdr-}" 379 elog "\teselect vdr-plugin enable <plugin_name> ..."
323 elog 380 elog
324} 381}
325 382
383has_vdr() {
384 [[ -f "${VDR_INCLUDE_DIR}"/config.h ]]
385}
326 386
327## exported functions 387## exported functions
328 388
329vdr-plugin_pkg_setup() { 389vdr-plugin_pkg_setup() {
330 # -fPIC is needed for shared objects on some platforms (amd64 and others) 390 # -fPIC is needed for shared objects on some platforms (amd64 and others)
331 append-flags -fPIC 391 append-flags -fPIC
332 392
393 # Plugins need to be compiled with position independent code, otherwise linking
394 # VDR against it will fail
395 if has_version ">=media-video/vdr-1.7.13"; then
396 append-flags -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
397 fi
398
333 # Where should the plugins live in the filesystem 399 # Where should the plugins live in the filesystem
334 VDR_PLUGIN_DIR="/usr/$(get_libdir)/vdr/plugins" 400 VDR_PLUGIN_DIR="/usr/$(get_libdir)/vdr/plugins"
335 VDR_CHECKSUM_DIR="${VDR_PLUGIN_DIR%/plugins}/checksums" 401 VDR_CHECKSUM_DIR="${VDR_PLUGIN_DIR%/plugins}/checksums"
336 402
337 # was /usr/lib/... some time ago 403 # was /usr/lib/... some time ago
340 406
341 # Pathes to includes 407 # Pathes to includes
342 VDR_INCLUDE_DIR="/usr/include/vdr" 408 VDR_INCLUDE_DIR="/usr/include/vdr"
343 DVB_INCLUDE_DIR="/usr/include" 409 DVB_INCLUDE_DIR="/usr/include"
344 410
345
346 TMP_LOCALE_DIR="${WORKDIR}/tmp-locale" 411 TMP_LOCALE_DIR="${WORKDIR}/tmp-locale"
412 if has_version ">=media-video/vdr-1.6.0_p2-r7"; then
413 LOCDIR="/usr/share/locale"
414 else
347 LOCDIR="/usr/share/vdr/locale" 415 LOCDIR="/usr/share/vdr/locale"
416 fi
417
418 if ! has_vdr; then
419 # set to invalid values to detect abuses
420 VDRVERSION="eclass_no_vdr_installed"
421 APIVERSION="eclass_no_vdr_installed"
422
423 if [[ "${GENTOO_VDR_CONDITIONAL:-no}" = "yes" ]] && ! use vdr; then
424 einfo "VDR not found!"
425 else
426 # if vdr is required
427 die "VDR not found!"
428 fi
429 return
430 fi
348 431
349 VDRVERSION=$(awk -F'"' '/define VDRVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h) 432 VDRVERSION=$(awk -F'"' '/define VDRVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h)
350 APIVERSION=$(awk -F'"' '/define APIVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h) 433 APIVERSION=$(awk -F'"' '/define APIVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h)
351 [[ -z ${APIVERSION} ]] && APIVERSION="${VDRVERSION}" 434 [[ -z ${APIVERSION} ]] && APIVERSION="${VDRVERSION}"
352 435
353 einfo "Compiling against" 436 einfo "Compiling against"
354 einfo "\tvdr-${VDRVERSION} [API version ${APIVERSION}]" 437 einfo "\tvdr-${VDRVERSION} [API version ${APIVERSION}]"
438}
439
440vdr-plugin_src_util() {
441
442 while [ "$1" ]; do
443
444 case "$1" in
445 all)
446 vdr-plugin_src_util unpack add_local_patch patchmakefile i18n
447 ;;
448 prepare|all_but_unpack)
449 vdr-plugin_src_util add_local_patch patchmakefile i18n
450 ;;
451 unpack)
452 base_src_unpack
453 ;;
454 add_local_patch)
455 cd "${S}" || die "Could not change to plugin-source-directory!"
456 vdr_add_local_patch
457 ;;
458 patchmakefile)
459 cd "${S}" || die "Could not change to plugin-source-directory!"
460 vdr_patchmakefile
461 ;;
462 i18n)
463 cd "${S}" || die "Could not change to plugin-source-directory!"
464 vdr_i18n
465 ;;
466 esac
467
468 shift
469 done
355} 470}
356 471
357vdr-plugin_src_unpack() { 472vdr-plugin_src_unpack() {
358 if [[ -z ${VDR_INCLUDE_DIR} ]]; then 473 if [[ -z ${VDR_INCLUDE_DIR} ]]; then
359 eerror "Wrong use of vdr-plugin.eclass." 474 eerror "Wrong use of vdr-plugin.eclass."
360 eerror "An ebuild for a vdr-plugin will not work without calling vdr-plugin_pkg_setup." 475 eerror "An ebuild for a vdr-plugin will not work without calling vdr-plugin_pkg_setup."
361 echo 476 echo
362 eerror "Please report this at bugs.gentoo.org." 477 eerror "Please report this at bugs.gentoo.org."
363 die "vdr-plugin_pkg_setup not called!" 478 die "vdr-plugin_pkg_setup not called!"
364 fi 479 fi
365 [ -z "$1" ] && vdr-plugin_src_unpack unpack add_local_patch patchmakefile i18n 480 if [ -z "$1" ]; then
481 case "${EAPI:-0}" in
482 2|3)
483 vdr-plugin_src_util unpack
484 ;;
485 *)
486 vdr-plugin_src_util all
487 ;;
488 esac
489
490 else
491 vdr-plugin_src_util $@
492 fi
493}
494
495vdr-plugin_src_prepare() {
496 base_src_prepare
497 vdr-plugin_src_util prepare
498}
499
500vdr-plugin_src_compile() {
501 [ -z "$1" ] && vdr-plugin_src_compile copy_source compile
366 502
367 while [ "$1" ]; do 503 while [ "$1" ]; do
368 504
369 case "$1" in 505 case "$1" in
370 all_but_unpack) 506 copy_source)
371 vdr-plugin_src_unpack add_local_patch patchmakefile i18n
372 ;;
373 unpack)
374 base_src_unpack
375 ;;
376 add_local_patch)
377 cd "${S}" || die "Could not change to plugin-source-directory!"
378 vdr_add_local_patch
379 ;;
380 patchmakefile)
381 cd "${S}" || die "Could not change to plugin-source-directory!"
382 vdr_patchmakefile
383 ;;
384 i18n)
385 cd "${S}" || die "Could not change to plugin-source-directory!"
386 vdr_i18n
387 ;;
388 esac
389
390 shift
391 done
392}
393
394vdr-plugin_src_compile() {
395 [ -z "$1" ] && vdr-plugin_src_compile prepare compile
396
397 while [ "$1" ]; do
398
399 case "$1" in
400 prepare)
401 [[ -n "${VDRSOURCE_DIR}" ]] && vdr-plugin_copy_source_tree 507 [[ -n "${VDRSOURCE_DIR}" ]] && vdr-plugin_copy_source_tree
402 ;; 508 ;;
403 compile) 509 compile)
404 if [[ ! -f ${WORKDIR}/.vdr-plugin_makefile_patched ]]; then 510 if [[ ! -f ${WORKDIR}/.vdr-plugin_makefile_patched ]]; then
405 eerror "Wrong use of vdr-plugin.eclass." 511 eerror "Wrong use of vdr-plugin.eclass."
409 eerror "Please report this at bugs.gentoo.org." 515 eerror "Please report this at bugs.gentoo.org."
410 die "vdr-plugin_src_unpack not called!" 516 die "vdr-plugin_src_unpack not called!"
411 fi 517 fi
412 cd "${S}" 518 cd "${S}"
413 519
520 BUILD_TARGETS=${BUILD_TARGETS:-${VDRPLUGIN_MAKE_TARGET:-all}}
521
414 emake ${BUILD_PARAMS} \ 522 emake ${BUILD_PARAMS} \
415 ${VDRPLUGIN_MAKE_TARGET:-all} \ 523 ${BUILD_TARGETS} \
416 LOCALEDIR="${TMP_LOCALE_DIR}" \ 524 LOCALEDIR="${TMP_LOCALE_DIR}" \
525 LIBDIR="${S}" \
526 TMPDIR="${T}" \
417 || die "emake failed" 527 || die "emake failed"
418 ;; 528 ;;
419 esac 529 esac
420 530
421 shift 531 shift
442 insinto "/usr/share/vdr/maintainer-data/makefile-patched" 552 insinto "/usr/share/vdr/maintainer-data/makefile-patched"
443 doins "${mname}.patched" 553 doins "${mname}.patched"
444 554
445 fi 555 fi
446 556
557
558
447 cd "${S}" 559 cd "${S}"
448 insinto "${VDR_PLUGIN_DIR}" 560 insinto "${VDR_PLUGIN_DIR}"
449 doins libvdr-*.so.* 561 doins libvdr-*.so.*
562
563 # create list of all created plugin libs
564 vdr_plugin_list=""
565 local p_name
566 for p in libvdr-*.so.*; do
567 p_name="${p%.so*}"
568 p_name="${p_name#lib}"
569 vdr_plugin_list="${vdr_plugin_list} ${p_name}"
570 done
571
572 create_header_checksum_file ${vdr_plugin_list}
573 create_plugindb_file ${vdr_plugin_list}
450 574
451 if vdr_has_gettext && [[ -d ${TMP_LOCALE_DIR} ]]; then 575 if vdr_has_gettext && [[ -d ${TMP_LOCALE_DIR} ]]; then
452 einfo "Installing locales" 576 einfo "Installing locales"
453 cd "${TMP_LOCALE_DIR}" 577 cd "${TMP_LOCALE_DIR}"
454 insinto "${LOCDIR}" 578 insinto "${LOCDIR}"
474 598
475 if [[ -n ${VDR_RCADDON_FILE} ]]; then 599 if [[ -n ${VDR_RCADDON_FILE} ]]; then
476 insinto "${VDR_RC_DIR}" 600 insinto "${VDR_RC_DIR}"
477 newins "${VDR_RCADDON_FILE}" plugin-${VDRPLUGIN}.sh 601 newins "${VDR_RCADDON_FILE}" plugin-${VDRPLUGIN}.sh
478 fi 602 fi
479
480 create_header_checksum_file
481 create_plugindb_file
482} 603}
483 604
484vdr-plugin_pkg_postinst() { 605vdr-plugin_pkg_postinst() {
485 vdr-plugin_print_enable_command 606 vdr-plugin_print_enable_command
486 607
498vdr-plugin_pkg_config() { 619vdr-plugin_pkg_config() {
499 ewarn "emerge --config ${PN} is no longer supported" 620 ewarn "emerge --config ${PN} is no longer supported"
500 vdr-plugin_print_enable_command 621 vdr-plugin_print_enable_command
501} 622}
502 623
624case "${EAPI:-0}" in
625 2|3)
626 EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_compile src_install pkg_postinst pkg_postrm pkg_config
627 ;;
628 *)
503EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst pkg_postrm pkg_config 629 EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst pkg_postrm pkg_config
630 ;;
631esac

Legend:
Removed from v.1.59  
changed lines
  Added in v.1.77

  ViewVC Help
Powered by ViewVC 1.1.20