| 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.36 2006/10/12 16:31:45 zzam Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/vdr-plugin.eclass,v 1.40 2007/01/05 17:24:19 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 | |
| … | |
… | |
| 58 | # all patches which ending on diff or patch in this DIR will automatically applied |
58 | # all patches which ending on diff or patch in this DIR will automatically applied |
| 59 | # |
59 | # |
| 60 | |
60 | |
| 61 | inherit base multilib eutils flag-o-matic |
61 | inherit base multilib eutils flag-o-matic |
| 62 | |
62 | |
| 63 | IUSE="debug" |
63 | IUSE="" |
| 64 | |
64 | |
| 65 | # Name of the plugin stripped from all vdrplugin-, vdr- and -cvs pre- and postfixes |
65 | # Name of the plugin stripped from all vdrplugin-, vdr- and -cvs pre- and postfixes |
| 66 | VDRPLUGIN="${PN/#vdrplugin-/}" |
66 | VDRPLUGIN="${PN/#vdrplugin-/}" |
| 67 | VDRPLUGIN="${VDRPLUGIN/#vdr-/}" |
67 | VDRPLUGIN="${VDRPLUGIN/#vdr-/}" |
| 68 | VDRPLUGIN="${VDRPLUGIN/%-cvs/}" |
68 | VDRPLUGIN="${VDRPLUGIN/%-cvs/}" |
| … | |
… | |
| 84 | if [[ ! -f ${VDRPLUGINDB_DIR}/vdrplugindb ]]; then |
84 | if [[ ! -f ${VDRPLUGINDB_DIR}/vdrplugindb ]]; then |
| 85 | [[ ! -d ${VDRPLUGINDB_DIR} ]] && mkdir -p ${VDRPLUGINDB_DIR} |
85 | [[ ! -d ${VDRPLUGINDB_DIR} ]] && mkdir -p ${VDRPLUGINDB_DIR} |
| 86 | touch ${VDRPLUGINDB_DIR}/vdrplugindb |
86 | touch ${VDRPLUGINDB_DIR}/vdrplugindb |
| 87 | fi |
87 | fi |
| 88 | if [[ -z $(grep ${CATEGORY}/${PN}-${PVR} ${VDRPLUGINDB_DIR}/vdrplugindb) ]]; then |
88 | if [[ -z $(grep ${CATEGORY}/${PN}-${PVR} ${VDRPLUGINDB_DIR}/vdrplugindb) ]]; then |
| 89 | einfo "Adding plugin to vdrplugindb." |
89 | elog "Adding plugin to vdrplugindb." |
| 90 | echo "a:1:${CATEGORY}/${PN}-${PVR}" >> ${VDRPLUGINDB_DIR}/vdrplugindb |
90 | echo "a:1:${CATEGORY}/${PN}-${PVR}" >> ${VDRPLUGINDB_DIR}/vdrplugindb |
| 91 | fi |
91 | fi |
| 92 | } |
92 | } |
| 93 | |
93 | |
| 94 | remove_vdrplugindb() { |
94 | remove_vdrplugindb() { |
| 95 | local VDRPLUGINDB_DIR=${ROOT}/var/lib/vdrplugin-rebuild/ |
95 | local VDRPLUGINDB_DIR=${ROOT}/var/lib/vdrplugin-rebuild/ |
| 96 | |
96 | |
| 97 | if [[ -n $(grep ${CATEGORY}/${PN}-${PVR} ${VDRPLUGINDB_DIR}/vdrplugindb) ]]; then |
97 | if [[ -n $(grep ${CATEGORY}/${PN}-${PVR} ${VDRPLUGINDB_DIR}/vdrplugindb) ]]; then |
| 98 | einfo "Removing ${CATEGORY}/${PN}-${PVR} from vdrplugindb." |
98 | elog "Removing ${CATEGORY}/${PN}-${PVR} from vdrplugindb." |
| 99 | sed -ie "/.*${CATEGORY}\/${P}.*/d" ${VDRPLUGINDB_DIR}/vdrplugindb |
99 | sed -ie "/.*${CATEGORY}\/${P}.*/d" ${VDRPLUGINDB_DIR}/vdrplugindb |
| 100 | fi |
100 | fi |
|
|
101 | } |
|
|
102 | |
|
|
103 | # New method of storing plugindb |
|
|
104 | # Called from src_install |
|
|
105 | # file maintained by normal portage-methods |
|
|
106 | create_plugindb_file() { |
|
|
107 | local NEW_VDRPLUGINDB_DIR=/usr/share/vdr/vdrplugin-rebuild/ |
|
|
108 | local DB_FILE=${NEW_VDRPLUGINDB_DIR}/${CATEGORY}-${PF} |
|
|
109 | insinto ${NEW_VDRPLUGINDB_DIR} |
|
|
110 | cat <<-EOT > ${D}/${DB_FILE} |
|
|
111 | VDRPLUGIN_DB=1 |
|
|
112 | CREATOR=ECLASS |
|
|
113 | EBUILD=${CATEGORY}/${PN} |
|
|
114 | EBUILD_V=${PVR} |
|
|
115 | EOT |
|
|
116 | } |
|
|
117 | |
|
|
118 | # Delete files created outside of vdr-plugin.eclass |
|
|
119 | # vdrplugin-rebuild.ebuild converted plugindb and files are |
|
|
120 | # not deleted by portage itself - should only be needed as |
|
|
121 | # long as not every system has switched over to |
|
|
122 | # vdrplugin-rebuild-0.2 |
|
|
123 | delete_orphan_plugindb_file() { |
|
|
124 | #elog Testing for orphaned plugindb file |
|
|
125 | local NEW_VDRPLUGINDB_DIR=/usr/share/vdr/vdrplugin-rebuild/ |
|
|
126 | local DB_FILE=${ROOT}/${NEW_VDRPLUGINDB_DIR}/${CATEGORY}-${PF} |
|
|
127 | |
|
|
128 | # file exists |
|
|
129 | [[ -f ${DB_FILE} ]] || return |
|
|
130 | |
|
|
131 | # will portage handle the file itself |
|
|
132 | if grep -q CREATOR=ECLASS ${DB_FILE}; then |
|
|
133 | #elog file owned by eclass - don't touch it |
|
|
134 | return |
|
|
135 | fi |
|
|
136 | |
|
|
137 | elog "Removing orphaned plugindb-file." |
|
|
138 | elog "#rm ${DB_FILE}" |
|
|
139 | rm ${DB_FILE} |
| 101 | } |
140 | } |
| 102 | |
141 | |
| 103 | vdr-plugin_pkg_setup() { |
142 | vdr-plugin_pkg_setup() { |
| 104 | # -fPIC is needed for shared objects on some platforms (amd64 and others) |
143 | # -fPIC is needed for shared objects on some platforms (amd64 and others) |
| 105 | append-flags -fPIC |
144 | append-flags -fPIC |
| 106 | use debug && append-flags -g |
|
|
| 107 | |
145 | |
| 108 | # Where should the plugins live in the filesystem |
146 | # Where should the plugins live in the filesystem |
| 109 | VDR_PLUGIN_DIR="/usr/$(get_libdir)/vdr/plugins" |
147 | VDR_PLUGIN_DIR="/usr/$(get_libdir)/vdr/plugins" |
| 110 | VDR_CHECKSUM_DIR="${VDR_PLUGIN_DIR%/plugins}/checksums" |
148 | VDR_CHECKSUM_DIR="${VDR_PLUGIN_DIR%/plugins}/checksums" |
| 111 | |
149 | |
| … | |
… | |
| 120 | |
158 | |
| 121 | VDRVERSION=$(awk -F'"' '/define VDRVERSION/ {print $2}' ${VDR_INCLUDE_DIR}/config.h) |
159 | VDRVERSION=$(awk -F'"' '/define VDRVERSION/ {print $2}' ${VDR_INCLUDE_DIR}/config.h) |
| 122 | APIVERSION=$(awk -F'"' '/define APIVERSION/ {print $2}' ${VDR_INCLUDE_DIR}/config.h) |
160 | APIVERSION=$(awk -F'"' '/define APIVERSION/ {print $2}' ${VDR_INCLUDE_DIR}/config.h) |
| 123 | [[ -z ${APIVERSION} ]] && APIVERSION="${VDRVERSION}" |
161 | [[ -z ${APIVERSION} ]] && APIVERSION="${VDRVERSION}" |
| 124 | |
162 | |
| 125 | einfo "Building ${PF} against vdr-${VDRVERSION}" |
163 | elog "Building ${PF} against vdr-${VDRVERSION}" |
| 126 | einfo "APIVERSION: ${APIVERSION}" |
164 | elog "APIVERSION: ${APIVERSION}" |
| 127 | } |
165 | } |
| 128 | |
166 | |
| 129 | vdr-plugin_src_unpack() { |
167 | vdr-plugin_src_unpack() { |
| 130 | if [[ -z ${VDR_INCLUDE_DIR} ]]; then |
168 | if [[ -z ${VDR_INCLUDE_DIR} ]]; then |
| 131 | eerror "Wrong use of vdr-plugin.eclass." |
169 | eerror "Wrong use of vdr-plugin.eclass." |
| … | |
… | |
| 148 | patchmakefile) |
186 | patchmakefile) |
| 149 | if ! cd ${S}; then |
187 | if ! cd ${S}; then |
| 150 | ewarn "There seems to be no plugin-directory with the name ${S##*/}" |
188 | ewarn "There seems to be no plugin-directory with the name ${S##*/}" |
| 151 | ewarn "Perhaps you find one among these:" |
189 | ewarn "Perhaps you find one among these:" |
| 152 | cd "${WORKDIR}" |
190 | cd "${WORKDIR}" |
| 153 | einfo "$(/bin/ls -1 ${WORKDIR})" |
191 | elog "$(/bin/ls -1 ${WORKDIR})" |
| 154 | die "Could not change to plugin-source-directory!" |
192 | die "Could not change to plugin-source-directory!" |
| 155 | fi |
193 | fi |
| 156 | |
194 | |
| 157 | einfo "Patching Makefile" |
195 | elog "Patching Makefile" |
| 158 | [[ -e Makefile ]] || die "Makefile of plugin can not be found!" |
196 | [[ -e Makefile ]] || die "Makefile of plugin can not be found!" |
| 159 | cp Makefile Makefile.orig |
197 | cp Makefile Makefile.orig |
| 160 | |
198 | |
| 161 | sed -i Makefile \ |
199 | sed -i Makefile \ |
| 162 | -e '1i\#Makefile was patched by vdr-plugin.eclass' |
200 | -e '1i\#Makefile was patched by vdr-plugin.eclass' |
| … | |
… | |
| 177 | -e 's:^APIVERSION = :APIVERSION ?= :' \ |
215 | -e 's:^APIVERSION = :APIVERSION ?= :' \ |
| 178 | -e 's:$(LIBDIR)/$@.$(VDRVERSION):$(LIBDIR)/$@.$(APIVERSION):' \ |
216 | -e 's:$(LIBDIR)/$@.$(VDRVERSION):$(LIBDIR)/$@.$(APIVERSION):' \ |
| 179 | -e '2i\APIVERSION = '"${APIVERSION}" |
217 | -e '2i\APIVERSION = '"${APIVERSION}" |
| 180 | eend $? |
218 | eend $? |
| 181 | |
219 | |
| 182 | ebegin " Correcting CXXFLAGS" |
220 | ebegin " Correcting Compile-Flags" |
| 183 | sed -i Makefile \ |
221 | sed -i Makefile \ |
| 184 | -e 's:^CXXFLAGS:#CXXFLAGS:' |
222 | -e 's:^CXXFLAGS:#CXXFLAGS:' \ |
|
|
223 | -e '/LDFLAGS/!s:-shared:$(LDFLAGS) -shared:' |
| 185 | eend $? |
224 | eend $? |
| 186 | |
225 | |
| 187 | ebegin " Disabling file stripping" |
226 | ebegin " Disabling file stripping" |
| 188 | sed -i Makefile \ |
227 | sed -i Makefile \ |
| 189 | -e '/@.*strip/d' \ |
228 | -e '/@.*strip/d' \ |
| … | |
… | |
| 198 | ;; |
237 | ;; |
| 199 | add_local_patch) |
238 | add_local_patch) |
| 200 | cd ${S} |
239 | cd ${S} |
| 201 | if test -d "${VDR_LOCAL_PATCHES_DIR}/${PN}"; then |
240 | if test -d "${VDR_LOCAL_PATCHES_DIR}/${PN}"; then |
| 202 | echo |
241 | echo |
| 203 | einfo "Applying local patches" |
242 | elog "Applying local patches" |
| 204 | for LOCALPATCH in ${VDR_LOCAL_PATCHES_DIR}/${PN}/${PV}/*.{diff,patch}; do |
243 | for LOCALPATCH in ${VDR_LOCAL_PATCHES_DIR}/${PN}/${PV}/*.{diff,patch}; do |
| 205 | test -f "${LOCALPATCH}" && epatch "${LOCALPATCH}" |
244 | test -f "${LOCALPATCH}" && epatch "${LOCALPATCH}" |
| 206 | done |
245 | done |
| 207 | fi |
246 | fi |
| 208 | ;; |
247 | ;; |
| … | |
… | |
| 224 | -e 's:-I$(VDRDIR) -I$(DVBDIR):-I$(DVBDIR) -I$(VDRDIR):' |
263 | -e 's:-I$(VDRDIR) -I$(DVBDIR):-I$(DVBDIR) -I$(VDRDIR):' |
| 225 | popd >/dev/null |
264 | popd >/dev/null |
| 226 | } |
265 | } |
| 227 | |
266 | |
| 228 | vdr-plugin_install_source_tree() { |
267 | vdr-plugin_install_source_tree() { |
| 229 | einfo "Installing sources" |
268 | elog "Installing sources" |
| 230 | destdir=${VDRSOURCE_DIR}/vdr-${VDRVERSION}/PLUGINS/src/${VDRPLUGIN} |
269 | destdir=${VDRSOURCE_DIR}/vdr-${VDRVERSION}/PLUGINS/src/${VDRPLUGIN} |
| 231 | insinto ${destdir}-${PV} |
270 | insinto ${destdir}-${PV} |
| 232 | doins -r ${T}/source-tree/* |
271 | doins -r ${T}/source-tree/* |
| 233 | |
272 | |
| 234 | dosym ${VDRPLUGIN}-${PV} ${destdir} |
273 | dosym ${VDRPLUGIN}-${PV} ${destdir} |
| … | |
… | |
| 321 | md5sum *.h libsi/*.h|LC_ALL=C sort --key=2 |
360 | md5sum *.h libsi/*.h|LC_ALL=C sort --key=2 |
| 322 | ) > header-md5-${PN} |
361 | ) > header-md5-${PN} |
| 323 | doins header-md5-${PN} |
362 | doins header-md5-${PN} |
| 324 | fi |
363 | fi |
| 325 | fi |
364 | fi |
|
|
365 | |
|
|
366 | create_plugindb_file |
| 326 | } |
367 | } |
| 327 | |
368 | |
| 328 | vdr-plugin_pkg_postinst() { |
369 | vdr-plugin_pkg_postinst() { |
|
|
370 | if has_version "<=media-tv/vdrplugin-rebuild-0.1"; then |
| 329 | update_vdrplugindb |
371 | update_vdrplugindb |
| 330 | einfo |
372 | fi |
|
|
373 | elog |
| 331 | einfo "The vdr plugin ${VDRPLUGIN} has now been installed." |
374 | elog "The vdr plugin ${VDRPLUGIN} has now been installed." |
| 332 | einfo "To activate execute the following command:" |
375 | elog "To activate execute the following command:" |
| 333 | einfo |
376 | elog |
| 334 | einfo " emerge --config ${PN}" |
377 | elog " emerge --config ${PN}" |
| 335 | einfo |
378 | elog |
| 336 | if [[ -n "${VDR_CONFD_FILE}" ]]; then |
379 | if [[ -n "${VDR_CONFD_FILE}" ]]; then |
| 337 | einfo "And have a look at the config-file" |
380 | elog "And have a look at the config-file" |
| 338 | einfo "/etc/conf.d/vdr.${VDRPLUGIN}" |
381 | elog "/etc/conf.d/vdr.${VDRPLUGIN}" |
| 339 | einfo |
382 | elog |
| 340 | fi |
383 | fi |
| 341 | } |
384 | } |
| 342 | |
385 | |
| 343 | vdr-plugin_pkg_postrm() { |
386 | vdr-plugin_pkg_postrm() { |
|
|
387 | if has_version "<=media-tv/vdrplugin-rebuild-0.1"; then |
| 344 | remove_vdrplugindb |
388 | remove_vdrplugindb |
|
|
389 | fi |
|
|
390 | delete_orphan_plugindb_file |
| 345 | } |
391 | } |
| 346 | |
392 | |
| 347 | vdr-plugin_pkg_config_final() { |
393 | vdr-plugin_pkg_config_final() { |
| 348 | diff ${conf_orig} ${conf} |
394 | diff ${conf_orig} ${conf} |
| 349 | rm ${conf_orig} |
395 | rm ${conf_orig} |
| 350 | } |
396 | } |
| 351 | |
397 | |
| 352 | vdr-plugin_pkg_config_old() { |
398 | vdr-plugin_pkg_config_old() { |
| 353 | einfo "Using interface of gentoo-vdr-scripts-0.3.6 and older" |
399 | elog "Using interface of gentoo-vdr-scripts-0.3.6 and older" |
| 354 | if [[ -z "${INSTALLPLUGIN}" ]]; then |
400 | if [[ -z "${INSTALLPLUGIN}" ]]; then |
| 355 | INSTALLPLUGIN="${VDRPLUGIN}" |
401 | INSTALLPLUGIN="${VDRPLUGIN}" |
| 356 | fi |
402 | fi |
| 357 | # First test if plugin is already inside PLUGINS |
403 | # First test if plugin is already inside PLUGINS |
| 358 | local conf=/etc/conf.d/vdr |
404 | local conf=/etc/conf.d/vdr |
| 359 | conf_orig=${conf}.before_emerge_config |
405 | conf_orig=${conf}.before_emerge_config |
| 360 | cp ${conf} ${conf_orig} |
406 | cp ${conf} ${conf_orig} |
| 361 | |
407 | |
| 362 | einfo "Reading ${conf}" |
408 | elog "Reading ${conf}" |
| 363 | if ! grep -q "^PLUGINS=" ${conf}; then |
409 | if ! grep -q "^PLUGINS=" ${conf}; then |
| 364 | local LINE=$(sed ${conf} -n -e '/^#.*PLUGINS=/=' | tail -n 1) |
410 | local LINE=$(sed ${conf} -n -e '/^#.*PLUGINS=/=' | tail -n 1) |
| 365 | if [[ -n "${LINE}" ]]; then |
411 | if [[ -n "${LINE}" ]]; then |
| 366 | sed -e ${LINE}'a PLUGINS=""' -i ${conf} |
412 | sed -e ${LINE}'a PLUGINS=""' -i ${conf} |
| 367 | else |
413 | else |
| … | |
… | |
| 380 | break; |
426 | break; |
| 381 | fi |
427 | fi |
| 382 | done |
428 | done |
| 383 | |
429 | |
| 384 | if [[ "${active}" == "1" ]]; then |
430 | if [[ "${active}" == "1" ]]; then |
| 385 | einfo "${INSTALLPLUGIN} already activated" |
431 | elog "${INSTALLPLUGIN} already activated" |
| 386 | echo |
432 | echo |
| 387 | read -p "Do you want to deactivate ${INSTALLPLUGIN} (yes/no) " answer |
433 | read -p "Do you want to deactivate ${INSTALLPLUGIN} (yes/no) " answer |
| 388 | if [[ "${answer}" != "yes" ]]; then |
434 | if [[ "${answer}" != "yes" ]]; then |
| 389 | einfo "aborted" |
435 | elog "aborted" |
| 390 | return |
436 | return |
| 391 | fi |
437 | fi |
| 392 | einfo "Removing ${INSTALLPLUGIN} from active plugins." |
438 | elog "Removing ${INSTALLPLUGIN} from active plugins." |
| 393 | local LINE=$(sed ${conf} -n -e '/^PLUGINS=.*\<'${INSTALLPLUGIN}'\>/=' | tail -n 1) |
439 | local LINE=$(sed ${conf} -n -e '/^PLUGINS=.*\<'${INSTALLPLUGIN}'\>/=' | tail -n 1) |
| 394 | sed -i ${conf} -e ${LINE}'s/\<'${INSTALLPLUGIN}'\>//' \ |
440 | sed -i ${conf} -e ${LINE}'s/\<'${INSTALLPLUGIN}'\>//' \ |
| 395 | -e ${LINE}'s/ \( \)*/ /g' \ |
441 | -e ${LINE}'s/ \( \)*/ /g' \ |
| 396 | -e ${LINE}'s/ "/"/g' \ |
442 | -e ${LINE}'s/ "/"/g' \ |
| 397 | -e ${LINE}'s/" /"/g' |
443 | -e ${LINE}'s/" /"/g' |
| … | |
… | |
| 399 | vdr-plugin_pkg_config_final |
445 | vdr-plugin_pkg_config_final |
| 400 | return |
446 | return |
| 401 | fi |
447 | fi |
| 402 | |
448 | |
| 403 | |
449 | |
| 404 | einfo "Adding ${INSTALLPLUGIN} to active plugins." |
450 | elog "Adding ${INSTALLPLUGIN} to active plugins." |
| 405 | local LINE=$(sed ${conf} -n -e '/^PLUGINS=/=' | tail -n 1) |
451 | local LINE=$(sed ${conf} -n -e '/^PLUGINS=/=' | tail -n 1) |
| 406 | sed -i ${conf} -e ${LINE}'s/^PLUGINS=" *\(.*\)"/PLUGINS="\1 '${INSTALLPLUGIN}'"/' \ |
452 | sed -i ${conf} -e ${LINE}'s/^PLUGINS=" *\(.*\)"/PLUGINS="\1 '${INSTALLPLUGIN}'"/' \ |
| 407 | -e ${LINE}'s/ \( \)*/ /g' \ |
453 | -e ${LINE}'s/ \( \)*/ /g' \ |
| 408 | -e ${LINE}'s/ "/"/g' \ |
454 | -e ${LINE}'s/ "/"/g' \ |
| 409 | -e ${LINE}'s/" /"/g' |
455 | -e ${LINE}'s/" /"/g' |
| 410 | |
456 | |
| 411 | vdr-plugin_pkg_config_final |
457 | vdr-plugin_pkg_config_final |
| 412 | } |
458 | } |
| 413 | |
459 | |
| 414 | vdr-plugin_pkg_config_new() { |
460 | vdr-plugin_pkg_config_new() { |
| 415 | einfo "Using interface introduced with gentoo-vdr-scripts-0.3.7" |
461 | elog "Using interface introduced with gentoo-vdr-scripts-0.3.7" |
| 416 | if [[ -z "${INSTALLPLUGIN}" ]]; then |
462 | if [[ -z "${INSTALLPLUGIN}" ]]; then |
| 417 | INSTALLPLUGIN="${VDRPLUGIN}" |
463 | INSTALLPLUGIN="${VDRPLUGIN}" |
| 418 | fi |
464 | fi |
| 419 | |
465 | |
| 420 | active=0 |
466 | active=0 |
| … | |
… | |
| 428 | [[ ${1} == ${INSTALLPLUGIN} ]] && active=1 |
474 | [[ ${1} == ${INSTALLPLUGIN} ]] && active=1 |
| 429 | done |
475 | done |
| 430 | exec 3<&- |
476 | exec 3<&- |
| 431 | |
477 | |
| 432 | if [[ $active == 0 ]]; then |
478 | if [[ $active == 0 ]]; then |
| 433 | einfo "Adding ${INSTALLPLUGIN} to active plugins." |
479 | elog "Adding ${INSTALLPLUGIN} to active plugins." |
| 434 | |
480 | |
| 435 | # The pure edit process. |
481 | # The pure edit process. |
| 436 | echo "${INSTALLPLUGIN}" >> "${conf}" |
482 | echo "${INSTALLPLUGIN}" >> "${conf}" |
| 437 | else |
483 | else |
| 438 | einfo "${INSTALLPLUGIN} already activated" |
484 | elog "${INSTALLPLUGIN} already activated" |
| 439 | echo |
485 | echo |
| 440 | read -p "Do you want to deactivate ${INSTALLPLUGIN} (yes/no) " answer |
486 | read -p "Do you want to deactivate ${INSTALLPLUGIN} (yes/no) " answer |
| 441 | if [[ "${answer}" != "yes" ]]; then |
487 | if [[ "${answer}" != "yes" ]]; then |
| 442 | einfo "aborted" |
488 | elog "aborted" |
| 443 | return |
489 | return |
| 444 | fi |
490 | fi |
| 445 | einfo "Removing ${INSTALLPLUGIN} from active plugins." |
491 | elog "Removing ${INSTALLPLUGIN} from active plugins." |
| 446 | |
492 | |
| 447 | # The pure edit process |
493 | # The pure edit process |
| 448 | sed -i "${conf}" -e "/^[[:space:]]*${INSTALLPLUGIN}[[:space:]]*\$/d" |
494 | sed -i "${conf}" -e "/^[[:space:]]*${INSTALLPLUGIN}[[:space:]]*\$/d" |
| 449 | fi |
495 | fi |
| 450 | } |
496 | } |
| … | |
… | |
| 457 | fi |
503 | fi |
| 458 | } |
504 | } |
| 459 | |
505 | |
| 460 | fix_vdr_libsi_include() |
506 | fix_vdr_libsi_include() |
| 461 | { |
507 | { |
| 462 | einfo "Fixing include of libsi-headers" |
508 | elog "Fixing include of libsi-headers" |
| 463 | local f |
509 | local f |
| 464 | for f; do |
510 | for f; do |
| 465 | sed -i "${f}" \ |
511 | sed -i "${f}" \ |
| 466 | -e '/#include/s:"\(.*libsi.*\)":<\1>:' \ |
512 | -e '/#include/s:"\(.*libsi.*\)":<\1>:' \ |
| 467 | -e '/#include/s:<.*\(libsi/.*\)>:<vdr/\1>:' |
513 | -e '/#include/s:<.*\(libsi/.*\)>:<vdr/\1>:' |