| 1 | # Copyright 1999-2005 Gentoo Foundation |
1 | # Copyright 1999-2005 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/vdr-plugin.eclass,v 1.67 2009/02/24 00:26:25 zzam Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/vdr-plugin.eclass,v 1.69 2009/03/24 21:10:13 zzam 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 | |
| … | |
… | |
| 77 | |
77 | |
| 78 | DEPEND="${COMMON_DEPEND} |
78 | DEPEND="${COMMON_DEPEND} |
| 79 | media-tv/linuxtv-dvb-headers" |
79 | media-tv/linuxtv-dvb-headers" |
| 80 | RDEPEND="${COMMON_DEPEND} |
80 | RDEPEND="${COMMON_DEPEND} |
| 81 | >=app-admin/eselect-vdr-0.0.2" |
81 | >=app-admin/eselect-vdr-0.0.2" |
|
|
82 | |
|
|
83 | # this is a hack for ebuilds like vdr-xineliboutput that want to |
|
|
84 | # conditionally install a vdr-plugin |
|
|
85 | if [[ "${GENTOO_VDR_CONDITIONAL:-no}" = "yes" ]]; then |
|
|
86 | # make DEPEND conditional |
|
|
87 | IUSE="${IUSE} vdr" |
|
|
88 | DEPEND="vdr? ( ${DEPEND} )" |
|
|
89 | RDEPEND="vdr? ( ${RDEPEND} )" |
|
|
90 | fi |
| 82 | |
91 | |
| 83 | # New method of storing plugindb |
92 | # New method of storing plugindb |
| 84 | # Called from src_install |
93 | # Called from src_install |
| 85 | # file maintained by normal portage-methods |
94 | # file maintained by normal portage-methods |
| 86 | create_plugindb_file() { |
95 | create_plugindb_file() { |
| … | |
… | |
| 355 | elog "To activate a plugin execute this command:" |
364 | elog "To activate a plugin execute this command:" |
| 356 | elog "\teselect vdr-plugin enable <plugin_name> ..." |
365 | elog "\teselect vdr-plugin enable <plugin_name> ..." |
| 357 | elog |
366 | elog |
| 358 | } |
367 | } |
| 359 | |
368 | |
|
|
369 | has_vdr() { |
|
|
370 | [[ -f "${VDR_INCLUDE_DIR}"/config.h ]] |
|
|
371 | } |
| 360 | |
372 | |
| 361 | ## exported functions |
373 | ## exported functions |
| 362 | |
374 | |
| 363 | vdr-plugin_pkg_setup() { |
375 | vdr-plugin_pkg_setup() { |
| 364 | # -fPIC is needed for shared objects on some platforms (amd64 and others) |
376 | # -fPIC is needed for shared objects on some platforms (amd64 and others) |
| … | |
… | |
| 377 | DVB_INCLUDE_DIR="/usr/include" |
389 | DVB_INCLUDE_DIR="/usr/include" |
| 378 | |
390 | |
| 379 | TMP_LOCALE_DIR="${WORKDIR}/tmp-locale" |
391 | TMP_LOCALE_DIR="${WORKDIR}/tmp-locale" |
| 380 | LOCDIR="/usr/share/vdr/locale" |
392 | LOCDIR="/usr/share/vdr/locale" |
| 381 | |
393 | |
|
|
394 | if ! has_vdr; then |
|
|
395 | # set to invalid values to detect abuses |
|
|
396 | VDRVERSION="eclass_no_vdr_installed" |
|
|
397 | APIVERSION="eclass_no_vdr_installed" |
|
|
398 | |
|
|
399 | if [[ "${GENTOO_VDR_CONDITIONAL:-no}" = "yes" ]] && ! use vdr; then |
|
|
400 | einfo "VDR not found!" |
|
|
401 | else |
|
|
402 | # if vdr is required |
|
|
403 | die "VDR not found!" |
|
|
404 | fi |
|
|
405 | return |
|
|
406 | fi |
|
|
407 | |
| 382 | VDRVERSION=$(awk -F'"' '/define VDRVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h) |
408 | VDRVERSION=$(awk -F'"' '/define VDRVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h) |
| 383 | APIVERSION=$(awk -F'"' '/define APIVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h) |
409 | APIVERSION=$(awk -F'"' '/define APIVERSION/ {print $2}' "${VDR_INCLUDE_DIR}"/config.h) |
| 384 | [[ -z ${APIVERSION} ]] && APIVERSION="${VDRVERSION}" |
410 | [[ -z ${APIVERSION} ]] && APIVERSION="${VDRVERSION}" |
| 385 | |
411 | |
| 386 | einfo "Compiling against" |
412 | einfo "Compiling against" |
| … | |
… | |
| 393 | |
419 | |
| 394 | case "$1" in |
420 | case "$1" in |
| 395 | all) |
421 | all) |
| 396 | vdr-plugin_src_util unpack add_local_patch patchmakefile i18n |
422 | vdr-plugin_src_util unpack add_local_patch patchmakefile i18n |
| 397 | ;; |
423 | ;; |
| 398 | all_but_unpack) |
424 | prepare|all_but_unpack) |
| 399 | vdr-plugin_src_util add_local_patch patchmakefile i18n |
425 | vdr-plugin_src_util add_local_patch patchmakefile i18n |
| 400 | ;; |
426 | ;; |
| 401 | unpack) |
427 | unpack) |
| 402 | base_src_unpack |
428 | base_src_unpack |
| 403 | ;; |
429 | ;; |
| … | |
… | |
| 442 | fi |
468 | fi |
| 443 | } |
469 | } |
| 444 | |
470 | |
| 445 | vdr-plugin_src_prepare() { |
471 | vdr-plugin_src_prepare() { |
| 446 | base_src_prepare |
472 | base_src_prepare |
| 447 | vdr-plugin_src_util all_but_unpack |
473 | vdr-plugin_src_util prepare |
| 448 | } |
474 | } |
| 449 | |
475 | |
| 450 | vdr-plugin_src_compile() { |
476 | vdr-plugin_src_compile() { |
| 451 | [ -z "$1" ] && vdr-plugin_src_compile prepare compile |
477 | [ -z "$1" ] && vdr-plugin_src_compile copy_source compile |
| 452 | |
478 | |
| 453 | while [ "$1" ]; do |
479 | while [ "$1" ]; do |
| 454 | |
480 | |
| 455 | case "$1" in |
481 | case "$1" in |
| 456 | prepare) |
482 | copy_source) |
| 457 | [[ -n "${VDRSOURCE_DIR}" ]] && vdr-plugin_copy_source_tree |
483 | [[ -n "${VDRSOURCE_DIR}" ]] && vdr-plugin_copy_source_tree |
| 458 | ;; |
484 | ;; |
| 459 | compile) |
485 | compile) |
| 460 | if [[ ! -f ${WORKDIR}/.vdr-plugin_makefile_patched ]]; then |
486 | if [[ ! -f ${WORKDIR}/.vdr-plugin_makefile_patched ]]; then |
| 461 | eerror "Wrong use of vdr-plugin.eclass." |
487 | eerror "Wrong use of vdr-plugin.eclass." |