Gentoo Archives: gentoo-commits

From: "Matthias Schwarzott (zzam)" <zzam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-vdr r615 - in gentoo-vdr-scripts/trunk: . usr/sbin usr/share/vdr/inc
Date: Sat, 21 Jun 2008 12:41:38
Message-Id: E1KA2PM-00064t-Og@stork.gentoo.org
1 Author: zzam
2 Date: 2008-06-21 12:41:31 +0000 (Sat, 21 Jun 2008)
3 New Revision: 615
4
5 Added:
6 gentoo-vdr-scripts/trunk/usr/sbin/vdr-get-header-checksum
7 Modified:
8 gentoo-vdr-scripts/trunk/ChangeLog
9 gentoo-vdr-scripts/trunk/usr/sbin/Makefile
10 gentoo-vdr-scripts/trunk/usr/share/vdr/inc/plugin-functions.sh
11 Log:
12 Factored out checksum creation to extra executable.
13
14 Modified: gentoo-vdr-scripts/trunk/ChangeLog
15 ===================================================================
16 --- gentoo-vdr-scripts/trunk/ChangeLog 2008-06-19 16:38:09 UTC (rev 614)
17 +++ gentoo-vdr-scripts/trunk/ChangeLog 2008-06-21 12:41:31 UTC (rev 615)
18 @@ -1,6 +1,10 @@
19 # ChangeLog for gentoo-vdr-scripts
20 # $Id$
21
22 + 21 Jun 2008; Matthias Schwarzott <zzam@g.o> usr/sbin/Makefile,
23 + +usr/sbin/vdr-get-header-checksum, usr/share/vdr/inc/plugin-functions.sh:
24 + Factored out checksum creation to extra executable.
25 +
26 19 Jun 2008; Matthias Schwarzott <zzam@g.o>
27 usr/share/vdr/rcscript/watchdog-restart-20-modules.sh,
28 usr/sbin/dvb-reload-modules:
29
30 Modified: gentoo-vdr-scripts/trunk/usr/sbin/Makefile
31 ===================================================================
32 --- gentoo-vdr-scripts/trunk/usr/sbin/Makefile 2008-06-19 16:38:09 UTC (rev 614)
33 +++ gentoo-vdr-scripts/trunk/usr/sbin/Makefile 2008-06-21 12:41:31 UTC (rev 615)
34 @@ -4,7 +4,7 @@
35
36 MYDIR = $(DESTDIR)/usr/sbin
37 SUBDIRS =
38 -BINS = acpi-wakeup.sh rtc-wakeup.sh vdr-watchdogd dvb-reload-modules
39 +BINS = acpi-wakeup.sh rtc-wakeup.sh vdr-watchdogd dvb-reload-modules vdr-get-header-checksum
40 CONFS =
41
42 all: compile
43
44 Added: gentoo-vdr-scripts/trunk/usr/sbin/vdr-get-header-checksum
45 ===================================================================
46 --- gentoo-vdr-scripts/trunk/usr/sbin/vdr-get-header-checksum (rev 0)
47 +++ gentoo-vdr-scripts/trunk/usr/sbin/vdr-get-header-checksum 2008-06-21 12:41:31 UTC (rev 615)
48 @@ -0,0 +1,58 @@
49 +#!/bin/sh
50 +
51 +die() {
52 + echo "$@" 1>&2
53 + exit 1
54 +}
55 +
56 +verbose() {
57 + [ "$verbose" -ge "1" ] && echo "$@" 1>&2
58 +}
59 +
60 +show_help() {
61 + echo "Usage:"
62 + echo " vdr-get-header-checksum [-v] [-h]"
63 +}
64 +
65 +
66 +verbose=0
67 +
68 +for p; do
69 + case "$p" in
70 + -v) verbose=1 ;;
71 + -h) show_help
72 + exit 0;;
73 + *) show_help
74 + exit 1;;
75 + esac
76 +done
77 +
78 +include_dir=/usr/include/vdr
79 +
80 +verbose "Creating vdr header files checksum of ${include_dir}"
81 +
82 +plugin_dir="$(awk '/^PLUGINLIBDIR/{ print $3 }' ${include_dir}/Make.config)"
83 +if [ -n "${plugin_dir}" ]; then
84 + plugin_dir=/usr/lib/vdr/plugins
85 +fi
86 +
87 +vdr_checksum_dir="${plugin_dir%/plugins}/checksums"
88 +vdr_checksum="${vdr_checksum_dir}/header-md5-vdr"
89 +
90 +# use pre-existing checksum file, no need to do more work :)
91 +if [ -f "${vdr_checksum}" ]; then
92 + verbose "Using existing checksum from ${vdr_checksum}"
93 + cat "${vdr_checksum}"
94 +else
95 + verbose "Creating checksum from files"
96 +
97 + type md5sum >/dev/null 2>&1 || die "Could not find command md5sum."
98 + type sort >/dev/null 2>&1 || die "Could not find command sort"
99 +
100 + cd ${include_dir} || die "Could not cd to ${include_dir}"
101 + md5sum *.h libsi/*.h|LC_ALL=C sort --key=2
102 +fi
103 +
104 +verbose "Checksum created."
105 +exit 0
106 +
107
108
109 Property changes on: gentoo-vdr-scripts/trunk/usr/sbin/vdr-get-header-checksum
110 ___________________________________________________________________
111 Name: svn:executable
112 + *
113
114 Modified: gentoo-vdr-scripts/trunk/usr/share/vdr/inc/plugin-functions.sh
115 ===================================================================
116 --- gentoo-vdr-scripts/trunk/usr/share/vdr/inc/plugin-functions.sh 2008-06-19 16:38:09 UTC (rev 614)
117 +++ gentoo-vdr-scripts/trunk/usr/share/vdr/inc/plugin-functions.sh 2008-06-21 12:41:31 UTC (rev 615)
118 @@ -10,32 +10,6 @@
119 fi
120 }
121
122 -init_header_checksum() {
123 - plugin_dir=$(awk '/^PLUGINLIBDIR/{ print $3 }' /usr/include/vdr/Make.config)
124 - if [ -n "${plugin_dir}" ]; then
125 - plugin_dir=/usr/lib/vdr/plugins
126 - fi
127 -
128 - if ! type md5sum >/dev/null 2>&1; then
129 - PLUGIN_CHECK_MD5=no
130 - return
131 - fi
132 -
133 - vdr_checksum_dir="${plugin_dir%/plugins}/checksums"
134 - vdr_checksum=${vdr_checksum_dir}/header-md5-vdr
135 -
136 - if [ ! -f "${vdr_checksum}" ]; then
137 - vdr_checksum="${PL_TMP}"/header-md5-vdr
138 -
139 - rm -f ${vdr_checksum} 2>/dev/null
140 - (
141 - cd /usr/include/vdr
142 - md5sum *.h libsi/*.h|LC_ALL=C sort --key=2
143 - ) > ${vdr_checksum}
144 - fi
145 - PLUGIN_CHECK_MD5=yes
146 -}
147 -
148 print_skip_header() {
149 if [ "${skip_header_printed}" != "1" ]; then
150 ewarn " Skipped these plugins:"
151 @@ -46,8 +20,7 @@
152
153 load_plugin_list_start() {
154 rm -f "${LOADED_PLUGINS_FILE}"
155 - # needed for plugin patchlevel check
156 - init_header_checksum
157 + prepare_plugin_checks
158
159 local PLUGIN_CONF=/etc/conf.d/vdr.plugins PLUGIN= line=
160 if [ -f "${PLUGIN_CONF}" ]; then
161 @@ -100,6 +73,22 @@
162 esac
163 }
164
165 +prepare_plugin_checks() {
166 + # find plugin dir, needed for multilib ...
167 + plugin_dir="$(awk '/^PLUGINLIBDIR/{ print $3 }' /usr/include/vdr/Make.config)"
168 + if [ -n "${plugin_dir}" ]; then
169 + plugin_dir=/usr/lib/vdr/plugins
170 + fi
171 +
172 + # needed for plugin patchlevel check
173 + vdr_checksum_dir="${plugin_dir%/plugins}/checksums"
174 + vdr_checksum="${PL_TMP}"/header-md5-vdr
175 + PLUGIN_CHECK_MD5=no
176 + if vdr-get-header-checksum > "${vdr_checksum}"; then
177 + PLUGIN_CHECK_MD5=yes
178 + fi
179 +}
180 +
181 check_plugin() {
182 local PLUGIN="${1}"
183 local plugin_file="${plugin_dir}/libvdr-${PLUGIN}.so.${APIVERSION}"
184 @@ -111,7 +100,7 @@
185
186 local plugin_checksum_file=${vdr_checksum_dir}/header-md5-vdr-${PLUGIN}
187 if [ "${PLUGIN_CHECK_MD5}" = "yes" ] && [ -e "${plugin_checksum_file}" ]; then
188 - if ! diff ${vdr_checksum} ${plugin_checksum_file} >/dev/null; then
189 + if ! cmp -s ${vdr_checksum} ${plugin_checksum_file}; then
190 skip_plugin "${PLUGIN}" "PATCHLEVEL"
191 return 1
192 fi
193
194 --
195 gentoo-commits@l.g.o mailing list