diff options
author | Tudor Florea <tudor.florea@enea.com> | 2014-10-10 03:20:04 +0200 |
---|---|---|
committer | Tudor Florea <tudor.florea@enea.com> | 2014-10-10 03:20:04 +0200 |
commit | 1b8dfe266937a37a4c642f96ceb2347bf4c00a17 (patch) | |
tree | 0c6aab146bb3c82efd9c7846a9a4e70dcb0ec84f /meta-oe/recipes-extended | |
download | meta-openembedded-daisy-140929.tar.gz |
initial commit for Enea Linux 4.0-140929daisy-140929
Migrated from the internal git server on the daisy-enea-point-release branch
Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Diffstat (limited to 'meta-oe/recipes-extended')
118 files changed, 7602 insertions, 0 deletions
diff --git a/meta-oe/recipes-extended/acpica/acpica_20140325.bb b/meta-oe/recipes-extended/acpica/acpica_20140325.bb new file mode 100644 index 0000000000..0210b044b3 --- /dev/null +++ b/meta-oe/recipes-extended/acpica/acpica_20140325.bb | |||
@@ -0,0 +1,34 @@ | |||
1 | SUMMARY = "ACPICA tools for the development and debug of ACPI tables" | ||
2 | DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ | ||
3 | OS-independent reference implementation of the Advanced Configuration and \ | ||
4 | Power Interface Specification (ACPI). ACPICA code contains those portions of \ | ||
5 | ACPI meant to be directly integrated into the host OS as a kernel-resident \ | ||
6 | subsystem, and a small set of tools to assist in developing and debugging \ | ||
7 | ACPI tables." | ||
8 | HOMEPAGE = "http://www.acpica.org/" | ||
9 | SECTION = "console/tools" | ||
10 | LICENSE = "BSD | GPLv2" | ||
11 | LIC_FILES_CHKSUM = "file://generate/unix/readme.txt;md5=204407e197c1a01154a48f6c6280c3aa" | ||
12 | DEPENDS = "bison flex" | ||
13 | |||
14 | SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix2-${PV}.tar.gz \ | ||
15 | file://no-werror.patch \ | ||
16 | " | ||
17 | SRC_URI[md5sum] = "08efe232bca06a7c54462695bbc2f87c" | ||
18 | SRC_URI[sha256sum] = "12a7a3c9f2d81e46b0c7095bb7c268ec4bf231178fcbe54ff0c30cd83d2ac38c" | ||
19 | |||
20 | S = "${WORKDIR}/acpica-unix2-${PV}" | ||
21 | |||
22 | EXTRA_OEMAKE = "CC=${TARGET_PREFIX}gcc 'OPT_CFLAGS=-Wall'" | ||
23 | |||
24 | do_install() { | ||
25 | install -D -p -m0755 generate/unix/bin*/iasl ${D}${bindir}/iasl | ||
26 | install -D -p -m0755 generate/unix/bin*/acpibin ${D}${bindir}/acpibin | ||
27 | install -D -p -m0755 generate/unix/bin*/acpiexec ${D}${bindir}/acpiexec | ||
28 | install -D -p -m0755 generate/unix/bin*/acpihelp ${D}${bindir}/acpihelp | ||
29 | install -D -p -m0755 generate/unix/bin*/acpinames ${D}${bindir}/acpinames | ||
30 | install -D -p -m0755 generate/unix/bin*/acpisrc ${D}${bindir}/acpisrc | ||
31 | install -D -p -m0755 generate/unix/bin*/acpixtract ${D}${bindir}/acpixtract | ||
32 | } | ||
33 | |||
34 | COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" | ||
diff --git a/meta-oe/recipes-extended/acpica/acpitests/0001-Fixup-aapits-build.patch b/meta-oe/recipes-extended/acpica/acpitests/0001-Fixup-aapits-build.patch new file mode 100644 index 0000000000..6565a32abd --- /dev/null +++ b/meta-oe/recipes-extended/acpica/acpitests/0001-Fixup-aapits-build.patch | |||
@@ -0,0 +1,558 @@ | |||
1 | From d9743540b5399a14a7ca1ba708156bed956d9425 Mon Sep 17 00:00:00 2001 | ||
2 | From: Al Stone <ahs3@ahs3.net> | ||
3 | Date: Fri, 17 Jan 2014 12:51:13 +0100 | ||
4 | Subject: [PATCH] Fixup aapits build | ||
5 | |||
6 | From http://git.linaro.org/people/al.stone/acpica-tools.git | ||
7 | Upstream-status: Unknown | ||
8 | --- | ||
9 | tests/aapits/Makefile | 44 +++++++++++++++++++++++++++++++++++++++++--- | ||
10 | tests/aapits/atexec.c | 15 ++++++++++----- | ||
11 | tests/aapits/atinit.c | 10 +++++----- | ||
12 | tests/aapits/atmain.c | 6 +++--- | ||
13 | tests/aapits/atnamespace.c | 12 ++++++++---- | ||
14 | tests/aapits/atosxfctrl.c | 21 +++++++++++++++++---- | ||
15 | tests/aapits/atresource.c | 10 +++++----- | ||
16 | tests/aapits/osunixxf.c | 25 ++++++++++++++++++++++--- | ||
17 | 8 files changed, 111 insertions(+), 32 deletions(-) | ||
18 | |||
19 | diff --git a/tests/aapits/Makefile b/tests/aapits/Makefile | ||
20 | index b774c9c..9bf12b8 100644 | ||
21 | --- a/tests/aapits/Makefile | ||
22 | +++ b/tests/aapits/Makefile | ||
23 | @@ -20,37 +20,53 @@ SRCS= atexec.c atmain.c \ | ||
24 | ../../source/components/hardware/hwxface.c \ | ||
25 | ../../source/common/getopt.c \ | ||
26 | ../../source/components/debugger/dbcmds.c \ | ||
27 | + ../../source/components/debugger/dbconvert.c \ | ||
28 | ../../source/components/debugger/dbdisply.c \ | ||
29 | ../../source/components/debugger/dbexec.c \ | ||
30 | ../../source/components/debugger/dbfileio.c \ | ||
31 | ../../source/components/debugger/dbhistry.c \ | ||
32 | ../../source/components/debugger/dbinput.c \ | ||
33 | + ../../source/components/debugger/dbmethod.c \ | ||
34 | + ../../source/components/debugger/dbnames.c \ | ||
35 | ../../source/components/debugger/dbstats.c \ | ||
36 | + ../../source/components/debugger/dbtest.c \ | ||
37 | ../../source/components/debugger/dbutils.c \ | ||
38 | ../../source/components/debugger/dbxface.c \ | ||
39 | ../../source/components/disassembler/dmbuffer.c \ | ||
40 | + ../../source/components/disassembler/dmdeferred.c \ | ||
41 | ../../source/components/disassembler/dmnames.c \ | ||
42 | ../../source/components/disassembler/dmobject.c \ | ||
43 | ../../source/components/disassembler/dmopcode.c \ | ||
44 | ../../source/components/disassembler/dmresrc.c \ | ||
45 | ../../source/components/disassembler/dmresrcl.c \ | ||
46 | + ../../source/components/disassembler/dmresrcl2.c \ | ||
47 | ../../source/components/disassembler/dmresrcs.c \ | ||
48 | ../../source/components/disassembler/dmutils.c \ | ||
49 | ../../source/components/disassembler/dmwalk.c \ | ||
50 | ../../source/components/events/evevent.c \ | ||
51 | + ../../source/components/events/evglock.c \ | ||
52 | ../../source/components/events/evgpeblk.c \ | ||
53 | ../../source/components/events/evgpe.c \ | ||
54 | + ../../source/components/events/evgpeinit.c \ | ||
55 | + ../../source/components/events/evgpeutil.c \ | ||
56 | + ../../source/components/events/evhandler.c \ | ||
57 | ../../source/components/events/evmisc.c \ | ||
58 | ../../source/components/events/evregion.c \ | ||
59 | ../../source/components/events/evrgnini.c \ | ||
60 | ../../source/components/events/evsci.c \ | ||
61 | ../../source/components/events/evxface.c \ | ||
62 | ../../source/components/events/evxfevnt.c \ | ||
63 | + ../../source/components/events/evxfgpe.c \ | ||
64 | ../../source/components/events/evxfregn.c \ | ||
65 | ../../source/components/hardware/hwacpi.c \ | ||
66 | + ../../source/components/hardware/hwesleep.c \ | ||
67 | ../../source/components/hardware/hwgpe.c \ | ||
68 | + ../../source/components/hardware/hwpci.c \ | ||
69 | ../../source/components/hardware/hwregs.c \ | ||
70 | ../../source/components/hardware/hwsleep.c \ | ||
71 | + ../../source/components/hardware/hwxfsleep.c \ | ||
72 | + ../../source/components/dispatcher/dsargs.c \ | ||
73 | + ../../source/components/dispatcher/dscontrol.c \ | ||
74 | ../../source/components/dispatcher/dsfield.c \ | ||
75 | ../../source/components/dispatcher/dsinit.c \ | ||
76 | ../../source/components/dispatcher/dsmethod.c \ | ||
77 | @@ -60,11 +76,13 @@ SRCS= atexec.c atmain.c \ | ||
78 | ../../source/components/dispatcher/dsutils.c \ | ||
79 | ../../source/components/dispatcher/dswexec.c \ | ||
80 | ../../source/components/dispatcher/dswload.c \ | ||
81 | + ../../source/components/dispatcher/dswload2.c \ | ||
82 | ../../source/components/dispatcher/dswscope.c \ | ||
83 | ../../source/components/dispatcher/dswstate.c \ | ||
84 | ../../source/components/executer/exconfig.c \ | ||
85 | ../../source/components/executer/exconvrt.c \ | ||
86 | ../../source/components/executer/excreate.c \ | ||
87 | + ../../source/components/executer/exdebug.c \ | ||
88 | ../../source/components/executer/exdump.c \ | ||
89 | ../../source/components/executer/exfield.c \ | ||
90 | ../../source/components/executer/exfldio.c \ | ||
91 | @@ -87,7 +105,9 @@ SRCS= atexec.c atmain.c \ | ||
92 | ../../source/components/executer/exutils.c \ | ||
93 | ../../source/components/parser/psargs.c \ | ||
94 | ../../source/components/parser/psloop.c \ | ||
95 | + ../../source/components/parser/psobject.c \ | ||
96 | ../../source/components/parser/psopcode.c \ | ||
97 | + ../../source/components/parser/psopinfo.c \ | ||
98 | ../../source/components/parser/psparse.c \ | ||
99 | ../../source/components/parser/psscope.c \ | ||
100 | ../../source/components/parser/pstree.c \ | ||
101 | @@ -96,6 +116,8 @@ SRCS= atexec.c atmain.c \ | ||
102 | ../../source/components/parser/psxface.c \ | ||
103 | ../../source/components/namespace/nsaccess.c \ | ||
104 | ../../source/components/namespace/nsalloc.c \ | ||
105 | + ../../source/components/namespace/nsarguments.c \ | ||
106 | + ../../source/components/namespace/nsconvert.c \ | ||
107 | ../../source/components/namespace/nsdump.c \ | ||
108 | ../../source/components/namespace/nsdumpdv.c \ | ||
109 | ../../source/components/namespace/nseval.c \ | ||
110 | @@ -105,6 +127,7 @@ SRCS= atexec.c atmain.c \ | ||
111 | ../../source/components/namespace/nsobject.c \ | ||
112 | ../../source/components/namespace/nsparse.c \ | ||
113 | ../../source/components/namespace/nspredef.c \ | ||
114 | + ../../source/components/namespace/nsprepkg.c \ | ||
115 | ../../source/components/namespace/nsrepair.c \ | ||
116 | ../../source/components/namespace/nsrepair2.c \ | ||
117 | ../../source/components/namespace/nssearch.c \ | ||
118 | @@ -117,26 +140,35 @@ SRCS= atexec.c atmain.c \ | ||
119 | ../../source/components/resources/rscalc.c \ | ||
120 | ../../source/components/resources/rscreate.c \ | ||
121 | ../../source/components/resources/rsdump.c \ | ||
122 | + ../../source/components/resources/rsdumpinfo.c \ | ||
123 | + ../../source/components/resources/rsinfo.c \ | ||
124 | ../../source/components/resources/rsio.c \ | ||
125 | ../../source/components/resources/rsirq.c \ | ||
126 | ../../source/components/resources/rslist.c \ | ||
127 | ../../source/components/resources/rsmemory.c \ | ||
128 | ../../source/components/resources/rsmisc.c \ | ||
129 | + ../../source/components/resources/rsserial.c \ | ||
130 | ../../source/components/resources/rsutils.c \ | ||
131 | ../../source/components/resources/rsxface.c \ | ||
132 | - ../../source/components/resources/rsinfo.c \ | ||
133 | ../../source/components/tables/tbfadt.c \ | ||
134 | ../../source/components/tables/tbfind.c \ | ||
135 | ../../source/components/tables/tbinstal.c \ | ||
136 | + ../../source/components/tables/tbprint.c \ | ||
137 | ../../source/components/tables/tbutils.c \ | ||
138 | ../../source/components/tables/tbxface.c \ | ||
139 | + ../../source/components/tables/tbxfload.c \ | ||
140 | ../../source/components/tables/tbxfroot.c \ | ||
141 | + ../../source/components/utilities/utaddress.c \ | ||
142 | ../../source/components/utilities/utalloc.c \ | ||
143 | + ../../source/components/utilities/utbuffer.c \ | ||
144 | ../../source/components/utilities/utcache.c \ | ||
145 | ../../source/components/utilities/utcopy.c \ | ||
146 | ../../source/components/utilities/utdebug.c \ | ||
147 | + ../../source/components/utilities/utdecode.c \ | ||
148 | ../../source/components/utilities/utdelete.c \ | ||
149 | + ../../source/components/utilities/uterror.c \ | ||
150 | ../../source/components/utilities/uteval.c \ | ||
151 | + ../../source/components/utilities/utexcep.c \ | ||
152 | ../../source/components/utilities/utglobal.c \ | ||
153 | ../../source/components/utilities/utids.c \ | ||
154 | ../../source/components/utilities/utinit.c \ | ||
155 | @@ -145,17 +177,23 @@ SRCS= atexec.c atmain.c \ | ||
156 | ../../source/components/utilities/utmisc.c \ | ||
157 | ../../source/components/utilities/utmutex.c \ | ||
158 | ../../source/components/utilities/utobject.c \ | ||
159 | + ../../source/components/utilities/utosi.c \ | ||
160 | + ../../source/components/utilities/utownerid.c \ | ||
161 | + ../../source/components/utilities/utpredef.c \ | ||
162 | ../../source/components/utilities/utresrc.c \ | ||
163 | ../../source/components/utilities/utstate.c \ | ||
164 | + ../../source/components/utilities/utstring.c \ | ||
165 | ../../source/components/utilities/uttrack.c \ | ||
166 | - ../../source/components/utilities/utxface.c | ||
167 | + ../../source/components/utilities/utxface.c \ | ||
168 | + ../../source/components/utilities/utxferror.c \ | ||
169 | + ../../source/components/utilities/utxfinit.c | ||
170 | # ../../source/components/osunixxf.c | ||
171 | |||
172 | |||
173 | CFLAGS+= -Wall -g -D_LINUX -DNDEBUG -D_CONSOLE -DACPI_EXEC_APP -D_MULTI_THREADED -Wstrict-prototypes -I../../source/include | ||
174 | |||
175 | |||
176 | -acpiexec : $(patsubst %.c,%.o, $(SRCS)) | ||
177 | +$(PROG) : $(patsubst %.c,%.o, $(SRCS)) | ||
178 | $(CC) $(LDFLAGS) $(patsubst %.c,%.o, $(SRCS)) -o $(PROG) | ||
179 | |||
180 | CLEANFILES= $(PROG) | ||
181 | diff --git a/tests/aapits/atexec.c b/tests/aapits/atexec.c | ||
182 | index 0280557..1406c0f 100644 | ||
183 | --- a/tests/aapits/atexec.c | ||
184 | +++ b/tests/aapits/atexec.c | ||
185 | @@ -639,6 +639,7 @@ AtBuildLocalFADT2 ( | ||
186 | } | ||
187 | |||
188 | |||
189 | +#if ACPI_MACHINE_WIDTH == 32 | ||
190 | /******************************************************************************* | ||
191 | * | ||
192 | * FUNCTION: AtBuildLocalRSDT | ||
193 | @@ -757,6 +758,7 @@ AtBuildLocalRSDT ( | ||
194 | LocalRSDT->Header.Checksum = (UINT8)~LocalRSDT->Header.Checksum; | ||
195 | } | ||
196 | } | ||
197 | +#endif | ||
198 | |||
199 | |||
200 | /******************************************************************************* | ||
201 | @@ -1424,7 +1426,7 @@ AeRegionHandler ( | ||
202 | ACPI_WARNING ((AE_INFO, | ||
203 | "Request on [%4.4s] is beyond region limit Req-%X+%X, Base=%X, Len-%X\n", | ||
204 | (RegionObject->Region.Node)->Name.Ascii, (UINT32) Address, | ||
205 | - ByteWidth, (UINT32) BufferAddress, Length)); | ||
206 | + ByteWidth, (UINT32) BufferAddress, (UINT32) Length)); | ||
207 | |||
208 | return (AE_AML_REGION_LIMIT); | ||
209 | } | ||
210 | @@ -1792,7 +1794,9 @@ AtCheckInteger( | ||
211 | Path, Obj.Integer.Value, Value); | ||
212 | #else | ||
213 | printf ("API Error: Value of %s is 0x%llx instead of expected 0x%llx\n", | ||
214 | - Path, Obj.Integer.Value, Value); | ||
215 | + Path, | ||
216 | + (long long unsigned int) Obj.Integer.Value, | ||
217 | + (long long unsigned int) Value); | ||
218 | #endif | ||
219 | Status = AE_ERROR; | ||
220 | } | ||
221 | @@ -1871,7 +1875,7 @@ AtCheckString( | ||
222 | { | ||
223 | TestErrors++; | ||
224 | printf ("Test Error: cannot allocate buffer of %d bytes\n", | ||
225 | - Results.Length); | ||
226 | + (int) Results.Length); | ||
227 | return (AE_NO_MEMORY); | ||
228 | } | ||
229 | Results.Pointer = Object; | ||
230 | @@ -1952,7 +1956,8 @@ AtCheckBuffer( | ||
231 | { | ||
232 | printf ("AtCheckBuffer: unexpected length %d of Buffer vs" | ||
233 | " calculated %d bytes\n", | ||
234 | - Results.Length, ACPI_ROUND_UP_TO_NATIVE_WORD(sizeof (ACPI_OBJECT) + Length)); | ||
235 | + (int)Results.Length, | ||
236 | + (int)(ACPI_ROUND_UP_TO_NATIVE_WORD(sizeof (ACPI_OBJECT) + Length))); | ||
237 | } | ||
238 | |||
239 | /* Initialize the return buffer structure */ | ||
240 | @@ -1961,7 +1966,7 @@ AtCheckBuffer( | ||
241 | { | ||
242 | TestErrors++; | ||
243 | printf ("Test Error: cannot allocate buffer of %d bytes\n", | ||
244 | - Results.Length); | ||
245 | + (int) Results.Length); | ||
246 | return (AE_NO_MEMORY); | ||
247 | } | ||
248 | Results.Pointer = Object; | ||
249 | diff --git a/tests/aapits/atinit.c b/tests/aapits/atinit.c | ||
250 | index 5bb8ee3..2444225 100644 | ||
251 | --- a/tests/aapits/atinit.c | ||
252 | +++ b/tests/aapits/atinit.c | ||
253 | @@ -3024,7 +3024,7 @@ AtInitTest0041(void) | ||
254 | AapiErrors++; | ||
255 | printf ("API Error: AcpiGetSystemInfo() returned" | ||
256 | " Length %d, expected %d\n", | ||
257 | - OutBuffer.Length, sizeof (Info)); | ||
258 | + (int) OutBuffer.Length, (int) sizeof (Info)); | ||
259 | return (AE_ERROR); | ||
260 | } | ||
261 | |||
262 | @@ -3046,7 +3046,7 @@ AtInitTest0041(void) | ||
263 | AapiErrors++; | ||
264 | printf ("API Error: AcpiGetSystemInfo() returned" | ||
265 | " Length %d, expected %d\n", | ||
266 | - OutBuffer.Length, sizeof (Info)); | ||
267 | + (int) OutBuffer.Length, (int) sizeof (Info)); | ||
268 | return (AE_ERROR); | ||
269 | } | ||
270 | |||
271 | @@ -3066,7 +3066,7 @@ AtInitTest0041(void) | ||
272 | AapiErrors++; | ||
273 | printf ("API Error: AcpiGetSystemInfo() returned" | ||
274 | " Length %d, expected %d\n", | ||
275 | - OutBuffer.Length, sizeof (Info)); | ||
276 | + (int) OutBuffer.Length, (int) sizeof (Info)); | ||
277 | return (AE_ERROR); | ||
278 | } | ||
279 | else if (OutBuffer.Pointer != &Info) | ||
280 | @@ -3149,7 +3149,7 @@ AtInitTest0042(void) | ||
281 | AapiErrors++; | ||
282 | printf ("API Error: AcpiGetSystemInfo() returned" | ||
283 | " Length %d, expected %d\n", | ||
284 | - OutBuffer.Length, sizeof (Info)); | ||
285 | + (int) OutBuffer.Length, (int) sizeof (Info)); | ||
286 | return (AE_ERROR); | ||
287 | } | ||
288 | else if (OutBuffer.Pointer != &Info) | ||
289 | @@ -3214,7 +3214,7 @@ AtInitTest0043(void) | ||
290 | AapiErrors++; | ||
291 | printf ("API Error: AcpiGetSystemInfo() returned" | ||
292 | " Length %d, expected %d\n", | ||
293 | - OutBuffer.Length, sizeof (ACPI_SYSTEM_INFO)); | ||
294 | + (int) OutBuffer.Length, (int) sizeof (ACPI_SYSTEM_INFO)); | ||
295 | return (AE_ERROR); | ||
296 | } | ||
297 | else | ||
298 | diff --git a/tests/aapits/atmain.c b/tests/aapits/atmain.c | ||
299 | index c3f5de7..e83e524 100644 | ||
300 | --- a/tests/aapits/atmain.c | ||
301 | +++ b/tests/aapits/atmain.c | ||
302 | @@ -315,7 +315,7 @@ ExecuteTest ( | ||
303 | { | ||
304 | printf ("ACPICA API TS err: test num %ld of test case %ld" | ||
305 | " is not implemented\n", | ||
306 | - test_num, test_case); | ||
307 | + (long int) test_num, (long int) test_case); | ||
308 | return (AtRetNotImpl); | ||
309 | } | ||
310 | |||
311 | @@ -430,7 +430,7 @@ main( | ||
312 | if (test_case < 1 || test_case > AT_TEST_CASE_NUM) | ||
313 | { | ||
314 | printf ("ACPICA API TS err: test case %ld is out of range 1 - %d\n", | ||
315 | - test_case, AT_TEST_CASE_NUM); | ||
316 | + (long int) test_case, (int) AT_TEST_CASE_NUM); | ||
317 | return (AtRetBadParam); | ||
318 | } | ||
319 | |||
320 | @@ -438,7 +438,7 @@ main( | ||
321 | if (test_num < 0 || test_num > AtTestCase[test_case].TestsNum) | ||
322 | { | ||
323 | printf ("ACPICA API TS err: test num %ld is out of range 0 - %d\n", | ||
324 | - test_num, AtTestCase[test_case].TestsNum); | ||
325 | + (long int) test_num, AtTestCase[test_case].TestsNum); | ||
326 | return (AtRetBadParam); | ||
327 | } | ||
328 | |||
329 | diff --git a/tests/aapits/atnamespace.c b/tests/aapits/atnamespace.c | ||
330 | index 8a4ec65..76e3edb 100644 | ||
331 | --- a/tests/aapits/atnamespace.c | ||
332 | +++ b/tests/aapits/atnamespace.c | ||
333 | @@ -2535,7 +2535,8 @@ AtGetObjectInfoTypeCommon( | ||
334 | #else | ||
335 | printf ("API Error: Address of %s (0x%llX) != (0x%llX)\n", | ||
336 | PathNames[2 * i + 1], | ||
337 | - Info->Address, ExpectedInfo[i].Address); | ||
338 | + (long long unsigned int) Info->Address, | ||
339 | + (long long unsigned int) ExpectedInfo[i].Address); | ||
340 | #endif | ||
341 | #else | ||
342 | printf ("API Error: Address of %s (0x%X) != (0x%X)\n", | ||
343 | @@ -2908,7 +2909,8 @@ AtGetNextObjectTypeCommon( | ||
344 | TestErrors++; | ||
345 | printf ("AtGetNextObjectTypeCommon: different numbers of entities" | ||
346 | "in TypesNames (%d) and LevelTypes0000 (%d)\n", | ||
347 | - TypesCount, sizeof (LevelTypes0000) / sizeof (ACPI_OBJECT_TYPE)); | ||
348 | + TypesCount, | ||
349 | + (int) (sizeof (LevelTypes0000) / sizeof (ACPI_OBJECT_TYPE))); | ||
350 | return (AE_ERROR); | ||
351 | } | ||
352 | |||
353 | @@ -4192,7 +4194,9 @@ AtCheckHandlePathMapping( | ||
354 | Pathname, Obj.Integer.Value, Value); | ||
355 | #else | ||
356 | printf ("API Error: Value of %s is 0x%llx instead of expected 0x%llx\n", | ||
357 | - Pathname, Obj.Integer.Value, Value); | ||
358 | + Pathname, | ||
359 | + (long long unsigned int) Obj.Integer.Value, | ||
360 | + (long long unsigned int) Value); | ||
361 | #endif | ||
362 | Status = AE_ERROR; | ||
363 | } | ||
364 | @@ -5199,7 +5203,7 @@ AtGetNameExceptionTest( | ||
365 | { | ||
366 | AapiErrors++; | ||
367 | printf ("API Error: AcpiOsAllocate(%d) returned NULL\n", | ||
368 | - OutName.Length); | ||
369 | + (int) OutName.Length); | ||
370 | return (AE_ERROR); | ||
371 | } | ||
372 | } | ||
373 | diff --git a/tests/aapits/atosxfctrl.c b/tests/aapits/atosxfctrl.c | ||
374 | index 9680c4a..31d6971 100644 | ||
375 | --- a/tests/aapits/atosxfctrl.c | ||
376 | +++ b/tests/aapits/atosxfctrl.c | ||
377 | @@ -737,13 +737,15 @@ ACPI_OSXF_EMUL_REG | ||
378 | #if ACPI_MACHINE_WIDTH == 64 | ||
379 | #ifdef _MSC_VER | ||
380 | printf("OsxfCtrlFingReg: unexpected Width %d of Reg 0x%I64x\n", | ||
381 | + Width, Address); | ||
382 | #else | ||
383 | printf("OsxfCtrlFingReg: unexpected Width %d of Reg 0x%llx\n", | ||
384 | + Width, (long long unsigned int) Address); | ||
385 | #endif | ||
386 | #else | ||
387 | printf("OsxfCtrlFingReg: unexpected Width %d of Reg 0x%x\n", | ||
388 | -#endif | ||
389 | Width, Address); | ||
390 | +#endif | ||
391 | return (NULL); | ||
392 | } | ||
393 | |||
394 | @@ -764,15 +766,19 @@ ACPI_OSXF_EMUL_REG | ||
395 | #ifdef _MSC_VER | ||
396 | printf("OsxfCtrlFingReg: intersection Regs (0x%I64x: 0x%x)" | ||
397 | " and (0x%I64x: 0x%x)\n", | ||
398 | + Reg->Address, Reg->Width, Address, Width); | ||
399 | #else | ||
400 | printf("OsxfCtrlFingReg: intersection Regs (0x%llx: 0x%x)" | ||
401 | " and (0x%llx: 0x%x)\n", | ||
402 | + (long long unsigned int) Reg->Address, | ||
403 | + Reg->Width, | ||
404 | + (long long unsigned int) Address, Width); | ||
405 | #endif | ||
406 | #else | ||
407 | printf("OsxfCtrlFingReg: intersection Regs (0x%x: 0x%x)" | ||
408 | " and (0x%x: 0x%x)\n", | ||
409 | -#endif | ||
410 | Reg->Address, Reg->Width, Address, Width); | ||
411 | +#endif | ||
412 | return (NULL); | ||
413 | } | ||
414 | } | ||
415 | @@ -786,13 +792,15 @@ ACPI_OSXF_EMUL_REG | ||
416 | #if ACPI_MACHINE_WIDTH == 64 | ||
417 | #ifdef _MSC_VER | ||
418 | printf("OsxfCtrlFingReg: no memory for Reg (0x%I64x: 0x%x)\n", | ||
419 | + Reg->Address, Reg->Width); | ||
420 | #else | ||
421 | printf("OsxfCtrlFingReg: no memory for Reg (0x%llx: 0x%x)\n", | ||
422 | + (long long unsigned int) Reg->Address, Reg->Width); | ||
423 | #endif | ||
424 | #else | ||
425 | printf("OsxfCtrlFingReg: no memory for Reg (0x%x: 0x%x)\n", | ||
426 | -#endif | ||
427 | Reg->Address, Reg->Width); | ||
428 | +#endif | ||
429 | return (NULL); | ||
430 | } | ||
431 | Reg->Type = Type; | ||
432 | @@ -932,14 +940,19 @@ OsxfCtrlRegService(UINT32 ServiceFlag) | ||
433 | #if ACPI_MACHINE_WIDTH == 64 | ||
434 | #ifdef _MSC_VER | ||
435 | printf("%.2u (%s Address 0x%I64x: Width %.2u) r/w counts: %u/%u\n", | ||
436 | + i, (Reg->Type == EMUL_REG_SYS)? "SYS": "IO", | ||
437 | + Reg->Address, Reg->Width, Reg->ReadCount, Reg->WriteCount); | ||
438 | #else | ||
439 | printf("%.2u (%s Address 0x%llx: Width %.2u) r/w counts: %u/%u\n", | ||
440 | + i, (Reg->Type == EMUL_REG_SYS)? "SYS": "IO", | ||
441 | + (long long unsigned int) Reg->Address, | ||
442 | + Reg->Width, Reg->ReadCount, Reg->WriteCount); | ||
443 | #endif | ||
444 | #else | ||
445 | printf("%.2u (%s Address 0x%.4x: Width %.2u) r/w counts: %u/%u\n", | ||
446 | -#endif | ||
447 | i, (Reg->Type == EMUL_REG_SYS)? "SYS": "IO", | ||
448 | Reg->Address, Reg->Width, Reg->ReadCount, Reg->WriteCount); | ||
449 | +#endif | ||
450 | Reg = Reg->Next; | ||
451 | i++; | ||
452 | } | ||
453 | diff --git a/tests/aapits/atresource.c b/tests/aapits/atresource.c | ||
454 | index a570b73..72ade8b 100644 | ||
455 | --- a/tests/aapits/atresource.c | ||
456 | +++ b/tests/aapits/atresource.c | ||
457 | @@ -174,7 +174,7 @@ AtRsrcTest0000(void) | ||
458 | AapiErrors++; | ||
459 | printf ("API Error: AcpiGetCurrentResources(%s) returned Length %d," | ||
460 | " expected %d\n", | ||
461 | - Pathname, OutBuffer.Length, RT0000_DEV0_CRS_LEN); | ||
462 | + Pathname, (int) OutBuffer.Length, RT0000_DEV0_CRS_LEN); | ||
463 | return (AE_ERROR); | ||
464 | } | ||
465 | |||
466 | @@ -490,7 +490,7 @@ AtRsrcTest0005(void) | ||
467 | AapiErrors++; | ||
468 | printf ("API Error: AcpiGetCurrentResources(%s) returned Length %d," | ||
469 | " expected %d\n", | ||
470 | - Pathname, OutBuffer.Length, RT0000_DEV0_CRS_LEN); | ||
471 | + Pathname, (int) OutBuffer.Length, RT0000_DEV0_CRS_LEN); | ||
472 | return (AE_ERROR); | ||
473 | } | ||
474 | |||
475 | @@ -689,7 +689,7 @@ AtRsrcTest0007(void) | ||
476 | AapiErrors++; | ||
477 | printf ("Api Error: Resource->Length (%d) != %d\n", | ||
478 | CurrentResource->Length, | ||
479 | - ACPI_ROUND_UP_TO_NATIVE_WORD (ACPI_RS_SIZE (ACPI_RESOURCE_IRQ))); | ||
480 | + (int) (ACPI_ROUND_UP_TO_NATIVE_WORD (ACPI_RS_SIZE (ACPI_RESOURCE_IRQ)))); | ||
481 | } | ||
482 | |||
483 | if (CurrentResource->Data.Irq.Triggering != 0) /* Level-Triggered */ | ||
484 | @@ -981,7 +981,7 @@ AtRsrcTest0012(void) | ||
485 | AapiErrors++; | ||
486 | printf ("API Error: AcpiGetPossibleResources(%s) returned Length %d," | ||
487 | " expected %d\n", | ||
488 | - Pathname, OutBuffer.Length, RT0000_DEV0_CRS_LEN); | ||
489 | + Pathname, (int) OutBuffer.Length, RT0000_DEV0_CRS_LEN); | ||
490 | return (AE_ERROR); | ||
491 | } | ||
492 | |||
493 | @@ -1923,7 +1923,7 @@ AtRsrcTest0026(void) | ||
494 | AapiErrors++; | ||
495 | printf ("API Error: AcpiGetIrqRoutingTable(%s) returned Length %d," | ||
496 | " expected %d\n", | ||
497 | - Pathname, OutBuffer.Length, 0xA48); | ||
498 | + Pathname, (int) OutBuffer.Length, 0xA48); | ||
499 | return (AE_ERROR); | ||
500 | } | ||
501 | |||
502 | diff --git a/tests/aapits/osunixxf.c b/tests/aapits/osunixxf.c | ||
503 | index 9f908fb..1fbdb70 100644 | ||
504 | --- a/tests/aapits/osunixxf.c | ||
505 | +++ b/tests/aapits/osunixxf.c | ||
506 | @@ -384,7 +384,6 @@ AcpiOsActualVprintf ( | ||
507 | const char *Fmt, | ||
508 | va_list Args) | ||
509 | { | ||
510 | - INT32 Count = 0; | ||
511 | UINT8 Flags; | ||
512 | |||
513 | |||
514 | @@ -397,7 +396,7 @@ AcpiOsActualVprintf ( | ||
515 | { | ||
516 | /* Output file is open, send the output there */ | ||
517 | |||
518 | - Count = vfprintf (AcpiGbl_DebugFile, Fmt, Args); | ||
519 | + vfprintf (AcpiGbl_DebugFile, Fmt, Args); | ||
520 | } | ||
521 | else | ||
522 | { | ||
523 | @@ -409,7 +408,7 @@ AcpiOsActualVprintf ( | ||
524 | |||
525 | if (Flags & ACPI_DB_CONSOLE_OUTPUT) | ||
526 | { | ||
527 | - Count = vfprintf (AcpiGbl_OutputFile, Fmt, Args); | ||
528 | + vfprintf (AcpiGbl_OutputFile, Fmt, Args); | ||
529 | } | ||
530 | |||
531 | return; | ||
532 | @@ -1166,3 +1165,23 @@ AcpiOsActualSignal ( | ||
533 | |||
534 | return (AE_OK); | ||
535 | } | ||
536 | + | ||
537 | +/****************************************************************************** | ||
538 | + * | ||
539 | + * FUNCTION: AcpiOsWaitEventsComplete | ||
540 | + * | ||
541 | + * PARAMETERS: None | ||
542 | + * | ||
543 | + * RETURN: None | ||
544 | + * | ||
545 | + * DESCRIPTION: Wait for all asynchronous events to complete. This | ||
546 | + * implementation does nothing. | ||
547 | + * | ||
548 | + *****************************************************************************/ | ||
549 | + | ||
550 | +void | ||
551 | +AcpiOsWaitEventsComplete ( | ||
552 | + void) | ||
553 | +{ | ||
554 | + return; | ||
555 | +} | ||
556 | -- | ||
557 | 1.8.4.2 | ||
558 | |||
diff --git a/meta-oe/recipes-extended/acpica/acpitests_20140114.bb b/meta-oe/recipes-extended/acpica/acpitests_20140114.bb new file mode 100644 index 0000000000..d8a3b9f4c6 --- /dev/null +++ b/meta-oe/recipes-extended/acpica/acpitests_20140114.bb | |||
@@ -0,0 +1,34 @@ | |||
1 | SUMMARY = "Test suite used to validate ACPICA" | ||
2 | HOMEPAGE = "http://www.acpica.org/" | ||
3 | |||
4 | LICENSE = "Intel" | ||
5 | LIC_FILES_CHKSUM = "file://tests/aapits/atexec.c;beginline=1;endline=115;md5=e92bcdfcd01d117d1bda3e814bb2030a" | ||
6 | |||
7 | DEPENDS = "bison flex" | ||
8 | |||
9 | SRC_URI = "https://acpica.org/sites/acpica/files/acpitests-unix-${PV}.tar.gz;name=acpitests \ | ||
10 | https://acpica.org/sites/acpica/files/acpica-unix2-${PV}.tar.gz;name=acpica \ | ||
11 | file://0001-Fixup-aapits-build.patch \ | ||
12 | " | ||
13 | SRC_URI[acpitests.md5sum] = "c72b61e092d2b25726dfff6e455116c9" | ||
14 | SRC_URI[acpitests.sha256sum] = "368f69296edef5138fd33affa2d50bdcdd1dfd2f6919ba782f8ecf03971a3a2c" | ||
15 | SRC_URI[acpica.md5sum] = "fcd4b7304f1bfabc7d4b9cfdecc6b0c6" | ||
16 | SRC_URI[acpica.sha256sum] = "0d5bd32690ab77e21ab143ef25361c314a4ed13c33a5fb3ddd6f5559ab24ebc3" | ||
17 | |||
18 | S = "${WORKDIR}/acpitests-unix-${PV}" | ||
19 | |||
20 | EXTRA_OEMAKE = "CC=${TARGET_PREFIX}gcc 'OPT_CFLAGS=-Wall'" | ||
21 | |||
22 | # The Makefiles expect a specific layout | ||
23 | do_compile() { | ||
24 | cp -af ${WORKDIR}/acpica-unix2-${PV}/source ${S} | ||
25 | cd tests/aapits | ||
26 | oe_runmake | ||
27 | } | ||
28 | |||
29 | do_install() { | ||
30 | install -d ${D}${bindir} | ||
31 | install -m0755 tests/aapits/bin/aapits ${D}${bindir} | ||
32 | } | ||
33 | |||
34 | COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" | ||
diff --git a/meta-oe/recipes-extended/acpica/files/no-werror.patch b/meta-oe/recipes-extended/acpica/files/no-werror.patch new file mode 100644 index 0000000000..5d28f474f2 --- /dev/null +++ b/meta-oe/recipes-extended/acpica/files/no-werror.patch | |||
@@ -0,0 +1,32 @@ | |||
1 | Description: remove -Werror flag | ||
2 | Forwarded: not-needed | ||
3 | Author: Fathi Boudra <fathi.boudra@linaro.org> | ||
4 | |||
5 | --- | ||
6 | generate/unix/iasl/Makefile | 12 ++++++------ | ||
7 | 1 file changed, 6 insertions(+), 6 deletions(-) | ||
8 | |||
9 | --- a/generate/unix/iasl/Makefile | ||
10 | +++ b/generate/unix/iasl/Makefile | ||
11 | @@ -266,19 +266,19 @@ $(OBJDIR)/prparser.y.h: $(OBJDIR)/prpars | ||
12 | # by the utilities above and they are not necessarily ANSI C, etc. | ||
13 | # | ||
14 | $(OBJDIR)/aslcompilerlex.o : $(OBJDIR)/aslcompilerlex.c | ||
15 | - $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< | ||
16 | + $(CC) -c $(CFLAGS) -Wall -o$@ $< | ||
17 | |||
18 | $(OBJDIR)/aslcompilerparse.o : $(OBJDIR)/aslcompilerparse.c | ||
19 | - $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< | ||
20 | + $(CC) -c $(CFLAGS) -Wall -o$@ $< | ||
21 | |||
22 | $(OBJDIR)/dtparserlex.o : $(OBJDIR)/dtparserlex.c | ||
23 | - $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< | ||
24 | + $(CC) -c $(CFLAGS) -Wall -o$@ $< | ||
25 | |||
26 | $(OBJDIR)/dtparserparse.o : $(OBJDIR)/dtparserparse.c | ||
27 | - $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< | ||
28 | + $(CC) -c $(CFLAGS) -Wall -o$@ $< | ||
29 | |||
30 | $(OBJDIR)/prparserlex.o : $(OBJDIR)/prparserlex.c | ||
31 | - $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< | ||
32 | + $(CC) -c $(CFLAGS) -Wall -o$@ $< | ||
diff --git a/meta-oe/recipes-extended/anki/anki-0.4.3.inc b/meta-oe/recipes-extended/anki/anki-0.4.3.inc new file mode 100644 index 0000000000..072e7f1e4e --- /dev/null +++ b/meta-oe/recipes-extended/anki/anki-0.4.3.inc | |||
@@ -0,0 +1,8 @@ | |||
1 | require anki.inc | ||
2 | |||
3 | SRC_URI = "${SOURCEFORGE_MIRROR}/anki/anki-${PV}.tgz" | ||
4 | SRC_URI[md5sum] = "90434860945de4c09d55cdb5dbe984fc" | ||
5 | SRC_URI[sha256sum] = "18a93fb46363ca34963fc2588cadf7415dd799dd647efa681859eb8b1b22f104" | ||
6 | |||
7 | export BUILD_PV := "${PV}" | ||
8 | SRC_URI += "file://no-need-for-pyqt-at-buildtime.patch" | ||
diff --git a/meta-oe/recipes-extended/anki/anki.inc b/meta-oe/recipes-extended/anki/anki.inc new file mode 100644 index 0000000000..3092539ec4 --- /dev/null +++ b/meta-oe/recipes-extended/anki/anki.inc | |||
@@ -0,0 +1,9 @@ | |||
1 | DESCRIPTION = "Anki is a program designed to help you remember facts \ | ||
2 | (such as words and phrases in a foreign language) \ | ||
3 | as easily, quickly and efficiently as possible" | ||
4 | HOMEPAGE = "http://ichi2.net/anki/" | ||
5 | AUTHOR = "Damien Elmes" | ||
6 | LICENSE = "GPLv3+" | ||
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949" | ||
8 | |||
9 | inherit setuptools | ||
diff --git a/meta-oe/recipes-extended/anki/anki/no-need-for-pyqt-at-buildtime.patch b/meta-oe/recipes-extended/anki/anki/no-need-for-pyqt-at-buildtime.patch new file mode 100644 index 0000000000..9eac1dc7be --- /dev/null +++ b/meta-oe/recipes-extended/anki/anki/no-need-for-pyqt-at-buildtime.patch | |||
@@ -0,0 +1,28 @@ | |||
1 | # | ||
2 | # (C) Michael 'Mickey' Lauer <mlauer@vanille-media.de> | ||
3 | # | ||
4 | Index: anki-0.4.3/setup.py | ||
5 | =================================================================== | ||
6 | --- anki-0.4.3.orig/setup.py 2008-02-12 19:17:56.000000000 +0000 | ||
7 | +++ anki-0.4.3/setup.py 2008-02-12 19:19:29.000000000 +0000 | ||
8 | @@ -3,10 +3,8 @@ | ||
9 | from setuptools import setup, find_packages | ||
10 | import sys, os | ||
11 | |||
12 | -import ankiqt | ||
13 | - | ||
14 | setup(name='ankiqt', | ||
15 | - version=ankiqt.appVersion, | ||
16 | + version=os.environ["BUILD_PV"], | ||
17 | description='An intelligent spaced-repetition memory training program', | ||
18 | long_description="", | ||
19 | # Get strings from http://www.python.org/pypi?%3Aaction=list_classifiers | ||
20 | @@ -24,7 +22,7 @@ | ||
21 | license='GPLv2', | ||
22 | packages=find_packages(), | ||
23 | include_package_data=True, | ||
24 | - install_requires = 'anki >= ' + ankiqt.appVersion, | ||
25 | + install_requires = 'anki >= ' + os.environ["BUILD_PV"], | ||
26 | zip_safe=False, | ||
27 | package_data={'ankiqt': | ||
28 | ['locale/*/*/*']}, | ||
diff --git a/meta-oe/recipes-extended/anki/anki_0.4.3.bb b/meta-oe/recipes-extended/anki/anki_0.4.3.bb new file mode 100644 index 0000000000..7943ce8cd0 --- /dev/null +++ b/meta-oe/recipes-extended/anki/anki_0.4.3.bb | |||
@@ -0,0 +1,4 @@ | |||
1 | require ${PN}-${PV}.inc | ||
2 | |||
3 | RDEPENDS_${PN} = "python-pyqt python-sip libanki" | ||
4 | RRECOMMENDS_${PN} = "virtual-japanese-font" | ||
diff --git a/meta-oe/recipes-extended/anki/libanki/no-need-for-pyqt-at-buildtime.patch b/meta-oe/recipes-extended/anki/libanki/no-need-for-pyqt-at-buildtime.patch new file mode 100644 index 0000000000..92583e59f1 --- /dev/null +++ b/meta-oe/recipes-extended/anki/libanki/no-need-for-pyqt-at-buildtime.patch | |||
@@ -0,0 +1,14 @@ | |||
1 | --- libanki.orig/setup.py 2008-01-02 13:22:22.000000000 +0100 | ||
2 | +++ libanki/setup.py 2012-08-02 11:39:13.604173933 +0200 | ||
3 | @@ -3,10 +3,8 @@ | ||
4 | from setuptools import setup, find_packages | ||
5 | import sys, os | ||
6 | |||
7 | -import anki | ||
8 | - | ||
9 | setup(name='anki', | ||
10 | - version=anki.version, | ||
11 | + version=os.environ["BUILD_PV"], | ||
12 | description='An intelligent spaced-repetition memory training library', | ||
13 | long_description="", | ||
14 | # Get strings from http://www.python.org/pypi?%3Aaction=list_classifiers | ||
diff --git a/meta-oe/recipes-extended/anki/libanki_0.4.3.bb b/meta-oe/recipes-extended/anki/libanki_0.4.3.bb new file mode 100644 index 0000000000..636932f3ad --- /dev/null +++ b/meta-oe/recipes-extended/anki/libanki_0.4.3.bb | |||
@@ -0,0 +1,3 @@ | |||
1 | require anki-${PV}.inc | ||
2 | |||
3 | S = "${WORKDIR}/anki-${PV}/libanki" | ||
diff --git a/meta-oe/recipes-extended/collectd/collectd/collectd-version.patch b/meta-oe/recipes-extended/collectd/collectd/collectd-version.patch new file mode 100644 index 0000000000..1e2b7c159c --- /dev/null +++ b/meta-oe/recipes-extended/collectd/collectd/collectd-version.patch | |||
@@ -0,0 +1,31 @@ | |||
1 | Don't pick up version string from parent git repository | ||
2 | |||
3 | If the collectd source is extracted from a tarball underneath a | ||
4 | directory structure that includes another git repository, that | ||
5 | repository will be picked up by "git describe" which is not | ||
6 | desirable. Check whether collectd itself is a git repository and just | ||
7 | use the default version if not. | ||
8 | |||
9 | Upstream-Status: Pending | ||
10 | |||
11 | Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> | ||
12 | |||
13 | diff --git a/version-gen.sh b/version-gen.sh | ||
14 | index e344541..d1c0929 100755 | ||
15 | --- a/version-gen.sh | ||
16 | +++ b/version-gen.sh | ||
17 | @@ -2,7 +2,10 @@ | ||
18 | |||
19 | DEFAULT_VERSION="5.2.2.git" | ||
20 | |||
21 | -VERSION="`git describe 2> /dev/null | sed -e 's/^collectd-//'`" | ||
22 | +VERSION="" | ||
23 | +if test -d .git ; then | ||
24 | + VERSION="`git describe 2> /dev/null | sed -e 's/^collectd-//'`" | ||
25 | +fi | ||
26 | |||
27 | if test -z "$VERSION"; then | ||
28 | VERSION="$DEFAULT_VERSION" | ||
29 | -- | ||
30 | 1.7.10.4 | ||
31 | |||
diff --git a/meta-oe/recipes-extended/collectd/collectd/collectd.init b/meta-oe/recipes-extended/collectd/collectd/collectd.init new file mode 100644 index 0000000000..95f5f73c67 --- /dev/null +++ b/meta-oe/recipes-extended/collectd/collectd/collectd.init | |||
@@ -0,0 +1,212 @@ | |||
1 | #!/bin/sh | ||
2 | # | ||
3 | # collectd - start and stop the statistics collection daemon | ||
4 | # http://collectd.org/ | ||
5 | # | ||
6 | # Copyright (C) 2005-2006 Florian Forster <octo@verplant.org> | ||
7 | # Copyright (C) 2006-2009 Sebastian Harl <tokkee@debian.org> | ||
8 | # | ||
9 | |||
10 | ### BEGIN INIT INFO | ||
11 | # Provides: collectd | ||
12 | # Required-Start: $local_fs $remote_fs | ||
13 | # Required-Stop: $local_fs $remote_fs | ||
14 | # Should-Start: $network $named $syslog $time cpufrequtils | ||
15 | # Should-Stop: $network $named $syslog | ||
16 | # Default-Start: 2 3 4 5 | ||
17 | # Default-Stop: 0 1 6 | ||
18 | # Short-Description: manage the statistics collection daemon | ||
19 | # Description: collectd is the statistics collection daemon. | ||
20 | # It is a small daemon which collects system information | ||
21 | # periodically and provides mechanisms to monitor and store | ||
22 | # the values in a variety of ways. | ||
23 | ### END INIT INFO | ||
24 | |||
25 | . /etc/init.d/functions | ||
26 | |||
27 | export PATH=/sbin:/bin:/usr/sbin:/usr/bin | ||
28 | |||
29 | DISABLE=0 | ||
30 | |||
31 | NAME=collectd | ||
32 | DAEMON=/usr/sbin/collectd | ||
33 | |||
34 | CONFIGFILE=/etc/collectd.conf | ||
35 | PIDFILE=/var/run/collectd.pid | ||
36 | |||
37 | USE_COLLECTDMON=1 | ||
38 | COLLECTDMON_DAEMON=/usr/sbin/collectdmon | ||
39 | COLLECTDMON_PIDFILE=/var/run/collectdmon.pid | ||
40 | |||
41 | MAXWAIT=30 | ||
42 | |||
43 | # Gracefully exit if the package has been removed. | ||
44 | test -x $DAEMON || exit 0 | ||
45 | |||
46 | if [ -r /etc/default/$NAME ]; then | ||
47 | . /etc/default/$NAME | ||
48 | fi | ||
49 | |||
50 | if test "$ENABLE_COREFILES" == 1; then | ||
51 | ulimit -c unlimited | ||
52 | fi | ||
53 | |||
54 | if test "$USE_COLLECTDMON" == 1; then | ||
55 | _PIDFILE="$COLLECTDMON_PIDFILE" | ||
56 | else | ||
57 | _PIDFILE="$PIDFILE" | ||
58 | fi | ||
59 | |||
60 | # return: | ||
61 | # 0 if config is fine | ||
62 | # 1 if there is a syntax error | ||
63 | # 2 if there is no configuration | ||
64 | check_config() { | ||
65 | if test ! -e "$CONFIGFILE"; then | ||
66 | return 2 | ||
67 | fi | ||
68 | if ! $DAEMON -t -C "$CONFIGFILE"; then | ||
69 | return 1 | ||
70 | fi | ||
71 | return 0 | ||
72 | } | ||
73 | |||
74 | # return: | ||
75 | # 0 if the daemon has been started | ||
76 | # 1 if the daemon was already running | ||
77 | # 2 if the daemon could not be started | ||
78 | # 3 if the daemon was not supposed to be started | ||
79 | d_start() { | ||
80 | if test "$DISABLE" != 0; then | ||
81 | # we get here during restart | ||
82 | echo "disabled by /etc/default/$NAME" | ||
83 | return 3 | ||
84 | fi | ||
85 | |||
86 | if test ! -e "$CONFIGFILE"; then | ||
87 | # we get here during restart | ||
88 | echo "disabled, no configuration ($CONFIGFILE) found" | ||
89 | return 3 | ||
90 | fi | ||
91 | |||
92 | check_config | ||
93 | rc="$?" | ||
94 | if test "$rc" -ne 0; then | ||
95 | echo "not starting, configuration error" | ||
96 | return 2 | ||
97 | fi | ||
98 | |||
99 | if test "$USE_COLLECTDMON" == 1; then | ||
100 | start-stop-daemon --start --quiet --oknodo --pidfile "$_PIDFILE" \ | ||
101 | --exec $COLLECTDMON_DAEMON -- -P "$_PIDFILE" -- -C "$CONFIGFILE" \ | ||
102 | || return 2 | ||
103 | else | ||
104 | start-stop-daemon --start --quiet --oknodo --pidfile "$_PIDFILE" \ | ||
105 | --exec $DAEMON -- -C "$CONFIGFILE" -P "$_PIDFILE" \ | ||
106 | || return 2 | ||
107 | fi | ||
108 | return 0 | ||
109 | } | ||
110 | |||
111 | still_running_warning=" | ||
112 | WARNING: $NAME might still be running. | ||
113 | In large setups it might take some time to write all pending data to | ||
114 | the disk. You can adjust the waiting time in /etc/default/collectd." | ||
115 | |||
116 | # return: | ||
117 | # 0 if the daemon has been stopped | ||
118 | # 1 if the daemon was already stopped | ||
119 | # 2 if daemon could not be stopped | ||
120 | d_stop() { | ||
121 | PID=$( cat "$_PIDFILE" 2> /dev/null ) || true | ||
122 | |||
123 | start-stop-daemon --stop --quiet --oknodo --pidfile "$_PIDFILE" | ||
124 | rc="$?" | ||
125 | |||
126 | if test "$rc" -eq 2; then | ||
127 | return 2 | ||
128 | fi | ||
129 | |||
130 | sleep 1 | ||
131 | if test -n "$PID" && kill -0 $PID 2> /dev/null; then | ||
132 | i=0 | ||
133 | while kill -0 $PID 2> /dev/null; do | ||
134 | i=$(( $i + 2 )) | ||
135 | echo -n " ." | ||
136 | |||
137 | if test $i -gt $MAXWAIT; then | ||
138 | echo "$still_running_warning" | ||
139 | return 2 | ||
140 | fi | ||
141 | |||
142 | sleep 2 | ||
143 | done | ||
144 | return "$rc" | ||
145 | fi | ||
146 | return "$rc" | ||
147 | } | ||
148 | |||
149 | # return: | ||
150 | # 0 if the daemon is running | ||
151 | # 3 if the daemon is stopped | ||
152 | d_status(){ | ||
153 | if test "$USE_COLLECTDMON" == 1; then | ||
154 | status $COLLECTDMON_DAEMON | ||
155 | else | ||
156 | status $DAEMON | ||
157 | fi | ||
158 | } | ||
159 | |||
160 | case "$1" in | ||
161 | start) | ||
162 | echo -n "Starting $NAME" | ||
163 | d_start | ||
164 | case "$?" in | ||
165 | 0|1) echo "." ;; | ||
166 | *) exit 1 ;; | ||
167 | esac | ||
168 | ;; | ||
169 | stop) | ||
170 | echo -n "Stopping $NAME" | ||
171 | d_stop | ||
172 | case "$?" in | ||
173 | 0|1) echo "." ;; | ||
174 | *) exit 1 ;; | ||
175 | esac | ||
176 | ;; | ||
177 | status) | ||
178 | d_status | ||
179 | ;; | ||
180 | restart|force-reload) | ||
181 | echo -n "Restarting $NAME" | ||
182 | check_config | ||
183 | rc="$?" | ||
184 | if test "$rc" -eq 1; then | ||
185 | echo "not restarting, configuration error" | ||
186 | exit 1 | ||
187 | fi | ||
188 | d_stop | ||
189 | rc="$?" | ||
190 | case "$rc" in | ||
191 | 0|1) | ||
192 | sleep 1 | ||
193 | d_start | ||
194 | rc2="$?" | ||
195 | case "$rc2" in | ||
196 | 0|1) echo "." ;; | ||
197 | *) exit 1 ;; | ||
198 | esac | ||
199 | ;; | ||
200 | *) | ||
201 | exit 1 | ||
202 | ;; | ||
203 | esac | ||
204 | ;; | ||
205 | *) | ||
206 | echo "Usage: $0 {start|stop|restart|force-reload|status}" >&2 | ||
207 | exit 3 | ||
208 | ;; | ||
209 | esac | ||
210 | |||
211 | # vim: syntax=sh noexpandtab sw=4 ts=4 : | ||
212 | |||
diff --git a/meta-oe/recipes-extended/collectd/collectd/no-gcrypt-badpath.patch b/meta-oe/recipes-extended/collectd/collectd/no-gcrypt-badpath.patch new file mode 100644 index 0000000000..02b160109e --- /dev/null +++ b/meta-oe/recipes-extended/collectd/collectd/no-gcrypt-badpath.patch | |||
@@ -0,0 +1,30 @@ | |||
1 | Disable defaulting of GCRYPT_LDFLAGS to -L/usr/lib | ||
2 | |||
3 | Prevents "unsafe for cross compilation" warnings that cause | ||
4 | do_qa_configure to fail. | ||
5 | |||
6 | Upstream-Status: Inappropriate [configuration] | ||
7 | |||
8 | Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> | ||
9 | |||
10 | diff --git a/configure.in b/configure.in | ||
11 | index 98395ed..81c3a2c 100644 | ||
12 | --- a/configure.in | ||
13 | +++ b/configure.in | ||
14 | @@ -1777,11 +1777,11 @@ then | ||
15 | GCRYPT_CPPFLAGS=`"$with_libgcrypt_config" --cflags 2>/dev/null` | ||
16 | fi | ||
17 | |||
18 | - if test "x$GCRYPT_LDFLAGS" = "x" | ||
19 | - then | ||
20 | - gcrypt_exec_prefix=`"$with_libgcrypt_config" --exec-prefix 2>/dev/null` | ||
21 | - GCRYPT_LDFLAGS="-L$gcrypt_exec_prefix/lib" | ||
22 | - fi | ||
23 | +# if test "x$GCRYPT_LDFLAGS" = "x" | ||
24 | +# then | ||
25 | +# gcrypt_exec_prefix=`"$with_libgcrypt_config" --exec-prefix 2>/dev/null` | ||
26 | +# GCRYPT_LDFLAGS="-L$gcrypt_exec_prefix/lib" | ||
27 | +# fi | ||
28 | |||
29 | if test "x$GCRYPT_LIBS" = "x" | ||
30 | then | ||
diff --git a/meta-oe/recipes-extended/collectd/collectd_5.2.2.bb b/meta-oe/recipes-extended/collectd/collectd_5.2.2.bb new file mode 100644 index 0000000000..8585ff3c70 --- /dev/null +++ b/meta-oe/recipes-extended/collectd/collectd_5.2.2.bb | |||
@@ -0,0 +1,61 @@ | |||
1 | SUMMARY = "Collects and summarises system performance statistics" | ||
2 | DESCRIPTION = "collectd is a daemon which collects system performance statistics periodically and provides mechanisms to store the values in a variety of ways, for example in RRD files." | ||
3 | LICENSE = "GPLv2" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" | ||
5 | |||
6 | DEPENDS = "rrdtool curl mysql5 libpcap libxml2 yajl libgcrypt libtool" | ||
7 | |||
8 | SRC_URI = "http://collectd.org/files/collectd-${PV}.tar.bz2 \ | ||
9 | file://no-gcrypt-badpath.patch \ | ||
10 | file://collectd-version.patch \ | ||
11 | file://collectd.init" | ||
12 | |||
13 | SRC_URI[md5sum] = "29e61411e51845d5ae71ab676078867e" | ||
14 | SRC_URI[sha256sum] = "7b8906d1c8866155b31820ef108be92abcee7fcd278d386bf0d449e704ba4696" | ||
15 | |||
16 | inherit autotools pythonnative update-rc.d | ||
17 | |||
18 | # Floatingpoint layout, architecture dependent | ||
19 | # 'nothing', 'endianflip' or 'intswap' | ||
20 | FPLAYOUT ?= "--with-fp-layout=nothing" | ||
21 | |||
22 | PACKAGECONFIG ??= "" | ||
23 | PACKAGECONFIG[snmp] = "--enable-snmp,--disable-snmp --with-libnetsnmp=no,net-snmp" | ||
24 | PACKAGECONFIG[libmemcached] = "--with-libmemcached,--without-libmemcached,libmemcached" | ||
25 | PACKAGECONFIG[iptables] = "--enable-iptables,--disable-iptables,iptables" | ||
26 | PACKAGECONFIG[postgresql] = "--enable-postgresql --with-libpq=yes, \ | ||
27 | --disable-postgresql --with-libpq=no,postgresql" | ||
28 | PACKAGECONFIG[dbi] = "--enable-dbi,--disable-dbi,libdbi" | ||
29 | PACKAGECONFIG[modbus] = "--enable-modbus,--disable-modbus,libmodbus" | ||
30 | PACKAGECONFIG[libowcapi] = "--with-libowcapi,--without-libowcapi,owfs" | ||
31 | PACKAGECONFIG[sensors] = "--enable-sensors --with-libsensors=yes, \ | ||
32 | --disable-sensors --with-libsensors=no,lmsensors" | ||
33 | |||
34 | EXTRA_OECONF = " \ | ||
35 | ${FPLAYOUT} \ | ||
36 | --disable-perl --with-libperl=no --with-perl-bindings=no \ | ||
37 | --with-libgcrypt=${STAGING_BINDIR_CROSS}/libgcrypt-config \ | ||
38 | --disable-notify_desktop \ | ||
39 | " | ||
40 | |||
41 | do_install_append() { | ||
42 | install -d ${D}${sysconfdir}/init.d | ||
43 | install -m 0755 ${WORKDIR}/collectd.init ${D}${sysconfdir}/init.d/collectd | ||
44 | sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/collectd | ||
45 | sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/collectd | ||
46 | sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/collectd | ||
47 | sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${sysconfdir}/init.d/collectd | ||
48 | |||
49 | # Fix configuration file to allow collectd to start up | ||
50 | sed -i 's!^#FQDNLookup[ \t]*true!FQDNLookup false!g' ${D}${sysconfdir}/collectd.conf | ||
51 | |||
52 | rmdir "${D}${localstatedir}/run" | ||
53 | rmdir --ignore-fail-on-non-empty "${D}${localstatedir}" | ||
54 | } | ||
55 | |||
56 | INITSCRIPT_NAME = "collectd" | ||
57 | INITSCRIPT_PARAMS = "defaults" | ||
58 | |||
59 | # threshold.so load.so are also provided by gegl | ||
60 | # disk.so is also provided by libgphoto2-camlibs | ||
61 | PRIVATE_LIBS = "threshold.so load.so disk.so" | ||
diff --git a/meta-oe/recipes-extended/ddrescue/ddrescue_1.16.bb b/meta-oe/recipes-extended/ddrescue/ddrescue_1.16.bb new file mode 100644 index 0000000000..50202c1cb7 --- /dev/null +++ b/meta-oe/recipes-extended/ddrescue/ddrescue_1.16.bb | |||
@@ -0,0 +1,18 @@ | |||
1 | SUMMARY = "Data recovery tool" | ||
2 | DESCRIPTION = "GNU ddrescue is a data recovery tool. It copies data \ | ||
3 | from one file or block device (hard disc, cdrom, etc) to another, \ | ||
4 | trying hard to rescue data in case of read errors." | ||
5 | HOMEPAGE = "http://www.gnu.org/software/ddrescue/ddrescue.html" | ||
6 | SECTION = "console" | ||
7 | LICENSE = "GPLv3+" | ||
8 | |||
9 | LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \ | ||
10 | file://main_common.cc;beginline=5;endline=16;md5=b5a59150a33658cc1ffc31b1a4ffb9f2" | ||
11 | |||
12 | SRC_URI = "${GNU_MIRROR}/${PN}/${P}.tar.gz" | ||
13 | SRC_URI[md5sum] = "57b67407e882c6418531d48a2f20d16b" | ||
14 | SRC_URI[sha256sum] = "76b3f2e5fb0306d24f2632c3e168cccb73dc0a348e3a7089cd9230748ff23de6" | ||
15 | |||
16 | inherit autotools | ||
17 | |||
18 | EXTRA_OECONF = "'CXX=${CXX}' 'CPPFLAGS=${CPPFLAGS}' 'CXXFLAGS=${CXXFLAGS}' 'LDFLAGS=${LDFLAGS}'" | ||
diff --git a/meta-oe/recipes-extended/dialog/dialog-static_1.1-20120706.bb b/meta-oe/recipes-extended/dialog/dialog-static_1.1-20120706.bb new file mode 100644 index 0000000000..595f323607 --- /dev/null +++ b/meta-oe/recipes-extended/dialog/dialog-static_1.1-20120706.bb | |||
@@ -0,0 +1,6 @@ | |||
1 | require dialog.inc | ||
2 | |||
3 | LDFLAGS += "-static" | ||
4 | |||
5 | SRC_URI[md5sum] = "2e538305977178eb085a9859511c299d" | ||
6 | SRC_URI[sha256sum] = "305aa1000680aa87bb2148a725f9107ef4cd29dcd6185b44d079cb87cf0ce2f5" | ||
diff --git a/meta-oe/recipes-extended/dialog/dialog.inc b/meta-oe/recipes-extended/dialog/dialog.inc new file mode 100644 index 0000000000..c1c28fd876 --- /dev/null +++ b/meta-oe/recipes-extended/dialog/dialog.inc | |||
@@ -0,0 +1,25 @@ | |||
1 | SUMMARY = "display dialog boxes from shell scripts" | ||
2 | DESCRIPTION = "Dialog lets you to present a variety of questions \ | ||
3 | or display messages using dialog boxes from a shell \ | ||
4 | script (or any scripting language)." | ||
5 | HOMEPAGE = "http://invisible-island.net/dialog/" | ||
6 | SECTION = "console/utils" | ||
7 | DEPENDS = "ncurses" | ||
8 | LICENSE = "LGPL-2.1" | ||
9 | LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" | ||
10 | |||
11 | SRC_URI = "ftp://invisible-island.net/dialog/dialog-${PV}.tgz" | ||
12 | |||
13 | # hardcoded here for use in dialog-static recipe | ||
14 | S = "${WORKDIR}/dialog-${PV}" | ||
15 | |||
16 | inherit autotools | ||
17 | |||
18 | EXTRA_OECONF = "--with-ncurses \ | ||
19 | --disable-rpath-hack" | ||
20 | |||
21 | do_configure() { | ||
22 | gnu-configize --force | ||
23 | sed -i 's,${cf_ncuconfig_root}6-config,${cf_ncuconfig_root}-config,g' -i configure | ||
24 | oe_runconf | ||
25 | } | ||
diff --git a/meta-oe/recipes-extended/dialog/dialog_1.1-20120706.bb b/meta-oe/recipes-extended/dialog/dialog_1.1-20120706.bb new file mode 100644 index 0000000000..c87fb61602 --- /dev/null +++ b/meta-oe/recipes-extended/dialog/dialog_1.1-20120706.bb | |||
@@ -0,0 +1,4 @@ | |||
1 | require dialog.inc | ||
2 | |||
3 | SRC_URI[md5sum] = "2e538305977178eb085a9859511c299d" | ||
4 | SRC_URI[sha256sum] = "305aa1000680aa87bb2148a725f9107ef4cd29dcd6185b44d079cb87cf0ce2f5" | ||
diff --git a/meta-oe/recipes-extended/efivar/efivar_git.bb b/meta-oe/recipes-extended/efivar/efivar_git.bb new file mode 100644 index 0000000000..18446a08a1 --- /dev/null +++ b/meta-oe/recipes-extended/efivar/efivar_git.bb | |||
@@ -0,0 +1,18 @@ | |||
1 | SUMMARY = "Tools to manipulate UEFI variables" | ||
2 | DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility" | ||
3 | HOMEPAGE = "https://github.com/vathpela/efivar" | ||
4 | |||
5 | LICENSE = "LGPLv2.1" | ||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" | ||
7 | |||
8 | DEPENDS = "popt" | ||
9 | |||
10 | SRCREV = "c9e1f24a81b5374408bca5616402276e47171cf7" | ||
11 | PV = "0.7+git${SRCPV}" | ||
12 | SRC_URI = "git://github.com/vathpela/efivar.git" | ||
13 | |||
14 | S = "${WORKDIR}/git" | ||
15 | |||
16 | do_install() { | ||
17 | oe_runmake install DESTDIR=${D} | ||
18 | } | ||
diff --git a/meta-oe/recipes-extended/flashrom/flashrom_0.9.6.1.bb b/meta-oe/recipes-extended/flashrom/flashrom_0.9.6.1.bb new file mode 100644 index 0000000000..a1f0b303a0 --- /dev/null +++ b/meta-oe/recipes-extended/flashrom/flashrom_0.9.6.1.bb | |||
@@ -0,0 +1,15 @@ | |||
1 | DESCRIPTION = "flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips" | ||
2 | LICENSE = "GPLv2" | ||
3 | HOMEPAGE = "http://flashrom.org" | ||
4 | |||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" | ||
6 | DEPENDS = "pciutils" | ||
7 | |||
8 | SRC_URI = "http://download.flashrom.org/releases/flashrom-${PV}.tar.bz2" | ||
9 | |||
10 | SRC_URI[md5sum] = "407e836c0a2b17ec76583cb6809f65e5" | ||
11 | SRC_URI[sha256sum] = "6f7b588cce74c90b4fe9c9c794de105de76e0323442fb5770b1aeab81e9d560a" | ||
12 | |||
13 | do_install() { | ||
14 | oe_runmake PREFIX=${prefix} DESTDIR=${D} install | ||
15 | } | ||
diff --git a/meta-oe/recipes-extended/fwts/fwts_git.bb b/meta-oe/recipes-extended/fwts/fwts_git.bb new file mode 100644 index 0000000000..d704d8437e --- /dev/null +++ b/meta-oe/recipes-extended/fwts/fwts_git.bb | |||
@@ -0,0 +1,22 @@ | |||
1 | SUMMARY = "Firmware testsuite" | ||
2 | DESCRIPTION = "The tool fwts comprises of over fifty tests that are designed to exercise and test different aspects of a machine's firmware. Many of these tests need super user access to read BIOS data and ACPI tables, so the tool requires running with super user privileges (e.g. with sudo)." | ||
3 | HOMEPAGE = "https://wiki.ubuntu.com/Kernel/Reference/fwts" | ||
4 | |||
5 | LICENSE = "GPLv2+" | ||
6 | LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=16;md5=deb8af5388e838d133eaa036f4d1496f" | ||
7 | |||
8 | PV = "14.03.01" | ||
9 | |||
10 | SRCREV = "8ec44dc1e55ecf334f4afa8eed8795ed5776c396" | ||
11 | SRC_URI = "git://kernel.ubuntu.com/hwe/fwts.git" | ||
12 | |||
13 | S = "${WORKDIR}/git" | ||
14 | |||
15 | DEPENDS = "libpcre json-c" | ||
16 | |||
17 | inherit autotools-brokensep | ||
18 | |||
19 | FILES_${PN} += "${libdir}/fwts/lib*${SOLIBS}" | ||
20 | FILES_${PN}-dev += "${libdir}/fwts/lib*${SOLIBSDEV} ${libdir}/fwts/lib*.la" | ||
21 | FILES_${PN}-staticdev += "${libdir}/fwts/lib*a" | ||
22 | FILES_${PN}-dbg += "${libdir}/fwts/.debug" | ||
diff --git a/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/lua-loadlibs-configure-in-fix.patch b/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/lua-loadlibs-configure-in-fix.patch new file mode 100644 index 0000000000..23f2cd26a5 --- /dev/null +++ b/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/lua-loadlibs-configure-in-fix.patch | |||
@@ -0,0 +1,16 @@ | |||
1 | Index: gnuplot-4.6.5/configure.in | ||
2 | =================================================================== | ||
3 | --- gnuplot-4.6.5.orig/configure.in | ||
4 | +++ gnuplot-4.6.5/configure.in | ||
5 | @@ -690,6 +690,11 @@ if test "${with_lua}" = yes ; then | ||
6 | fi | ||
7 | |||
8 | if test "$with_lua" != no; then | ||
9 | + dnl check for dlopen/dl to fix loadlibs link failure | ||
10 | + AC_CHECK_FUNC([dlopen], [], | ||
11 | + AC_CHECK_LIB([dl], [dlopen], DLOPEN_LIBS="-ldl")) | ||
12 | + AC_SUBST(DLOPEN_LIBS) | ||
13 | + LUA_LIBS="$LUA_LIBS $DLOPEN_LIBS" | ||
14 | TERMLIBS="$TERMLIBS $LUA_LIBS" | ||
15 | CPPFLAGS="$CPPFLAGS $LUA_CFLAGS" | ||
16 | else | ||
diff --git a/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/subdirs.patch b/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/subdirs.patch new file mode 100644 index 0000000000..8c7d1f0d35 --- /dev/null +++ b/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/subdirs.patch | |||
@@ -0,0 +1,11 @@ | |||
1 | --- /tmp/Makefile.am 2007-08-23 13:10:15.560659023 +0200 | ||
2 | +++ gnuplot-4.2.0/Makefile.am 2007-08-23 13:10:34.961764629 +0200 | ||
3 | @@ -1,7 +1,7 @@ | ||
4 | ## Process this file with automake to produce Makefile.in -*-Makefile-*- | ||
5 | AUTOMAKE_OPTIONS = foreign 1.2h | ||
6 | |||
7 | -SUBDIRS = config m4 term src docs $(LISPDIR) man demo tutorial share | ||
8 | +SUBDIRS = config m4 term src $(LISPDIR) man share | ||
9 | |||
10 | EXTRA_DIST = BUGS CodeStyle Copyright FAQ GNUmakefile INSTALL INSTALL.gnu \ | ||
11 | Makefile.maint PATCHLEVEL PGPKEYS PORTING README README.1ST README.exp \ | ||
diff --git a/meta-oe/recipes-extended/gnuplot/gnuplot.inc b/meta-oe/recipes-extended/gnuplot/gnuplot.inc new file mode 100644 index 0000000000..6c27e6d8ab --- /dev/null +++ b/meta-oe/recipes-extended/gnuplot/gnuplot.inc | |||
@@ -0,0 +1,39 @@ | |||
1 | DESCRIPTION = "Gnuplot is a portable command-line driven interactive datafile \ | ||
2 | (text or binary) and function plotting utility." | ||
3 | HOMEPAGE = "http://www.gnuplot.info/" | ||
4 | SECTION = "console/scientific" | ||
5 | LICENSE = "gnuplot" | ||
6 | LIC_FILES_CHKSUM = "file://Copyright;md5=243a186fc2fd3b992125d60d5b1bab8f" | ||
7 | DEPENDS = "virtual/libx11 gd readline" | ||
8 | |||
9 | inherit autotools | ||
10 | |||
11 | acpaths = "" | ||
12 | |||
13 | PACKAGECONFIG ??= "cairo" | ||
14 | PACKAGECONFIG[cairo] = "--with-cairo,--without-cairo,cairo pango" | ||
15 | PACKAGECONFIG[lua] = "--with-lua,--without-lua,lua" | ||
16 | |||
17 | EXTRA_OECONF = "--with-readline=${STAGING_LIBDIR}/.. \ | ||
18 | --without-lisp-files \ | ||
19 | --without-tutorial \ | ||
20 | --disable-wxwidgets" | ||
21 | |||
22 | do_compile_prepend() { | ||
23 | install -m 0644 ${WORKDIR}/qtplot-0.2/qtopia.trm ${S}/term/ | ||
24 | } | ||
25 | |||
26 | do_install_append() { | ||
27 | install -d ${D}${datadir}/applications/ | ||
28 | install -m 0644 ${WORKDIR}/gnuplot.desktop ${D}${datadir}/applications/ | ||
29 | install -d ${D}${datadir}/pixmaps/ | ||
30 | install -m 0644 ${WORKDIR}/gnuplot.png ${D}${datadir}/pixmaps/ | ||
31 | } | ||
32 | |||
33 | PACKAGES =+ "${PN}-x11-dbg ${PN}-x11" | ||
34 | DESCRIPTION_${PN}-x11 = "X11 display terminal for Gnuplot." | ||
35 | SECTION_${PN}-x11 = "x11/scientific" | ||
36 | FILES_${PN}-x11 = "${libexecdir} ${datadir}/applications ${datadir}/pixmaps ${libdir}/X11 " | ||
37 | |||
38 | FILES_${PN} += "${datadir}/texmf" | ||
39 | FILES_${PN}-x11-dbg += "${libexecdir}/gnuplot/*/.debug" | ||
diff --git a/meta-oe/recipes-extended/gnuplot/gnuplot/gnuplot.desktop b/meta-oe/recipes-extended/gnuplot/gnuplot/gnuplot.desktop new file mode 100644 index 0000000000..f67df9e193 --- /dev/null +++ b/meta-oe/recipes-extended/gnuplot/gnuplot/gnuplot.desktop | |||
@@ -0,0 +1,8 @@ | |||
1 | [Desktop Entry] | ||
2 | Name=Gnuplot | ||
3 | Comment=Plot data and function graphs | ||
4 | Exec=x-terminal-emulator -e gnuplot | ||
5 | Terminal=false | ||
6 | Type=Application | ||
7 | Icon=gnuplot | ||
8 | Categories=Science; | ||
diff --git a/meta-oe/recipes-extended/gnuplot/gnuplot/gnuplot.png b/meta-oe/recipes-extended/gnuplot/gnuplot/gnuplot.png new file mode 100644 index 0000000000..054cd9e7c7 --- /dev/null +++ b/meta-oe/recipes-extended/gnuplot/gnuplot/gnuplot.png | |||
Binary files differ | |||
diff --git a/meta-oe/recipes-extended/gnuplot/gnuplot/qtopia.trm b/meta-oe/recipes-extended/gnuplot/gnuplot/qtopia.trm new file mode 100644 index 0000000000..b52f9bb975 --- /dev/null +++ b/meta-oe/recipes-extended/gnuplot/gnuplot/qtopia.trm | |||
@@ -0,0 +1,483 @@ | |||
1 | /* | ||
2 | * $Id: dumb.trm,v 1.16 2004/04/13 17:24:16 broeker Exp $ | ||
3 | * | ||
4 | */ | ||
5 | |||
6 | /* GNUPLOT - qtopia.trm */ | ||
7 | |||
8 | /*[ | ||
9 | * Copyright 1991 - 1993, 1998, 2004 Thomas Williams, Colin Kelley | ||
10 | * | ||
11 | * Permission to use, copy, and distribute this software and its | ||
12 | * documentation for any purpose with or without fee is hereby granted, | ||
13 | * provided that the above copyright notice appear in all copies and | ||
14 | * that both that copyright notice and this permission notice appear | ||
15 | * in supporting documentation. | ||
16 | * | ||
17 | * Permission to modify the software is granted, but not the right to | ||
18 | * distribute the complete modified source code. Modifications are to | ||
19 | * be distributed as patches to the released version. Permission to | ||
20 | * distribute binaries produced by compiling modified sources is granted, | ||
21 | * provided you | ||
22 | * 1. distribute the corresponding source modifications from the | ||
23 | * released version in the form of a patch file along with the binaries, | ||
24 | * 2. add special version identification to distinguish your version | ||
25 | * in addition to the base release version number, | ||
26 | * 3. provide your name and address as the primary contact for the | ||
27 | * support of your modified version, and | ||
28 | * 4. retain our contact information in regard to use of the base | ||
29 | * software. | ||
30 | * Permission to distribute the released version of the source code along | ||
31 | * with corresponding source modifications in the form of a patch file is | ||
32 | * granted with same provisions 2 through 4 for binary distributions. | ||
33 | * | ||
34 | * This software is provided "as is" without express or implied warranty | ||
35 | * to the extent permitted by applicable law. | ||
36 | ]*/ | ||
37 | |||
38 | /* | ||
39 | * This file is included by ../term.c. | ||
40 | * | ||
41 | * This terminal driver supports: | ||
42 | * qtopia terminals | ||
43 | * | ||
44 | * AUTHORS | ||
45 | * Michael Neuroth, 2004-05-16 | ||
46 | * INTERNET: michael.neuroth@freenet.de | ||
47 | * | ||
48 | * send your comments or suggestions to (gnuplot-info@lists.sourceforge.net). | ||
49 | * | ||
50 | */ | ||
51 | #include "driver.h" | ||
52 | |||
53 | #define NO_QTOPIA_ENHANCED_SUPPORT | ||
54 | |||
55 | #ifdef TERM_REGISTER | ||
56 | register_term(qtopia_driver) | ||
57 | #endif | ||
58 | |||
59 | #ifdef TERM_PROTO | ||
60 | TERM_PUBLIC void QTOPIA_options __PROTO((void)); | ||
61 | TERM_PUBLIC void QTOPIA_init __PROTO((void)); | ||
62 | TERM_PUBLIC void QTOPIA_graphics __PROTO((void)); | ||
63 | TERM_PUBLIC void QTOPIA_text __PROTO((void)); | ||
64 | TERM_PUBLIC void QTOPIA_reset __PROTO((void)); | ||
65 | TERM_PUBLIC void QTOPIA_linetype __PROTO((int linetype)); | ||
66 | TERM_PUBLIC void QTOPIA_move __PROTO((unsigned int x, unsigned int y)); | ||
67 | TERM_PUBLIC void QTOPIA_point __PROTO((unsigned int x, unsigned int y, | ||
68 | int point)); | ||
69 | TERM_PUBLIC void QTOPIA_vector __PROTO((unsigned int x, unsigned int y)); | ||
70 | TERM_PUBLIC void QTOPIA_put_text __PROTO((unsigned int x, unsigned int y, | ||
71 | const char *str)); | ||
72 | TERM_PUBLIC void QTOPIA_arrow __PROTO((unsigned int sx, unsigned int sy, | ||
73 | unsigned int ex, unsigned int ey, | ||
74 | int head)); | ||
75 | |||
76 | #define ENHqtopia_put_text NULL | ||
77 | |||
78 | |||
79 | #define QTOPIA_XMAX 4096 | ||
80 | #define QTOPIA_YMAX 4096 | ||
81 | |||
82 | #ifdef ZAURUS | ||
83 | #define QTOPIA_VCHAR (QTOPIA_YMAX/25) | ||
84 | #define QTOPIA_HCHAR (QTOPIA_XMAX/40) | ||
85 | #define QTOPIA_VTIC (QTOPIA_YMAX/50) | ||
86 | #define QTOPIA_HTIC (QTOPIA_XMAX/40) | ||
87 | #else | ||
88 | #define QTOPIA_VCHAR (QTOPIA_YMAX/25) | ||
89 | #define QTOPIA_HCHAR (QTOPIA_XMAX/50) | ||
90 | #define QTOPIA_VTIC (QTOPIA_YMAX/100) | ||
91 | #define QTOPIA_HTIC (QTOPIA_XMAX/150) | ||
92 | #endif | ||
93 | |||
94 | #endif /* TERM_PROTO */ | ||
95 | |||
96 | #ifdef TERM_BODY | ||
97 | |||
98 | /*#include <winsock2.h>*/ | ||
99 | /* needs: ws2_32.lib */ | ||
100 | #ifndef _MSC_VER | ||
101 | #include <sys/types.h> | ||
102 | #include <sys/socket.h> | ||
103 | #include <netinet/in.h> | ||
104 | #include <arpa/inet.h> | ||
105 | #endif | ||
106 | |||
107 | #define QTOPIA_MAX_BUFFER 512 | ||
108 | #define QTOPIA_MAX_DELAY_COUNT 20 /* * 100 ms = 2 s */ | ||
109 | |||
110 | #ifdef _MSC_VER | ||
111 | #define QTOPIA_BAD_SOCKET INVALID_SOCKET /* -1 */ | ||
112 | #define QTOPIA_BAD_CONNECT SOCKET_ERROR | ||
113 | #else | ||
114 | #define QTOPIA_BAD_SOCKET -1 | ||
115 | #define QTOPIA_BAD_CONNECT -1 | ||
116 | #endif | ||
117 | #define QTOPIA_PORT_NO 5050 | ||
118 | |||
119 | static int qtopia_client_socket = QTOPIA_BAD_SOCKET; | ||
120 | static unsigned short qtopia_port_no = QTOPIA_PORT_NO; | ||
121 | static char qtopia_host_name[QTOPIA_MAX_BUFFER+1] = { "localhost" }; | ||
122 | |||
123 | static int OpenClient __PROTO(( int test)); | ||
124 | static void CloseClient(); | ||
125 | |||
126 | static void MySleep( delay ) | ||
127 | int delay; | ||
128 | { | ||
129 | #ifdef _MSC_VER | ||
130 | Sleep( delay ); | ||
131 | #else | ||
132 | usleep( delay ); | ||
133 | #endif | ||
134 | } | ||
135 | |||
136 | static void InitSockets() | ||
137 | { | ||
138 | #ifdef _MSC_VER | ||
139 | WORD wVersionRequested; | ||
140 | WSADATA wsaData; | ||
141 | int err; | ||
142 | |||
143 | wVersionRequested = MAKEWORD( 2, 2 ); | ||
144 | |||
145 | err = WSAStartup( wVersionRequested, &wsaData ); | ||
146 | #endif | ||
147 | } | ||
148 | |||
149 | static void ExitSockets() | ||
150 | { | ||
151 | #ifdef _MSC_VER | ||
152 | WSACleanup(); | ||
153 | #endif | ||
154 | } | ||
155 | |||
156 | static int CheckForQtplot( count ) | ||
157 | int count; | ||
158 | { | ||
159 | /* test (via sockets) if qtplot is allready running */ | ||
160 | if( !OpenClient( 1 ) ) | ||
161 | { | ||
162 | /* give qtplot a litle bit time to start... */ | ||
163 | if( count < QTOPIA_MAX_DELAY_COUNT ) | ||
164 | { | ||
165 | if( count == 0 ) | ||
166 | { | ||
167 | #ifdef _MSC_VER | ||
168 | system( "start qtplot" ); | ||
169 | #else | ||
170 | system( "qtplot&" ); | ||
171 | #endif | ||
172 | } | ||
173 | |||
174 | MySleep(100); | ||
175 | |||
176 | return CheckForQtplot( count+1 ); | ||
177 | } | ||
178 | else | ||
179 | { | ||
180 | return 0; | ||
181 | } | ||
182 | } | ||
183 | else | ||
184 | { | ||
185 | CloseClient(); | ||
186 | |||
187 | return 1; | ||
188 | } | ||
189 | } | ||
190 | |||
191 | static int OpenClient( test ) | ||
192 | int test; | ||
193 | { | ||
194 | int len; | ||
195 | struct sockaddr_in address; | ||
196 | int result; | ||
197 | |||
198 | /* Create a socket for the client. */ | ||
199 | |||
200 | qtopia_client_socket = socket(AF_INET, SOCK_STREAM, 0); | ||
201 | |||
202 | if( qtopia_client_socket != QTOPIA_BAD_SOCKET ) | ||
203 | { | ||
204 | /* Name the socket, as agreed with the server. */ | ||
205 | |||
206 | address.sin_family = AF_INET; | ||
207 | address.sin_addr.s_addr = inet_addr(/*qtopia_host_name*/"127.0.0.1"); /* localhost */ | ||
208 | address.sin_port = htons(qtopia_port_no); | ||
209 | len = sizeof(address); | ||
210 | |||
211 | /* Now connect our socket to the server's socket. */ | ||
212 | |||
213 | result = connect(qtopia_client_socket, (struct sockaddr *)&address, len); | ||
214 | |||
215 | if( result == QTOPIA_BAD_SOCKET ) | ||
216 | { | ||
217 | /* mark this socket as bad */ | ||
218 | |||
219 | close( qtopia_client_socket ); | ||
220 | |||
221 | qtopia_client_socket = QTOPIA_BAD_SOCKET; | ||
222 | |||
223 | if( !test ) | ||
224 | { | ||
225 | fprintf( gpoutfile, "error connecting to server !\n" ); | ||
226 | } | ||
227 | return 0; /* something went wrong */ | ||
228 | } | ||
229 | } | ||
230 | else | ||
231 | { | ||
232 | if( !test ) | ||
233 | { | ||
234 | fprintf( gpoutfile, "error creating socket !\n" ); | ||
235 | } | ||
236 | return 0; /* something went wrong */ | ||
237 | } | ||
238 | |||
239 | return 1; /* everything ist ok ! */ | ||
240 | } | ||
241 | |||
242 | static void CloseClient() | ||
243 | { | ||
244 | close( qtopia_client_socket ); | ||
245 | } | ||
246 | |||
247 | static int IsClientOk() | ||
248 | { | ||
249 | return qtopia_client_socket != QTOPIA_BAD_SOCKET; | ||
250 | } | ||
251 | |||
252 | static void SendDataToSocket( sLine ) | ||
253 | const char * sLine; | ||
254 | { | ||
255 | if( IsClientOk() ) | ||
256 | { | ||
257 | int send_count; | ||
258 | |||
259 | send_count = send( qtopia_client_socket, sLine, strlen( sLine ), 0 ); | ||
260 | |||
261 | if( send_count <= 0 ) | ||
262 | { | ||
263 | fprintf( gpoutfile, "error writing to socket str=%s!\n", sLine ); | ||
264 | } | ||
265 | /* | ||
266 | else | ||
267 | { | ||
268 | fprintf( gpoutfile, "wrote %d bytes\n", send_count ); | ||
269 | } | ||
270 | */ | ||
271 | } | ||
272 | else | ||
273 | { | ||
274 | /* for testing... */ | ||
275 | /*fprintf( gpoutfile, sLine );*/ | ||
276 | } | ||
277 | } | ||
278 | |||
279 | /* ************************************************** */ | ||
280 | |||
281 | enum QTOPIA_id { QTOPIA_PORT, QTOPIA_HOST, QTOPIA_OTHER }; | ||
282 | |||
283 | static struct gen_table QTOPIA_opts[] = | ||
284 | { | ||
285 | { "po$rt", QTOPIA_PORT }, | ||
286 | { "ho$st", QTOPIA_HOST }, | ||
287 | { NULL, QTOPIA_OTHER } | ||
288 | }; | ||
289 | |||
290 | TERM_PUBLIC void | ||
291 | QTOPIA_options() | ||
292 | { | ||
293 | /* this is not for the qtopia terminal ! */ | ||
294 | /*SendDataToSocket( "qtd options\n" );*/ | ||
295 | |||
296 | int x, y; | ||
297 | struct value a; | ||
298 | |||
299 | while (!END_OF_COMMAND) | ||
300 | { | ||
301 | switch(lookup_table(&QTOPIA_opts[0],c_token)) | ||
302 | { | ||
303 | case QTOPIA_PORT: | ||
304 | c_token++; | ||
305 | if (END_OF_COMMAND) | ||
306 | int_error(c_token, "expecting port number"); | ||
307 | qtopia_port_no = (int) real(const_express(&a)); | ||
308 | break; | ||
309 | case QTOPIA_HOST: | ||
310 | c_token++; | ||
311 | if (END_OF_COMMAND) | ||
312 | int_error(c_token, "expecting host name"); | ||
313 | if (isstring(c_token)) | ||
314 | quote_str( qtopia_host_name, c_token, sizeof(qtopia_host_name) ); | ||
315 | else | ||
316 | copy_str( qtopia_host_name, c_token, sizeof(qtopia_host_name) ); | ||
317 | c_token++; | ||
318 | break; | ||
319 | case QTOPIA_OTHER: | ||
320 | default: | ||
321 | break; | ||
322 | } | ||
323 | } | ||
324 | |||
325 | sprintf(term_options, "host=%s port=%d",qtopia_host_name,qtopia_port_no); | ||
326 | } | ||
327 | |||
328 | |||
329 | TERM_PUBLIC void | ||
330 | QTOPIA_init() | ||
331 | { | ||
332 | /* initialize lib (if necassary) */ | ||
333 | InitSockets(); | ||
334 | CheckForQtplot( 0 ); | ||
335 | OpenClient( 0 ); | ||
336 | |||
337 | SendDataToSocket( "qtd init\n" ); | ||
338 | } | ||
339 | |||
340 | |||
341 | TERM_PUBLIC void | ||
342 | QTOPIA_graphics() | ||
343 | { | ||
344 | SendDataToSocket( "qtd graphics\n" ); | ||
345 | } | ||
346 | |||
347 | TERM_PUBLIC void | ||
348 | QTOPIA_text() | ||
349 | { | ||
350 | SendDataToSocket( "qtd text\n" ); | ||
351 | } | ||
352 | |||
353 | |||
354 | TERM_PUBLIC void | ||
355 | QTOPIA_reset() | ||
356 | { | ||
357 | SendDataToSocket( "qtd reset\n" ); | ||
358 | |||
359 | /* give the qtplot a litle bit time to shutdown */ | ||
360 | MySleep(100); | ||
361 | |||
362 | CloseClient(); | ||
363 | ExitSockets(); | ||
364 | } | ||
365 | |||
366 | |||
367 | TERM_PUBLIC void | ||
368 | QTOPIA_linetype(linetype) | ||
369 | int linetype; | ||
370 | { | ||
371 | char sBuffer[QTOPIA_MAX_BUFFER]; | ||
372 | |||
373 | sprintf( sBuffer, "qtd linetype type=%d\n",linetype ); | ||
374 | |||
375 | SendDataToSocket( sBuffer ); | ||
376 | } | ||
377 | |||
378 | |||
379 | TERM_PUBLIC void | ||
380 | QTOPIA_move(x, y) | ||
381 | unsigned int x, y; | ||
382 | { | ||
383 | char sBuffer[QTOPIA_MAX_BUFFER]; | ||
384 | |||
385 | sprintf( sBuffer, "qtd move x=%d y=%d\n",x,y ); | ||
386 | |||
387 | SendDataToSocket( sBuffer ); | ||
388 | } | ||
389 | |||
390 | |||
391 | TERM_PUBLIC void | ||
392 | QTOPIA_point(x, y, point) | ||
393 | unsigned int x, y; | ||
394 | int point; | ||
395 | { | ||
396 | char sBuffer[QTOPIA_MAX_BUFFER]; | ||
397 | |||
398 | sprintf( sBuffer, "qtd point x=%d y=%d point=%d\n",x,y,point ); | ||
399 | |||
400 | SendDataToSocket( sBuffer ); | ||
401 | } | ||
402 | |||
403 | |||
404 | TERM_PUBLIC void | ||
405 | QTOPIA_vector(_x, _y) | ||
406 | unsigned int _x, _y; | ||
407 | { | ||
408 | char sBuffer[QTOPIA_MAX_BUFFER]; | ||
409 | |||
410 | sprintf( sBuffer, "qtd vector x=%d y=%d\n",_x,_y ); | ||
411 | |||
412 | SendDataToSocket( sBuffer ); | ||
413 | } | ||
414 | |||
415 | |||
416 | TERM_PUBLIC void | ||
417 | QTOPIA_put_text(x, y, str) | ||
418 | unsigned int x, y; | ||
419 | const char *str; | ||
420 | { | ||
421 | char sBuffer[QTOPIA_MAX_BUFFER]; | ||
422 | |||
423 | sprintf( sBuffer, "qtd put_text x=%d y=%d str=%s\n",x,y,str ); | ||
424 | |||
425 | SendDataToSocket( sBuffer ); | ||
426 | } | ||
427 | |||
428 | /* not suported yet ! */ | ||
429 | TERM_PUBLIC void | ||
430 | QTOPIA_arrow(sx, sy, ex, ey, head) | ||
431 | unsigned int sx, sy, ex, ey; | ||
432 | int head; /* ignored */ | ||
433 | { | ||
434 | char sBuffer[QTOPIA_MAX_BUFFER]; | ||
435 | |||
436 | sprintf( sBuffer, "qtd arrow sx=%d sy=%d ex=%d ey=%d head=%d\n",sx,sy,ex,ey,head ); | ||
437 | |||
438 | SendDataToSocket( sBuffer ); | ||
439 | } | ||
440 | |||
441 | |||
442 | #endif /* TERM_BODY */ | ||
443 | |||
444 | #ifdef TERM_TABLE | ||
445 | TERM_TABLE_START(qtopia_driver) | ||
446 | "qtopia", "qtopia or Qt", | ||
447 | QTOPIA_XMAX, QTOPIA_YMAX, QTOPIA_VCHAR, QTOPIA_HCHAR, | ||
448 | QTOPIA_VTIC, QTOPIA_HTIC, QTOPIA_options, QTOPIA_init, QTOPIA_reset, | ||
449 | QTOPIA_text, null_scale, QTOPIA_graphics, QTOPIA_move, QTOPIA_vector, | ||
450 | QTOPIA_linetype, QTOPIA_put_text, null_text_angle, | ||
451 | null_justify_text, QTOPIA_point, /*QTOPIA_arrow*/0, set_font_null, | ||
452 | 0, /* pointsize */ | ||
453 | TERM_CAN_MULTIPLOT, | ||
454 | NULL, NULL, NULL, NULL | ||
455 | #ifdef USE_MOUSE | ||
456 | , NULL, NULL, NULL, NULL, NULL | ||
457 | #endif | ||
458 | #ifdef PM3D | ||
459 | , NULL, NULL, NULL, NULL | ||
460 | #endif | ||
461 | TERM_TABLE_END(qtopia_driver) | ||
462 | |||
463 | #undef LAST_TERM | ||
464 | #define LAST_TERM qtopia_driver | ||
465 | |||
466 | #endif /* TERM_TABLE */ | ||
467 | |||
468 | #ifdef TERM_HELP | ||
469 | START_HELP(qtopia) | ||
470 | "1 qtopia", | ||
471 | "?commands set terminal qtopia", | ||
472 | "?set terminal qtopia", | ||
473 | "?set term qtopia", | ||
474 | "?terminal qtopia", | ||
475 | "?term qtopia", | ||
476 | "?qtopia", | ||
477 | " The `qtopia` terminal driver has no additional options.", | ||
478 | "", | ||
479 | " Syntax:", | ||
480 | " set terminal qtopia", | ||
481 | "" | ||
482 | END_HELP(qtopia) | ||
483 | #endif /* TERM_HELP */ | ||
diff --git a/meta-oe/recipes-extended/gnuplot/gnuplot_4.6.5.bb b/meta-oe/recipes-extended/gnuplot/gnuplot_4.6.5.bb new file mode 100644 index 0000000000..8a5bca964d --- /dev/null +++ b/meta-oe/recipes-extended/gnuplot/gnuplot_4.6.5.bb | |||
@@ -0,0 +1,14 @@ | |||
1 | require gnuplot.inc | ||
2 | |||
3 | SRC_URI = "${SOURCEFORGE_MIRROR}/gnuplot/${PN}-${PV}.tar.gz;name=archive \ | ||
4 | http://www.mneuroth.de/privat/zaurus/qtplot-0.2.tar.gz;name=qtplot \ | ||
5 | file://subdirs.patch \ | ||
6 | file://lua-loadlibs-configure-in-fix.patch \ | ||
7 | file://gnuplot.desktop \ | ||
8 | file://gnuplot.png \ | ||
9 | " | ||
10 | |||
11 | SRC_URI[archive.md5sum] = "9a476b21f74bd99c876f1509d731a0f9" | ||
12 | SRC_URI[archive.sha256sum] = "e550f030c7d04570e89c3d4e3f6e82296816508419c86ab46c4dd73156519a2d" | ||
13 | SRC_URI[qtplot.md5sum] = "0a481885a496092c77eb4017540b5cf6" | ||
14 | SRC_URI[qtplot.sha256sum] = "6df317183ff62cc82f3dcf88207a267cd6478cb5147f55d7530c94f1ad5f4132" | ||
diff --git a/meta-oe/recipes-extended/hexedit/hexedit/0001-don-t-strip-when-installing.patch b/meta-oe/recipes-extended/hexedit/hexedit/0001-don-t-strip-when-installing.patch new file mode 100644 index 0000000000..a384b05cef --- /dev/null +++ b/meta-oe/recipes-extended/hexedit/hexedit/0001-don-t-strip-when-installing.patch | |||
@@ -0,0 +1,30 @@ | |||
1 | From cc67246ca6839e5b3f6a286f10ed24c225b77a5e Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com> | ||
3 | Date: Thu, 4 Jul 2013 12:34:32 +0200 | ||
4 | Subject: [PATCH] don't strip when installing | ||
5 | MIME-Version: 1.0 | ||
6 | Content-Type: text/plain; charset=UTF-8 | ||
7 | Content-Transfer-Encoding: 8bit | ||
8 | |||
9 | Signed-off-by: Eric Bénard <eric@eukrea.com> | ||
10 | |||
11 | Upstream-Status: Inappropriate [configuration] | ||
12 | --- | ||
13 | Makefile.in | 2 +- | ||
14 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
15 | |||
16 | diff --git a/Makefile.in b/Makefile.in | ||
17 | index 159463e..735cc72 100644 | ||
18 | --- a/Makefile.in | ||
19 | +++ b/Makefile.in | ||
20 | @@ -42,6 +42,6 @@ distclean: clean | ||
21 | |||
22 | install: $(PRODUCT) | ||
23 | $(INSTALL) -d -m 755 $(DESTDIR)$(bindir) | ||
24 | - $(INSTALL) -s -m 755 $(PRODUCT) $(DESTDIR)$(bindir) | ||
25 | + $(INSTALL) -m 755 $(PRODUCT) $(DESTDIR)$(bindir) | ||
26 | $(INSTALL) -d -m 755 $(DESTDIR)$(mandir)/man1 | ||
27 | $(INSTALL) -m 644 $(PRODUCT).1 $(DESTDIR)$(mandir)/man1 | ||
28 | -- | ||
29 | 1.7.10.4 | ||
30 | |||
diff --git a/meta-oe/recipes-extended/hexedit/hexedit_1.2.13.bb b/meta-oe/recipes-extended/hexedit/hexedit_1.2.13.bb new file mode 100644 index 0000000000..d0658db58c --- /dev/null +++ b/meta-oe/recipes-extended/hexedit/hexedit_1.2.13.bb | |||
@@ -0,0 +1,17 @@ | |||
1 | SUMMARY = "view and edit files in hexadecimal or in ASCII" | ||
2 | HOMEPAGE = "http://rigaux.org/hexedit.html" | ||
3 | SECTION = "console/utils" | ||
4 | LICENSE = "GPLv2+" | ||
5 | DEPENDS = "ncurses" | ||
6 | |||
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" | ||
8 | |||
9 | SRC_URI = "http://rigaux.org/${PN}-${PV}.src.tgz \ | ||
10 | file://0001-don-t-strip-when-installing.patch " | ||
11 | |||
12 | SRC_URI[md5sum] = "a5af1378d028512a9cad27a5ba3e15f9" | ||
13 | SRC_URI[sha256sum] = "6a126da30a77f5c0b08038aa7a881d910e3b65d13767fb54c58c983963b88dd7" | ||
14 | |||
15 | inherit autotools | ||
16 | |||
17 | S = "${WORKDIR}/${PN}" | ||
diff --git a/meta-oe/recipes-extended/hplip/hplip-3.12.6/cups-1.6.patch b/meta-oe/recipes-extended/hplip/hplip-3.12.6/cups-1.6.patch new file mode 100644 index 0000000000..7df01aab33 --- /dev/null +++ b/meta-oe/recipes-extended/hplip/hplip-3.12.6/cups-1.6.patch | |||
@@ -0,0 +1,395 @@ | |||
1 | Imported from gentoo: | ||
2 | https://bugs.gentoo.org/show_bug.cgi?id=428672 | ||
3 | |||
4 | diff -Naur hplip-3.12.6_old/prnt/cupsext/cupsext.c hplip-3.12.6/prnt/cupsext/cupsext.c | ||
5 | --- hplip-3.12.6_old/prnt/cupsext/cupsext.c 2012-08-04 09:18:18.388330038 +0200 | ||
6 | +++ hplip-3.12.6/prnt/cupsext/cupsext.c 2012-08-04 09:18:27.855181327 +0200 | ||
7 | @@ -87,6 +87,46 @@ | ||
8 | #define PY_SSIZE_T_MIN INT_MIN | ||
9 | #endif | ||
10 | |||
11 | +#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5) | ||
12 | +#define HAVE_CUPS_1_6 1 | ||
13 | +#endif | ||
14 | + | ||
15 | +#ifndef HAVE_CUPS_1_6 | ||
16 | +#define ippGetCount(attr) attr->num_values | ||
17 | +#define ippGetGroupTag(attr) attr->group_tag | ||
18 | +#define ippGetValueTag(attr) attr->value_tag | ||
19 | +#define ippGetName(attr) attr->name | ||
20 | +#define ippGetBoolean(attr, element) attr->values[element].boolean | ||
21 | +#define ippGetInteger(attr, element) attr->values[element].integer | ||
22 | +#define ippGetStatusCode(ipp) ipp->request.status.status_code | ||
23 | +#define ippGetString(attr, element, language) attr->values[element].string.text | ||
24 | + | ||
25 | +static ipp_attribute_t * ippFirstAttribute( ipp_t *ipp ) | ||
26 | +{ | ||
27 | + if (!ipp) | ||
28 | + return (NULL); | ||
29 | + return (ipp->current = ipp->attrs); | ||
30 | +} | ||
31 | + | ||
32 | +static ipp_attribute_t * ippNextAttribute( ipp_t *ipp ) | ||
33 | +{ | ||
34 | + if (!ipp || !ipp->current) | ||
35 | + return (NULL); | ||
36 | + return (ipp->current = ipp->current->next); | ||
37 | +} | ||
38 | + | ||
39 | +static int ippSetOperation( ipp_t *ipp, ipp_op_t op ) | ||
40 | +{ | ||
41 | + ipp->request.op.operation_id = op; | ||
42 | + return (1); | ||
43 | +} | ||
44 | + | ||
45 | +static int ippSetRequestId( ipp_t *ipp, int request_id ) | ||
46 | +{ | ||
47 | + ipp->request.any.request_id = request_id; | ||
48 | + return (1); | ||
49 | +} | ||
50 | +#endif | ||
51 | |||
52 | int g_num_options = 0; | ||
53 | cups_option_t * g_options; | ||
54 | @@ -333,8 +373,8 @@ | ||
55 | request = ippNew(); | ||
56 | language = cupsLangDefault(); | ||
57 | |||
58 | - request->request.op.operation_id = CUPS_GET_PRINTERS; | ||
59 | - request->request.any.request_id = 1; | ||
60 | + ippSetOperation( request, CUPS_GET_PRINTERS ); | ||
61 | + ippSetRequestId ( request, 1); | ||
62 | |||
63 | ippAddString( request, IPP_TAG_OPERATION, IPP_TAG_CHARSET, | ||
64 | "attributes-charset", NULL, cupsLangEncoding( language ) ); | ||
65 | @@ -378,10 +418,10 @@ | ||
66 | ipp_pstate_t state; | ||
67 | int i = 0; | ||
68 | |||
69 | - for ( attr = response->attrs; attr != NULL; attr = attr->next ) | ||
70 | + for ( attr = ippFirstAttribute( response ); attr != NULL; attr = ippNextAttribute( response ) ) | ||
71 | { | ||
72 | - while ( attr != NULL && attr->group_tag != IPP_TAG_PRINTER ) | ||
73 | - attr = attr->next; | ||
74 | + while ( attr != NULL && ippGetGroupTag( attr ) != IPP_TAG_PRINTER ) | ||
75 | + attr = ippNextAttribute( response ); | ||
76 | |||
77 | if ( attr == NULL ) | ||
78 | break; | ||
79 | @@ -390,41 +430,41 @@ | ||
80 | state = IPP_PRINTER_IDLE; | ||
81 | accepting = 0; | ||
82 | |||
83 | - while ( attr != NULL && attr->group_tag == IPP_TAG_PRINTER ) | ||
84 | + while ( attr != NULL && ippGetGroupTag( attr ) == IPP_TAG_PRINTER ) | ||
85 | { | ||
86 | - if ( strcmp( attr->name, "printer-name" ) == 0 && | ||
87 | - attr->value_tag == IPP_TAG_NAME ) | ||
88 | - name = attr->values[ 0 ].string.text; | ||
89 | - | ||
90 | - else if ( strcmp( attr->name, "device-uri" ) == 0 && | ||
91 | - attr->value_tag == IPP_TAG_URI ) | ||
92 | - device_uri = attr->values[ 0 ].string.text; | ||
93 | - | ||
94 | - else if ( strcmp( attr->name, "printer-uri-supported" ) == 0 && | ||
95 | - attr->value_tag == IPP_TAG_URI ) | ||
96 | - printer_uri = attr->values[ 0 ].string.text; | ||
97 | - | ||
98 | - else if ( strcmp( attr->name, "printer-info" ) == 0 && | ||
99 | - attr->value_tag == IPP_TAG_TEXT ) | ||
100 | - info = attr->values[ 0 ].string.text; | ||
101 | - | ||
102 | - else if ( strcmp( attr->name, "printer-location" ) == 0 && | ||
103 | - attr->value_tag == IPP_TAG_TEXT ) | ||
104 | - location = attr->values[ 0 ].string.text; | ||
105 | - | ||
106 | - else if ( strcmp( attr->name, "printer-make-and-model" ) == 0 && | ||
107 | - attr->value_tag == IPP_TAG_TEXT ) | ||
108 | - make_model = attr->values[ 0 ].string.text; | ||
109 | - | ||
110 | - else if ( strcmp( attr->name, "printer-state" ) == 0 && | ||
111 | - attr->value_tag == IPP_TAG_ENUM ) | ||
112 | - state = ( ipp_pstate_t ) attr->values[ 0 ].integer; | ||
113 | - | ||
114 | - else if (!strcmp(attr->name, "printer-is-accepting-jobs") && | ||
115 | - attr->value_tag == IPP_TAG_BOOLEAN) | ||
116 | - accepting = attr->values[ 0 ].boolean; | ||
117 | + if ( strcmp( ippGetName( attr ), "printer-name" ) == 0 && | ||
118 | + ippGetValueTag( attr ) == IPP_TAG_NAME ) | ||
119 | + name = ippGetString( attr, 0, NULL ); | ||
120 | + | ||
121 | + else if ( strcmp( ippGetName( attr ), "device-uri" ) == 0 && | ||
122 | + ippGetValueTag( attr ) == IPP_TAG_URI ) | ||
123 | + device_uri = ippGetString( attr, 0, NULL ); | ||
124 | + | ||
125 | + else if ( strcmp( ippGetName( attr ), "printer-uri-supported" ) == 0 && | ||
126 | + ippGetValueTag( attr ) == IPP_TAG_URI ) | ||
127 | + printer_uri = ippGetString( attr, 0, NULL ); | ||
128 | + | ||
129 | + else if ( strcmp( ippGetName( attr ), "printer-info" ) == 0 && | ||
130 | + ippGetValueTag( attr ) == IPP_TAG_TEXT ) | ||
131 | + info = ippGetString( attr, 0, NULL ); | ||
132 | + | ||
133 | + else if ( strcmp( ippGetName( attr ), "printer-location" ) == 0 && | ||
134 | + ippGetValueTag( attr ) == IPP_TAG_TEXT ) | ||
135 | + location = ippGetString( attr, 0, NULL ); | ||
136 | + | ||
137 | + else if ( strcmp( ippGetName( attr ), "printer-make-and-model" ) == 0 && | ||
138 | + ippGetValueTag( attr ) == IPP_TAG_TEXT ) | ||
139 | + make_model = ippGetString( attr, 0, NULL ); | ||
140 | + | ||
141 | + else if ( strcmp( ippGetName( attr ), "printer-state" ) == 0 && | ||
142 | + ippGetValueTag( attr ) == IPP_TAG_ENUM ) | ||
143 | + state = ( ipp_pstate_t ) ippGetInteger( attr, 0 ); | ||
144 | + | ||
145 | + else if (!strcmp(ippGetName( attr ), "printer-is-accepting-jobs") && | ||
146 | + ippGetValueTag( attr ) == IPP_TAG_BOOLEAN) | ||
147 | + accepting = ippGetBoolean( attr, 0 ); | ||
148 | |||
149 | - attr = attr->next; | ||
150 | + attr = ippNextAttribute( response ); | ||
151 | } | ||
152 | |||
153 | if ( device_uri == NULL ) | ||
154 | @@ -522,8 +562,8 @@ | ||
155 | request = ippNew(); | ||
156 | language = cupsLangDefault(); | ||
157 | |||
158 | - request->request.op.operation_id = CUPS_ADD_PRINTER; | ||
159 | - request->request.any.request_id = 1; | ||
160 | + ippSetOperation( request, CUPS_ADD_PRINTER ); | ||
161 | + ippSetRequestId ( request, 1 ); | ||
162 | |||
163 | ippAddString( request, IPP_TAG_OPERATION, IPP_TAG_CHARSET, | ||
164 | "attributes-charset", NULL, cupsLangEncoding( language ) ); | ||
165 | @@ -568,7 +608,7 @@ | ||
166 | } | ||
167 | else | ||
168 | { | ||
169 | - status = response->request.status.status_code; | ||
170 | + status = ippGetStatusCode( response ); | ||
171 | //ippDelete( response ); | ||
172 | r = 1; | ||
173 | } | ||
174 | @@ -631,8 +671,8 @@ | ||
175 | */ | ||
176 | request = ippNew(); | ||
177 | |||
178 | - request->request.op.operation_id = CUPS_DELETE_PRINTER; | ||
179 | - request->request.op.request_id = 1; | ||
180 | + ippSetOperation( request, CUPS_DELETE_PRINTER ); | ||
181 | + ippSetRequestId ( request, 1 ); | ||
182 | |||
183 | language = cupsLangDefault(); | ||
184 | |||
185 | @@ -650,7 +690,7 @@ | ||
186 | */ | ||
187 | response = cupsDoRequest( http, request, "/admin/" ); | ||
188 | |||
189 | - if ( ( response != NULL ) && ( response->request.status.status_code <= IPP_OK_CONFLICT ) ) | ||
190 | + if ( ( response != NULL ) && ( ippGetStatusCode( response ) <= IPP_OK_CONFLICT ) ) | ||
191 | { | ||
192 | r = 1; | ||
193 | } | ||
194 | @@ -721,8 +761,8 @@ | ||
195 | |||
196 | request = ippNew(); | ||
197 | |||
198 | - request->request.op.operation_id = CUPS_SET_DEFAULT; | ||
199 | - request->request.op.request_id = 1; | ||
200 | + ippSetOperation( request, CUPS_SET_DEFAULT ); | ||
201 | + ippSetRequestId ( request, 1 ); | ||
202 | |||
203 | language = cupsLangDefault(); | ||
204 | |||
205 | @@ -743,7 +783,7 @@ | ||
206 | |||
207 | response = cupsDoRequest( http, request, "/admin/" ); | ||
208 | |||
209 | - if ( ( response != NULL ) && ( response->request.status.status_code <= IPP_OK_CONFLICT ) ) | ||
210 | + if ( ( response != NULL ) && ( ippGetStatusCode( response ) <= IPP_OK_CONFLICT ) ) | ||
211 | { | ||
212 | r = 1; | ||
213 | } | ||
214 | @@ -797,8 +837,8 @@ | ||
215 | |||
216 | request = ippNew(); | ||
217 | |||
218 | - request->request.op.operation_id = op; | ||
219 | - request->request.op.request_id = 1; | ||
220 | + ippSetOperation( request, op ); | ||
221 | + ippSetRequestId ( request, 1 ); | ||
222 | |||
223 | language = cupsLangDefault(); | ||
224 | |||
225 | @@ -822,7 +862,7 @@ | ||
226 | |||
227 | response = cupsDoRequest(http, request, "/admin/"); | ||
228 | |||
229 | - if (( response != NULL ) && (response->request.status.status_code <= IPP_OK_CONFLICT)) | ||
230 | + if (( response != NULL ) && (ippGetStatusCode( response ) <= IPP_OK_CONFLICT)) | ||
231 | { | ||
232 | r = 1; | ||
233 | } | ||
234 | @@ -837,7 +877,7 @@ | ||
235 | if ( response != NULL ) | ||
236 | ippDelete( response ); | ||
237 | |||
238 | - return Py_BuildValue( "i", r );; | ||
239 | + return Py_BuildValue( "i", r ); | ||
240 | } | ||
241 | |||
242 | |||
243 | @@ -1116,8 +1156,8 @@ | ||
244 | |||
245 | request = ippNew(); | ||
246 | |||
247 | - request->request.op.operation_id = CUPS_GET_PPDS; | ||
248 | - request->request.op.request_id = 1; | ||
249 | + ippSetOperation( request, CUPS_GET_PPDS ); | ||
250 | + ippSetRequestId ( request, 1 ); | ||
251 | |||
252 | language = cupsLangDefault(); | ||
253 | |||
254 | @@ -1143,43 +1183,43 @@ | ||
255 | if ((response = cupsDoRequest(http, request, "/")) != NULL) | ||
256 | { | ||
257 | |||
258 | - for (attr = response->attrs; attr; attr = attr->next) | ||
259 | + for (attr = ippFirstAttribute( response ); attr; attr = ippNextAttribute( response )) | ||
260 | { | ||
261 | PyObject *dict; | ||
262 | char *ppdname = NULL; | ||
263 | |||
264 | - while (attr && attr->group_tag != IPP_TAG_PRINTER) | ||
265 | - attr = attr->next; | ||
266 | + while (attr && ippGetGroupTag( attr ) != IPP_TAG_PRINTER) | ||
267 | + attr = ippNextAttribute( response ); | ||
268 | |||
269 | if (!attr) | ||
270 | break; | ||
271 | |||
272 | dict = PyDict_New (); | ||
273 | |||
274 | - for (; attr && attr->group_tag == IPP_TAG_PRINTER; attr = attr->next) | ||
275 | + for (; attr && ippGetGroupTag( attr ) == IPP_TAG_PRINTER; attr = ippNextAttribute( response )) | ||
276 | { | ||
277 | PyObject *val = NULL; | ||
278 | |||
279 | - if (!strcmp (attr->name, "ppd-name") && attr->value_tag == IPP_TAG_NAME) | ||
280 | + if (!strcmp (ippGetName( attr ), "ppd-name") && ippGetValueTag( attr ) == IPP_TAG_NAME) | ||
281 | { | ||
282 | - ppdname = attr->values[0].string.text; | ||
283 | + ppdname = ippGetString( attr, 0, NULL ); | ||
284 | |||
285 | //sprintf( buf, "print '%s'", ppdname); | ||
286 | //PyRun_SimpleString( buf ); | ||
287 | } | ||
288 | |||
289 | - else if (attr->value_tag == IPP_TAG_TEXT || attr->value_tag == IPP_TAG_NAME || attr->value_tag == IPP_TAG_KEYWORD) | ||
290 | - //else if ((!strcmp (attr->name, "ppd-natural-language") && attr->value_tag == IPP_TAG_LANGUAGE) || | ||
291 | - // (!strcmp (attr->name, "ppd-make-and-model") && attr->value_tag == IPP_TAG_TEXT) || | ||
292 | - // (!strcmp (attr->name, "ppd-make") && attr->value_tag == IPP_TAG_TEXT) || | ||
293 | - // (!strcmp (attr->name, "ppd-device-id") && attr->value_tag == IPP_TAG_TEXT)) | ||
294 | + else if (ippGetValueTag( attr ) == IPP_TAG_TEXT || ippGetValueTag( attr ) == IPP_TAG_NAME || ippGetValueTag( attr ) == IPP_TAG_KEYWORD) | ||
295 | + //else if ((!strcmp (ippGetName( attr ), "ppd-natural-language") && ippGetValueTag( attr ) == IPP_TAG_LANGUAGE) || | ||
296 | + // (!strcmp (ippGetName( attr ), "ppd-make-and-model") && ippGetValueTag( attr ) == IPP_TAG_TEXT) || | ||
297 | + // (!strcmp (ippGetName( attr ), "ppd-make") && ippGetValueTag( attr ) == IPP_TAG_TEXT) || | ||
298 | + // (!strcmp (ippGetName( attr ), "ppd-device-id") && ippGetValueTag( attr ) == IPP_TAG_TEXT)) | ||
299 | { | ||
300 | - val = PyObj_from_UTF8(attr->values[0].string.text); | ||
301 | + val = PyObj_from_UTF8(ippGetString( attr, 0, NULL )); | ||
302 | } | ||
303 | |||
304 | if (val) | ||
305 | { | ||
306 | - PyDict_SetItemString (dict, attr->name, val); | ||
307 | + PyDict_SetItemString (dict, ippGetName( attr ), val); | ||
308 | Py_DECREF (val); | ||
309 | } | ||
310 | } | ||
311 | diff -Naur hplip-3.12.6_old/scan/sane/hpaio.c hplip-3.12.6/scan/sane/hpaio.c | ||
312 | --- hplip-3.12.6_old/scan/sane/hpaio.c 2012-08-04 09:18:21.458389913 +0200 | ||
313 | +++ hplip-3.12.6/scan/sane/hpaio.c 2012-08-04 09:18:27.875181720 +0200 | ||
314 | @@ -47,6 +47,43 @@ | ||
315 | #define DEBUG_DECLARE_ONLY | ||
316 | #include "sanei_debug.h" | ||
317 | |||
318 | +#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5) | ||
319 | +#define HAVE_CUPS_1_6 1 | ||
320 | +#endif | ||
321 | + | ||
322 | +#ifndef HAVE_CUPS_1_6 | ||
323 | +#define ippGetGroupTag(attr) attr->group_tag | ||
324 | +#define ippGetValueTag(attr) attr->value_tag | ||
325 | +#define ippGetName(attr) attr->name | ||
326 | +#define ippGetString(attr, element, language) attr->values[element].string.text | ||
327 | + | ||
328 | +static ipp_attribute_t * ippFirstAttribute( ipp_t *ipp ) | ||
329 | +{ | ||
330 | + if (!ipp) | ||
331 | + return (NULL); | ||
332 | + return (ipp->current = ipp->attrs); | ||
333 | +} | ||
334 | + | ||
335 | +static ipp_attribute_t * ippNextAttribute( ipp_t *ipp ) | ||
336 | +{ | ||
337 | + if (!ipp || !ipp->current) | ||
338 | + return (NULL); | ||
339 | + return (ipp->current = ipp->current->next); | ||
340 | +} | ||
341 | + | ||
342 | +static int ippSetOperation( ipp_t *ipp, ipp_op_t op ) | ||
343 | +{ | ||
344 | + ipp->request.op.operation_id = op; | ||
345 | + return (1); | ||
346 | +} | ||
347 | + | ||
348 | +static int ippSetRequestId( ipp_t *ipp, int request_id ) | ||
349 | +{ | ||
350 | + ipp->request.any.request_id = request_id; | ||
351 | + return (1); | ||
352 | +} | ||
353 | +#endif | ||
354 | + | ||
355 | static SANE_Device **DeviceList = NULL; | ||
356 | |||
357 | static int AddDeviceList(char *uri, char *model, SANE_Device ***pd) | ||
358 | @@ -186,8 +223,8 @@ | ||
359 | /* Assemble the IPP request */ | ||
360 | request = ippNew(); | ||
361 | |||
362 | - request->request.op.operation_id = CUPS_GET_PRINTERS; | ||
363 | - request->request.any.request_id = 1; | ||
364 | + ippSetOperation( request, CUPS_GET_PRINTERS ); | ||
365 | + ippSetRequestId( request, 1 ); | ||
366 | |||
367 | ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_CHARSET, "attributes-charset", NULL, "utf-8"); | ||
368 | ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_LANGUAGE, "attributes-natural-language", NULL, "en"); | ||
369 | @@ -197,20 +234,20 @@ | ||
370 | if ((response = cupsDoRequest(http, request, "/")) == NULL) | ||
371 | goto bugout; | ||
372 | |||
373 | - for (attr = response->attrs; attr != NULL; attr = attr->next) | ||
374 | + for (attr = ippFirstAttribute ( response ); attr != NULL; attr = ippNextAttribute( response )) | ||
375 | { | ||
376 | /* Skip leading attributes until we hit a printer. */ | ||
377 | - while (attr != NULL && attr->group_tag != IPP_TAG_PRINTER) | ||
378 | - attr = attr->next; | ||
379 | + while (attr != NULL && ippGetGroupTag( attr ) != IPP_TAG_PRINTER) | ||
380 | + attr = ippNextAttribute( response ); | ||
381 | |||
382 | if (attr == NULL) | ||
383 | break; | ||
384 | |||
385 | - while (attr != NULL && attr->group_tag == IPP_TAG_PRINTER) | ||
386 | + while (attr != NULL && ippGetGroupTag( attr ) == IPP_TAG_PRINTER) | ||
387 | { | ||
388 | - if (strcmp(attr->name, "device-uri") == 0 && attr->value_tag == IPP_TAG_URI && AddCupsList(attr->values[0].string.text, printer) == 0) | ||
389 | + if (strcmp(ippGetName( attr ), "device-uri") == 0 && ippGetValueTag( attr ) == IPP_TAG_URI && AddCupsList(ippGetString( attr, 0, NULL ), printer) == 0) | ||
390 | cnt++; | ||
391 | - attr = attr->next; | ||
392 | + attr = ippNextAttribute( response ); | ||
393 | } | ||
394 | |||
395 | if (attr == NULL) | ||
diff --git a/meta-oe/recipes-extended/hplip/hplip-3.12.6/fix-libusb-paths.patch b/meta-oe/recipes-extended/hplip/hplip-3.12.6/fix-libusb-paths.patch new file mode 100644 index 0000000000..b347f831cb --- /dev/null +++ b/meta-oe/recipes-extended/hplip/hplip-3.12.6/fix-libusb-paths.patch | |||
@@ -0,0 +1,35 @@ | |||
1 | Upstream-Status: Inappropriate [configuration] | ||
2 | |||
3 | diff -rupN hplip-3.12.6_orig/configure.in hplip-3.12.6/configure.in | ||
4 | --- hplip-3.12.6_orig/configure.in 2012-06-18 20:44:24.000000000 +1000 | ||
5 | +++ hplip-3.12.6/configure.in 2012-08-16 13:40:07.259927650 +1000 | ||
6 | @@ -524,6 +524,8 @@ if test "$hpijs_only_build" = "no"; then | ||
7 | AC_CHECK_HEADERS(usb.h, ,[AC_MSG_ERROR([cannot find libusb-devel support], 11)]) | ||
8 | else | ||
9 | AC_CHECK_LIB([usb-1.0], [libusb_init], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find libusb 1.0 support], 2)]) | ||
10 | + LIBUSBINCLUDEROOT?="/usr/include/" | ||
11 | + AC_ARG_VAR(LIBUSBINCLUDEROOT, [path to libusb-1.0 folder]) | ||
12 | AC_CHECK_HEADERS(libusb-1.0/libusb.h, ,[AC_MSG_ERROR([cannot find libusb-1.0-devel support], 11)]) | ||
13 | fi | ||
14 | fi | ||
15 | diff -rupN hplip-3.12.6_orig/Makefile.am hplip-3.12.6/Makefile.am | ||
16 | --- hplip-3.12.6_orig/Makefile.am 2012-06-18 20:44:13.000000000 +1000 | ||
17 | +++ hplip-3.12.6/Makefile.am 2012-08-16 13:41:12.307932822 +1000 | ||
18 | @@ -72,7 +72,7 @@ libhpmud_la_SOURCES = io/hpmud/hpmud.c i | ||
19 | io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \ | ||
20 | io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb_libusb01.c | ||
21 | else | ||
22 | -libhpmud_la_CFLAGS = -I/usr/include/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\" | ||
23 | +libhpmud_la_CFLAGS = -I/$(LIBUSBINCLUDEROOT)/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\" | ||
24 | libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/pml.c \ | ||
25 | io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \ | ||
26 | io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb.c | ||
27 | @@ -286,7 +286,7 @@ hpmudext_la_LIBADD = libhpmud.la | ||
28 | if LIBUSB01_BUILD | ||
29 | hpmudext_la_CFLAGS = -I$(PYTHONINCLUDEDIR) | ||
30 | else | ||
31 | -hpmudext_la_CFLAGS =-I/usr/include/libusb-1.0 -I$(PYTHONINCLUDEDIR) | ||
32 | +hpmudext_la_CFLAGS =-I$(LIBUSBINCLUDEROOT)/libusb-1.0 -I$(PYTHONINCLUDEDIR) | ||
33 | endif | ||
34 | |||
35 | # ui (qt3) | ||
diff --git a/meta-oe/recipes-extended/hplip/hplip-3.12.6/setup-add-sleep-after-cups-reset.patch b/meta-oe/recipes-extended/hplip/hplip-3.12.6/setup-add-sleep-after-cups-reset.patch new file mode 100644 index 0000000000..0e1b6c4ed3 --- /dev/null +++ b/meta-oe/recipes-extended/hplip/hplip-3.12.6/setup-add-sleep-after-cups-reset.patch | |||
@@ -0,0 +1,12 @@ | |||
1 | Upstream-Status: Inappropriate [embedded specific] | ||
2 | |||
3 | --- hplip-3.11.10/setup.py.orig 2011-10-02 14:06:19.000000000 +1100 | ||
4 | +++ hplip-3.11.10/setup.py 2012-02-29 08:21:39.167999938 +1100 | ||
5 | @@ -573,6 +573,7 @@ | ||
6 | |||
7 | log.debug("Restarting CUPS...") | ||
8 | status, output = utils.run(restart_cups()) | ||
9 | + time.sleep(3) | ||
10 | log.debug("Restart CUPS returned: exit=%d output=%s" % (status, output)) | ||
11 | |||
12 | cups.setPasswordPrompt("You do not have permission to add a printer.") | ||
diff --git a/meta-oe/recipes-extended/hplip/hplip_3.12.6.bb b/meta-oe/recipes-extended/hplip/hplip_3.12.6.bb new file mode 100644 index 0000000000..655f907f6d --- /dev/null +++ b/meta-oe/recipes-extended/hplip/hplip_3.12.6.bb | |||
@@ -0,0 +1,71 @@ | |||
1 | SUMMARY = "HP Linux Imaging and Printing" | ||
2 | LICENSE="GPLv2" | ||
3 | LIC_FILES_CHKSUM = "file://COPYING;md5=442bb3cbbeeb60643a87325718b8a8ee" | ||
4 | |||
5 | PR = "r1" | ||
6 | |||
7 | SRC_URI = "${SOURCEFORGE_MIRROR}/${PN}/${PN}-${PV}.tar.gz \ | ||
8 | file://setup-add-sleep-after-cups-reset.patch \ | ||
9 | file://fix-libusb-paths.patch \ | ||
10 | file://cups-1.6.patch \ | ||
11 | " | ||
12 | |||
13 | DEPENDS += "cups python libusb" | ||
14 | |||
15 | inherit autotools python-dir pythonnative | ||
16 | |||
17 | export BUILD_SYS | ||
18 | export HOST_SYS | ||
19 | export STAGING_INCDIR | ||
20 | export STAGING_LIBDIR | ||
21 | |||
22 | EXTRA_OECONF += "\ | ||
23 | LIBUSBINCLUDEROOT=${STAGING_INCDIR} \ | ||
24 | --disable-network-build \ | ||
25 | --disable-doc-build \ | ||
26 | --disable-pp-build \ | ||
27 | --disable-scan-build \ | ||
28 | --disable-gui-build \ | ||
29 | --disable-fax-build \ | ||
30 | --disable-policykit \ | ||
31 | --disable-qt4 \ | ||
32 | --disable-qt3 \ | ||
33 | --disable-dbus-build \ | ||
34 | --disable-foomatic-drv-install \ | ||
35 | --enable-foomatic-ppd-install \ | ||
36 | --enable-foomatic-rip-hplip-install \ | ||
37 | " | ||
38 | |||
39 | PACKAGES += "${PN}-ppd ${PN}-cups ${PN}-backend ${PN}-filter ${PN}-hal" | ||
40 | |||
41 | RDEPENDS_${PN} += " \ | ||
42 | python-syslog \ | ||
43 | python-pprint \ | ||
44 | python-compression \ | ||
45 | python-shell \ | ||
46 | python-xml \ | ||
47 | python-unixadmin \ | ||
48 | python-html \ | ||
49 | python-resource \ | ||
50 | python-terminal \ | ||
51 | python-subprocess\ | ||
52 | " | ||
53 | |||
54 | # need to snag the debug file or OE will fail on backend package | ||
55 | FILES_${PN}-dbg += "\ | ||
56 | ${libdir}/cups/backend/.debug \ | ||
57 | ${PYTHON_SITEPACKAGES_DIR}/.debug \ | ||
58 | ${libdir}/cups/filter/.debug " | ||
59 | |||
60 | FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la" | ||
61 | FILES_${PN}-ppd = "${datadir}/ppd" | ||
62 | FILES_${PN}-cups = "${datadir}/cups" | ||
63 | FILES_${PN}-backend = "${libdir}/cups/backend" | ||
64 | FILES_${PN}-filter = "${libdir}/cups/filter" | ||
65 | FILES_${PN}-hal = "${datadir}/hal" | ||
66 | |||
67 | FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR}/*.so" | ||
68 | |||
69 | SRC_URI[md5sum] = "5303938e8630775ea6fb383af85775e5" | ||
70 | SRC_URI[sha256sum] = "54578000792969adb583e75efeacb9c46ab69659ec7e9424de390613f3595775" | ||
71 | |||
diff --git a/meta-oe/recipes-extended/iotop/iotop_0.4.4.bb b/meta-oe/recipes-extended/iotop/iotop_0.4.4.bb new file mode 100644 index 0000000000..14d2ee5e38 --- /dev/null +++ b/meta-oe/recipes-extended/iotop/iotop_0.4.4.bb | |||
@@ -0,0 +1,25 @@ | |||
1 | SUMMARY = "Simple top-like I/O monitor" | ||
2 | DESCRIPTION = "iotop does for I/O usage what top(1) does for CPU usage. \ | ||
3 | It watches I/O usage information output by the Linux kernel and displays \ | ||
4 | a table of current I/O usage by processes on the system." | ||
5 | HOMEPAGE = "http://guichaz.free.fr/iotop/" | ||
6 | |||
7 | PR = "r1" | ||
8 | |||
9 | LICENSE = "GPLv2+" | ||
10 | LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4" | ||
11 | |||
12 | SRC_URI = "http://guichaz.free.fr/iotop/files/${PN}-${PV}.tar.bz2" | ||
13 | SRC_URI[md5sum] = "cdd38b276cbf238676f5d2bcf098ba9c" | ||
14 | SRC_URI[sha256sum] = "46f3279fb1a7dfc129b5d00950c6e8389e4aedeb58880e848b88d686483df0b0" | ||
15 | |||
16 | inherit distutils | ||
17 | |||
18 | do_install_append() { | ||
19 | rm -f ${D}${PYTHON_SITEPACKAGES_DIR}/site.pyo || true | ||
20 | rm -f ${D}${PYTHON_SITEPACKAGES_DIR}/site.py || true | ||
21 | } | ||
22 | |||
23 | RDEPENDS_${PN} = "python-distutils python-curses python-textutils \ | ||
24 | python-codecs python-ctypes python-pprint \ | ||
25 | python-shell" | ||
diff --git a/meta-oe/recipes-extended/jansson/jansson_2.4.bb b/meta-oe/recipes-extended/jansson/jansson_2.4.bb new file mode 100644 index 0000000000..c235729fec --- /dev/null +++ b/meta-oe/recipes-extended/jansson/jansson_2.4.bb | |||
@@ -0,0 +1,12 @@ | |||
1 | SUMMARY = "Jansson is a C library for encoding, decoding and manipulating JSON data" | ||
2 | HOMEPAGE = "http://www.digip.org/jansson/" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=6946b728e700de875e60ebb453cc3a20" | ||
5 | |||
6 | SRC_URI = "http://www.digip.org/jansson/releases/${BPN}-${PV}.tar.gz" | ||
7 | |||
8 | SRC_URI[md5sum] = "c4629b89bf0432f3158c461e88fe0113" | ||
9 | SRC_URI[sha256sum] = "1fcbd1ac3d8b610644acf86a5731d760bb228c9acbace20a2ad0f23baec79b41" | ||
10 | |||
11 | inherit autotools pkgconfig | ||
12 | |||
diff --git a/meta-oe/recipes-extended/lcdproc/lcdproc/automake-111-fix.patch b/meta-oe/recipes-extended/lcdproc/lcdproc/automake-111-fix.patch new file mode 100644 index 0000000000..061cc22f0c --- /dev/null +++ b/meta-oe/recipes-extended/lcdproc/lcdproc/automake-111-fix.patch | |||
@@ -0,0 +1,21 @@ | |||
1 | Description: With automake 1.11.3, pkglib_PROGRAMS is not valid anymore, | ||
2 | so work around this by using my_execbin_PROGRAMS. | ||
3 | Author: Andreas Moog <amoog@ubuntu.com> | ||
4 | Bug-Ubuntu: https://bugs.launchpad.net/bugs/934265 | ||
5 | |||
6 | Upstream-Status: Backport | ||
7 | |||
8 | Index: lcdproc-0.5.5/server/drivers/Makefile.am | ||
9 | =================================================================== | ||
10 | --- lcdproc-0.5.5.orig/server/drivers/Makefile.am 2012-02-26 14:04:37.000000000 +0100 | ||
11 | +++ lcdproc-0.5.5/server/drivers/Makefile.am 2012-02-26 14:13:17.764467350 +0100 | ||
12 | @@ -20,7 +20,8 @@ | ||
13 | |||
14 | ## Keep the lists sorted! | ||
15 | |||
16 | -pkglib_PROGRAMS = @DRIVERS@ | ||
17 | +my_execbindir = $(pkglibdir) | ||
18 | +my_execbin_PROGRAMS = @DRIVERS@ | ||
19 | EXTRA_PROGRAMS = bayrad CFontz CFontz633 CFontzPacket curses debug CwLnx ea65 EyeboxOne g15 glcdlib glk hd44780 icp_a106 imon imonlcd IOWarrior irman joy lb216 lcdm001 lcterm lirc lis MD8800 mdm166a ms6931 mtc_s16209x MtxOrb mx5000 NoritakeVFD picolcd pyramid sed1330 sed1520 serialPOS serialVFD shuttleVFD stv5730 SureElec svga t6963 text tyan sli ula200 xosd i2500vfd irtrans | ||
20 | noinst_LIBRARIES = libLCD.a libbignum.a | ||
21 | |||
diff --git a/meta-oe/recipes-extended/lcdproc/lcdproc5.inc b/meta-oe/recipes-extended/lcdproc/lcdproc5.inc new file mode 100644 index 0000000000..d1a45cadcc --- /dev/null +++ b/meta-oe/recipes-extended/lcdproc/lcdproc5.inc | |||
@@ -0,0 +1,81 @@ | |||
1 | DESCRIPTION = "LCDproc is a client/server suite to drive all kinds of LCD (-like) devices. The client \ | ||
2 | shipped with this package can be used to acquire various kinds of system stats." | ||
3 | SUMMARY = "Drivers for character-based LCD displays" | ||
4 | HOMEPAGE = "http://lcdproc.org" | ||
5 | SECTION = "utils" | ||
6 | LICENSE = "GPLv2+" | ||
7 | DEPENDS = "ncurses" | ||
8 | |||
9 | LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760 \ | ||
10 | file://README;beginline=60;md5=637e042cdd3671ba00e78b58ede45d3b" | ||
11 | |||
12 | SRC_URI = "${SOURCEFORGE_MIRROR}/lcdproc/${P}.tar.gz" | ||
13 | |||
14 | inherit autotools update-rc.d | ||
15 | |||
16 | LCD_DRIVERS ?= "all" | ||
17 | LCD_DEFAULT_DRIVER ?= "curses" | ||
18 | |||
19 | PACKAGECONFIG ??= "usb" | ||
20 | PACKAGECONFIG[usb] = "--enable-libusb,--disable-libusb,virtual/libusb0" | ||
21 | PACKAGECONFIG[ftdi] = "--enable-libftdi,--disable-libftdi,libftdi" | ||
22 | |||
23 | EXTRA_OECONF = "--enable-drivers=${LCD_DRIVERS}" | ||
24 | |||
25 | do_install () { | ||
26 | # binaries | ||
27 | install -D -m 0755 server/LCDd ${D}${sbindir}/LCDd | ||
28 | install -D -m 0755 clients/lcdproc/lcdproc ${D}${bindir}/lcdproc | ||
29 | |||
30 | # init scripts | ||
31 | install -d ${D}${sysconfdir}/init.d | ||
32 | # so far, not fixed :-( and now even uglier :-(( | ||
33 | cat scripts/init-LCDd.debian | sed -e s'/--oknodo//' -e 's/ -s -f / -s 1 -f 1 /' -e 's/force-reload/force-restart/' -e 's/sleep 1/sleep 4/' > ${D}${sysconfdir}/init.d/lcdd | ||
34 | chmod 0755 ${D}${sysconfdir}/init.d/lcdd | ||
35 | install -m 0755 scripts/init-lcdproc.debian ${D}${sysconfdir}/init.d/lcdproc | ||
36 | sed -i s'/--oknodo//' ${D}${sysconfdir}/init.d/lcdproc | ||
37 | |||
38 | # configuration files | ||
39 | install -m 0644 LCDd.conf ${D}${sysconfdir}/LCDd.conf | ||
40 | sed -i 's!^DriverPath=.*!DriverPath=${libdir}/lcdproc/!' ${D}${sysconfdir}/LCDd.conf | ||
41 | sed -i 's!^Driver=.*!Driver=${LCD_DEFAULT_DRIVER}!' ${D}${sysconfdir}/LCDd.conf | ||
42 | install -m 0644 clients/lcdproc/lcdproc.conf ${D}${sysconfdir}/lcdproc.conf | ||
43 | |||
44 | # driver library files | ||
45 | install -d ${D}${libdir}/lcdproc | ||
46 | for i in server/drivers/*.so; do | ||
47 | install -m 0644 $i ${D}${libdir}/lcdproc/ | ||
48 | done | ||
49 | } | ||
50 | |||
51 | PACKAGES =+ "lcdd" | ||
52 | |||
53 | RRECOMMENDS_${PN} = "lcdd" | ||
54 | |||
55 | FILES_lcdd = "${sysconfdir}/LCDd.conf \ | ||
56 | ${sbindir}/LCDd \ | ||
57 | ${sysconfdir}/init.d/lcdd" | ||
58 | |||
59 | CONFFILES_lcdd = "${sysconfdir}/LCDd.conf" | ||
60 | CONFFILES_${PN} = "${sysconfdir}/lcdproc.conf" | ||
61 | |||
62 | # Driver packages | ||
63 | |||
64 | # USB / no USB trickery | ||
65 | |||
66 | RCONFLICTS_lcdd-driver-hd47780nousb = "lcdd-driver-hd44780" | ||
67 | RCONFLICTS_lcdd-driver-hd47780 = "lcdd-driver-hd44780nousb" | ||
68 | |||
69 | INITSCRIPT_PACKAGES = "lcdd lcdproc" | ||
70 | INITSCRIPT_NAME_lcdd = "lcdd" | ||
71 | INITSCRIPT_NAME_lcdproc = "lcdproc" | ||
72 | INITSCRIPT_PARAMS_lcdd = "defaults 70 21" | ||
73 | INITSCRIPT_PARAMS_lcdproc = "defaults 71 20" | ||
74 | |||
75 | python populate_packages_prepend() { | ||
76 | plugindir = d.expand('${libdir}/lcdproc') | ||
77 | do_split_packages(d, plugindir, '(.*)\.so$', 'lcdd-driver-%s', 'LCDd driver for %s', prepend=True) | ||
78 | } | ||
79 | |||
80 | PACKAGES_DYNAMIC += "^lcdd-driver-.*" | ||
81 | |||
diff --git a/meta-oe/recipes-extended/lcdproc/lcdproc_0.5.5.bb b/meta-oe/recipes-extended/lcdproc/lcdproc_0.5.5.bb new file mode 100644 index 0000000000..39e607437e --- /dev/null +++ b/meta-oe/recipes-extended/lcdproc/lcdproc_0.5.5.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | require lcdproc5.inc | ||
2 | |||
3 | SRC_URI += "file://automake-111-fix.patch" | ||
4 | |||
5 | SRC_URI[md5sum] = "c92d4529d36eeec6d9d6fd0a4aa3ec82" | ||
6 | SRC_URI[sha256sum] = "b136b47d7bf585a003334f432d8730a36ef5ed1cd520084b919667d825e48d42" | ||
7 | |||
8 | PACKAGECONFIG ?= "" | ||
9 | PACKAGECONFIG[g15] = ",,libg15 g15daemon libg15render," | ||
10 | |||
11 | LCD_DRIVERS_append = "${@base_contains('PACKAGECONFIG', 'g15', '', ',!g15', d)}" | ||
12 | |||
13 | do_install_append () { | ||
14 | # binaries | ||
15 | install -D -m 0755 clients/lcdvc/lcdvc ${D}${sbindir}/lcdvc | ||
16 | |||
17 | # configuration files | ||
18 | install -D -m 0644 clients/lcdvc/lcdvc.conf ${D}${sysconfdir}/lcdvc.conf | ||
19 | } | ||
20 | |||
21 | PACKAGES =+ "lcdvc" | ||
22 | CONFFILES_lcdvc = "${sysconfdir}/lcdvc.conf" | ||
23 | FILES_lcdvc = "${sysconfdir}/lcdvc.conf ${sbindir}/lcdvc" | ||
24 | |||
diff --git a/meta-oe/recipes-extended/libcec/libcec_git.bb b/meta-oe/recipes-extended/libcec/libcec_git.bb new file mode 100644 index 0000000000..db032f98c9 --- /dev/null +++ b/meta-oe/recipes-extended/libcec/libcec_git.bb | |||
@@ -0,0 +1,23 @@ | |||
1 | SUMMARY = "USB CEC Adaptor communication Library" | ||
2 | HOMEPAGE = "http://libcec.pulse-eight.com/" | ||
3 | |||
4 | LICENSE = "GPLv2+" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=5e8e16396992369f73f3d28875f846da" | ||
6 | |||
7 | DEPENDS = "udev lockdev" | ||
8 | |||
9 | PV = "1.9.0" | ||
10 | |||
11 | SRCREV = "9884e9ffc5293de5bb9092db1ed581f213a678df" | ||
12 | SRC_URI = "git://github.com/Pulse-Eight/libcec.git" | ||
13 | |||
14 | S = "${WORKDIR}/git" | ||
15 | |||
16 | inherit autotools pkgconfig | ||
17 | |||
18 | # cec-client and xbmc need the .so present to work :( | ||
19 | FILES_${PN} += "${libdir}/*.so" | ||
20 | INSANE_SKIP_${PN} = "dev-so" | ||
21 | |||
22 | # Adapter shows up as a CDC-ACM device | ||
23 | RRECOMMENDS_${PN} = "kernel-module-cdc-acm" | ||
diff --git a/meta-oe/recipes-extended/libconfig/libconfig_1.4.9.bb b/meta-oe/recipes-extended/libconfig/libconfig_1.4.9.bb new file mode 100644 index 0000000000..c7d3cf767e --- /dev/null +++ b/meta-oe/recipes-extended/libconfig/libconfig_1.4.9.bb | |||
@@ -0,0 +1,14 @@ | |||
1 | SUMMARY = "C/C++ Configuration File Library" | ||
2 | DESCRIPTION = "Library for manipulating structured configuration files" | ||
3 | HOMEPAGE = "http://www.hyperrealm.com/libconfig/" | ||
4 | SECTION = "libs" | ||
5 | |||
6 | LICENSE = "LGPLv2.1" | ||
7 | LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=fad9b3332be894bab9bc501572864b29" | ||
8 | |||
9 | SRC_URI = "http://www.hyperrealm.com/${BPN}/${BP}.tar.gz" | ||
10 | |||
11 | inherit autotools pkgconfig | ||
12 | |||
13 | SRC_URI[md5sum] = "b6ee0ce2b3ef844bad7cac2803a90634" | ||
14 | SRC_URI[sha256sum] = "09c8979252e60193e2969e9b0e1cd597f7820087867989b2f0939ad164473041" | ||
diff --git a/meta-oe/recipes-extended/libdivecomputer/files/fix-ar.patch b/meta-oe/recipes-extended/libdivecomputer/files/fix-ar.patch new file mode 100644 index 0000000000..cc3f5d4786 --- /dev/null +++ b/meta-oe/recipes-extended/libdivecomputer/files/fix-ar.patch | |||
@@ -0,0 +1,18 @@ | |||
1 | --- | ||
2 | configure.ac | 1 + | ||
3 | 1 file changed, 1 insertion(+) | ||
4 | |||
5 | --- git.orig/configure.ac | ||
6 | +++ git/configure.ac | ||
7 | @@ -24,10 +24,11 @@ LT_INIT([win32-dll]) | ||
8 | LT_PROG_RC | ||
9 | |||
10 | # Checks for programs. | ||
11 | AC_PROG_CC | ||
12 | AC_PROG_CC_C99 | ||
13 | +AM_PROG_AR | ||
14 | |||
15 | # Enable automake silent build rules. | ||
16 | m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) | ||
17 | |||
18 | # Checks for native Windows. | ||
diff --git a/meta-oe/recipes-extended/libdivecomputer/libdivecomputer_git.bb b/meta-oe/recipes-extended/libdivecomputer/libdivecomputer_git.bb new file mode 100644 index 0000000000..1154dc0c53 --- /dev/null +++ b/meta-oe/recipes-extended/libdivecomputer/libdivecomputer_git.bb | |||
@@ -0,0 +1,19 @@ | |||
1 | DESCRIPTION = "Libdivecomputer is a cross-platform and open source library for communication with dive computers from various manufacturers." | ||
2 | HOMEPAGE = "http://www.divesoftware.org/libdc/" | ||
3 | |||
4 | LICENSE = "LGPLv2.1" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24" | ||
6 | |||
7 | DEPENDS = "libusb1" | ||
8 | |||
9 | inherit autotools pkgconfig | ||
10 | |||
11 | PV = "0.0.0" | ||
12 | PR = "r1" | ||
13 | |||
14 | SRCREV = "b7a6be15ca58cc8f89fbc8fa1a4c840e13d51092" | ||
15 | SRC_URI = "git://libdivecomputer.git.sourceforge.net/gitroot/libdivecomputer/libdivecomputer \ | ||
16 | file://fix-ar.patch" | ||
17 | S = "${WORKDIR}/git" | ||
18 | |||
19 | |||
diff --git a/meta-oe/recipes-extended/libimobiledevice/files/fix-parallel-make.patch b/meta-oe/recipes-extended/libimobiledevice/files/fix-parallel-make.patch new file mode 100644 index 0000000000..f6ef6f4f8b --- /dev/null +++ b/meta-oe/recipes-extended/libimobiledevice/files/fix-parallel-make.patch | |||
@@ -0,0 +1,21 @@ | |||
1 | From 335b25febd4c864ad0ac08479f5cd43fc21b7d73 Mon Sep 17 00:00:00 2001 | ||
2 | From: Nikias Bassen | ||
3 | Date: Mon, 09 Jul 2012 21:17:15 +0000 | ||
4 | Subject: Fix building with parallel build makeopts | ||
5 | |||
6 | --- | ||
7 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
8 | index 0bad840..155994e 100644 | ||
9 | --- a/CMakeLists.txt | ||
10 | +++ b/CMakeLists.txt | ||
11 | @@ -57,6 +57,8 @@ ADD_SUBDIRECTORY( plutil ) | ||
12 | ADD_SUBDIRECTORY( include ) | ||
13 | ADD_SUBDIRECTORY( test ) | ||
14 | |||
15 | +ADD_DEPENDENCIES( plist libcnary ) | ||
16 | + | ||
17 | IF ( SWIG_FOUND AND PYTHONLIBS_FOUND AND PYTHONINTERP_FOUND ) | ||
18 | ADD_SUBDIRECTORY( swig ) | ||
19 | ENDIF ( SWIG_FOUND AND PYTHONLIBS_FOUND AND PYTHONINTERP_FOUND ) | ||
20 | -- | ||
21 | cgit v0.9.0.2 | ||
diff --git a/meta-oe/recipes-extended/libimobiledevice/libplist_1.8.bb b/meta-oe/recipes-extended/libimobiledevice/libplist_1.8.bb new file mode 100644 index 0000000000..6e8d69f603 --- /dev/null +++ b/meta-oe/recipes-extended/libimobiledevice/libplist_1.8.bb | |||
@@ -0,0 +1,22 @@ | |||
1 | SUMMARY = "A library to handle Apple Property List format whereas it's binary or XML" | ||
2 | |||
3 | LICENSE = "GPLv2 & LGPLv2.1" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=ebb5c50ab7cab4baeffba14977030c07 \ | ||
5 | file://COPYING.LESSER;md5=6ab17b41640564434dda85c06b7124f7" | ||
6 | |||
7 | DEPENDS = "libxml2 glib-2.0 swig python" | ||
8 | |||
9 | inherit cmake pkgconfig | ||
10 | |||
11 | SRC_URI = "http://www.libimobiledevice.org/downloads/libplist-${PV}.tar.bz2 \ | ||
12 | file://fix-parallel-make.patch \ | ||
13 | " | ||
14 | |||
15 | SRC_URI[md5sum] = "2a9e0258847d50f9760dc3ece25f4dc6" | ||
16 | SRC_URI[sha256sum] = "a418da3880308199b74766deef2a760a9b169b81a868a6a9032f7614e20500ec" | ||
17 | |||
18 | PACKAGES =+ "${PN}-utils ${PN}++" | ||
19 | FILES_${PN} = "${libdir}/libplist${SOLIBS}" | ||
20 | FILES_${PN}++ = "${libdir}/libplist++${SOLIBS}" | ||
21 | FILES_${PN}-utils = "${bindir}/*" | ||
22 | |||
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/configure.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/configure.patch new file mode 100644 index 0000000000..ea13e11d25 --- /dev/null +++ b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/configure.patch | |||
@@ -0,0 +1,25 @@ | |||
1 | |||
2 | # | ||
3 | # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher | ||
4 | # | ||
5 | |||
6 | --- liblockfile-1.05/./configure.in~configure | ||
7 | +++ liblockfile-1.05/./configure.in | ||
8 | @@ -1,4 +1,5 @@ | ||
9 | -AC_INIT(lockfile.c) | ||
10 | +AC_INIT | ||
11 | +AC_CONFIG_SRCDIR([lockfile.c]) | ||
12 | AC_CONFIG_HEADER(autoconf.h) | ||
13 | AC_REVISION($Revision: 1.0 $)dnl | ||
14 | |||
15 | @@ -111,7 +112,8 @@ | ||
16 | AC_SUBST(INSTALL_TARGETS) | ||
17 | AC_SUBST(nfslockdir) | ||
18 | |||
19 | -AC_OUTPUT(\ | ||
20 | +AC_CONFIG_FILES([\ | ||
21 | ./Makefile \ | ||
22 | ./maillock.h \ | ||
23 | -) | ||
24 | +]) | ||
25 | +AC_OUTPUT | ||
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch new file mode 100644 index 0000000000..e3c4aaae5f --- /dev/null +++ b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch | |||
@@ -0,0 +1,70 @@ | |||
1 | The local function eaccess conflicts with a glibc function of the same name. | ||
2 | Rename the function so that this can be build under glibc 2.4, and older | ||
3 | revisions, without any problems. | ||
4 | |||
5 | --- liblockfile-1.06/dotlockfile.c 2006/07/10 03:17:40 1.1 | ||
6 | +++ liblockfile-1.06/dotlockfile.c 2006/07/10 03:18:26 | ||
7 | @@ -42,7 +42,7 @@ | ||
8 | extern int optind; | ||
9 | #endif | ||
10 | |||
11 | -extern int eaccess(char *, gid_t, struct stat *); | ||
12 | +extern int xeaccess(char *, gid_t, struct stat *); | ||
13 | |||
14 | /* | ||
15 | * Sleep for an amout of time while regulary checking if | ||
16 | @@ -252,14 +252,14 @@ | ||
17 | return L_ERROR; | ||
18 | } | ||
19 | gid = getgid(); | ||
20 | - if (eaccess(dir, gid, &st) < 0) { | ||
21 | + if (xeaccess(dir, gid, &st) < 0) { | ||
22 | if (errno == ENOENT) { | ||
23 | enoent: | ||
24 | if (!quiet) fprintf(stderr, | ||
25 | "dotlockfile: %s: no such directory\n", dir); | ||
26 | return L_TMPLOCK; | ||
27 | } | ||
28 | - if ((r = eaccess(dir, getegid(), &st) < 0) && errno == ENOENT) | ||
29 | + if ((r = xeaccess(dir, getegid(), &st) < 0) && errno == ENOENT) | ||
30 | goto enoent; | ||
31 | if (r < 0 || !ismaillock(lockfile, pwd->pw_name)) { | ||
32 | if (!quiet) fprintf(stderr, | ||
33 | @@ -272,7 +272,7 @@ | ||
34 | /* | ||
35 | * Now we should be able to chdir() to the lock directory. | ||
36 | * When we stat("."), it should be the same as at the | ||
37 | - * eaccess() check or someone played symlink() games on us. | ||
38 | + * xeaccess() check or someone played symlink() games on us. | ||
39 | */ | ||
40 | if (chdir(dir) < 0 || stat(".", &st2) < 0) { | ||
41 | if (!quiet) fprintf(stderr, | ||
42 | --- liblockfile-1.06/lockfile.c 2006/07/10 03:17:40 1.1 | ||
43 | +++ liblockfile-1.06/lockfile.c 2006/07/10 03:18:26 | ||
44 | @@ -54,7 +54,7 @@ | ||
45 | #ifdef LIB | ||
46 | static | ||
47 | #endif | ||
48 | -int eaccess(char *fn, gid_t gid, struct stat *st) | ||
49 | +int xeaccess(char *fn, gid_t gid, struct stat *st) | ||
50 | { | ||
51 | struct stat tmp; | ||
52 | uid_t uid = geteuid(); | ||
53 | @@ -96,7 +96,7 @@ | ||
54 | *p = 0; | ||
55 | else | ||
56 | strcpy(dir, "."); | ||
57 | - if (eaccess(dir, egid, NULL) >= 0) { | ||
58 | + if (xeaccess(dir, egid, NULL) >= 0) { | ||
59 | free(dir); | ||
60 | return 0; | ||
61 | } | ||
62 | @@ -111,7 +111,7 @@ | ||
63 | return 0; | ||
64 | mailgid = st.st_gid; | ||
65 | } | ||
66 | - ret = eaccess(dir, mailgid, NULL) >= 0; | ||
67 | + ret = xeaccess(dir, mailgid, NULL) >= 0; | ||
68 | free (dir); | ||
69 | return ret; | ||
70 | } | ||
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/install.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/install.patch new file mode 100644 index 0000000000..a9319ff1e3 --- /dev/null +++ b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/install.patch | |||
@@ -0,0 +1,48 @@ | |||
1 | |||
2 | # | ||
3 | # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher | ||
4 | # | ||
5 | |||
6 | --- liblockfile-1.05/Makefile.in~install | ||
7 | +++ liblockfile-1.05/Makefile.in | ||
8 | @@ -20,6 +20,7 @@ | ||
9 | includedir = @includedir@ | ||
10 | |||
11 | MAILGROUP = @MAILGROUP@ | ||
12 | +INSTGRP = $(if $(MAILGROUP),-g $(MAILGROUP)) | ||
13 | |||
14 | all: @TARGETS@ | ||
15 | install: @INSTALL_TARGETS@ | ||
16 | @@ -50,25 +51,27 @@ | ||
17 | $(CC) $(CFLAGS) -c lockfile.c -o xlockfile.o | ||
18 | |||
19 | install_static: static install_common | ||
20 | + install -d $(ROOT)$(libdir) | ||
21 | install -m 644 liblockfile.a $(ROOT)$(libdir) | ||
22 | |||
23 | install_shared: shared install_common | ||
24 | + install -d $(ROOT)$(libdir) | ||
25 | install -m 755 liblockfile.so \ | ||
26 | $(ROOT)$(libdir)/liblockfile.so.$(VER) | ||
27 | ln -s liblockfile.so.$(VER) $(ROOT)$(libdir)/liblockfile.so | ||
28 | if test "$(ROOT)" = ""; then @LDCONFIG@; fi | ||
29 | |||
30 | install_common: | ||
31 | + install -d $(ROOT)$(includedir) | ||
32 | install -m 644 lockfile.h maillock.h $(ROOT)$(includedir) | ||
33 | - if [ "$(MAILGROUP)" != "" ]; then\ | ||
34 | - install -g $(MAILGROUP) -m 2755 dotlockfile $(ROOT)$(bindir);\ | ||
35 | - else \ | ||
36 | - install -g root -m 755 dotlockfile $(ROOT)$(bindir); \ | ||
37 | - fi | ||
38 | + install -d $(ROOT)$(bindir) | ||
39 | + install -m 755 $(INSTGRP) dotlockfile $(ROOT)$(bindir) | ||
40 | + install -d $(ROOT)$(mandir)/man1 $(ROOT)$(mandir)/man3 | ||
41 | install -m 644 *.1 $(ROOT)$(mandir)/man1 | ||
42 | install -m 644 *.3 $(ROOT)$(mandir)/man3 | ||
43 | |||
44 | install_nfslib: nfslib | ||
45 | + install -d $(ROOT)$(nfslockdir) | ||
46 | install -m 755 nfslock.so.$(VER) $(ROOT)$(nfslockdir) | ||
47 | if test "$(ROOT)" = ""; then @LDCONFIG@; fi | ||
48 | |||
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/ldflags.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/ldflags.patch new file mode 100644 index 0000000000..eb1d1478b8 --- /dev/null +++ b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/ldflags.patch | |||
@@ -0,0 +1,21 @@ | |||
1 | |||
2 | # | ||
3 | # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher | ||
4 | # | ||
5 | |||
6 | --- liblockfile-1.05/Makefile.in~ldflags | ||
7 | +++ liblockfile-1.05/Makefile.in | ||
8 | @@ -34,11 +34,11 @@ | ||
9 | |||
10 | liblockfile.so: liblockfile.a | ||
11 | $(CC) -fPIC -shared -Wl,-soname,liblockfile.so.1 \ | ||
12 | - -o liblockfile.so lockfile.o -lc | ||
13 | + -o liblockfile.so lockfile.o $(LDFLAGS) -lc | ||
14 | |||
15 | nfslock.so.$(VER): nfslock.o | ||
16 | $(CC) -fPIC -shared -Wl,-soname,nfslock.so.0 \ | ||
17 | - -o nfslock.so.$(NVER) nfslock.o | ||
18 | + -o nfslock.so.$(NVER) nfslock.o $(LDFLAGS) | ||
19 | |||
20 | dotlockfile: dotlockfile.o xlockfile.o | ||
21 | $(CC) $(LDFLAGS) -o dotlockfile dotlockfile.o xlockfile.o | ||
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/liblockfile-fix-nfslib-and-soname.patch b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/liblockfile-fix-nfslib-and-soname.patch new file mode 100644 index 0000000000..ffd7a40fab --- /dev/null +++ b/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/liblockfile-fix-nfslib-and-soname.patch | |||
@@ -0,0 +1,54 @@ | |||
1 | Upstream-Status: Inappropriate [no upstream] | ||
2 | |||
3 | * nfslib should use NVER instead of VER | ||
4 | * install the missing soname library | ||
5 | |||
6 | Signed-off-by: Jackie Huang <jackie.huang@windriver.com> | ||
7 | --- | ||
8 | Makefile.in | 9 ++++++--- | ||
9 | 1 files changed, 5 insertions(+), 3 deletions(-) | ||
10 | |||
11 | diff --git a/Makefile.in b/Makefile.in | ||
12 | index 836ca9b..a589fb8 100644 | ||
13 | --- a/Makefile.in | ||
14 | +++ b/Makefile.in | ||
15 | @@ -27,7 +27,7 @@ install: @INSTALL_TARGETS@ | ||
16 | |||
17 | static: liblockfile.a dotlockfile | ||
18 | shared: liblockfile.so dotlockfile | ||
19 | -nfslib: nfslock.so.$(VER) | ||
20 | +nfslib: nfslock.so.$(NVER) | ||
21 | |||
22 | liblockfile.a: lockfile.o | ||
23 | $(AR) rv liblockfile.a lockfile.o | ||
24 | @@ -36,7 +36,7 @@ liblockfile.so: liblockfile.a | ||
25 | $(CC) -fPIC -shared -Wl,-soname,liblockfile.so.1 \ | ||
26 | -o liblockfile.so lockfile.o $(LDFLAGS) -lc | ||
27 | |||
28 | -nfslock.so.$(VER): nfslock.o | ||
29 | +nfslock.so.$(NVER): nfslock.o | ||
30 | $(CC) -fPIC -shared -Wl,-soname,nfslock.so.0 \ | ||
31 | -o nfslock.so.$(NVER) nfslock.o $(LDFLAGS) | ||
32 | |||
33 | @@ -59,6 +59,7 @@ install_shared: shared install_common | ||
34 | install -m 755 liblockfile.so \ | ||
35 | $(ROOT)$(libdir)/liblockfile.so.$(VER) | ||
36 | ln -s liblockfile.so.$(VER) $(ROOT)$(libdir)/liblockfile.so | ||
37 | + ln -s liblockfile.so.$(VER) $(ROOT)$(libdir)/liblockfile.so.1 | ||
38 | if test "$(ROOT)" = ""; then @LDCONFIG@; fi | ||
39 | |||
40 | install_common: | ||
41 | @@ -72,7 +73,9 @@ install_common: | ||
42 | |||
43 | install_nfslib: nfslib | ||
44 | install -d $(ROOT)$(nfslockdir) | ||
45 | - install -m 755 nfslock.so.$(VER) $(ROOT)$(nfslockdir) | ||
46 | + install -m 755 nfslock.so.$(NVER) $(ROOT)$(nfslockdir) | ||
47 | + ln -sf nfslock.so.$(NVER) $(ROOT)$(libdir)/nfslock.so | ||
48 | + ln -sf nfslock.so.$(NVER) $(ROOT)$(libdir)/nfslock.so.0 | ||
49 | if test "$(ROOT)" = ""; then @LDCONFIG@; fi | ||
50 | |||
51 | clean: | ||
52 | -- | ||
53 | 1.7.9.5 | ||
54 | |||
diff --git a/meta-oe/recipes-extended/liblockfile/liblockfile_1.09.bb b/meta-oe/recipes-extended/liblockfile/liblockfile_1.09.bb new file mode 100644 index 0000000000..fa68fd0612 --- /dev/null +++ b/meta-oe/recipes-extended/liblockfile/liblockfile_1.09.bb | |||
@@ -0,0 +1,29 @@ | |||
1 | SUMMARY = "File locking library" | ||
2 | SECTION = "libs" | ||
3 | LICENSE = "LGPLv2+ & GPLv2+" | ||
4 | LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=ac284a60d48eaa4bc811cddc377fa341" | ||
5 | |||
6 | SRC_URI = "${DEBIAN_MIRROR}/main/libl/liblockfile/liblockfile_1.09.orig.tar.gz \ | ||
7 | file://install.patch \ | ||
8 | file://configure.patch \ | ||
9 | file://ldflags.patch \ | ||
10 | file://liblockfile-fix-nfslib-and-soname.patch \ | ||
11 | " | ||
12 | |||
13 | SRC_URI[md5sum] = "2aa269e4405ee8235ff17d1b357c6ae8" | ||
14 | SRC_URI[sha256sum] = "16979eba05396365e1d6af7100431ae9d32f9bc063930d1de66298a0695f1b7f" | ||
15 | |||
16 | inherit autotools | ||
17 | |||
18 | # set default mailgroup to mail | ||
19 | # --with-libnfslock specify where to install nfslock.so.NVER | ||
20 | EXTRA_OECONF = "--enable-shared --enable-static \ | ||
21 | --with-mailgroup=mail \ | ||
22 | --with-libnfslock=${libdir} \ | ||
23 | " | ||
24 | |||
25 | # Makefile using ROOT not DESTDIR | ||
26 | EXTRA_OEMAKE += "ROOT=${D}" | ||
27 | |||
28 | FILES_${PN} += "${libdir}/nfslock.so.*" | ||
29 | FILES_${PN}-dev += "${libdir}/nfslock.so" | ||
diff --git a/meta-oe/recipes-extended/libmodbus/libmodbus_3.0.5.bb b/meta-oe/recipes-extended/libmodbus/libmodbus_3.0.5.bb new file mode 100644 index 0000000000..19ca24c9bb --- /dev/null +++ b/meta-oe/recipes-extended/libmodbus/libmodbus_3.0.5.bb | |||
@@ -0,0 +1,16 @@ | |||
1 | SUMMARY = "A Modbus library" | ||
2 | DESCRIPTION = "libmodbus is a C library designed to provide a fast and robust \ | ||
3 | implementation of the Modbus protocol. It runs on Linux, Mac OS X, FreeBSD, \ | ||
4 | QNX and Windows." | ||
5 | HOMEPAGE = "http://www.libmodbus.org/" | ||
6 | SECTION = "libs" | ||
7 | |||
8 | LICENSE = "LGPLv2.1+" | ||
9 | LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=4fbd65380cdd255951079008b364516c" | ||
10 | |||
11 | SRC_URI = "http://libmodbus.org/site_media/build/${BP}.tar.gz" | ||
12 | |||
13 | inherit autotools pkgconfig | ||
14 | |||
15 | SRC_URI[md5sum] = "18860375a7aa0ca9cba7d6ece54ab666" | ||
16 | SRC_URI[sha256sum] = "19aad5d55fa315602d6e836a858a3802f1608f9d824afba05fa12a58a1b1e656" | ||
diff --git a/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb b/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb new file mode 100644 index 0000000000..0142ce7463 --- /dev/null +++ b/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb | |||
@@ -0,0 +1,17 @@ | |||
1 | SUMMARY = "Libuio - helper library for UIO subsystem" | ||
2 | SECTION = "base" | ||
3 | LICENSE = "GPL-2.0" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833" | ||
5 | |||
6 | SRC_URI = "git://git.code.sf.net/p/libuio/code" | ||
7 | |||
8 | inherit autotools | ||
9 | |||
10 | SRCREV = "ed4f07ea147ac403c28105ab44d01bbf524d36f9" | ||
11 | |||
12 | S = "${WORKDIR}/git" | ||
13 | |||
14 | PACKAGES += "${PN}-tools" | ||
15 | |||
16 | FILES_${PN} = "${libdir}" | ||
17 | FILES_${PN}-tools = "${bindir}" | ||
diff --git a/meta-oe/recipes-extended/libungif/libungif_4.1.4.bb b/meta-oe/recipes-extended/libungif/libungif_4.1.4.bb new file mode 100644 index 0000000000..aa05653846 --- /dev/null +++ b/meta-oe/recipes-extended/libungif/libungif_4.1.4.bb | |||
@@ -0,0 +1,16 @@ | |||
1 | SUMMARY = "shared library for GIF images" | ||
2 | SECTION = "libs" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=ae11c61b04b2917be39b11f78d71519a" | ||
5 | |||
6 | SRC_URI = "${SOURCEFORGE_MIRROR}/giflib/libungif-4.x/libungif-${PV}/libungif-${PV}.tar.bz2" | ||
7 | SRC_URI[md5sum] = "76865bc1bed90ecb5992a1edcc4d6c15" | ||
8 | SRC_URI[sha256sum] = "708a7eac218d3fd8e8dfb13f1089d4e1e98246985180a17d6ecfca5a6bd4d332" | ||
9 | |||
10 | inherit autotools lib_package | ||
11 | |||
12 | PACKAGES =+ "${PN}-utils" | ||
13 | |||
14 | FILES_${PN}-utils = "${bindir}/*" | ||
15 | |||
16 | BBCLASSEXTEND = "native" | ||
diff --git a/meta-oe/recipes-extended/libwmf/libwmf/libwmf-0.2.8.4-intoverflow.patch b/meta-oe/recipes-extended/libwmf/libwmf/libwmf-0.2.8.4-intoverflow.patch new file mode 100644 index 0000000000..50d915c010 --- /dev/null +++ b/meta-oe/recipes-extended/libwmf/libwmf/libwmf-0.2.8.4-intoverflow.patch | |||
@@ -0,0 +1,31 @@ | |||
1 | http://cvs.fedoraproject.org/viewvc/devel/libwmf/libwmf-0.2.8.4-intoverflow.patch?view=log | ||
2 | |||
3 | CVE-2006-3376 libwmf integer overflow | ||
4 | |||
5 | --- libwmf-0.2.8.4.orig/src/player.c 2002-12-10 19:30:26.000000000 +0000 | ||
6 | +++ libwmf-0.2.8.4/src/player.c 2006-07-12 15:12:52.000000000 +0100 | ||
7 | @@ -42,6 +42,7 @@ | ||
8 | #include "player/defaults.h" /* Provides: default settings */ | ||
9 | #include "player/record.h" /* Provides: parameter mechanism */ | ||
10 | #include "player/meta.h" /* Provides: record interpreters */ | ||
11 | +#include <stdint.h> | ||
12 | |||
13 | /** | ||
14 | * @internal | ||
15 | @@ -132,8 +134,14 @@ | ||
16 | } | ||
17 | } | ||
18 | |||
19 | -/* P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API)-3) * 2 * sizeof (unsigned char)); | ||
20 | - */ P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API) ) * 2 * sizeof (unsigned char)); | ||
21 | + if (MAX_REC_SIZE(API) > UINT32_MAX / 2) | ||
22 | + { | ||
23 | + API->err = wmf_E_InsMem; | ||
24 | + WMF_DEBUG (API,"bailing..."); | ||
25 | + return (API->err); | ||
26 | + } | ||
27 | + | ||
28 | + P->Parameters = (unsigned char*) wmf_malloc (API,(MAX_REC_SIZE(API) ) * 2 * sizeof (unsigned char)); | ||
29 | |||
30 | if (ERR (API)) | ||
31 | { WMF_DEBUG (API,"bailing..."); | ||
diff --git a/meta-oe/recipes-extended/libwmf/libwmf/libwmf-0.2.8.4-useafterfree.patch b/meta-oe/recipes-extended/libwmf/libwmf/libwmf-0.2.8.4-useafterfree.patch new file mode 100644 index 0000000000..4d2d285641 --- /dev/null +++ b/meta-oe/recipes-extended/libwmf/libwmf/libwmf-0.2.8.4-useafterfree.patch | |||
@@ -0,0 +1,14 @@ | |||
1 | |||
2 | http://cvs.fedoraproject.org/viewvc/devel/libwmf/libwmf-0.2.8.4-useafterfree.patch?view=log | ||
3 | Resolves: CVE-2009-1364 | ||
4 | |||
5 | --- libwmf-0.2.8.4/src/extra/gd/gd_clip.c.CVE-2009-1364-im-clip-list 2009-04-24 04:06:44.000000000 -0400 | ||
6 | +++ libwmf-0.2.8.4/src/extra/gd/gd_clip.c 2009-04-24 04:08:30.000000000 -0400 | ||
7 | @@ -70,6 +70,7 @@ void gdClipSetAdd(gdImagePtr im,gdClipRe | ||
8 | { more = gdRealloc (im->clip->list,(im->clip->max + 8) * sizeof (gdClipRectangle)); | ||
9 | if (more == 0) return; | ||
10 | im->clip->max += 8; | ||
11 | + im->clip->list = more; | ||
12 | } | ||
13 | im->clip->list[im->clip->count] = (*rect); | ||
14 | im->clip->count++; | ||
diff --git a/meta-oe/recipes-extended/libwmf/libwmf_0.2.8.4.bb b/meta-oe/recipes-extended/libwmf/libwmf_0.2.8.4.bb new file mode 100644 index 0000000000..53ef81a69a --- /dev/null +++ b/meta-oe/recipes-extended/libwmf/libwmf_0.2.8.4.bb | |||
@@ -0,0 +1,27 @@ | |||
1 | SUMMARY = "Library for converting WMF files" | ||
2 | HOMEPAGE = "http://wvware.sourceforge.net/libwmf.html" | ||
3 | SECTION = "libs" | ||
4 | |||
5 | LICENSE = "GPLv2" | ||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" | ||
7 | |||
8 | PR = "r3" | ||
9 | |||
10 | DEPENDS_virtclass-native = "libpng-native jpeg-native" | ||
11 | DEPENDS = "libpng jpeg expat gtk+" | ||
12 | |||
13 | BBCLASSEXTEND = "native" | ||
14 | |||
15 | inherit autotools | ||
16 | |||
17 | SRC_URI = "${SOURCEFORGE_MIRROR}/wvware/${BPN}/${PV}/${BPN}-${PV}.tar.gz;name=tarball \ | ||
18 | file://libwmf-0.2.8.4-intoverflow.patch \ | ||
19 | file://libwmf-0.2.8.4-useafterfree.patch" | ||
20 | SRC_URI[tarball.md5sum] = "d1177739bf1ceb07f57421f0cee191e0" | ||
21 | SRC_URI[tarball.sha256sum] = "5b345c69220545d003ad52bfd035d5d6f4f075e65204114a9e875e84895a7cf8" | ||
22 | |||
23 | FILES_${PN}-dbg += "${libdir}/gtk-2.0/2.10.0/loaders/.debug" | ||
24 | FILES_${PN}-dev += "${libdir}/gtk-2.0/2.10.0/loaders/*.la" | ||
25 | FILES_${PN}-staticdev += "${libdir}/gtk-2.0/2.10.0/loaders/*.a" | ||
26 | FILES_${PN} += "${libdir}/gtk-2.0/2.10.0/loaders/*.so" | ||
27 | |||
diff --git a/meta-oe/recipes-extended/mml-widget/gtkmathview/mathview-gcc43x.diff b/meta-oe/recipes-extended/mml-widget/gtkmathview/mathview-gcc43x.diff new file mode 100644 index 0000000000..fcc52c1f4a --- /dev/null +++ b/meta-oe/recipes-extended/mml-widget/gtkmathview/mathview-gcc43x.diff | |||
@@ -0,0 +1,63 @@ | |||
1 | --- /tmp/mathVariantAux.cc 2008-07-13 15:56:56.000000000 +0200 | ||
2 | +++ gtkmathview-0.8.0/src/engine/mathml/mathVariantAux.cc 2008-07-13 15:57:46.893198000 +0200 | ||
3 | @@ -20,6 +20,8 @@ | ||
4 | |||
5 | #include <cassert> | ||
6 | |||
7 | +#include <string.h> | ||
8 | + | ||
9 | #include "mathVariantAux.hh" | ||
10 | |||
11 | static MathVariantAttributes vattr[] = { | ||
12 | --- /tmp/T1_FontDataBase.cc 2008-07-13 16:25:24.000000000 +0200 | ||
13 | +++ gtkmathview-0.8.0/src/backend/ps/T1_FontDataBase.cc 2008-07-13 16:25:47.123198000 +0200 | ||
14 | @@ -20,6 +20,7 @@ | ||
15 | #include <config.h> | ||
16 | #include <map> | ||
17 | #include <string> | ||
18 | +#include <string.h> | ||
19 | #include <stdlib.h> | ||
20 | #include <iostream> | ||
21 | #include <list> | ||
22 | --- /tmp/SMS.cc 2008-07-13 16:27:23.000000000 +0200 | ||
23 | +++ gtkmathview-0.8.0/mathmlsvg/SMS.cc 2008-07-13 16:27:41.543198000 +0200 | ||
24 | @@ -19,6 +19,7 @@ | ||
25 | #include <config.h> | ||
26 | |||
27 | #include <sstream> | ||
28 | +#include <string.h> | ||
29 | #include "defs.h" | ||
30 | #include "AbstractLogger.hh" | ||
31 | #include "ValueConversion.hh" | ||
32 | --- /tmp/main.cc 2008-07-13 16:29:11.000000000 +0200 | ||
33 | +++ gtkmathview-0.8.0/mathmlsvg/main.cc 2008-07-13 16:29:28.813198000 +0200 | ||
34 | @@ -20,7 +20,7 @@ | ||
35 | |||
36 | #include <cassert> | ||
37 | #include <fstream> | ||
38 | - | ||
39 | +#include <string.h> | ||
40 | #include <popt.h> | ||
41 | |||
42 | // needed for old versions of GCC, must come before String.hh! | ||
43 | --- /tmp/main.cc 2008-07-13 16:30:11.000000000 +0200 | ||
44 | +++ gtkmathview-0.8.0/mathmlps/main.cc 2008-07-13 16:30:33.183198000 +0200 | ||
45 | @@ -20,7 +20,7 @@ | ||
46 | |||
47 | #include <cassert> | ||
48 | #include <fstream> | ||
49 | - | ||
50 | +#include <string.h> | ||
51 | #include <popt.h> | ||
52 | |||
53 | // needed for old versions of GCC, must come before String.hh! | ||
54 | --- gtkmathview-0.8.0.orig/src/common/AbstractLogger.cc 2007-08-17 12:02:45.000000000 +0200 | ||
55 | +++ gtkmathview-0.8.0/src/common/AbstractLogger.cc 2010-02-01 10:19:46.000000000 +0100 | ||
56 | @@ -19,6 +19,7 @@ | ||
57 | #include <config.h> | ||
58 | |||
59 | #include <stdarg.h> | ||
60 | +#include <stdio.h> | ||
61 | |||
62 | #include "AbstractLogger.hh" | ||
63 | |||
diff --git a/meta-oe/recipes-extended/mml-widget/gtkmathview/mathview-gcc47x.diff b/meta-oe/recipes-extended/mml-widget/gtkmathview/mathview-gcc47x.diff new file mode 100644 index 0000000000..11b7260045 --- /dev/null +++ b/meta-oe/recipes-extended/mml-widget/gtkmathview/mathview-gcc47x.diff | |||
@@ -0,0 +1,48 @@ | |||
1 | ../../../src/frontend/common/TemplateBuilder.hh:50:113: warning: 'linkerAssoc' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] | ||
2 | ../../../src/frontend/common/TemplateBuilder.hh:50:113: note: declarations in dependent base 'custom_reader_Builder' are not found by unqualified lookup | ||
3 | ../../../src/frontend/common/TemplateBuilder.hh:50:113: note: use 'this->linkerAssoc' instead | ||
4 | ../../../src/frontend/common/TemplateBuilder.hh:54:111: error: redeclaration of 'SmartPtr<BoxMLDecorElement> elem' | ||
5 | ../../../src/frontend/common/TemplateBuilder.hh:50:49: error: 'SmartPtr<BoxMLDecorElement> elem' previously declared here | ||
6 | ../../../src/frontend/common/TemplateBuilder.hh:55:2: warning: 'linkerAdd' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] | ||
7 | ../../../src/frontend/common/TemplateBuilder.hh:55:2: note: declarations in dependent base 'custom_reader_Builder' are not found by unqualified lookup | ||
8 | ../../../src/frontend/common/TemplateBuilder.hh:55:2: note: use 'this->linkerAdd' instead | ||
9 | |||
10 | --- gtkmathview-0.8.0.orig/src/frontend/common/TemplateBuilder.hh 2007-08-17 12:02:34.000000000 +0200 | ||
11 | +++ gtkmathview-0.8.0/src/frontend/common/TemplateBuilder.hh 2012-04-30 11:45:07.000000000 +0200 | ||
12 | @@ -47,12 +47,13 @@ | ||
13 | SmartPtr<typename ElementBuilder::type> | ||
14 | getElement(const typename Model::Element& el) const | ||
15 | { | ||
16 | - if (SmartPtr<typename ElementBuilder::type> elem = smart_cast<typename ElementBuilder::type>(linkerAssoc(el))) | ||
17 | + SmartPtr<typename ElementBuilder::type> elem = NULL; | ||
18 | + if (elem = smart_cast<typename ElementBuilder::type>(this->linkerAssoc(el))) | ||
19 | return elem; | ||
20 | else | ||
21 | { | ||
22 | - SmartPtr<typename ElementBuilder::type> elem = ElementBuilder::type::create(ElementBuilder::getContext(*this)); | ||
23 | - linkerAdd(el, elem); | ||
24 | + elem = ElementBuilder::type::create(ElementBuilder::getContext(*this)); | ||
25 | + this->linkerAdd(el, elem); | ||
26 | return elem; | ||
27 | } | ||
28 | } | ||
29 | --- gtkmathview-0.8.0.orig/mathmlsvg/main.cc 2012-04-30 11:35:19.000000000 +0200 | ||
30 | +++ gtkmathview-0.8.0/mathmlsvg/main.cc 2012-04-30 11:51:19.000000000 +0200 | ||
31 | @@ -20,6 +20,7 @@ | ||
32 | |||
33 | #include <cassert> | ||
34 | #include <fstream> | ||
35 | +#include <unistd.h> | ||
36 | #include <string.h> | ||
37 | #include <popt.h> | ||
38 | |||
39 | --- gtkmathview-0.8.0.orig/mathmlps/main.cc 2012-04-30 11:35:19.000000000 +0200 | ||
40 | +++ gtkmathview-0.8.0/mathmlps/main.cc 2012-04-30 11:50:57.000000000 +0200 | ||
41 | @@ -20,6 +20,7 @@ | ||
42 | |||
43 | #include <cassert> | ||
44 | #include <fstream> | ||
45 | +#include <unistd.h> | ||
46 | #include <string.h> | ||
47 | #include <popt.h> | ||
48 | |||
diff --git a/meta-oe/recipes-extended/mml-widget/gtkmathview/qualify-lookup.diff b/meta-oe/recipes-extended/mml-widget/gtkmathview/qualify-lookup.diff new file mode 100644 index 0000000000..1d48950451 --- /dev/null +++ b/meta-oe/recipes-extended/mml-widget/gtkmathview/qualify-lookup.diff | |||
@@ -0,0 +1,13 @@ | |||
1 | Index: gtkmathview-0.8.0/src/frontend/common/TemplateElementIterator.hh | ||
2 | =================================================================== | ||
3 | --- gtkmathview-0.8.0.orig/src/frontend/common/TemplateElementIterator.hh | ||
4 | +++ gtkmathview-0.8.0/src/frontend/common/TemplateElementIterator.hh | ||
5 | @@ -43,7 +43,7 @@ protected: | ||
6 | findValidNodeForward(const typename Model::Node& p0) const | ||
7 | { | ||
8 | for (typename Model::Node p = p0; p; p = Model::getNextSibling(p)) | ||
9 | - if (valid(p)) return Model::asElement(p); | ||
10 | + if (this->valid(p)) return Model::asElement(p); | ||
11 | return typename Model::Element(); | ||
12 | } | ||
13 | |||
diff --git a/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb b/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb new file mode 100644 index 0000000000..95deb37259 --- /dev/null +++ b/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb | |||
@@ -0,0 +1,21 @@ | |||
1 | HOMEPAGE = "http://helm.cs.unibo.it/mml-widget/" | ||
2 | DEPENDS = "t1lib gtk+ popt libxslt libxml2" | ||
3 | |||
4 | LICENSE = "LGPLv3" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=6a6a8e020838b23406c81b19c1d46df6" | ||
6 | |||
7 | PR = "r3" | ||
8 | |||
9 | SRC_URI = "http://helm.cs.unibo.it/mml-widget/sources/${P}.tar.gz \ | ||
10 | file://mathview-gcc43x.diff \ | ||
11 | file://mathview-gcc47x.diff \ | ||
12 | file://qualify-lookup.diff \ | ||
13 | " | ||
14 | SRC_URI[md5sum] = "b53564e553728d4b69f7d366dfeb5299" | ||
15 | SRC_URI[sha256sum] = "1dc30175da6a3c560a7d62d1abe1c2f9829d988e6f1a7c5e766544575c558c43" | ||
16 | |||
17 | inherit autotools-brokensep | ||
18 | |||
19 | do_configure_prepend() { | ||
20 | sed -i -e s:AM_BINRELOC::g ${S}/configure.ac | ||
21 | } | ||
diff --git a/meta-oe/recipes-extended/mozjs/mozjs/0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch b/meta-oe/recipes-extended/mozjs/mozjs/0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch new file mode 100644 index 0000000000..bc141d9d57 --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs/0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch | |||
@@ -0,0 +1,35 @@ | |||
1 | From 0a61b0b98c152f10404ccbdeeac583a486638a7a Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> | ||
3 | Date: Thu, 6 Jun 2013 18:36:01 +0200 | ||
4 | Subject: [PATCH] js.pc.in: do not include RequiredDefines.h for depending | ||
5 | packages | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: text/plain; charset=UTF-8 | ||
8 | Content-Transfer-Encoding: 8bit | ||
9 | |||
10 | in our cross environment the would fail with: | ||
11 | |||
12 | | cc1: fatal error: /usr/include/js-17.0/js/RequiredDefines.h: No such file or directory | ||
13 | |||
14 | and currently it only defines __STDC_LIMIT_MACROS | ||
15 | |||
16 | Upstream-Status: Inappropriate [embedded specific] | ||
17 | |||
18 | Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> | ||
19 | --- | ||
20 | js.pc.in | 2 +- | ||
21 | 1 files changed, 1 insertions(+), 1 deletions(-) | ||
22 | |||
23 | diff --git a/js.pc.in b/js.pc.in | ||
24 | index 13d761d..a95a7bd 100644 | ||
25 | --- a/js.pc.in | ||
26 | +++ b/js.pc.in | ||
27 | @@ -8,4 +8,4 @@ Description: The Mozilla library for JavaScript | ||
28 | Version: @MOZILLA_VERSION@ | ||
29 | Requires.private: @NSPR_PKGCONF_CHECK@ | ||
30 | Libs: -L${libdir} -l@LIBRARY_NAME@ | ||
31 | -Cflags: -include ${includedir}/@MODULE@/js/RequiredDefines.h -I${includedir}/@MODULE@ | ||
32 | +Cflags: -I${includedir}/@MODULE@ | ||
33 | -- | ||
34 | 1.7.6.5 | ||
35 | |||
diff --git a/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb b/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb new file mode 100644 index 0000000000..1af1fa6f72 --- /dev/null +++ b/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb | |||
@@ -0,0 +1,36 @@ | |||
1 | SUMMARY = "SpiderMonkey is Mozilla's JavaScript engine written in C/C++" | ||
2 | LICENSE = "MPL-2.0" | ||
3 | LIC_FILES_CHKSUM = "file://../../LICENSE;md5=815ca599c9df247a0c7f619bab123dad" | ||
4 | |||
5 | SRC_URI = " \ | ||
6 | http://ftp.mozilla.org/pub/mozilla.org/js/${PN}${PV}.tar.gz \ | ||
7 | file://0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch \ | ||
8 | " | ||
9 | SRC_URI[md5sum] = "20b6f8f1140ef6e47daa3b16965c9202" | ||
10 | SRC_URI[sha256sum] = "321e964fe9386785d3bf80870640f2fa1c683e32fe988eeb201b04471c172fba" | ||
11 | |||
12 | S = "${WORKDIR}/${PN}${PV}/js/src" | ||
13 | |||
14 | inherit autotools pkgconfig perlnative | ||
15 | |||
16 | DEPENDS += "nspr" | ||
17 | |||
18 | # nspr's package-config is ignored so set libs manually | ||
19 | EXTRA_OECONF = " \ | ||
20 | --target=${TARGET_SYS} \ | ||
21 | --host=${BUILD_SYS} \ | ||
22 | --build=${BUILD_SYS} \ | ||
23 | --prefix=${prefix} \ | ||
24 | --with-nspr-libs='-lplds4 -lplc4 -lnspr4' \ | ||
25 | --enable-threadsafe \ | ||
26 | --libdir=${libdir} \ | ||
27 | " | ||
28 | |||
29 | # mozjs requires autoreconf 2.13 | ||
30 | do_configure() { | ||
31 | ${S}/configure ${EXTRA_OECONF} | ||
32 | } | ||
33 | |||
34 | PACKAGES =+ "lib${PN}" | ||
35 | FILES_lib${PN} += "${libdir}/lib*.so" | ||
36 | FILES_${PN}-dev += "${bindir}/js17-config" | ||
diff --git a/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.NetworkManager.rules b/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.NetworkManager.rules new file mode 100644 index 0000000000..4b50cf8814 --- /dev/null +++ b/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.NetworkManager.rules | |||
@@ -0,0 +1,8 @@ | |||
1 | /* give group 'network' rights to change settings */ | ||
2 | /* taken from https://wiki.archlinux.org/index.php/NetworkManager#Set_up_PolicyKit_permissions */ | ||
3 | |||
4 | polkit.addRule(function(action, subject) { | ||
5 | if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) { | ||
6 | return polkit.Result.YES; | ||
7 | } | ||
8 | }); | ||
diff --git a/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.timedate1.rules b/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.timedate1.rules new file mode 100644 index 0000000000..95b0e0f698 --- /dev/null +++ b/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.timedate1.rules | |||
@@ -0,0 +1,8 @@ | |||
1 | /* give group 'datetime' rights to change settings */ | ||
2 | /* based upon http://lists.freedesktop.org/archives/systemd-devel/2013-March/009576.html */ | ||
3 | |||
4 | polkit.addRule(function(action, subject) { | ||
5 | if (action.id.indexOf("org.freedesktop.timedate1.") == 0 && subject.isInGroup("datetime")) { | ||
6 | return polkit.Result.YES; | ||
7 | } | ||
8 | }); | ||
diff --git a/meta-oe/recipes-extended/polkit/polkit-gnome_0.102.bb b/meta-oe/recipes-extended/polkit/polkit-gnome_0.102.bb new file mode 100644 index 0000000000..df5c9a38ad --- /dev/null +++ b/meta-oe/recipes-extended/polkit/polkit-gnome_0.102.bb | |||
@@ -0,0 +1,26 @@ | |||
1 | SUMMARY = "GNOME Authentication Agent for PolicyKit" | ||
2 | DESCRIPTION = "PolicyKit-gnome provides an Authentication Agent for PolicyKit that integrates well with the GNOME desktop environment" | ||
3 | HOMEPAGE = "http://www.packagekit.org/" | ||
4 | BUGTRACKER = "http://bugzilla.gnome.org/" | ||
5 | DEPENDS = "polkit dbus-glib gconf gtk+" | ||
6 | LICENSE = "LGPLv2+" | ||
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=74579fab173e4c5e12aac0cd83ee98ec \ | ||
8 | file://src/main.c;beginline=1;endline=20;md5=aba145d1802f2329ba561e3e48ecb795" | ||
9 | |||
10 | SRC_URI = "http://hal.freedesktop.org/releases/polkit-gnome-${PV}.tar.bz2 \ | ||
11 | " | ||
12 | |||
13 | PR = "r2" | ||
14 | |||
15 | EXTRA_OECONF = " --disable-scrollkeeper \ | ||
16 | --disable-man-pages \ | ||
17 | --disable-examples \ | ||
18 | --disable-introspection " | ||
19 | |||
20 | inherit autotools gtk-doc pkgconfig | ||
21 | |||
22 | FILES_${PN} += " ${datadir}/dbus-1 \ | ||
23 | ${datadir}/PolicyKit \ | ||
24 | " | ||
25 | SRC_URI[md5sum] = "f6b485ffd7bd605af815fd2747180481" | ||
26 | SRC_URI[sha256sum] = "81caa6972e651e90ef4ac31d7ed41bc79543d46b850dbd5b14b40f8ef7107d11" | ||
diff --git a/meta-oe/recipes-extended/polkit/polkit-group-rule-datetime.bb b/meta-oe/recipes-extended/polkit/polkit-group-rule-datetime.bb new file mode 100644 index 0000000000..eced4b6de6 --- /dev/null +++ b/meta-oe/recipes-extended/polkit/polkit-group-rule-datetime.bb | |||
@@ -0,0 +1,14 @@ | |||
1 | DESCRIPTION = "Create usergroup datetime. All members off this group are allowed set date/time/timezone via system dbus" | ||
2 | LICENSE = "MIT" | ||
3 | LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" | ||
4 | |||
5 | require polkit-group-rule.inc | ||
6 | |||
7 | SRC_URI = "file://50-org.freedesktop.timedate1.rules" | ||
8 | |||
9 | do_install() { | ||
10 | install -m 0755 ${WORKDIR}/50-org.freedesktop.timedate1.rules ${D}${sysconfdir}/polkit-1/rules.d | ||
11 | } | ||
12 | |||
13 | USERADD_PACKAGES = "${PN}" | ||
14 | GROUPADD_PARAM_${PN} = "--system datetime" | ||
diff --git a/meta-oe/recipes-extended/polkit/polkit-group-rule-network.bb b/meta-oe/recipes-extended/polkit/polkit-group-rule-network.bb new file mode 100644 index 0000000000..551ed3eb8c --- /dev/null +++ b/meta-oe/recipes-extended/polkit/polkit-group-rule-network.bb | |||
@@ -0,0 +1,14 @@ | |||
1 | DESCRIPTION = "Create usergroup network. All members off this group are allowed to modify networkmanager settings" | ||
2 | LICENSE = "MIT" | ||
3 | LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" | ||
4 | |||
5 | require polkit-group-rule.inc | ||
6 | |||
7 | SRC_URI = "file://50-org.freedesktop.NetworkManager.rules" | ||
8 | |||
9 | do_install() { | ||
10 | install -m 0755 ${WORKDIR}/50-org.freedesktop.NetworkManager.rules ${D}${sysconfdir}/polkit-1/rules.d | ||
11 | } | ||
12 | |||
13 | USERADD_PACKAGES = "${PN}" | ||
14 | GROUPADD_PARAM_${PN} = "--system network" | ||
diff --git a/meta-oe/recipes-extended/polkit/polkit-group-rule.inc b/meta-oe/recipes-extended/polkit/polkit-group-rule.inc new file mode 100644 index 0000000000..8d1a89aa3e --- /dev/null +++ b/meta-oe/recipes-extended/polkit/polkit-group-rule.inc | |||
@@ -0,0 +1,9 @@ | |||
1 | # polkit must prepare polkid group | ||
2 | DEPENDS += "polkit" | ||
3 | |||
4 | inherit allarch useradd | ||
5 | |||
6 | do_install_prepend() { | ||
7 | install -m 700 -d ${D}${sysconfdir}/polkit-1/rules.d | ||
8 | chown polkitd:polkitd ${D}${sysconfdir}/polkit-1/rules.d | ||
9 | } | ||
diff --git a/meta-oe/recipes-extended/polkit/polkit/0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch b/meta-oe/recipes-extended/polkit/polkit/0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch new file mode 100644 index 0000000000..b9334a8fdf --- /dev/null +++ b/meta-oe/recipes-extended/polkit/polkit/0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch | |||
@@ -0,0 +1,39 @@ | |||
1 | From 56cadbc45c5ef98a7b775638d2109c4a09a58c06 Mon Sep 17 00:00:00 2001 | ||
2 | From: Martin Jansa <Martin.Jansa@gmail.com> | ||
3 | Date: Sat, 22 Feb 2014 18:09:57 +0100 | ||
4 | Subject: [PATCH] configure.ac: Check only for libsystemd not libsystemd-login | ||
5 | |||
6 | * they were merged into libsystemd in systemd-209 | ||
7 | |||
8 | Upstream-Status: Pending (it would need to be conditional on systemd version for upstream to accept this) | ||
9 | |||
10 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
11 | --- | ||
12 | configure.ac | 4 ++-- | ||
13 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
14 | |||
15 | diff --git a/configure.ac b/configure.ac | ||
16 | index a7b0148..64d513d 100644 | ||
17 | --- a/configure.ac | ||
18 | +++ b/configure.ac | ||
19 | @@ -196,7 +196,7 @@ AC_ARG_ENABLE([libsystemd-login], | ||
20 | [enable_libsystemd_login=auto]) | ||
21 | if test "$enable_libsystemd_login" != "no"; then | ||
22 | PKG_CHECK_MODULES(LIBSYSTEMD_LOGIN, | ||
23 | - [libsystemd-login], | ||
24 | + [libsystemd], | ||
25 | have_libsystemd_login=yes, | ||
26 | have_libsystemd_login=no) | ||
27 | if test "$have_libsystemd_login" = "yes"; then | ||
28 | @@ -223,7 +223,7 @@ AS_IF([test "x$cross_compiling" != "xyes" ], [ | ||
29 | AS_IF([test "$enable_libsystemd_login" = "no" ], [ | ||
30 | AC_MSG_WARN([ConsoleKit requested but system appears to use systemd]) | ||
31 | ], [ | ||
32 | - AC_MSG_ERROR([ConsoleKit autoconfigured, but systemd is in use (missing libsystemd-login pkg-config?)]) | ||
33 | + AC_MSG_ERROR([ConsoleKit autoconfigured, but systemd is in use (missing libsystemd pkg-config?)]) | ||
34 | ]) | ||
35 | ]) | ||
36 | ]) | ||
37 | -- | ||
38 | 1.8.5.3 | ||
39 | |||
diff --git a/meta-oe/recipes-extended/polkit/polkit/polkit-1_pam.patch b/meta-oe/recipes-extended/polkit/polkit/polkit-1_pam.patch new file mode 100644 index 0000000000..74647efce4 --- /dev/null +++ b/meta-oe/recipes-extended/polkit/polkit/polkit-1_pam.patch | |||
@@ -0,0 +1,23 @@ | |||
1 | polkit: No system-auth in OE-Core, we can use common-* in place of it. | ||
2 | |||
3 | Upstream-Status:Inappropriate [configuration] | ||
4 | |||
5 | Signed-off-by: Xiaofeng Yan <xiaofeng.yan@windriver.com> | ||
6 | |||
7 | --- a/configure.ac 2011-03-04 02:26:20.000000000 +0800 | ||
8 | +++ b/configure.ac.new 2011-07-18 10:14:12.516818852 +0800 | ||
9 | @@ -350,10 +350,10 @@ | ||
10 | PAM_FILE_INCLUDE_PASSWORD=system | ||
11 | PAM_FILE_INCLUDE_SESSION=system | ||
12 | else | ||
13 | - PAM_FILE_INCLUDE_AUTH=system-auth | ||
14 | - PAM_FILE_INCLUDE_ACCOUNT=system-auth | ||
15 | - PAM_FILE_INCLUDE_PASSWORD=system-auth | ||
16 | - PAM_FILE_INCLUDE_SESSION=system-auth | ||
17 | + PAM_FILE_INCLUDE_AUTH=common-auth | ||
18 | + PAM_FILE_INCLUDE_ACCOUNT=common-account | ||
19 | + PAM_FILE_INCLUDE_PASSWORD=common-password | ||
20 | + PAM_FILE_INCLUDE_SESSION=common-session | ||
21 | fi | ||
22 | |||
23 | AC_SUBST(PAM_FILE_INCLUDE_AUTH) | ||
diff --git a/meta-oe/recipes-extended/polkit/polkit_0.111.bb b/meta-oe/recipes-extended/polkit/polkit_0.111.bb new file mode 100644 index 0000000000..4614387055 --- /dev/null +++ b/meta-oe/recipes-extended/polkit/polkit_0.111.bb | |||
@@ -0,0 +1,61 @@ | |||
1 | SUMMARY = "PolicyKit Authorization Framework" | ||
2 | DESCRIPTION = "The polkit package is an application-level toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes." | ||
3 | HOMEPAGE = "http://www.freedesktop.org/wiki/Software/polkit" | ||
4 | LICENSE = "LGPLv2+" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb \ | ||
6 | file://src/polkit/polkit.h;beginline=1;endline=20;md5=0a8630b0133176d0504c87a0ded39db4" | ||
7 | |||
8 | DEPENDS = "expat glib-2.0 intltool-native gobject-introspection-stub mozjs" | ||
9 | |||
10 | inherit autotools gtk-doc pkgconfig useradd systemd | ||
11 | |||
12 | PACKAGECONFIG = "${@base_contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \ | ||
13 | ${@base_contains('DISTRO_FEATURES','systemd','systemd','consolekit',d)}" | ||
14 | |||
15 | PACKAGECONFIG[pam] = "--with-authfw=pam,--with-authfw=shadow,libpam,libpam" | ||
16 | PACKAGECONFIG[systemd] = "--enable-libsystemd-login=yes --with-systemdsystemunitdir=${systemd_unitdir}/system/,--enable-libsystemd-login=no --with-systemdsystemunitdir=,systemd" | ||
17 | # there is no --enable/--disable option for consolekit and it's not picked by shlibs, so add it to RDEPENDS | ||
18 | PACKAGECONFIG[consolekit] = ",,,consolekit" | ||
19 | |||
20 | PAM_SRC_URI = "file://polkit-1_pam.patch" | ||
21 | SRC_URI = "http://www.freedesktop.org/software/polkit/releases/polkit-${PV}.tar.gz \ | ||
22 | ${@base_contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \ | ||
23 | file://0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch \ | ||
24 | " | ||
25 | |||
26 | SRC_URI[md5sum] = "81b116edf986d8e13502929a171f4e0d" | ||
27 | SRC_URI[sha256sum] = "02ae544547211b687818c97bcbf19bf6b8b5be7fda93000525a8765c7bed1ea1" | ||
28 | |||
29 | EXTRA_OECONF = "--with-os-type=moblin --disable-man-pages --disable-introspection" | ||
30 | |||
31 | do_install_append() { | ||
32 | # see configure.log for more details | ||
33 | chown root:root ${D}${libdir}/${BPN}-1/polkit-agent-helper-1 | ||
34 | chmod 4755 ${D}${libdir}/${BPN}-1/polkit-agent-helper-1 | ||
35 | |||
36 | chown root:root ${D}${bindir}/pkexec | ||
37 | chmod 4755 ${D}${bindir}/pkexec | ||
38 | |||
39 | chown polkitd:polkitd ${D}${sysconfdir}/${BPN}-1/rules.d | ||
40 | chmod 700 ${D}${sysconfdir}/${BPN}-1/rules.d | ||
41 | |||
42 | chown polkitd:polkitd ${D}${datadir}/${BPN}-1/rules.d | ||
43 | chmod 700 ${D}${datadir}/${BPN}-1/rules.d | ||
44 | } | ||
45 | |||
46 | PACKAGES =+ "${PN}-examples" | ||
47 | |||
48 | FILES_${PN} += " \ | ||
49 | ${libdir}/${BPN}-1 \ | ||
50 | ${datadir}/dbus-1 \ | ||
51 | ${datadir}/${BPN}-1 \ | ||
52 | " | ||
53 | FILES_${PN}-dbg += "${libdir}/${BPN}-1/.debug" | ||
54 | |||
55 | FILES_${PN}-examples = "${bindir}/*example*" | ||
56 | |||
57 | USERADD_PACKAGES = "${PN}" | ||
58 | USERADD_PARAM_${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/${BPN}-1 polkitd" | ||
59 | |||
60 | SYSTEMD_SERVICE_${PN} = "${BPN}.service" | ||
61 | SYSTEMD_AUTO_ENABLE = "disable" | ||
diff --git a/meta-oe/recipes-extended/redis/redis/hiredis-use-default-CC-if-it-is-set.patch b/meta-oe/recipes-extended/redis/redis/hiredis-use-default-CC-if-it-is-set.patch new file mode 100644 index 0000000000..8135fc28e3 --- /dev/null +++ b/meta-oe/recipes-extended/redis/redis/hiredis-use-default-CC-if-it-is-set.patch | |||
@@ -0,0 +1,29 @@ | |||
1 | From dc745a33f3875cc72d41bd34ed490b352e546352 Mon Sep 17 00:00:00 2001 | ||
2 | From: Venture Research <tech@ventureresearch.com> | ||
3 | Date: Fri, 8 Feb 2013 17:39:52 -0600 | ||
4 | Subject: [PATCH] hiredis: use default CC if it is set | ||
5 | |||
6 | Instead of trying to automagically figure out CC, which breaks with OE | ||
7 | as CC has spaces in it, just skip it if one was already passed in. | ||
8 | |||
9 | Signed-off-by: Venture Research <tech@ventureresearch.com> | ||
10 | --- | ||
11 | deps/hiredis/Makefile | 2 +- | ||
12 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
13 | |||
14 | diff --git a/deps/hiredis/Makefile b/deps/hiredis/Makefile | ||
15 | index 16b8767..0b27c82 100644 | ||
16 | --- a/deps/hiredis/Makefile | ||
17 | +++ b/deps/hiredis/Makefile | ||
18 | @@ -11,7 +11,7 @@ HIREDIS_MAJOR=0 | ||
19 | HIREDIS_MINOR=10 | ||
20 | |||
21 | # Fallback to gcc when $CC is not in $PATH. | ||
22 | -CC:=$(shell sh -c 'type $(CC) >/dev/null 2>/dev/null && echo $(CC) || echo gcc') | ||
23 | +CC?=$(shell sh -c 'type $(CC) >/dev/null 2>/dev/null && echo $(CC) || echo gcc') | ||
24 | OPTIMIZATION?=-O3 | ||
25 | WARNINGS=-Wall -W -Wstrict-prototypes -Wwrite-strings | ||
26 | DEBUG?= -g -ggdb | ||
27 | -- | ||
28 | 1.8.1.2 | ||
29 | |||
diff --git a/meta-oe/recipes-extended/redis/redis/init-redis-server b/meta-oe/recipes-extended/redis/redis/init-redis-server new file mode 100755 index 0000000000..6014d70c0e --- /dev/null +++ b/meta-oe/recipes-extended/redis/redis/init-redis-server | |||
@@ -0,0 +1,40 @@ | |||
1 | #!/bin/sh | ||
2 | # | ||
3 | ### BEGIN INIT INFO | ||
4 | # Provides: redis-server | ||
5 | # Required-Start: $network | ||
6 | # Required-Stop: $network | ||
7 | # Default-Start: S 2 3 4 5 | ||
8 | # Default-Stop: 0 1 6 | ||
9 | # Short-Description: Redis, a key-value store | ||
10 | # Description: Redis is an open source, advanced key-value store. | ||
11 | # http://redis.io | ||
12 | ### END INIT INFO | ||
13 | |||
14 | test -f /usr/bin/redis-server || exit 0 | ||
15 | |||
16 | ARGS="/etc/redis/redis.conf" | ||
17 | |||
18 | case "$1" in | ||
19 | start) | ||
20 | echo "Starting redis-server..." | ||
21 | start-stop-daemon --start --quiet --exec /usr/bin/redis-server -- $ARGS | ||
22 | ;; | ||
23 | stop) | ||
24 | echo "Stopping redis-server..." | ||
25 | start-stop-daemon --stop --quiet --exec /usr/bin/redis-server | ||
26 | ;; | ||
27 | restart) | ||
28 | echo "Stopping redis-server..." | ||
29 | start-stop-daemon --stop --quiet --exec /usr/bin/redis-server | ||
30 | echo "Starting redis-server..." | ||
31 | start-stop-daemon --start --quiet --exec /usr/bin/redis-server -- $ARGS | ||
32 | ;; | ||
33 | *) | ||
34 | echo "Usage: /etc/init.d/redis-server {start|stop|restart}" | ||
35 | exit 1 | ||
36 | ;; | ||
37 | esac | ||
38 | |||
39 | exit 0 | ||
40 | |||
diff --git a/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch b/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch new file mode 100644 index 0000000000..c4d1bc493b --- /dev/null +++ b/meta-oe/recipes-extended/redis/redis/lua-update-Makefile-to-use-environment-build-setting.patch | |||
@@ -0,0 +1,54 @@ | |||
1 | From 394108035d350ae662a431c80131f812b5f72dff Mon Sep 17 00:00:00 2001 | ||
2 | From: Venture Research <tech@ventureresearch.com> | ||
3 | Date: Fri, 8 Feb 2013 20:22:19 -0600 | ||
4 | Subject: [PATCH] lua: update Makefile to use environment build settings | ||
5 | |||
6 | OE-specific parameters, instead of overriding all of these simply use | ||
7 | the ones that are already passed in. Also configure for only Linux... | ||
8 | |||
9 | Signed-off-by: Venture Research <tech@ventureresearch.com> | ||
10 | --- | ||
11 | deps/lua/src/Makefile | 18 +++++++----------- | ||
12 | 1 file changed, 7 insertions(+), 11 deletions(-) | ||
13 | |||
14 | diff --git a/deps/lua/src/Makefile b/deps/lua/src/Makefile | ||
15 | index 77d6a48..888d0da 100644 | ||
16 | --- a/deps/lua/src/Makefile | ||
17 | +++ b/deps/lua/src/Makefile | ||
18 | @@ -5,18 +5,14 @@ | ||
19 | # == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= | ||
20 | |||
21 | # Your platform. See PLATS for possible values. | ||
22 | -PLAT= none | ||
23 | +PLAT= linux | ||
24 | |||
25 | -CC= gcc | ||
26 | -CFLAGS= -O2 -Wall $(MYCFLAGS) | ||
27 | -AR= ar rcu | ||
28 | -RANLIB= ranlib | ||
29 | -RM= rm -f | ||
30 | -LIBS= -lm $(MYLIBS) | ||
31 | - | ||
32 | -MYCFLAGS= | ||
33 | +MYCFLAGS=-DLUA_USE_LINUX | ||
34 | MYLDFLAGS= | ||
35 | -MYLIBS= | ||
36 | +MYLIBS=-Wl,-E -ldl -lreadline -lhistory -lncurses | ||
37 | + | ||
38 | +CFLAGS += $(MYCFLAGS) | ||
39 | +LIBS += -lm $(MYLIBS) | ||
40 | |||
41 | # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= | ||
42 | |||
43 | @@ -48,7 +44,7 @@ o: $(ALL_O) | ||
44 | a: $(ALL_A) | ||
45 | |||
46 | $(LUA_A): $(CORE_O) $(LIB_O) | ||
47 | - $(AR) $@ $? | ||
48 | + $(AR) rcu $@ $? | ||
49 | $(RANLIB) $@ | ||
50 | |||
51 | $(LUA_T): $(LUA_O) $(LUA_A) | ||
52 | -- | ||
53 | 1.8.1.2 | ||
54 | |||
diff --git a/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch b/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch new file mode 100644 index 0000000000..b89c871290 --- /dev/null +++ b/meta-oe/recipes-extended/redis/redis/oe-use-libc-malloc.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | From f8861d2129b9e18bba137705bfa38c6bd9be1790 Mon Sep 17 00:00:00 2001 | ||
2 | From: Venture Research <tech@ventureresearch.com> | ||
3 | Date: Wed, 6 Feb 2013 20:51:02 -0600 | ||
4 | Subject: [PATCH] hack to force use of libc malloc | ||
5 | |||
6 | Hack to force libc usage as it seems the option to pass it in has been | ||
7 | removed in favor of magic. | ||
8 | |||
9 | Note that this of course doesn't allow tcmalloc and jemalloc, however | ||
10 | jemalloc wasn't building correctly. | ||
11 | |||
12 | Signed-off-by: Venture Research <tech@ventureresearch.com> | ||
13 | --- | ||
14 | src/Makefile | 2 +- | ||
15 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
16 | |||
17 | diff --git a/src/Makefile b/src/Makefile | ||
18 | index 204a271..91b307d 100644 | ||
19 | --- a/src/Makefile | ||
20 | +++ b/src/Makefile | ||
21 | @@ -13,7 +13,8 @@ | ||
22 | # Just use 'make dep', but this is only needed by developers. | ||
23 | |||
24 | release_hdr := $(shell sh -c './mkreleasehdr.sh') | ||
25 | -uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') | ||
26 | +# use fake uname option to force use of generic libc | ||
27 | +uname_S := "USE_LIBC_MALLOC" | ||
28 | OPTIMIZATION?=-O2 | ||
29 | DEPENDENCY_TARGETS=hiredis linenoise lua | ||
30 | |||
31 | -- | ||
32 | 1.8.1.2 | ||
33 | |||
diff --git a/meta-oe/recipes-extended/redis/redis/redis.conf b/meta-oe/recipes-extended/redis/redis/redis.conf new file mode 100644 index 0000000000..923b98e5c8 --- /dev/null +++ b/meta-oe/recipes-extended/redis/redis/redis.conf | |||
@@ -0,0 +1,550 @@ | |||
1 | # Redis configuration file example | ||
2 | |||
3 | # Note on units: when memory size is needed, it is possible to specify | ||
4 | # it in the usual form of 1k 5GB 4M and so forth: | ||
5 | # | ||
6 | # 1k => 1000 bytes | ||
7 | # 1kb => 1024 bytes | ||
8 | # 1m => 1000000 bytes | ||
9 | # 1mb => 1024*1024 bytes | ||
10 | # 1g => 1000000000 bytes | ||
11 | # 1gb => 1024*1024*1024 bytes | ||
12 | # | ||
13 | # units are case insensitive so 1GB 1Gb 1gB are all the same. | ||
14 | |||
15 | # By default Redis does not run as a daemon. Use 'yes' if you need it. | ||
16 | # Note that Redis will write a pid file in /var/run/redis.pid when daemonized. | ||
17 | # | ||
18 | # OE: run as a daemon. | ||
19 | # | ||
20 | daemonize yes | ||
21 | |||
22 | # When running daemonized, Redis writes a pid file in /var/run/redis.pid by | ||
23 | # default. You can specify a custom pid file location here. | ||
24 | pidfile /var/run/redis.pid | ||
25 | |||
26 | # Accept connections on the specified port, default is 6379. | ||
27 | # If port 0 is specified Redis will not listen on a TCP socket. | ||
28 | port 6379 | ||
29 | |||
30 | # If you want you can bind a single interface, if the bind option is not | ||
31 | # specified all the interfaces will listen for incoming connections. | ||
32 | # | ||
33 | # bind 127.0.0.1 | ||
34 | |||
35 | # Specify the path for the unix socket that will be used to listen for | ||
36 | # incoming connections. There is no default, so Redis will not listen | ||
37 | # on a unix socket when not specified. | ||
38 | # | ||
39 | # unixsocket /tmp/redis.sock | ||
40 | # unixsocketperm 755 | ||
41 | |||
42 | # Close the connection after a client is idle for N seconds (0 to disable) | ||
43 | timeout 0 | ||
44 | |||
45 | # Set server verbosity to 'debug' | ||
46 | # it can be one of: | ||
47 | # debug (a lot of information, useful for development/testing) | ||
48 | # verbose (many rarely useful info, but not a mess like the debug level) | ||
49 | # notice (moderately verbose, what you want in production probably) | ||
50 | # warning (only very important / critical messages are logged) | ||
51 | loglevel notice | ||
52 | |||
53 | # Specify the log file name. Also 'stdout' can be used to force | ||
54 | # Redis to log on the standard output. Note that if you use standard | ||
55 | # output for logging but daemonize, logs will be sent to /dev/null | ||
56 | logfile /var/log/redis.log | ||
57 | |||
58 | # To enable logging to the system logger, just set 'syslog-enabled' to yes, | ||
59 | # and optionally update the other syslog parameters to suit your needs. | ||
60 | # syslog-enabled no | ||
61 | |||
62 | # Specify the syslog identity. | ||
63 | # syslog-ident redis | ||
64 | |||
65 | # Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7. | ||
66 | # syslog-facility local0 | ||
67 | |||
68 | # Set the number of databases. The default database is DB 0, you can select | ||
69 | # a different one on a per-connection basis using SELECT <dbid> where | ||
70 | # dbid is a number between 0 and 'databases'-1 | ||
71 | databases 16 | ||
72 | |||
73 | ################################ SNAPSHOTTING ################################# | ||
74 | # | ||
75 | # Save the DB on disk: | ||
76 | # | ||
77 | # save <seconds> <changes> | ||
78 | # | ||
79 | # Will save the DB if both the given number of seconds and the given | ||
80 | # number of write operations against the DB occurred. | ||
81 | # | ||
82 | # In the example below the behaviour will be to save: | ||
83 | # after 900 sec (15 min) if at least 1 key changed | ||
84 | # after 300 sec (5 min) if at least 10 keys changed | ||
85 | # after 60 sec if at least 10000 keys changed | ||
86 | # | ||
87 | # Note: you can disable saving at all commenting all the "save" lines. | ||
88 | # | ||
89 | # It is also possible to remove all the previously configured save | ||
90 | # points by adding a save directive with a single empty string argument | ||
91 | # like in the following example: | ||
92 | # | ||
93 | # save "" | ||
94 | |||
95 | #save 900 1 | ||
96 | #save 300 10 | ||
97 | #save 60 10000 | ||
98 | |||
99 | # OE: tune for a small embedded system with a limited # of keys. | ||
100 | save 120 1 | ||
101 | save 60 100 | ||
102 | save 30 1000 | ||
103 | |||
104 | # By default Redis will stop accepting writes if RDB snapshots are enabled | ||
105 | # (at least one save point) and the latest background save failed. | ||
106 | # This will make the user aware (in an hard way) that data is not persisting | ||
107 | # on disk properly, otherwise chances are that no one will notice and some | ||
108 | # distater will happen. | ||
109 | # | ||
110 | # If the background saving process will start working again Redis will | ||
111 | # automatically allow writes again. | ||
112 | # | ||
113 | # However if you have setup your proper monitoring of the Redis server | ||
114 | # and persistence, you may want to disable this feature so that Redis will | ||
115 | # continue to work as usually even if there are problems with disk, | ||
116 | # permissions, and so forth. | ||
117 | stop-writes-on-bgsave-error yes | ||
118 | |||
119 | # Compress string objects using LZF when dump .rdb databases? | ||
120 | # For default that's set to 'yes' as it's almost always a win. | ||
121 | # If you want to save some CPU in the saving child set it to 'no' but | ||
122 | # the dataset will likely be bigger if you have compressible values or keys. | ||
123 | rdbcompression yes | ||
124 | |||
125 | # Since verison 5 of RDB a CRC64 checksum is placed at the end of the file. | ||
126 | # This makes the format more resistant to corruption but there is a performance | ||
127 | # hit to pay (around 10%) when saving and loading RDB files, so you can disable it | ||
128 | # for maximum performances. | ||
129 | # | ||
130 | # RDB files created with checksum disabled have a checksum of zero that will | ||
131 | # tell the loading code to skip the check. | ||
132 | rdbchecksum yes | ||
133 | |||
134 | # The filename where to dump the DB | ||
135 | dbfilename dump.rdb | ||
136 | |||
137 | # The working directory. | ||
138 | # | ||
139 | # The DB will be written inside this directory, with the filename specified | ||
140 | # above using the 'dbfilename' configuration directive. | ||
141 | # | ||
142 | # Also the Append Only File will be created inside this directory. | ||
143 | # | ||
144 | # Note that you must specify a directory here, not a file name. | ||
145 | dir /var/lib/redis/ | ||
146 | |||
147 | ################################# REPLICATION ################################# | ||
148 | |||
149 | # Master-Slave replication. Use slaveof to make a Redis instance a copy of | ||
150 | # another Redis server. Note that the configuration is local to the slave | ||
151 | # so for example it is possible to configure the slave to save the DB with a | ||
152 | # different interval, or to listen to another port, and so on. | ||
153 | # | ||
154 | # slaveof <masterip> <masterport> | ||
155 | |||
156 | # If the master is password protected (using the "requirepass" configuration | ||
157 | # directive below) it is possible to tell the slave to authenticate before | ||
158 | # starting the replication synchronization process, otherwise the master will | ||
159 | # refuse the slave request. | ||
160 | # | ||
161 | # masterauth <master-password> | ||
162 | |||
163 | # When a slave lost the connection with the master, or when the replication | ||
164 | # is still in progress, the slave can act in two different ways: | ||
165 | # | ||
166 | # 1) if slave-serve-stale-data is set to 'yes' (the default) the slave will | ||
167 | # still reply to client requests, possibly with out of date data, or the | ||
168 | # data set may just be empty if this is the first synchronization. | ||
169 | # | ||
170 | # 2) if slave-serve-stale data is set to 'no' the slave will reply with | ||
171 | # an error "SYNC with master in progress" to all the kind of commands | ||
172 | # but to INFO and SLAVEOF. | ||
173 | # | ||
174 | slave-serve-stale-data yes | ||
175 | |||
176 | # You can configure a slave instance to accept writes or not. Writing against | ||
177 | # a slave instance may be useful to store some ephemeral data (because data | ||
178 | # written on a slave will be easily deleted after resync with the master) but | ||
179 | # may also cause problems if clients are writing to it because of a | ||
180 | # misconfiguration. | ||
181 | # | ||
182 | # Since Redis 2.6 by default slaves are read-only. | ||
183 | # | ||
184 | # Note: read only slaves are not designed to be exposed to untrusted clients | ||
185 | # on the internet. It's just a protection layer against misuse of the instance. | ||
186 | # Still a read only slave exports by default all the administrative commands | ||
187 | # such as CONFIG, DEBUG, and so forth. To a limited extend you can improve | ||
188 | # security of read only slaves using 'rename-command' to shadow all the | ||
189 | # administrative / dangerous commands. | ||
190 | slave-read-only yes | ||
191 | |||
192 | # Slaves send PINGs to server in a predefined interval. It's possible to change | ||
193 | # this interval with the repl_ping_slave_period option. The default value is 10 | ||
194 | # seconds. | ||
195 | # | ||
196 | # repl-ping-slave-period 10 | ||
197 | |||
198 | # The following option sets a timeout for both Bulk transfer I/O timeout and | ||
199 | # master data or ping response timeout. The default value is 60 seconds. | ||
200 | # | ||
201 | # It is important to make sure that this value is greater than the value | ||
202 | # specified for repl-ping-slave-period otherwise a timeout will be detected | ||
203 | # every time there is low traffic between the master and the slave. | ||
204 | # | ||
205 | # repl-timeout 60 | ||
206 | |||
207 | # The slave priority is an integer number published by Redis in the INFO output. | ||
208 | # It is used by Redis Sentinel in order to select a slave to promote into a | ||
209 | # master if the master is no longer working correctly. | ||
210 | # | ||
211 | # A slave with a low priority number is considered better for promotion, so | ||
212 | # for instance if there are three slaves with priority 10, 100, 25 Sentinel will | ||
213 | # pick the one wtih priority 10, that is the lowest. | ||
214 | # | ||
215 | # However a special priority of 0 marks the slave as not able to perform the | ||
216 | # role of master, so a slave with priority of 0 will never be selected by | ||
217 | # Redis Sentinel for promotion. | ||
218 | # | ||
219 | # By default the priority is 100. | ||
220 | slave-priority 100 | ||
221 | |||
222 | ################################## SECURITY ################################### | ||
223 | |||
224 | # Require clients to issue AUTH <PASSWORD> before processing any other | ||
225 | # commands. This might be useful in environments in which you do not trust | ||
226 | # others with access to the host running redis-server. | ||
227 | # | ||
228 | # This should stay commented out for backward compatibility and because most | ||
229 | # people do not need auth (e.g. they run their own servers). | ||
230 | # | ||
231 | # Warning: since Redis is pretty fast an outside user can try up to | ||
232 | # 150k passwords per second against a good box. This means that you should | ||
233 | # use a very strong password otherwise it will be very easy to break. | ||
234 | # | ||
235 | # requirepass foobared | ||
236 | |||
237 | # Command renaming. | ||
238 | # | ||
239 | # It is possible to change the name of dangerous commands in a shared | ||
240 | # environment. For instance the CONFIG command may be renamed into something | ||
241 | # of hard to guess so that it will be still available for internal-use | ||
242 | # tools but not available for general clients. | ||
243 | # | ||
244 | # Example: | ||
245 | # | ||
246 | # rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52 | ||
247 | # | ||
248 | # It is also possible to completely kill a command renaming it into | ||
249 | # an empty string: | ||
250 | # | ||
251 | # rename-command CONFIG "" | ||
252 | |||
253 | ################################### LIMITS #################################### | ||
254 | |||
255 | # Set the max number of connected clients at the same time. By default | ||
256 | # this limit is set to 10000 clients, however if the Redis server is not | ||
257 | # able ot configure the process file limit to allow for the specified limit | ||
258 | # the max number of allowed clients is set to the current file limit | ||
259 | # minus 32 (as Redis reserves a few file descriptors for internal uses). | ||
260 | # | ||
261 | # Once the limit is reached Redis will close all the new connections sending | ||
262 | # an error 'max number of clients reached'. | ||
263 | # | ||
264 | # maxclients 10000 | ||
265 | |||
266 | # Don't use more memory than the specified amount of bytes. | ||
267 | # When the memory limit is reached Redis will try to remove keys | ||
268 | # accordingly to the eviction policy selected (see maxmemmory-policy). | ||
269 | # | ||
270 | # If Redis can't remove keys according to the policy, or if the policy is | ||
271 | # set to 'noeviction', Redis will start to reply with errors to commands | ||
272 | # that would use more memory, like SET, LPUSH, and so on, and will continue | ||
273 | # to reply to read-only commands like GET. | ||
274 | # | ||
275 | # This option is usually useful when using Redis as an LRU cache, or to set | ||
276 | # an hard memory limit for an instance (using the 'noeviction' policy). | ||
277 | # | ||
278 | # WARNING: If you have slaves attached to an instance with maxmemory on, | ||
279 | # the size of the output buffers needed to feed the slaves are subtracted | ||
280 | # from the used memory count, so that network problems / resyncs will | ||
281 | # not trigger a loop where keys are evicted, and in turn the output | ||
282 | # buffer of slaves is full with DELs of keys evicted triggering the deletion | ||
283 | # of more keys, and so forth until the database is completely emptied. | ||
284 | # | ||
285 | # In short... if you have slaves attached it is suggested that you set a lower | ||
286 | # limit for maxmemory so that there is some free RAM on the system for slave | ||
287 | # output buffers (but this is not needed if the policy is 'noeviction'). | ||
288 | # | ||
289 | # maxmemory <bytes> | ||
290 | |||
291 | # MAXMEMORY POLICY: how Redis will select what to remove when maxmemory | ||
292 | # is reached? You can select among five behavior: | ||
293 | # | ||
294 | # volatile-lru -> remove the key with an expire set using an LRU algorithm | ||
295 | # allkeys-lru -> remove any key accordingly to the LRU algorithm | ||
296 | # volatile-random -> remove a random key with an expire set | ||
297 | # allkeys-random -> remove a random key, any key | ||
298 | # volatile-ttl -> remove the key with the nearest expire time (minor TTL) | ||
299 | # noeviction -> don't expire at all, just return an error on write operations | ||
300 | # | ||
301 | # Note: with all the kind of policies, Redis will return an error on write | ||
302 | # operations, when there are not suitable keys for eviction. | ||
303 | # | ||
304 | # At the date of writing this commands are: set setnx setex append | ||
305 | # incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd | ||
306 | # sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby | ||
307 | # zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby | ||
308 | # getset mset msetnx exec sort | ||
309 | # | ||
310 | # The default is: | ||
311 | # | ||
312 | # maxmemory-policy volatile-lru | ||
313 | |||
314 | # LRU and minimal TTL algorithms are not precise algorithms but approximated | ||
315 | # algorithms (in order to save memory), so you can select as well the sample | ||
316 | # size to check. For instance for default Redis will check three keys and | ||
317 | # pick the one that was used less recently, you can change the sample size | ||
318 | # using the following configuration directive. | ||
319 | # | ||
320 | # maxmemory-samples 3 | ||
321 | |||
322 | ############################## APPEND ONLY MODE ############################### | ||
323 | |||
324 | # By default Redis asynchronously dumps the dataset on disk. This mode is | ||
325 | # good enough in many applications, but an issue with the Redis process or | ||
326 | # a power outage may result into a few minutes of writes lost (depending on | ||
327 | # the configured save points). | ||
328 | # | ||
329 | # The Append Only File is an alternative persistence mode that provides | ||
330 | # much better durability. For instance using the default data fsync policy | ||
331 | # (see later in the config file) Redis can lose just one second of writes in a | ||
332 | # dramatic event like a server power outage, or a single write if something | ||
333 | # wrong with the Redis process itself happens, but the operating system is | ||
334 | # still running correctly. | ||
335 | # | ||
336 | # AOF and RDB persistence can be enabled at the same time without problems. | ||
337 | # If the AOF is enabled on startup Redis will load the AOF, that is the file | ||
338 | # with the better durability guarantees. | ||
339 | # | ||
340 | # Please check http://redis.io/topics/persistence for more information. | ||
341 | |||
342 | # | ||
343 | # OE: changed default to enable this | ||
344 | appendonly yes | ||
345 | |||
346 | # The name of the append only file (default: "appendonly.aof") | ||
347 | # appendfilename appendonly.aof | ||
348 | |||
349 | # The fsync() call tells the Operating System to actually write data on disk | ||
350 | # instead to wait for more data in the output buffer. Some OS will really flush | ||
351 | # data on disk, some other OS will just try to do it ASAP. | ||
352 | # | ||
353 | # Redis supports three different modes: | ||
354 | # | ||
355 | # no: don't fsync, just let the OS flush the data when it wants. Faster. | ||
356 | # always: fsync after every write to the append only log . Slow, Safest. | ||
357 | # everysec: fsync only one time every second. Compromise. | ||
358 | # | ||
359 | # The default is "everysec" that's usually the right compromise between | ||
360 | # speed and data safety. It's up to you to understand if you can relax this to | ||
361 | # "no" that will let the operating system flush the output buffer when | ||
362 | # it wants, for better performances (but if you can live with the idea of | ||
363 | # some data loss consider the default persistence mode that's snapshotting), | ||
364 | # or on the contrary, use "always" that's very slow but a bit safer than | ||
365 | # everysec. | ||
366 | # | ||
367 | # More details please check the following article: | ||
368 | # http://antirez.com/post/redis-persistence-demystified.html | ||
369 | # | ||
370 | # If unsure, use "everysec". | ||
371 | |||
372 | # appendfsync always | ||
373 | appendfsync everysec | ||
374 | # appendfsync no | ||
375 | |||
376 | # When the AOF fsync policy is set to always or everysec, and a background | ||
377 | # saving process (a background save or AOF log background rewriting) is | ||
378 | # performing a lot of I/O against the disk, in some Linux configurations | ||
379 | # Redis may block too long on the fsync() call. Note that there is no fix for | ||
380 | # this currently, as even performing fsync in a different thread will block | ||
381 | # our synchronous write(2) call. | ||
382 | # | ||
383 | # In order to mitigate this problem it's possible to use the following option | ||
384 | # that will prevent fsync() from being called in the main process while a | ||
385 | # BGSAVE or BGREWRITEAOF is in progress. | ||
386 | # | ||
387 | # This means that while another child is saving the durability of Redis is | ||
388 | # the same as "appendfsync none", that in practical terms means that it is | ||
389 | # possible to lost up to 30 seconds of log in the worst scenario (with the | ||
390 | # default Linux settings). | ||
391 | # | ||
392 | # If you have latency problems turn this to "yes". Otherwise leave it as | ||
393 | # "no" that is the safest pick from the point of view of durability. | ||
394 | no-appendfsync-on-rewrite no | ||
395 | |||
396 | # Automatic rewrite of the append only file. | ||
397 | # Redis is able to automatically rewrite the log file implicitly calling | ||
398 | # BGREWRITEAOF when the AOF log size will growth by the specified percentage. | ||
399 | # | ||
400 | # This is how it works: Redis remembers the size of the AOF file after the | ||
401 | # latest rewrite (or if no rewrite happened since the restart, the size of | ||
402 | # the AOF at startup is used). | ||
403 | # | ||
404 | # This base size is compared to the current size. If the current size is | ||
405 | # bigger than the specified percentage, the rewrite is triggered. Also | ||
406 | # you need to specify a minimal size for the AOF file to be rewritten, this | ||
407 | # is useful to avoid rewriting the AOF file even if the percentage increase | ||
408 | # is reached but it is still pretty small. | ||
409 | # | ||
410 | # Specify a percentage of zero in order to disable the automatic AOF | ||
411 | # rewrite feature. | ||
412 | |||
413 | auto-aof-rewrite-percentage 100 | ||
414 | auto-aof-rewrite-min-size 64mb | ||
415 | |||
416 | ################################ LUA SCRIPTING ############################### | ||
417 | |||
418 | # Max execution time of a Lua script in milliseconds. | ||
419 | # | ||
420 | # If the maximum execution time is reached Redis will log that a script is | ||
421 | # still in execution after the maximum allowed time and will start to | ||
422 | # reply to queries with an error. | ||
423 | # | ||
424 | # When a long running script exceed the maximum execution time only the | ||
425 | # SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be | ||
426 | # used to stop a script that did not yet called write commands. The second | ||
427 | # is the only way to shut down the server in the case a write commands was | ||
428 | # already issue by the script but the user don't want to wait for the natural | ||
429 | # termination of the script. | ||
430 | # | ||
431 | # Set it to 0 or a negative value for unlimited execution without warnings. | ||
432 | lua-time-limit 5000 | ||
433 | |||
434 | ################################## SLOW LOG ################################### | ||
435 | |||
436 | # The Redis Slow Log is a system to log queries that exceeded a specified | ||
437 | # execution time. The execution time does not include the I/O operations | ||
438 | # like talking with the client, sending the reply and so forth, | ||
439 | # but just the time needed to actually execute the command (this is the only | ||
440 | # stage of command execution where the thread is blocked and can not serve | ||
441 | # other requests in the meantime). | ||
442 | # | ||
443 | # You can configure the slow log with two parameters: one tells Redis | ||
444 | # what is the execution time, in microseconds, to exceed in order for the | ||
445 | # command to get logged, and the other parameter is the length of the | ||
446 | # slow log. When a new command is logged the oldest one is removed from the | ||
447 | # queue of logged commands. | ||
448 | |||
449 | # The following time is expressed in microseconds, so 1000000 is equivalent | ||
450 | # to one second. Note that a negative number disables the slow log, while | ||
451 | # a value of zero forces the logging of every command. | ||
452 | slowlog-log-slower-than 10000 | ||
453 | |||
454 | # There is no limit to this length. Just be aware that it will consume memory. | ||
455 | # You can reclaim memory used by the slow log with SLOWLOG RESET. | ||
456 | slowlog-max-len 128 | ||
457 | |||
458 | ############################### ADVANCED CONFIG ############################### | ||
459 | |||
460 | # Hashes are encoded using a memory efficient data structure when they have a | ||
461 | # small number of entries, and the biggest entry does not exceed a given | ||
462 | # threshold. These thresholds can be configured using the following directives. | ||
463 | hash-max-ziplist-entries 512 | ||
464 | hash-max-ziplist-value 64 | ||
465 | |||
466 | # Similarly to hashes, small lists are also encoded in a special way in order | ||
467 | # to save a lot of space. The special representation is only used when | ||
468 | # you are under the following limits: | ||
469 | list-max-ziplist-entries 512 | ||
470 | list-max-ziplist-value 64 | ||
471 | |||
472 | # Sets have a special encoding in just one case: when a set is composed | ||
473 | # of just strings that happens to be integers in radix 10 in the range | ||
474 | # of 64 bit signed integers. | ||
475 | # The following configuration setting sets the limit in the size of the | ||
476 | # set in order to use this special memory saving encoding. | ||
477 | set-max-intset-entries 512 | ||
478 | |||
479 | # Similarly to hashes and lists, sorted sets are also specially encoded in | ||
480 | # order to save a lot of space. This encoding is only used when the length and | ||
481 | # elements of a sorted set are below the following limits: | ||
482 | zset-max-ziplist-entries 128 | ||
483 | zset-max-ziplist-value 64 | ||
484 | |||
485 | # Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in | ||
486 | # order to help rehashing the main Redis hash table (the one mapping top-level | ||
487 | # keys to values). The hash table implementation Redis uses (see dict.c) | ||
488 | # performs a lazy rehashing: the more operation you run into an hash table | ||
489 | # that is rehashing, the more rehashing "steps" are performed, so if the | ||
490 | # server is idle the rehashing is never complete and some more memory is used | ||
491 | # by the hash table. | ||
492 | # | ||
493 | # The default is to use this millisecond 10 times every second in order to | ||
494 | # active rehashing the main dictionaries, freeing memory when possible. | ||
495 | # | ||
496 | # If unsure: | ||
497 | # use "activerehashing no" if you have hard latency requirements and it is | ||
498 | # not a good thing in your environment that Redis can reply form time to time | ||
499 | # to queries with 2 milliseconds delay. | ||
500 | # | ||
501 | # use "activerehashing yes" if you don't have such hard requirements but | ||
502 | # want to free memory asap when possible. | ||
503 | activerehashing yes | ||
504 | |||
505 | # The client output buffer limits can be used to force disconnection of clients | ||
506 | # that are not reading data from the server fast enough for some reason (a | ||
507 | # common reason is that a Pub/Sub client can't consume messages as fast as the | ||
508 | # publisher can produce them). | ||
509 | # | ||
510 | # The limit can be set differently for the three different classes of clients: | ||
511 | # | ||
512 | # normal -> normal clients | ||
513 | # slave -> slave clients and MONITOR clients | ||
514 | # pubsub -> clients subcribed to at least one pubsub channel or pattern | ||
515 | # | ||
516 | # The syntax of every client-output-buffer-limit directive is the following: | ||
517 | # | ||
518 | # client-output-buffer-limit <class> <hard limit> <soft limit> <soft seconds> | ||
519 | # | ||
520 | # A client is immediately disconnected once the hard limit is reached, or if | ||
521 | # the soft limit is reached and remains reached for the specified number of | ||
522 | # seconds (continuously). | ||
523 | # So for instance if the hard limit is 32 megabytes and the soft limit is | ||
524 | # 16 megabytes / 10 seconds, the client will get disconnected immediately | ||
525 | # if the size of the output buffers reach 32 megabytes, but will also get | ||
526 | # disconnected if the client reaches 16 megabytes and continuously overcomes | ||
527 | # the limit for 10 seconds. | ||
528 | # | ||
529 | # By default normal clients are not limited because they don't receive data | ||
530 | # without asking (in a push way), but just after a request, so only | ||
531 | # asynchronous clients may create a scenario where data is requested faster | ||
532 | # than it can read. | ||
533 | # | ||
534 | # Instead there is a default limit for pubsub and slave clients, since | ||
535 | # subscribers and slaves receive data in a push fashion. | ||
536 | # | ||
537 | # Both the hard or the soft limit can be disabled just setting it to zero. | ||
538 | client-output-buffer-limit normal 0 0 0 | ||
539 | client-output-buffer-limit slave 256mb 64mb 60 | ||
540 | client-output-buffer-limit pubsub 32mb 8mb 60 | ||
541 | |||
542 | ################################## INCLUDES ################################### | ||
543 | |||
544 | # Include one or more other config files here. This is useful if you | ||
545 | # have a standard template that goes to all Redis server but also need | ||
546 | # to customize a few per-server settings. Include files can include | ||
547 | # other files, so use this wisely. | ||
548 | # | ||
549 | # include /path/to/local.conf | ||
550 | # include /path/to/other.conf | ||
diff --git a/meta-oe/recipes-extended/redis/redis_2.6.9.bb b/meta-oe/recipes-extended/redis/redis_2.6.9.bb new file mode 100644 index 0000000000..8f009757fd --- /dev/null +++ b/meta-oe/recipes-extended/redis/redis_2.6.9.bb | |||
@@ -0,0 +1,36 @@ | |||
1 | SUMMARY = "Redis key-value store" | ||
2 | DESCRIPTION = "Redis is an open source, advanced key-value store." | ||
3 | HOMEPAGE = "http://redis.io" | ||
4 | SECTION = "libs" | ||
5 | LICENSE = "BSD" | ||
6 | LIC_FILES_CHKSUM="file://COPYING;md5=673e0ac66aac758f8f2140c6fc7947d2" | ||
7 | |||
8 | SRC_URI = "http://redis.googlecode.com/files/redis-${PV}.tar.gz \ | ||
9 | file://hiredis-use-default-CC-if-it-is-set.patch \ | ||
10 | file://lua-update-Makefile-to-use-environment-build-setting.patch \ | ||
11 | file://oe-use-libc-malloc.patch \ | ||
12 | file://redis.conf \ | ||
13 | file://init-redis-server \ | ||
14 | " | ||
15 | |||
16 | inherit update-rc.d | ||
17 | |||
18 | INITSCRIPT_NAME = "redis-server" | ||
19 | INITSCRIPT_PARAMS = "defaults 87" | ||
20 | |||
21 | SRC_URI[md5sum] = "5093fb7c5f763e828c857daf260665bc" | ||
22 | SRC_URI[sha256sum] = "4d967eff2038aebea33875d17e85ed67179df6505df68529a622f7836d1c7489" | ||
23 | |||
24 | do_install() { | ||
25 | export PREFIX=${D}/${prefix} | ||
26 | oe_runmake install | ||
27 | |||
28 | install -d ${D}/${sysconfdir}/redis | ||
29 | install -m 0755 ${WORKDIR}/redis.conf ${D}/${sysconfdir}/redis/redis.conf | ||
30 | |||
31 | install -d ${D}/${sysconfdir}/init.d | ||
32 | install -m 0755 ${WORKDIR}/init-redis-server ${D}/${sysconfdir}/init.d/redis-server | ||
33 | |||
34 | install -d ${D}/var/lib/redis/ | ||
35 | } | ||
36 | |||
diff --git a/meta-oe/recipes-extended/rrdtool/rrdtool/0001-rrdtool-eradicate-tcl-support.patch b/meta-oe/recipes-extended/rrdtool/rrdtool/0001-rrdtool-eradicate-tcl-support.patch new file mode 100644 index 0000000000..1157dc7201 --- /dev/null +++ b/meta-oe/recipes-extended/rrdtool/rrdtool/0001-rrdtool-eradicate-tcl-support.patch | |||
@@ -0,0 +1,1733 @@ | |||
1 | From 2dcb4bb8aadfead3e77bdb78b96ec8022e605a0d Mon Sep 17 00:00:00 2001 | ||
2 | From: Koen Kooi <koen@dominion.thruhere.net> | ||
3 | Date: Sat, 12 May 2012 20:41:35 +0200 | ||
4 | Subject: [PATCH] rrdtool: eradicate tcl support | ||
5 | |||
6 | TCL breaks autoreconf | ||
7 | |||
8 | Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> | ||
9 | --- | ||
10 | Makefile.am | 3 - | ||
11 | bindings/Makefile.am | 5 +- | ||
12 | bindings/tcl/Makefile.am | 58 ---- | ||
13 | bindings/tcl/Makefile.in | 668 ------------------------------------ | ||
14 | bindings/tcl/README | 31 -- | ||
15 | bindings/tcl/ifOctets.tcl.in | 45 --- | ||
16 | bindings/tcl/tclrrd.c | 762 ------------------------------------------ | ||
17 | configure.ac | 54 --- | ||
18 | 8 files changed, 1 insertion(+), 1625 deletions(-) | ||
19 | delete mode 100644 bindings/tcl/Makefile.am | ||
20 | delete mode 100644 bindings/tcl/Makefile.in | ||
21 | delete mode 100644 bindings/tcl/README | ||
22 | delete mode 100644 bindings/tcl/ifOctets.tcl.in | ||
23 | delete mode 100644 bindings/tcl/tclrrd.c | ||
24 | |||
25 | diff --git a/Makefile.am b/Makefile.am | ||
26 | index 2003373..969e36b 100644 | ||
27 | --- a/Makefile.am | ||
28 | +++ b/Makefile.am | ||
29 | @@ -36,9 +36,6 @@ site-perl-install: all bindings/perl-piped/Makefile bindings/perl-shared/Makefil | ||
30 | cd bindings/perl-piped && $(MAKE) install | ||
31 | cd bindings/perl-shared && $(MAKE) install | ||
32 | |||
33 | -site-tcl-install: all | ||
34 | - cd bindings/tcl && $(MAKE) tcl-install | ||
35 | - | ||
36 | site-python-install: all | ||
37 | cd bindings/python && $(PYTHON) setup.py install $(if $(DESTDIR),--root=$(DESTDIR)) | ||
38 | |||
39 | diff --git a/bindings/Makefile.am b/bindings/Makefile.am | ||
40 | index c4fdc10..3574a60 100644 | ||
41 | --- a/bindings/Makefile.am | ||
42 | +++ b/bindings/Makefile.am | ||
43 | @@ -1,13 +1,10 @@ | ||
44 | .PHONY: python ruby | ||
45 | |||
46 | -if BUILD_TCL | ||
47 | -SUB_tcl = tcl | ||
48 | -endif | ||
49 | if BUILD_LUA | ||
50 | SUB_lua = lua | ||
51 | endif | ||
52 | |||
53 | -SUBDIRS = $(SUB_tcl) $(SUB_lua) | ||
54 | +SUBDIRS = $(SUB_lua) | ||
55 | |||
56 | # the following files are not mentioned in any other Makefile | ||
57 | EXTRA_DIST = perl-piped/MANIFEST perl-piped/README perl-piped/Makefile.PL perl-piped/RRDp.pm perl-piped/t/base.t \ | ||
58 | diff --git a/bindings/tcl/Makefile.am b/bindings/tcl/Makefile.am | ||
59 | deleted file mode 100644 | ||
60 | index c0e8b0f..0000000 | ||
61 | --- a/bindings/tcl/Makefile.am | ||
62 | +++ /dev/null | ||
63 | @@ -1,58 +0,0 @@ | ||
64 | - | ||
65 | -EXTRA_DIST = README tclrrd.c | ||
66 | - | ||
67 | -VERSION = @VERSION@ | ||
68 | - | ||
69 | -AM_CFLAGS = @CFLAGS@ | ||
70 | -### no including this by default @WERROR@ | ||
71 | - | ||
72 | -TCL_PREFIX = @TCL_PREFIX@ | ||
73 | -TCL_SHLIB_LD = @TCL_SHLIB_LD@ | ||
74 | -TCL_SHLIB_CFLAGS = @TCL_SHLIB_CFLAGS@ | ||
75 | -TCL_SHLIB_SUFFIX = @TCL_SHLIB_SUFFIX@ | ||
76 | -TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@ | ||
77 | -TCL_LD_SEARCH_FLAGS = @TCL_LD_SEARCH_FLAGS@ | ||
78 | -TCL_STUB_LIB_SPEC = @TCL_STUB_LIB_SPEC@ | ||
79 | -TCL_INCLUDE_SPEC = @TCL_INCLUDE_SPEC@ | ||
80 | - | ||
81 | -CLEANFILES = tclrrd.o tclrrd.so | ||
82 | - | ||
83 | -SRC_DIR = $(top_srcdir)/src | ||
84 | -AM_CPPFLAGS = $(TCL_INCLUDE_SPEC) -I$(SRC_DIR) -DUSE_TCL_STUBS | ||
85 | -LIBDIRS = -L$(top_builddir)/src/.libs -L$(top_builddir)/src -L$(libdir) | ||
86 | -LIB_RUNTIME_DIR = $(libdir) | ||
87 | - | ||
88 | -if BUILD_TCL_SITE | ||
89 | -tclpkgdir = @TCL_PACKAGE_DIR@ | ||
90 | -tclpkg_DATA = pkgIndex.tcl | ||
91 | -tclpkg_SCRIPTS = ifOctets.tcl | ||
92 | -else | ||
93 | -pkglib_DATA = pkgIndex.tcl | ||
94 | -pkglib_SCRIPTS = ifOctets.tcl | ||
95 | -endif | ||
96 | - | ||
97 | -# Automake doen't like `tclrrd$(VERSION)$(TCL_SHLIB_SUFFIX)' as | ||
98 | -# library name. So we build and install this library `by hand'. | ||
99 | -# | ||
100 | -# We do, however, specify a lib_LIBRARIES target such that | ||
101 | -# automake creates the directory (if neecessary). | ||
102 | -# | ||
103 | -TCL_RRD_LIB = tclrrd$(VERSION)$(TCL_SHLIB_SUFFIX) | ||
104 | - | ||
105 | -lib_LIBRARIES = | ||
106 | - | ||
107 | -all-local: $(TCL_RRD_LIB) | ||
108 | - | ||
109 | -$(TCL_RRD_LIB): tclrrd.o | ||
110 | - $(TCL_SHLIB_LD) $(TCL_LD_SEARCH_FLAGS) $(LIBDIRS) $< -o $@ -lrrd_th -lm $(TCL_STUB_LIB_SPEC) $(LDFLAGS) $(LIBS) | ||
111 | - | ||
112 | -tclrrd.o: tclrrd.c | ||
113 | - $(CC) $(AM_CFLAGS) $(CFLAGS) $(TCL_SHLIB_CFLAGS) $(AM_CPPFLAGS) -c tclrrd.c -DVERSION=\"$(VERSION)\" | ||
114 | - | ||
115 | -pkgIndex.tcl: | ||
116 | - echo "package ifneeded Rrd $(VERSION) \"load $(libdir)/tclrrd$(VERSION)[info sharedlibextension]\"" > $@ | ||
117 | - | ||
118 | -install-exec-local: $(TCL_RRD_LIB) | ||
119 | - @$(NORMAL_INSTALL) | ||
120 | - $(INSTALL_PROGRAM) $(TCL_RRD_LIB) $(DESTDIR)$(libdir)/$(TCL_RRD_LIB) | ||
121 | - | ||
122 | diff --git a/bindings/tcl/Makefile.in b/bindings/tcl/Makefile.in | ||
123 | deleted file mode 100644 | ||
124 | index 0a36517..0000000 | ||
125 | --- a/bindings/tcl/Makefile.in | ||
126 | +++ /dev/null | ||
127 | @@ -1,668 +0,0 @@ | ||
128 | -# Makefile.in generated by automake 1.11 from Makefile.am. | ||
129 | -# @configure_input@ | ||
130 | - | ||
131 | -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, | ||
132 | -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, | ||
133 | -# Inc. | ||
134 | -# This Makefile.in is free software; the Free Software Foundation | ||
135 | -# gives unlimited permission to copy and/or distribute it, | ||
136 | -# with or without modifications, as long as this notice is preserved. | ||
137 | - | ||
138 | -# This program is distributed in the hope that it will be useful, | ||
139 | -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without | ||
140 | -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A | ||
141 | -# PARTICULAR PURPOSE. | ||
142 | - | ||
143 | -@SET_MAKE@ | ||
144 | - | ||
145 | - | ||
146 | - | ||
147 | -VPATH = @srcdir@ | ||
148 | -pkgdatadir = $(datadir)/@PACKAGE@ | ||
149 | -pkgincludedir = $(includedir)/@PACKAGE@ | ||
150 | -pkglibdir = $(libdir)/@PACKAGE@ | ||
151 | -pkglibexecdir = $(libexecdir)/@PACKAGE@ | ||
152 | -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd | ||
153 | -install_sh_DATA = $(install_sh) -c -m 644 | ||
154 | -install_sh_PROGRAM = $(install_sh) -c | ||
155 | -install_sh_SCRIPT = $(install_sh) -c | ||
156 | -INSTALL_HEADER = $(INSTALL_DATA) | ||
157 | -transform = $(program_transform_name) | ||
158 | -NORMAL_INSTALL = : | ||
159 | -PRE_INSTALL = : | ||
160 | -POST_INSTALL = : | ||
161 | -NORMAL_UNINSTALL = : | ||
162 | -PRE_UNINSTALL = : | ||
163 | -POST_UNINSTALL = : | ||
164 | -build_triplet = @build@ | ||
165 | -host_triplet = @host@ | ||
166 | -target_triplet = @target@ | ||
167 | -subdir = bindings/tcl | ||
168 | -DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ | ||
169 | - $(srcdir)/ifOctets.tcl.in | ||
170 | -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | ||
171 | -am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ | ||
172 | - $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/iconv.m4 \ | ||
173 | - $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/lib-ld.m4 \ | ||
174 | - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ | ||
175 | - $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ | ||
176 | - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ | ||
177 | - $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ | ||
178 | - $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ | ||
179 | - $(top_srcdir)/configure.ac | ||
180 | -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ | ||
181 | - $(ACLOCAL_M4) | ||
182 | -mkinstalldirs = $(install_sh) -d | ||
183 | -CONFIG_HEADER = $(top_builddir)/rrd_config.h | ||
184 | -CONFIG_CLEAN_FILES = ifOctets.tcl | ||
185 | -CONFIG_CLEAN_VPATH_FILES = | ||
186 | -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; | ||
187 | -am__vpath_adj = case $$p in \ | ||
188 | - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ | ||
189 | - *) f=$$p;; \ | ||
190 | - esac; | ||
191 | -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; | ||
192 | -am__install_max = 40 | ||
193 | -am__nobase_strip_setup = \ | ||
194 | - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` | ||
195 | -am__nobase_strip = \ | ||
196 | - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" | ||
197 | -am__nobase_list = $(am__nobase_strip_setup); \ | ||
198 | - for p in $$list; do echo "$$p $$p"; done | \ | ||
199 | - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ | ||
200 | - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ | ||
201 | - if (++n[$$2] == $(am__install_max)) \ | ||
202 | - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ | ||
203 | - END { for (dir in files) print dir, files[dir] }' | ||
204 | -am__base_list = \ | ||
205 | - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ | ||
206 | - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | ||
207 | -am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkglibdir)" \ | ||
208 | - "$(DESTDIR)$(tclpkgdir)" "$(DESTDIR)$(pkglibdir)" \ | ||
209 | - "$(DESTDIR)$(tclpkgdir)" | ||
210 | -LIBRARIES = $(lib_LIBRARIES) | ||
211 | -SCRIPTS = $(pkglib_SCRIPTS) $(tclpkg_SCRIPTS) | ||
212 | -AM_V_GEN = $(am__v_GEN_$(V)) | ||
213 | -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) | ||
214 | -am__v_GEN_0 = @echo " GEN " $@; | ||
215 | -AM_V_at = $(am__v_at_$(V)) | ||
216 | -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) | ||
217 | -am__v_at_0 = @ | ||
218 | -SOURCES = | ||
219 | -DIST_SOURCES = | ||
220 | -DATA = $(pkglib_DATA) $(tclpkg_DATA) | ||
221 | -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) | ||
222 | -ACLOCAL = @ACLOCAL@ | ||
223 | -ALL_LIBS = @ALL_LIBS@ | ||
224 | -AMTAR = @AMTAR@ | ||
225 | -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ | ||
226 | -AR = @AR@ | ||
227 | -AUTOCONF = @AUTOCONF@ | ||
228 | -AUTOHEADER = @AUTOHEADER@ | ||
229 | -AUTOMAKE = @AUTOMAKE@ | ||
230 | -AWK = @AWK@ | ||
231 | -CC = @CC@ | ||
232 | -CCDEPMODE = @CCDEPMODE@ | ||
233 | -CFLAGS = @CFLAGS@ | ||
234 | -COMP_LUA = @COMP_LUA@ | ||
235 | -COMP_PERL = @COMP_PERL@ | ||
236 | -COMP_PYTHON = @COMP_PYTHON@ | ||
237 | -COMP_RUBY = @COMP_RUBY@ | ||
238 | -CORE_LIBS = @CORE_LIBS@ | ||
239 | -CPP = @CPP@ | ||
240 | -CPPFLAGS = @CPPFLAGS@ | ||
241 | -CYGPATH_W = @CYGPATH_W@ | ||
242 | -DEFS = @DEFS@ | ||
243 | -DEPDIR = @DEPDIR@ | ||
244 | -DSYMUTIL = @DSYMUTIL@ | ||
245 | -DUMPBIN = @DUMPBIN@ | ||
246 | -ECHO_C = @ECHO_C@ | ||
247 | -ECHO_N = @ECHO_N@ | ||
248 | -ECHO_T = @ECHO_T@ | ||
249 | -EGREP = @EGREP@ | ||
250 | -EXEEXT = @EXEEXT@ | ||
251 | -FGREP = @FGREP@ | ||
252 | -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ | ||
253 | -GMSGFMT = @GMSGFMT@ | ||
254 | -GMSGFMT_015 = @GMSGFMT_015@ | ||
255 | -GREP = @GREP@ | ||
256 | -INSTALL = @INSTALL@ | ||
257 | -INSTALL_DATA = @INSTALL_DATA@ | ||
258 | -INSTALL_PROGRAM = @INSTALL_PROGRAM@ | ||
259 | -INSTALL_SCRIPT = @INSTALL_SCRIPT@ | ||
260 | -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ | ||
261 | -INTLLIBS = @INTLLIBS@ | ||
262 | -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ | ||
263 | -LD = @LD@ | ||
264 | -LDFLAGS = @LDFLAGS@ | ||
265 | -LIBICONV = @LIBICONV@ | ||
266 | -LIBINTL = @LIBINTL@ | ||
267 | -LIBOBJS = @LIBOBJS@ | ||
268 | -LIBS = @LIBS@ | ||
269 | -LIBTOOL = @LIBTOOL@ | ||
270 | -LIBVERS = @LIBVERS@ | ||
271 | -LIPO = @LIPO@ | ||
272 | -LN_S = @LN_S@ | ||
273 | -LTLIBICONV = @LTLIBICONV@ | ||
274 | -LTLIBINTL = @LTLIBINTL@ | ||
275 | -LTLIBOBJS = @LTLIBOBJS@ | ||
276 | -LUA = @LUA@ | ||
277 | -LUA_CFLAGS = @LUA_CFLAGS@ | ||
278 | -LUA_DEFINES = @LUA_DEFINES@ | ||
279 | -LUA_INSTALL_CMOD = @LUA_INSTALL_CMOD@ | ||
280 | -LUA_INSTALL_LMOD = @LUA_INSTALL_LMOD@ | ||
281 | -LUA_LFLAGS = @LUA_LFLAGS@ | ||
282 | -MAINT = @MAINT@ | ||
283 | -MAKEINFO = @MAKEINFO@ | ||
284 | -MKDIR_P = @MKDIR_P@ | ||
285 | -MSGFMT = @MSGFMT@ | ||
286 | -MSGFMT_015 = @MSGFMT_015@ | ||
287 | -MSGMERGE = @MSGMERGE@ | ||
288 | -MULTITHREAD_CFLAGS = @MULTITHREAD_CFLAGS@ | ||
289 | -MULTITHREAD_LDFLAGS = @MULTITHREAD_LDFLAGS@ | ||
290 | -NM = @NM@ | ||
291 | -NMEDIT = @NMEDIT@ | ||
292 | -NROFF = @NROFF@ | ||
293 | -NUMVERS = @NUMVERS@ | ||
294 | -OBJDUMP = @OBJDUMP@ | ||
295 | -OBJEXT = @OBJEXT@ | ||
296 | -OTOOL = @OTOOL@ | ||
297 | -OTOOL64 = @OTOOL64@ | ||
298 | -PACKAGE = @PACKAGE@ | ||
299 | -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ | ||
300 | -PACKAGE_NAME = @PACKAGE_NAME@ | ||
301 | -PACKAGE_STRING = @PACKAGE_STRING@ | ||
302 | -PACKAGE_TARNAME = @PACKAGE_TARNAME@ | ||
303 | -PACKAGE_VERSION = @PACKAGE_VERSION@ | ||
304 | -PATH_SEPARATOR = @PATH_SEPARATOR@ | ||
305 | -PERL = @PERL@ | ||
306 | -PERLCC = @PERLCC@ | ||
307 | -PERLCCFLAGS = @PERLCCFLAGS@ | ||
308 | -PERLFLAGS = @PERLFLAGS@ | ||
309 | -PERLLD = @PERLLD@ | ||
310 | -PERLLDFLAGS = @PERLLDFLAGS@ | ||
311 | -PERL_CC = @PERL_CC@ | ||
312 | -PERL_MAKE_OPTIONS = @PERL_MAKE_OPTIONS@ | ||
313 | -PERL_VERSION = @PERL_VERSION@ | ||
314 | -PKGCONFIG = @PKGCONFIG@ | ||
315 | -POD2HTML = @POD2HTML@ | ||
316 | -POD2MAN = @POD2MAN@ | ||
317 | -POSUB = @POSUB@ | ||
318 | -PTHREAD_CC = @PTHREAD_CC@ | ||
319 | -PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ | ||
320 | -PTHREAD_LIBS = @PTHREAD_LIBS@ | ||
321 | -PYTHON = @PYTHON@ | ||
322 | -PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ | ||
323 | -PYTHON_INCLUDES = @PYTHON_INCLUDES@ | ||
324 | -PYTHON_PLATFORM = @PYTHON_PLATFORM@ | ||
325 | -PYTHON_PREFIX = @PYTHON_PREFIX@ | ||
326 | -PYTHON_VERSION = @PYTHON_VERSION@ | ||
327 | -RANLIB = @RANLIB@ | ||
328 | -RRDDOCDIR = @RRDDOCDIR@ | ||
329 | -RRDGRAPH_YLEGEND_ANGLE = @RRDGRAPH_YLEGEND_ANGLE@ | ||
330 | -RRD_DEFAULT_FONT = @RRD_DEFAULT_FONT@ | ||
331 | -RRD_GETOPT_LONG = @RRD_GETOPT_LONG@ | ||
332 | -RUBY = @RUBY@ | ||
333 | -RUBY_MAKE_OPTIONS = @RUBY_MAKE_OPTIONS@ | ||
334 | -SED = @SED@ | ||
335 | -SET_MAKE = @SET_MAKE@ | ||
336 | -SHELL = @SHELL@ | ||
337 | -STRIP = @STRIP@ | ||
338 | -TCL_INCLUDE_SPEC = @TCL_INCLUDE_SPEC@ | ||
339 | -TCL_LD_SEARCH_FLAGS = @TCL_LD_SEARCH_FLAGS@ | ||
340 | -TCL_PACKAGE_DIR = @TCL_PACKAGE_DIR@ | ||
341 | -TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@ | ||
342 | -### no including this by default @WERROR@ | ||
343 | -TCL_PREFIX = @TCL_PREFIX@ | ||
344 | -TCL_SHLIB_CFLAGS = @TCL_SHLIB_CFLAGS@ | ||
345 | -TCL_SHLIB_LD = @TCL_SHLIB_LD@ | ||
346 | -TCL_SHLIB_SUFFIX = @TCL_SHLIB_SUFFIX@ | ||
347 | -TCL_STUB_LIB_SPEC = @TCL_STUB_LIB_SPEC@ | ||
348 | -TCL_VERSION = @TCL_VERSION@ | ||
349 | -TROFF = @TROFF@ | ||
350 | -USE_NLS = @USE_NLS@ | ||
351 | -VERSION = @VERSION@ | ||
352 | -WERROR = @WERROR@ | ||
353 | -XGETTEXT = @XGETTEXT@ | ||
354 | -XGETTEXT_015 = @XGETTEXT_015@ | ||
355 | -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ | ||
356 | -abs_builddir = @abs_builddir@ | ||
357 | -abs_srcdir = @abs_srcdir@ | ||
358 | -abs_top_builddir = @abs_top_builddir@ | ||
359 | -abs_top_srcdir = @abs_top_srcdir@ | ||
360 | -ac_ct_CC = @ac_ct_CC@ | ||
361 | -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ | ||
362 | -acx_pthread_config = @acx_pthread_config@ | ||
363 | -am__include = @am__include@ | ||
364 | -am__leading_dot = @am__leading_dot@ | ||
365 | -am__quote = @am__quote@ | ||
366 | -am__tar = @am__tar@ | ||
367 | -am__untar = @am__untar@ | ||
368 | -bindir = @bindir@ | ||
369 | -build = @build@ | ||
370 | -build_alias = @build_alias@ | ||
371 | -build_cpu = @build_cpu@ | ||
372 | -build_os = @build_os@ | ||
373 | -build_vendor = @build_vendor@ | ||
374 | -builddir = @builddir@ | ||
375 | -datadir = @datadir@ | ||
376 | -datarootdir = @datarootdir@ | ||
377 | -docdir = @docdir@ | ||
378 | -dvidir = @dvidir@ | ||
379 | -exec_prefix = @exec_prefix@ | ||
380 | -host = @host@ | ||
381 | -host_alias = @host_alias@ | ||
382 | -host_cpu = @host_cpu@ | ||
383 | -host_os = @host_os@ | ||
384 | -host_vendor = @host_vendor@ | ||
385 | -htmldir = @htmldir@ | ||
386 | -includedir = @includedir@ | ||
387 | -infodir = @infodir@ | ||
388 | -install_sh = @install_sh@ | ||
389 | -libdir = @libdir@ | ||
390 | -libexecdir = @libexecdir@ | ||
391 | -localedir = @localedir@ | ||
392 | -localstatedir = @localstatedir@ | ||
393 | -lt_ECHO = @lt_ECHO@ | ||
394 | -mandir = @mandir@ | ||
395 | -mkdir_p = @mkdir_p@ | ||
396 | -oldincludedir = @oldincludedir@ | ||
397 | -pdfdir = @pdfdir@ | ||
398 | -pkgpyexecdir = @pkgpyexecdir@ | ||
399 | -pkgpythondir = @pkgpythondir@ | ||
400 | -prefix = @prefix@ | ||
401 | -program_transform_name = @program_transform_name@ | ||
402 | -psdir = @psdir@ | ||
403 | -pyexecdir = @pyexecdir@ | ||
404 | -pythondir = @pythondir@ | ||
405 | -sbindir = @sbindir@ | ||
406 | -sharedstatedir = @sharedstatedir@ | ||
407 | -srcdir = @srcdir@ | ||
408 | -sysconfdir = @sysconfdir@ | ||
409 | -target = @target@ | ||
410 | -target_alias = @target_alias@ | ||
411 | -target_cpu = @target_cpu@ | ||
412 | -target_os = @target_os@ | ||
413 | -target_vendor = @target_vendor@ | ||
414 | -top_build_prefix = @top_build_prefix@ | ||
415 | -top_builddir = @top_builddir@ | ||
416 | -top_srcdir = @top_srcdir@ | ||
417 | -EXTRA_DIST = README tclrrd.c | ||
418 | -AM_CFLAGS = @CFLAGS@ | ||
419 | -CLEANFILES = tclrrd.o tclrrd.so | ||
420 | -SRC_DIR = $(top_srcdir)/src | ||
421 | -AM_CPPFLAGS = $(TCL_INCLUDE_SPEC) -I$(SRC_DIR) -DUSE_TCL_STUBS | ||
422 | -LIBDIRS = -L$(top_builddir)/src/.libs -L$(top_builddir)/src -L$(libdir) | ||
423 | -LIB_RUNTIME_DIR = $(libdir) | ||
424 | -@BUILD_TCL_SITE_TRUE@tclpkgdir = @TCL_PACKAGE_DIR@ | ||
425 | -@BUILD_TCL_SITE_TRUE@tclpkg_DATA = pkgIndex.tcl | ||
426 | -@BUILD_TCL_SITE_TRUE@tclpkg_SCRIPTS = ifOctets.tcl | ||
427 | -@BUILD_TCL_SITE_FALSE@pkglib_DATA = pkgIndex.tcl | ||
428 | -@BUILD_TCL_SITE_FALSE@pkglib_SCRIPTS = ifOctets.tcl | ||
429 | - | ||
430 | -# Automake doen't like `tclrrd$(VERSION)$(TCL_SHLIB_SUFFIX)' as | ||
431 | -# library name. So we build and install this library `by hand'. | ||
432 | -# | ||
433 | -# We do, however, specify a lib_LIBRARIES target such that | ||
434 | -# automake creates the directory (if neecessary). | ||
435 | -# | ||
436 | -TCL_RRD_LIB = tclrrd$(VERSION)$(TCL_SHLIB_SUFFIX) | ||
437 | -lib_LIBRARIES = | ||
438 | -all: all-am | ||
439 | - | ||
440 | -.SUFFIXES: | ||
441 | -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) | ||
442 | - @for dep in $?; do \ | ||
443 | - case '$(am__configure_deps)' in \ | ||
444 | - *$$dep*) \ | ||
445 | - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ | ||
446 | - && { if test -f $@; then exit 0; else break; fi; }; \ | ||
447 | - exit 1;; \ | ||
448 | - esac; \ | ||
449 | - done; \ | ||
450 | - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu bindings/tcl/Makefile'; \ | ||
451 | - $(am__cd) $(top_srcdir) && \ | ||
452 | - $(AUTOMAKE) --gnu bindings/tcl/Makefile | ||
453 | -.PRECIOUS: Makefile | ||
454 | -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status | ||
455 | - @case '$?' in \ | ||
456 | - *config.status*) \ | ||
457 | - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ | ||
458 | - *) \ | ||
459 | - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ | ||
460 | - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ | ||
461 | - esac; | ||
462 | - | ||
463 | -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) | ||
464 | - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
465 | - | ||
466 | -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) | ||
467 | - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
468 | -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) | ||
469 | - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
470 | -$(am__aclocal_m4_deps): | ||
471 | -ifOctets.tcl: $(top_builddir)/config.status $(srcdir)/ifOctets.tcl.in | ||
472 | - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ | ||
473 | -install-libLIBRARIES: $(lib_LIBRARIES) | ||
474 | - @$(NORMAL_INSTALL) | ||
475 | - test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)" | ||
476 | - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ | ||
477 | - list2=; for p in $$list; do \ | ||
478 | - if test -f $$p; then \ | ||
479 | - list2="$$list2 $$p"; \ | ||
480 | - else :; fi; \ | ||
481 | - done; \ | ||
482 | - test -z "$$list2" || { \ | ||
483 | - echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \ | ||
484 | - $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; } | ||
485 | - @$(POST_INSTALL) | ||
486 | - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ | ||
487 | - for p in $$list; do \ | ||
488 | - if test -f $$p; then \ | ||
489 | - $(am__strip_dir) \ | ||
490 | - echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \ | ||
491 | - ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \ | ||
492 | - else :; fi; \ | ||
493 | - done | ||
494 | - | ||
495 | -uninstall-libLIBRARIES: | ||
496 | - @$(NORMAL_UNINSTALL) | ||
497 | - @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ | ||
498 | - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ | ||
499 | - test -n "$$files" || exit 0; \ | ||
500 | - echo " ( cd '$(DESTDIR)$(libdir)' && rm -f "$$files" )"; \ | ||
501 | - cd "$(DESTDIR)$(libdir)" && rm -f $$files | ||
502 | - | ||
503 | -clean-libLIBRARIES: | ||
504 | - -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) | ||
505 | -install-pkglibSCRIPTS: $(pkglib_SCRIPTS) | ||
506 | - @$(NORMAL_INSTALL) | ||
507 | - test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" | ||
508 | - @list='$(pkglib_SCRIPTS)'; test -n "$(pkglibdir)" || list=; \ | ||
509 | - for p in $$list; do \ | ||
510 | - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ | ||
511 | - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ | ||
512 | - done | \ | ||
513 | - sed -e 'p;s,.*/,,;n' \ | ||
514 | - -e 'h;s|.*|.|' \ | ||
515 | - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ | ||
516 | - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ | ||
517 | - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ | ||
518 | - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ | ||
519 | - if (++n[d] == $(am__install_max)) { \ | ||
520 | - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ | ||
521 | - else { print "f", d "/" $$4, $$1 } } \ | ||
522 | - END { for (d in files) print "f", d, files[d] }' | \ | ||
523 | - while read type dir files; do \ | ||
524 | - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ | ||
525 | - test -z "$$files" || { \ | ||
526 | - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(pkglibdir)$$dir'"; \ | ||
527 | - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(pkglibdir)$$dir" || exit $$?; \ | ||
528 | - } \ | ||
529 | - ; done | ||
530 | - | ||
531 | -uninstall-pkglibSCRIPTS: | ||
532 | - @$(NORMAL_UNINSTALL) | ||
533 | - @list='$(pkglib_SCRIPTS)'; test -n "$(pkglibdir)" || exit 0; \ | ||
534 | - files=`for p in $$list; do echo "$$p"; done | \ | ||
535 | - sed -e 's,.*/,,;$(transform)'`; \ | ||
536 | - test -n "$$list" || exit 0; \ | ||
537 | - echo " ( cd '$(DESTDIR)$(pkglibdir)' && rm -f" $$files ")"; \ | ||
538 | - cd "$(DESTDIR)$(pkglibdir)" && rm -f $$files | ||
539 | -install-tclpkgSCRIPTS: $(tclpkg_SCRIPTS) | ||
540 | - @$(NORMAL_INSTALL) | ||
541 | - test -z "$(tclpkgdir)" || $(MKDIR_P) "$(DESTDIR)$(tclpkgdir)" | ||
542 | - @list='$(tclpkg_SCRIPTS)'; test -n "$(tclpkgdir)" || list=; \ | ||
543 | - for p in $$list; do \ | ||
544 | - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ | ||
545 | - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ | ||
546 | - done | \ | ||
547 | - sed -e 'p;s,.*/,,;n' \ | ||
548 | - -e 'h;s|.*|.|' \ | ||
549 | - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ | ||
550 | - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ | ||
551 | - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ | ||
552 | - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ | ||
553 | - if (++n[d] == $(am__install_max)) { \ | ||
554 | - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ | ||
555 | - else { print "f", d "/" $$4, $$1 } } \ | ||
556 | - END { for (d in files) print "f", d, files[d] }' | \ | ||
557 | - while read type dir files; do \ | ||
558 | - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ | ||
559 | - test -z "$$files" || { \ | ||
560 | - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(tclpkgdir)$$dir'"; \ | ||
561 | - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(tclpkgdir)$$dir" || exit $$?; \ | ||
562 | - } \ | ||
563 | - ; done | ||
564 | - | ||
565 | -uninstall-tclpkgSCRIPTS: | ||
566 | - @$(NORMAL_UNINSTALL) | ||
567 | - @list='$(tclpkg_SCRIPTS)'; test -n "$(tclpkgdir)" || exit 0; \ | ||
568 | - files=`for p in $$list; do echo "$$p"; done | \ | ||
569 | - sed -e 's,.*/,,;$(transform)'`; \ | ||
570 | - test -n "$$list" || exit 0; \ | ||
571 | - echo " ( cd '$(DESTDIR)$(tclpkgdir)' && rm -f" $$files ")"; \ | ||
572 | - cd "$(DESTDIR)$(tclpkgdir)" && rm -f $$files | ||
573 | - | ||
574 | -mostlyclean-libtool: | ||
575 | - -rm -f *.lo | ||
576 | - | ||
577 | -clean-libtool: | ||
578 | - -rm -rf .libs _libs | ||
579 | -install-pkglibDATA: $(pkglib_DATA) | ||
580 | - @$(NORMAL_INSTALL) | ||
581 | - test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" | ||
582 | - @list='$(pkglib_DATA)'; test -n "$(pkglibdir)" || list=; \ | ||
583 | - for p in $$list; do \ | ||
584 | - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ | ||
585 | - echo "$$d$$p"; \ | ||
586 | - done | $(am__base_list) | \ | ||
587 | - while read files; do \ | ||
588 | - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkglibdir)'"; \ | ||
589 | - $(INSTALL_DATA) $$files "$(DESTDIR)$(pkglibdir)" || exit $$?; \ | ||
590 | - done | ||
591 | - | ||
592 | -uninstall-pkglibDATA: | ||
593 | - @$(NORMAL_UNINSTALL) | ||
594 | - @list='$(pkglib_DATA)'; test -n "$(pkglibdir)" || list=; \ | ||
595 | - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ | ||
596 | - test -n "$$files" || exit 0; \ | ||
597 | - echo " ( cd '$(DESTDIR)$(pkglibdir)' && rm -f" $$files ")"; \ | ||
598 | - cd "$(DESTDIR)$(pkglibdir)" && rm -f $$files | ||
599 | -install-tclpkgDATA: $(tclpkg_DATA) | ||
600 | - @$(NORMAL_INSTALL) | ||
601 | - test -z "$(tclpkgdir)" || $(MKDIR_P) "$(DESTDIR)$(tclpkgdir)" | ||
602 | - @list='$(tclpkg_DATA)'; test -n "$(tclpkgdir)" || list=; \ | ||
603 | - for p in $$list; do \ | ||
604 | - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ | ||
605 | - echo "$$d$$p"; \ | ||
606 | - done | $(am__base_list) | \ | ||
607 | - while read files; do \ | ||
608 | - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(tclpkgdir)'"; \ | ||
609 | - $(INSTALL_DATA) $$files "$(DESTDIR)$(tclpkgdir)" || exit $$?; \ | ||
610 | - done | ||
611 | - | ||
612 | -uninstall-tclpkgDATA: | ||
613 | - @$(NORMAL_UNINSTALL) | ||
614 | - @list='$(tclpkg_DATA)'; test -n "$(tclpkgdir)" || list=; \ | ||
615 | - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ | ||
616 | - test -n "$$files" || exit 0; \ | ||
617 | - echo " ( cd '$(DESTDIR)$(tclpkgdir)' && rm -f" $$files ")"; \ | ||
618 | - cd "$(DESTDIR)$(tclpkgdir)" && rm -f $$files | ||
619 | -tags: TAGS | ||
620 | -TAGS: | ||
621 | - | ||
622 | -ctags: CTAGS | ||
623 | -CTAGS: | ||
624 | - | ||
625 | - | ||
626 | -distdir: $(DISTFILES) | ||
627 | - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ | ||
628 | - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ | ||
629 | - list='$(DISTFILES)'; \ | ||
630 | - dist_files=`for file in $$list; do echo $$file; done | \ | ||
631 | - sed -e "s|^$$srcdirstrip/||;t" \ | ||
632 | - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ | ||
633 | - case $$dist_files in \ | ||
634 | - */*) $(MKDIR_P) `echo "$$dist_files" | \ | ||
635 | - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ | ||
636 | - sort -u` ;; \ | ||
637 | - esac; \ | ||
638 | - for file in $$dist_files; do \ | ||
639 | - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ | ||
640 | - if test -d $$d/$$file; then \ | ||
641 | - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ | ||
642 | - if test -d "$(distdir)/$$file"; then \ | ||
643 | - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ | ||
644 | - fi; \ | ||
645 | - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ | ||
646 | - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ | ||
647 | - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ | ||
648 | - fi; \ | ||
649 | - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ | ||
650 | - else \ | ||
651 | - test -f "$(distdir)/$$file" \ | ||
652 | - || cp -p $$d/$$file "$(distdir)/$$file" \ | ||
653 | - || exit 1; \ | ||
654 | - fi; \ | ||
655 | - done | ||
656 | -check-am: all-am | ||
657 | -check: check-am | ||
658 | -all-am: Makefile $(LIBRARIES) $(SCRIPTS) $(DATA) all-local | ||
659 | -installdirs: | ||
660 | - for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkglibdir)" "$(DESTDIR)$(tclpkgdir)" "$(DESTDIR)$(pkglibdir)" "$(DESTDIR)$(tclpkgdir)"; do \ | ||
661 | - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ | ||
662 | - done | ||
663 | -install: install-am | ||
664 | -install-exec: install-exec-am | ||
665 | -install-data: install-data-am | ||
666 | -uninstall: uninstall-am | ||
667 | - | ||
668 | -install-am: all-am | ||
669 | - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am | ||
670 | - | ||
671 | -installcheck: installcheck-am | ||
672 | -install-strip: | ||
673 | - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ | ||
674 | - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ | ||
675 | - `test -z '$(STRIP)' || \ | ||
676 | - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install | ||
677 | -mostlyclean-generic: | ||
678 | - | ||
679 | -clean-generic: | ||
680 | - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) | ||
681 | - | ||
682 | -distclean-generic: | ||
683 | - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) | ||
684 | - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) | ||
685 | - | ||
686 | -maintainer-clean-generic: | ||
687 | - @echo "This command is intended for maintainers to use" | ||
688 | - @echo "it deletes files that may require special tools to rebuild." | ||
689 | -clean: clean-am | ||
690 | - | ||
691 | -clean-am: clean-generic clean-libLIBRARIES clean-libtool \ | ||
692 | - mostlyclean-am | ||
693 | - | ||
694 | -distclean: distclean-am | ||
695 | - -rm -f Makefile | ||
696 | -distclean-am: clean-am distclean-generic | ||
697 | - | ||
698 | -dvi: dvi-am | ||
699 | - | ||
700 | -dvi-am: | ||
701 | - | ||
702 | -html: html-am | ||
703 | - | ||
704 | -html-am: | ||
705 | - | ||
706 | -info: info-am | ||
707 | - | ||
708 | -info-am: | ||
709 | - | ||
710 | -install-data-am: install-tclpkgDATA install-tclpkgSCRIPTS | ||
711 | - | ||
712 | -install-dvi: install-dvi-am | ||
713 | - | ||
714 | -install-dvi-am: | ||
715 | - | ||
716 | -install-exec-am: install-exec-local install-libLIBRARIES \ | ||
717 | - install-pkglibDATA install-pkglibSCRIPTS | ||
718 | - | ||
719 | -install-html: install-html-am | ||
720 | - | ||
721 | -install-html-am: | ||
722 | - | ||
723 | -install-info: install-info-am | ||
724 | - | ||
725 | -install-info-am: | ||
726 | - | ||
727 | -install-man: | ||
728 | - | ||
729 | -install-pdf: install-pdf-am | ||
730 | - | ||
731 | -install-pdf-am: | ||
732 | - | ||
733 | -install-ps: install-ps-am | ||
734 | - | ||
735 | -install-ps-am: | ||
736 | - | ||
737 | -installcheck-am: | ||
738 | - | ||
739 | -maintainer-clean: maintainer-clean-am | ||
740 | - -rm -f Makefile | ||
741 | -maintainer-clean-am: distclean-am maintainer-clean-generic | ||
742 | - | ||
743 | -mostlyclean: mostlyclean-am | ||
744 | - | ||
745 | -mostlyclean-am: mostlyclean-generic mostlyclean-libtool | ||
746 | - | ||
747 | -pdf: pdf-am | ||
748 | - | ||
749 | -pdf-am: | ||
750 | - | ||
751 | -ps: ps-am | ||
752 | - | ||
753 | -ps-am: | ||
754 | - | ||
755 | -uninstall-am: uninstall-libLIBRARIES uninstall-pkglibDATA \ | ||
756 | - uninstall-pkglibSCRIPTS uninstall-tclpkgDATA \ | ||
757 | - uninstall-tclpkgSCRIPTS | ||
758 | - | ||
759 | -.MAKE: install-am install-strip | ||
760 | - | ||
761 | -.PHONY: all all-am all-local check check-am clean clean-generic \ | ||
762 | - clean-libLIBRARIES clean-libtool distclean distclean-generic \ | ||
763 | - distclean-libtool distdir dvi dvi-am html html-am info info-am \ | ||
764 | - install install-am install-data install-data-am install-dvi \ | ||
765 | - install-dvi-am install-exec install-exec-am install-exec-local \ | ||
766 | - install-html install-html-am install-info install-info-am \ | ||
767 | - install-libLIBRARIES install-man install-pdf install-pdf-am \ | ||
768 | - install-pkglibDATA install-pkglibSCRIPTS install-ps \ | ||
769 | - install-ps-am install-strip install-tclpkgDATA \ | ||
770 | - install-tclpkgSCRIPTS installcheck installcheck-am installdirs \ | ||
771 | - maintainer-clean maintainer-clean-generic mostlyclean \ | ||
772 | - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ | ||
773 | - uninstall uninstall-am uninstall-libLIBRARIES \ | ||
774 | - uninstall-pkglibDATA uninstall-pkglibSCRIPTS \ | ||
775 | - uninstall-tclpkgDATA uninstall-tclpkgSCRIPTS | ||
776 | - | ||
777 | - | ||
778 | -all-local: $(TCL_RRD_LIB) | ||
779 | - | ||
780 | -$(TCL_RRD_LIB): tclrrd.o | ||
781 | - $(TCL_SHLIB_LD) $(TCL_LD_SEARCH_FLAGS) $(LIBDIRS) $< -o $@ -lrrd_th -lm $(TCL_STUB_LIB_SPEC) $(LDFLAGS) $(LIBS) | ||
782 | - | ||
783 | -tclrrd.o: tclrrd.c | ||
784 | - $(CC) $(AM_CFLAGS) $(CFLAGS) $(TCL_SHLIB_CFLAGS) $(AM_CPPFLAGS) -c tclrrd.c -DVERSION=\"$(VERSION)\" | ||
785 | - | ||
786 | -pkgIndex.tcl: | ||
787 | - echo "package ifneeded Rrd $(VERSION) \"load $(libdir)/tclrrd$(VERSION)[info sharedlibextension]\"" > $@ | ||
788 | - | ||
789 | -install-exec-local: $(TCL_RRD_LIB) | ||
790 | - @$(NORMAL_INSTALL) | ||
791 | - $(INSTALL_PROGRAM) $(TCL_RRD_LIB) $(DESTDIR)$(libdir)/$(TCL_RRD_LIB) | ||
792 | - | ||
793 | -# Tell versions [3.59,3.63) of GNU make to not export all variables. | ||
794 | -# Otherwise a system limit (for SysV at least) may be exceeded. | ||
795 | -.NOEXPORT: | ||
796 | diff --git a/bindings/tcl/README b/bindings/tcl/README | ||
797 | deleted file mode 100644 | ||
798 | index 065a03a..0000000 | ||
799 | --- a/bindings/tcl/README | ||
800 | +++ /dev/null | ||
801 | @@ -1,31 +0,0 @@ | ||
802 | -TCLRRD -- A TCL interpreter extension to access the RRD library, | ||
803 | - contributed to Tobias Oetiker's RRD tools. | ||
804 | - | ||
805 | -Copyright (c) 1999,2000 Frank Strauss, Technical University of Braunschweig. | ||
806 | - | ||
807 | -See the file "COPYING" for information on usage and redistribution | ||
808 | -of this file, and for a DISCLAIMER OF ALL WARRANTIES. | ||
809 | - | ||
810 | -TCLRRD adds a dynamically loadable package to the Tcl 8.x interpreter | ||
811 | -to access all RRD functions as of RRDtool 1.0.13. All command names | ||
812 | -and arguments are equal to those of RRDtool. They are assigned to the | ||
813 | -namespace `Rrd', e.g. `Rrd::create'. Return values are a bit | ||
814 | -different from plain RRDtool behavior to enable more native Tcl | ||
815 | -usage. Errors are mapped to the TCL_ERROR return code together with | ||
816 | -the RRD error strings. | ||
817 | - | ||
818 | -TCLRRD makes it easy to combine RRD use with advanced SNMP functionality | ||
819 | -of scotty (http://wwwsnmp.cs.utwente.nl/~schoenw/scotty/). E.g., it's easy | ||
820 | -to use some scotty code to get the counters of some interfaces by their | ||
821 | -interface name and then use Rrd::update to store the values. Furthermore, | ||
822 | -data source types (see RRD::create documentation) and integer value ranges | ||
823 | -could be easily retrieved from MIB information. | ||
824 | - | ||
825 | -TCLRRD has been written on a Linux system for use with Tcl 8.x. It should | ||
826 | -work on many other platforms, although it has not been tested. There are | ||
827 | -no fool proof installation procedures. Take a look at Makefile.am and | ||
828 | -adapt it, if required. | ||
829 | - | ||
830 | -TCLRRD has been written for RRD 1.0.13. | ||
831 | - | ||
832 | - Frank Strauss <strauss@ibr.cs.tu-bs.de>, 09-Mar-2000 | ||
833 | diff --git a/bindings/tcl/ifOctets.tcl.in b/bindings/tcl/ifOctets.tcl.in | ||
834 | deleted file mode 100644 | ||
835 | index 7a36397..0000000 | ||
836 | --- a/bindings/tcl/ifOctets.tcl.in | ||
837 | +++ /dev/null | ||
838 | @@ -1,45 +0,0 @@ | ||
839 | -#!/bin/sh | ||
840 | -# the next line restarts using tclsh -*- tcl -*- \ | ||
841 | -exec tclsh@TCL_VERSION@ "$0" "$@" | ||
842 | - | ||
843 | -#package require Tnm 3.0 | ||
844 | -package require Rrd @VERSION@ | ||
845 | - | ||
846 | -set rrdfile "[lindex $argv 0]-[lindex $argv 1].rrd" | ||
847 | - | ||
848 | -# create rrdfile if not yet existent | ||
849 | -if {[file exists $rrdfile] == 0} { | ||
850 | - Rrd::create $rrdfile --step 5 \ | ||
851 | - DS:inOctets:COUNTER:10:U:U DS:outOctets:COUNTER:10:U:U \ | ||
852 | - RRA:AVERAGE:0.5:1:12 | ||
853 | -} | ||
854 | - | ||
855 | -# get an snmp session context | ||
856 | -set session [Tnm::snmp generator -address [lindex $argv 0]] | ||
857 | - | ||
858 | -# walk through the ifDescr column to find the right interface | ||
859 | -$session walk descr IF-MIB!ifDescr { | ||
860 | - | ||
861 | - # is this the right interface? | ||
862 | - if {"[Tnm::snmp value $descr 0]" == "[lindex $argv 1]"} { | ||
863 | - | ||
864 | - # get the instance part of this table row | ||
865 | - set inst [lindex [Tnm::mib split [Tnm::snmp oid $descr 0]] 1] | ||
866 | - | ||
867 | - # get the two interface's octet counter values | ||
868 | - set in [lindex [lindex [$session get IF-MIB!ifInOctets.$inst] 0] 2] | ||
869 | - set out [lindex [lindex [$session get IF-MIB!ifOutOctets.$inst] 0] 2] | ||
870 | - | ||
871 | - # write the values to the rrd | ||
872 | - puts "$in $out" | ||
873 | - Rrd::update $rrdfile --template inOctets:outOctets N:$in:$out | ||
874 | - | ||
875 | - Rrd::graph gaga.png --title "gaga" \ | ||
876 | - DEF:in=$rrdfile:inOctets:AVERAGE \ | ||
877 | - DEF:out=$rrdfile:outOctets:AVERAGE \ | ||
878 | - AREA:in#0000FF:inOctets \ | ||
879 | - LINE2:out#00C000:outOctets | ||
880 | - | ||
881 | - #puts [Rrd::fetch $rrdfile AVERAGE] | ||
882 | - } | ||
883 | -} | ||
884 | diff --git a/bindings/tcl/tclrrd.c b/bindings/tcl/tclrrd.c | ||
885 | deleted file mode 100644 | ||
886 | index f1f0234..0000000 | ||
887 | --- a/bindings/tcl/tclrrd.c | ||
888 | +++ /dev/null | ||
889 | @@ -1,762 +0,0 @@ | ||
890 | -/* | ||
891 | - * tclrrd.c -- A TCL interpreter extension to access the RRD library. | ||
892 | - * | ||
893 | - * Copyright (c) 1999,2000 Frank Strauss, Technical University of Braunschweig. | ||
894 | - * | ||
895 | - * Thread-safe code copyright (c) 2005 Oleg Derevenetz, CenterTelecom Voronezh ISP. | ||
896 | - * | ||
897 | - * See the file "COPYING" for information on usage and redistribution | ||
898 | - * of this file, and for a DISCLAIMER OF ALL WARRANTIES. | ||
899 | - * | ||
900 | - * $Id: tclrrd.c 1854 2009-06-07 14:46:21Z oetiker $ | ||
901 | - */ | ||
902 | - | ||
903 | - | ||
904 | - | ||
905 | -#include <errno.h> | ||
906 | -#include <string.h> | ||
907 | -#include <time.h> | ||
908 | -#include <unistd.h> | ||
909 | -#include <tcl.h> | ||
910 | -#include <stdlib.h> | ||
911 | -#include "../../src/rrd_tool.h" | ||
912 | -#include "../../src/rrd_format.h" | ||
913 | - | ||
914 | -/* support pre-8.4 tcl */ | ||
915 | - | ||
916 | -#ifndef CONST84 | ||
917 | -# define CONST84 | ||
918 | -#endif | ||
919 | - | ||
920 | -extern int Tclrrd_Init( | ||
921 | - Tcl_Interp *interp); | ||
922 | -extern int Tclrrd_SafeInit( | ||
923 | - Tcl_Interp *interp); | ||
924 | - | ||
925 | - | ||
926 | -/* | ||
927 | - * some rrd_XXX() and new thread-safe versions of Rrd_XXX() | ||
928 | - * functions might modify the argv strings passed to it. | ||
929 | - * Hence, we need to do some preparation before | ||
930 | - * calling the rrd library functions. | ||
931 | - */ | ||
932 | -static char **getopt_init( | ||
933 | - int argc, | ||
934 | - CONST84 char *argv[]) | ||
935 | -{ | ||
936 | - char **argv2; | ||
937 | - int i; | ||
938 | - | ||
939 | - argv2 = calloc(argc, sizeof(char *)); | ||
940 | - for (i = 0; i < argc; i++) { | ||
941 | - argv2[i] = strdup(argv[i]); | ||
942 | - } | ||
943 | - return argv2; | ||
944 | -} | ||
945 | - | ||
946 | -static void getopt_cleanup( | ||
947 | - int argc, | ||
948 | - char **argv2) | ||
949 | -{ | ||
950 | - int i; | ||
951 | - | ||
952 | - for (i = 0; i < argc; i++) { | ||
953 | - if (argv2[i] != NULL) { | ||
954 | - free(argv2[i]); | ||
955 | - } | ||
956 | - } | ||
957 | - free(argv2); | ||
958 | -} | ||
959 | - | ||
960 | -static void getopt_free_element( | ||
961 | - char *argv2[], | ||
962 | - int argn) | ||
963 | -{ | ||
964 | - if (argv2[argn] != NULL) { | ||
965 | - free(argv2[argn]); | ||
966 | - argv2[argn] = NULL; | ||
967 | - } | ||
968 | -} | ||
969 | - | ||
970 | -static void getopt_squieeze( | ||
971 | - int *argc, | ||
972 | - char *argv2[]) | ||
973 | -{ | ||
974 | - int i, null_i = 0, argc_tmp = *argc; | ||
975 | - | ||
976 | - for (i = 0; i < argc_tmp; i++) { | ||
977 | - if (argv2[i] == NULL) { | ||
978 | - (*argc)--; | ||
979 | - } else { | ||
980 | - argv2[null_i++] = argv2[i]; | ||
981 | - } | ||
982 | - } | ||
983 | -} | ||
984 | - | ||
985 | - | ||
986 | - | ||
987 | -/* Thread-safe version */ | ||
988 | -static int Rrd_Create( | ||
989 | - ClientData __attribute__((unused)) clientData, | ||
990 | - Tcl_Interp *interp, | ||
991 | - int argc, | ||
992 | - CONST84 char *argv[]) | ||
993 | -{ | ||
994 | - int argv_i; | ||
995 | - char **argv2; | ||
996 | - char *parsetime_error = NULL; | ||
997 | - time_t last_up = time(NULL) - 10; | ||
998 | - long int long_tmp; | ||
999 | - unsigned long int pdp_step = 300; | ||
1000 | - rrd_time_value_t last_up_tv; | ||
1001 | - | ||
1002 | - argv2 = getopt_init(argc, argv); | ||
1003 | - | ||
1004 | - for (argv_i = 1; argv_i < argc; argv_i++) { | ||
1005 | - if (!strcmp(argv2[argv_i], "--start") || !strcmp(argv2[argv_i], "-b")) { | ||
1006 | - if (argv_i++ >= argc) { | ||
1007 | - Tcl_AppendResult(interp, "RRD Error: option '", | ||
1008 | - argv2[argv_i - 1], "' needs an argument", | ||
1009 | - (char *) NULL); | ||
1010 | - getopt_cleanup(argc, argv2); | ||
1011 | - return TCL_ERROR; | ||
1012 | - } | ||
1013 | - if ((parsetime_error = rrd_parsetime(argv2[argv_i], &last_up_tv))) { | ||
1014 | - Tcl_AppendResult(interp, "RRD Error: invalid time format: '", | ||
1015 | - argv2[argv_i], "'", (char *) NULL); | ||
1016 | - getopt_cleanup(argc, argv2); | ||
1017 | - return TCL_ERROR; | ||
1018 | - } | ||
1019 | - if (last_up_tv.type == RELATIVE_TO_END_TIME || | ||
1020 | - last_up_tv.type == RELATIVE_TO_START_TIME) { | ||
1021 | - Tcl_AppendResult(interp, | ||
1022 | - "RRD Error: specifying time relative to the 'start' ", | ||
1023 | - "or 'end' makes no sense here", | ||
1024 | - (char *) NULL); | ||
1025 | - getopt_cleanup(argc, argv2); | ||
1026 | - return TCL_ERROR; | ||
1027 | - } | ||
1028 | - last_up = mktime(&last_up_tv.tm) +last_up_tv.offset; | ||
1029 | - if (last_up < 3600 * 24 * 365 * 10) { | ||
1030 | - Tcl_AppendResult(interp, | ||
1031 | - "RRD Error: the first entry to the RRD should be after 1980", | ||
1032 | - (char *) NULL); | ||
1033 | - getopt_cleanup(argc, argv2); | ||
1034 | - return TCL_ERROR; | ||
1035 | - } | ||
1036 | - getopt_free_element(argv2, argv_i - 1); | ||
1037 | - getopt_free_element(argv2, argv_i); | ||
1038 | - } else if (!strcmp(argv2[argv_i], "--step") | ||
1039 | - || !strcmp(argv2[argv_i], "-s")) { | ||
1040 | - if (argv_i++ >= argc) { | ||
1041 | - Tcl_AppendResult(interp, "RRD Error: option '", | ||
1042 | - argv2[argv_i - 1], "' needs an argument", | ||
1043 | - (char *) NULL); | ||
1044 | - getopt_cleanup(argc, argv2); | ||
1045 | - return TCL_ERROR; | ||
1046 | - } | ||
1047 | - long_tmp = atol(argv2[argv_i]); | ||
1048 | - if (long_tmp < 1) { | ||
1049 | - Tcl_AppendResult(interp, | ||
1050 | - "RRD Error: step size should be no less than one second", | ||
1051 | - (char *) NULL); | ||
1052 | - getopt_cleanup(argc, argv2); | ||
1053 | - return TCL_ERROR; | ||
1054 | - } | ||
1055 | - pdp_step = long_tmp; | ||
1056 | - getopt_free_element(argv2, argv_i - 1); | ||
1057 | - getopt_free_element(argv2, argv_i); | ||
1058 | - } else if (!strcmp(argv2[argv_i], "--")) { | ||
1059 | - getopt_free_element(argv2, argv_i); | ||
1060 | - break; | ||
1061 | - } else if (argv2[argv_i][0] == '-') { | ||
1062 | - Tcl_AppendResult(interp, "RRD Error: unknown option '", | ||
1063 | - argv2[argv_i], "'", (char *) NULL); | ||
1064 | - getopt_cleanup(argc, argv2); | ||
1065 | - return TCL_ERROR; | ||
1066 | - } | ||
1067 | - } | ||
1068 | - | ||
1069 | - getopt_squieeze(&argc, argv2); | ||
1070 | - | ||
1071 | - if (argc < 2) { | ||
1072 | - Tcl_AppendResult(interp, "RRD Error: needs rrd filename", | ||
1073 | - (char *) NULL); | ||
1074 | - getopt_cleanup(argc, argv2); | ||
1075 | - return TCL_ERROR; | ||
1076 | - } | ||
1077 | - | ||
1078 | - rrd_create_r(argv2[1], pdp_step, last_up, argc - 2, | ||
1079 | - (const char **)argv2 + 2); | ||
1080 | - | ||
1081 | - getopt_cleanup(argc, argv2); | ||
1082 | - | ||
1083 | - if (rrd_test_error()) { | ||
1084 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1085 | - rrd_get_error(), (char *) NULL); | ||
1086 | - rrd_clear_error(); | ||
1087 | - return TCL_ERROR; | ||
1088 | - } | ||
1089 | - | ||
1090 | - return TCL_OK; | ||
1091 | -} | ||
1092 | - | ||
1093 | - | ||
1094 | - | ||
1095 | -/* Thread-safe version */ | ||
1096 | -static int Rrd_Dump( | ||
1097 | - ClientData __attribute__((unused)) clientData, | ||
1098 | - Tcl_Interp *interp, | ||
1099 | - int argc, | ||
1100 | - CONST84 char *argv[]) | ||
1101 | -{ | ||
1102 | - if (argc < 2) { | ||
1103 | - Tcl_AppendResult(interp, "RRD Error: needs rrd filename", | ||
1104 | - (char *) NULL); | ||
1105 | - return TCL_ERROR; | ||
1106 | - } | ||
1107 | - | ||
1108 | - rrd_dump_r(argv[1], NULL); | ||
1109 | - | ||
1110 | - /* NOTE: rrd_dump() writes to stdout. No interaction with TCL. */ | ||
1111 | - | ||
1112 | - if (rrd_test_error()) { | ||
1113 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1114 | - rrd_get_error(), (char *) NULL); | ||
1115 | - rrd_clear_error(); | ||
1116 | - return TCL_ERROR; | ||
1117 | - } | ||
1118 | - | ||
1119 | - return TCL_OK; | ||
1120 | -} | ||
1121 | - | ||
1122 | -/* Thread-safe version */ | ||
1123 | -static int Rrd_Flushcached( | ||
1124 | - ClientData __attribute__((unused)) clientData, | ||
1125 | - Tcl_Interp *interp, | ||
1126 | - int argc, | ||
1127 | - CONST84 char *argv[]) | ||
1128 | -{ | ||
1129 | - if (argc < 2) { | ||
1130 | - Tcl_AppendResult(interp, "RRD Error: needs rrd filename", | ||
1131 | - (char *) NULL); | ||
1132 | - return TCL_ERROR; | ||
1133 | - } | ||
1134 | - | ||
1135 | - rrd_flushcached(argc, (char**)argv); | ||
1136 | - | ||
1137 | - if (rrd_test_error()) { | ||
1138 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1139 | - rrd_get_error(), (char *) NULL); | ||
1140 | - rrd_clear_error(); | ||
1141 | - return TCL_ERROR; | ||
1142 | - } | ||
1143 | - | ||
1144 | - return TCL_OK; | ||
1145 | -} | ||
1146 | - | ||
1147 | - | ||
1148 | -/* Thread-safe version */ | ||
1149 | -static int Rrd_Last( | ||
1150 | - ClientData __attribute__((unused)) clientData, | ||
1151 | - Tcl_Interp *interp, | ||
1152 | - int argc, | ||
1153 | - CONST84 char *argv[]) | ||
1154 | -{ | ||
1155 | - time_t t; | ||
1156 | - | ||
1157 | - if (argc < 2) { | ||
1158 | - Tcl_AppendResult(interp, "RRD Error: needs rrd filename", | ||
1159 | - (char *) NULL); | ||
1160 | - return TCL_ERROR; | ||
1161 | - } | ||
1162 | - | ||
1163 | - t = rrd_last_r(argv[1]); | ||
1164 | - | ||
1165 | - if (rrd_test_error()) { | ||
1166 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1167 | - rrd_get_error(), (char *) NULL); | ||
1168 | - rrd_clear_error(); | ||
1169 | - return TCL_ERROR; | ||
1170 | - } | ||
1171 | - | ||
1172 | - Tcl_SetIntObj(Tcl_GetObjResult(interp), t); | ||
1173 | - | ||
1174 | - return TCL_OK; | ||
1175 | -} | ||
1176 | - | ||
1177 | - | ||
1178 | - | ||
1179 | -/* Thread-safe version */ | ||
1180 | -static int Rrd_Update( | ||
1181 | - ClientData __attribute__((unused)) clientData, | ||
1182 | - Tcl_Interp *interp, | ||
1183 | - int argc, | ||
1184 | - CONST84 char *argv[]) | ||
1185 | -{ | ||
1186 | - int argv_i; | ||
1187 | - char **argv2, *template = NULL; | ||
1188 | - | ||
1189 | - argv2 = getopt_init(argc, argv); | ||
1190 | - | ||
1191 | - for (argv_i = 1; argv_i < argc; argv_i++) { | ||
1192 | - if (!strcmp(argv2[argv_i], "--template") | ||
1193 | - || !strcmp(argv2[argv_i], "-t")) { | ||
1194 | - if (argv_i++ >= argc) { | ||
1195 | - Tcl_AppendResult(interp, "RRD Error: option '", | ||
1196 | - argv2[argv_i - 1], "' needs an argument", | ||
1197 | - (char *) NULL); | ||
1198 | - if (template != NULL) { | ||
1199 | - free(template); | ||
1200 | - } | ||
1201 | - getopt_cleanup(argc, argv2); | ||
1202 | - return TCL_ERROR; | ||
1203 | - } | ||
1204 | - if (template != NULL) { | ||
1205 | - free(template); | ||
1206 | - } | ||
1207 | - template = strdup(argv2[argv_i]); | ||
1208 | - getopt_free_element(argv2, argv_i - 1); | ||
1209 | - getopt_free_element(argv2, argv_i); | ||
1210 | - } else if (!strcmp(argv2[argv_i], "--")) { | ||
1211 | - getopt_free_element(argv2, argv_i); | ||
1212 | - break; | ||
1213 | - } else if (argv2[argv_i][0] == '-') { | ||
1214 | - Tcl_AppendResult(interp, "RRD Error: unknown option '", | ||
1215 | - argv2[argv_i], "'", (char *) NULL); | ||
1216 | - if (template != NULL) { | ||
1217 | - free(template); | ||
1218 | - } | ||
1219 | - getopt_cleanup(argc, argv2); | ||
1220 | - return TCL_ERROR; | ||
1221 | - } | ||
1222 | - } | ||
1223 | - | ||
1224 | - getopt_squieeze(&argc, argv2); | ||
1225 | - | ||
1226 | - if (argc < 2) { | ||
1227 | - Tcl_AppendResult(interp, "RRD Error: needs rrd filename", | ||
1228 | - (char *) NULL); | ||
1229 | - if (template != NULL) { | ||
1230 | - free(template); | ||
1231 | - } | ||
1232 | - getopt_cleanup(argc, argv2); | ||
1233 | - return TCL_ERROR; | ||
1234 | - } | ||
1235 | - | ||
1236 | - rrd_update_r(argv2[1], template, argc - 2, (const char **)argv2 + 2); | ||
1237 | - | ||
1238 | - if (template != NULL) { | ||
1239 | - free(template); | ||
1240 | - } | ||
1241 | - getopt_cleanup(argc, argv2); | ||
1242 | - | ||
1243 | - if (rrd_test_error()) { | ||
1244 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1245 | - rrd_get_error(), (char *) NULL); | ||
1246 | - rrd_clear_error(); | ||
1247 | - return TCL_ERROR; | ||
1248 | - } | ||
1249 | - | ||
1250 | - return TCL_OK; | ||
1251 | -} | ||
1252 | - | ||
1253 | -static int Rrd_Lastupdate( | ||
1254 | - ClientData __attribute__((unused)) clientData, | ||
1255 | - Tcl_Interp *interp, | ||
1256 | - int argc, | ||
1257 | - CONST84 char *argv[]) | ||
1258 | -{ | ||
1259 | - time_t last_update; | ||
1260 | - char **argv2; | ||
1261 | - char **ds_namv; | ||
1262 | - char **last_ds; | ||
1263 | - char s[30]; | ||
1264 | - Tcl_Obj *listPtr; | ||
1265 | - unsigned long ds_cnt, i; | ||
1266 | - | ||
1267 | - /* TODO: support for rrdcached */ | ||
1268 | - if (argc != 2) { | ||
1269 | - Tcl_AppendResult(interp, "RRD Error: needs a single rrd filename", | ||
1270 | - (char *) NULL); | ||
1271 | - return TCL_ERROR; | ||
1272 | - } | ||
1273 | - | ||
1274 | - argv2 = getopt_init(argc, argv); | ||
1275 | - if (rrd_lastupdate_r(argv2[1], &last_update, | ||
1276 | - &ds_cnt, &ds_namv, &last_ds) == 0) { | ||
1277 | - listPtr = Tcl_GetObjResult(interp); | ||
1278 | - for (i = 0; i < ds_cnt; i++) { | ||
1279 | - sprintf(s, " %28s", ds_namv[i]); | ||
1280 | - Tcl_ListObjAppendElement(interp, listPtr, | ||
1281 | - Tcl_NewStringObj(s, -1)); | ||
1282 | - sprintf(s, "\n\n%10lu:", last_update); | ||
1283 | - Tcl_ListObjAppendElement(interp, listPtr, | ||
1284 | - Tcl_NewStringObj(s, -1)); | ||
1285 | - for (i = 0; i < ds_cnt; i++) { | ||
1286 | - sprintf(s, " %s", last_ds[i]); | ||
1287 | - Tcl_ListObjAppendElement(interp, listPtr, | ||
1288 | - Tcl_NewStringObj(s, -1)); | ||
1289 | - free(last_ds[i]); | ||
1290 | - free(ds_namv[i]); | ||
1291 | - } | ||
1292 | - sprintf(s, "\n"); | ||
1293 | - Tcl_ListObjAppendElement(interp, listPtr, | ||
1294 | - Tcl_NewStringObj(s, -1)); | ||
1295 | - free(last_ds); | ||
1296 | - free(ds_namv); | ||
1297 | - } | ||
1298 | - } | ||
1299 | - return TCL_OK; | ||
1300 | -} | ||
1301 | - | ||
1302 | -static int Rrd_Fetch( | ||
1303 | - ClientData __attribute__((unused)) clientData, | ||
1304 | - Tcl_Interp *interp, | ||
1305 | - int argc, | ||
1306 | - CONST84 char *argv[]) | ||
1307 | -{ | ||
1308 | - time_t start, end, j; | ||
1309 | - unsigned long step, ds_cnt, i, ii; | ||
1310 | - rrd_value_t *data, *datai; | ||
1311 | - char **ds_namv; | ||
1312 | - Tcl_Obj *listPtr; | ||
1313 | - char s[30]; | ||
1314 | - char **argv2; | ||
1315 | - | ||
1316 | - argv2 = getopt_init(argc, argv); | ||
1317 | - if (rrd_fetch(argc, argv2, &start, &end, &step, | ||
1318 | - &ds_cnt, &ds_namv, &data) != -1) { | ||
1319 | - datai = data; | ||
1320 | - listPtr = Tcl_GetObjResult(interp); | ||
1321 | - for (j = start; j <= end; j += step) { | ||
1322 | - for (ii = 0; ii < ds_cnt; ii++) { | ||
1323 | - sprintf(s, "%.2f", *(datai++)); | ||
1324 | - Tcl_ListObjAppendElement(interp, listPtr, | ||
1325 | - Tcl_NewStringObj(s, -1)); | ||
1326 | - } | ||
1327 | - } | ||
1328 | - for (i = 0; i < ds_cnt; i++) | ||
1329 | - free(ds_namv[i]); | ||
1330 | - free(ds_namv); | ||
1331 | - free(data); | ||
1332 | - } | ||
1333 | - getopt_cleanup(argc, argv2); | ||
1334 | - | ||
1335 | - if (rrd_test_error()) { | ||
1336 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1337 | - rrd_get_error(), (char *) NULL); | ||
1338 | - rrd_clear_error(); | ||
1339 | - return TCL_ERROR; | ||
1340 | - } | ||
1341 | - | ||
1342 | - return TCL_OK; | ||
1343 | -} | ||
1344 | - | ||
1345 | - | ||
1346 | - | ||
1347 | -static int Rrd_Graph( | ||
1348 | - ClientData __attribute__((unused)) clientData, | ||
1349 | - Tcl_Interp *interp, | ||
1350 | - int argc, | ||
1351 | - CONST84 char *argv[]) | ||
1352 | -{ | ||
1353 | - Tcl_Channel channel; | ||
1354 | - int mode, fd2; | ||
1355 | - ClientData fd1; | ||
1356 | - FILE *stream = NULL; | ||
1357 | - char **calcpr = NULL; | ||
1358 | - int rc, xsize, ysize; | ||
1359 | - double ymin, ymax; | ||
1360 | - char dimensions[50]; | ||
1361 | - char **argv2; | ||
1362 | - CONST84 char *save; | ||
1363 | - | ||
1364 | - /* | ||
1365 | - * If the "filename" is a Tcl fileID, then arrange for rrd_graph() to write to | ||
1366 | - * that file descriptor. Will this work with windoze? I have no idea. | ||
1367 | - */ | ||
1368 | - if ((channel = Tcl_GetChannel(interp, argv[1], &mode)) != NULL) { | ||
1369 | - /* | ||
1370 | - * It >is< a Tcl fileID | ||
1371 | - */ | ||
1372 | - if (!(mode & TCL_WRITABLE)) { | ||
1373 | - Tcl_AppendResult(interp, "channel \"", argv[1], | ||
1374 | - "\" wasn't opened for writing", (char *) NULL); | ||
1375 | - return TCL_ERROR; | ||
1376 | - } | ||
1377 | - /* | ||
1378 | - * Must flush channel to make sure any buffered data is written before | ||
1379 | - * rrd_graph() writes to the stream | ||
1380 | - */ | ||
1381 | - if (Tcl_Flush(channel) != TCL_OK) { | ||
1382 | - Tcl_AppendResult(interp, "flush failed for \"", argv[1], "\": ", | ||
1383 | - strerror(Tcl_GetErrno()), (char *) NULL); | ||
1384 | - return TCL_ERROR; | ||
1385 | - } | ||
1386 | - if (Tcl_GetChannelHandle(channel, TCL_WRITABLE, &fd1) != TCL_OK) { | ||
1387 | - Tcl_AppendResult(interp, | ||
1388 | - "cannot get file descriptor associated with \"", | ||
1389 | - argv[1], "\"", (char *) NULL); | ||
1390 | - return TCL_ERROR; | ||
1391 | - } | ||
1392 | - /* | ||
1393 | - * Must dup() file descriptor so we can fclose(stream), otherwise the fclose() | ||
1394 | - * would close Tcl's file descriptor | ||
1395 | - */ | ||
1396 | - if ((fd2 = dup((int)fd1)) == -1) { | ||
1397 | - Tcl_AppendResult(interp, | ||
1398 | - "dup() failed for file descriptor associated with \"", | ||
1399 | - argv[1], "\": ", strerror(errno), (char *) NULL); | ||
1400 | - return TCL_ERROR; | ||
1401 | - } | ||
1402 | - /* | ||
1403 | - * rrd_graph() wants a FILE* | ||
1404 | - */ | ||
1405 | - if ((stream = fdopen(fd2, "wb")) == NULL) { | ||
1406 | - Tcl_AppendResult(interp, | ||
1407 | - "fdopen() failed for file descriptor associated with \"", | ||
1408 | - argv[1], "\": ", strerror(errno), (char *) NULL); | ||
1409 | - close(fd2); /* plug potential file descriptor leak */ | ||
1410 | - return TCL_ERROR; | ||
1411 | - } | ||
1412 | - | ||
1413 | - save = argv[1]; | ||
1414 | - argv[1] = "-"; | ||
1415 | - argv2 = getopt_init(argc, argv); | ||
1416 | - argv[1] = save; | ||
1417 | - } else { | ||
1418 | - Tcl_ResetResult(interp); /* clear error from Tcl_GetChannel() */ | ||
1419 | - argv2 = getopt_init(argc, argv); | ||
1420 | - } | ||
1421 | - | ||
1422 | - rc = rrd_graph(argc, argv2, &calcpr, &xsize, &ysize, stream, &ymin, | ||
1423 | - &ymax); | ||
1424 | - getopt_cleanup(argc, argv2); | ||
1425 | - | ||
1426 | - if (stream != NULL) | ||
1427 | - fclose(stream); /* plug potential malloc & file descriptor leak */ | ||
1428 | - | ||
1429 | - if (rc != -1) { | ||
1430 | - sprintf(dimensions, "%d %d", xsize, ysize); | ||
1431 | - Tcl_AppendResult(interp, dimensions, (char *) NULL); | ||
1432 | - if (calcpr) { | ||
1433 | -#if 0 | ||
1434 | - int i; | ||
1435 | - | ||
1436 | - for (i = 0; calcpr[i]; i++) { | ||
1437 | - printf("%s\n", calcpr[i]); | ||
1438 | - free(calcpr[i]); | ||
1439 | - } | ||
1440 | -#endif | ||
1441 | - free(calcpr); | ||
1442 | - } | ||
1443 | - } | ||
1444 | - | ||
1445 | - if (rrd_test_error()) { | ||
1446 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1447 | - rrd_get_error(), (char *) NULL); | ||
1448 | - rrd_clear_error(); | ||
1449 | - return TCL_ERROR; | ||
1450 | - } | ||
1451 | - | ||
1452 | - return TCL_OK; | ||
1453 | -} | ||
1454 | - | ||
1455 | - | ||
1456 | - | ||
1457 | -static int Rrd_Tune( | ||
1458 | - ClientData __attribute__((unused)) clientData, | ||
1459 | - Tcl_Interp *interp, | ||
1460 | - int argc, | ||
1461 | - CONST84 char *argv[]) | ||
1462 | -{ | ||
1463 | - char **argv2; | ||
1464 | - | ||
1465 | - argv2 = getopt_init(argc, argv); | ||
1466 | - rrd_tune(argc, argv2); | ||
1467 | - getopt_cleanup(argc, argv2); | ||
1468 | - | ||
1469 | - if (rrd_test_error()) { | ||
1470 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1471 | - rrd_get_error(), (char *) NULL); | ||
1472 | - rrd_clear_error(); | ||
1473 | - return TCL_ERROR; | ||
1474 | - } | ||
1475 | - | ||
1476 | - return TCL_OK; | ||
1477 | -} | ||
1478 | - | ||
1479 | - | ||
1480 | - | ||
1481 | -static int Rrd_Resize( | ||
1482 | - ClientData __attribute__((unused)) clientData, | ||
1483 | - Tcl_Interp *interp, | ||
1484 | - int argc, | ||
1485 | - CONST84 char *argv[]) | ||
1486 | -{ | ||
1487 | - char **argv2; | ||
1488 | - | ||
1489 | - argv2 = getopt_init(argc, argv); | ||
1490 | - rrd_resize(argc, argv2); | ||
1491 | - getopt_cleanup(argc, argv2); | ||
1492 | - | ||
1493 | - if (rrd_test_error()) { | ||
1494 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1495 | - rrd_get_error(), (char *) NULL); | ||
1496 | - rrd_clear_error(); | ||
1497 | - return TCL_ERROR; | ||
1498 | - } | ||
1499 | - | ||
1500 | - return TCL_OK; | ||
1501 | -} | ||
1502 | - | ||
1503 | - | ||
1504 | - | ||
1505 | -static int Rrd_Restore( | ||
1506 | - ClientData __attribute__((unused)) clientData, | ||
1507 | - Tcl_Interp *interp, | ||
1508 | - int argc, | ||
1509 | - CONST84 char *argv[]) | ||
1510 | -{ | ||
1511 | - char **argv2; | ||
1512 | - | ||
1513 | - argv2 = getopt_init(argc, argv); | ||
1514 | - rrd_restore(argc, argv2); | ||
1515 | - getopt_cleanup(argc, argv2); | ||
1516 | - | ||
1517 | - if (rrd_test_error()) { | ||
1518 | - Tcl_AppendResult(interp, "RRD Error: ", | ||
1519 | - rrd_get_error(), (char *) NULL); | ||
1520 | - rrd_clear_error(); | ||
1521 | - return TCL_ERROR; | ||
1522 | - } | ||
1523 | - | ||
1524 | - return TCL_OK; | ||
1525 | -} | ||
1526 | - | ||
1527 | - | ||
1528 | - | ||
1529 | -/* | ||
1530 | - * The following structure defines the commands in the Rrd extension. | ||
1531 | - */ | ||
1532 | - | ||
1533 | -typedef struct { | ||
1534 | - char *name; /* Name of the command. */ | ||
1535 | - Tcl_CmdProc *proc; /* Procedure for command. */ | ||
1536 | - int hide; /* Hide if safe interpreter */ | ||
1537 | -} CmdInfo; | ||
1538 | - | ||
1539 | -static CmdInfo rrdCmds[] = { | ||
1540 | - {"Rrd::create", Rrd_Create, 1}, /* Thread-safe version */ | ||
1541 | - {"Rrd::dump", Rrd_Dump, 0}, /* Thread-safe version */ | ||
1542 | - {"Rrd::flushcached", Rrd_Flushcached, 0}, | ||
1543 | - {"Rrd::last", Rrd_Last, 0}, /* Thread-safe version */ | ||
1544 | - {"Rrd::lastupdate", Rrd_Lastupdate, 0}, /* Thread-safe version */ | ||
1545 | - {"Rrd::update", Rrd_Update, 1}, /* Thread-safe version */ | ||
1546 | - {"Rrd::fetch", Rrd_Fetch, 0}, | ||
1547 | - {"Rrd::graph", Rrd_Graph, 1}, /* Due to RRD's API, a safe | ||
1548 | - interpreter cannot create | ||
1549 | - a graph since it writes to | ||
1550 | - a filename supplied by the | ||
1551 | - caller */ | ||
1552 | - {"Rrd::tune", Rrd_Tune, 1}, | ||
1553 | - {"Rrd::resize", Rrd_Resize, 1}, | ||
1554 | - {"Rrd::restore", Rrd_Restore, 1}, | ||
1555 | - {(char *) NULL, (Tcl_CmdProc *) NULL, 0} | ||
1556 | -}; | ||
1557 | - | ||
1558 | - | ||
1559 | - | ||
1560 | -static int init( | ||
1561 | - Tcl_Interp *interp, | ||
1562 | - int safe) | ||
1563 | -{ | ||
1564 | - CmdInfo *cmdInfoPtr; | ||
1565 | - Tcl_CmdInfo info; | ||
1566 | - | ||
1567 | - if (Tcl_InitStubs(interp, TCL_VERSION, 0) == NULL) | ||
1568 | - return TCL_ERROR; | ||
1569 | - | ||
1570 | - if (Tcl_PkgRequire(interp, "Tcl", TCL_VERSION, 1) == NULL) { | ||
1571 | - return TCL_ERROR; | ||
1572 | - } | ||
1573 | - | ||
1574 | - /* | ||
1575 | - * Why a global array? In keeping with the Rrd:: namespace, why | ||
1576 | - * not simply create a normal variable Rrd::version and set it? | ||
1577 | - */ | ||
1578 | - Tcl_SetVar2(interp, "rrd", "version", VERSION, TCL_GLOBAL_ONLY); | ||
1579 | - | ||
1580 | - for (cmdInfoPtr = rrdCmds; cmdInfoPtr->name != NULL; cmdInfoPtr++) { | ||
1581 | - /* | ||
1582 | - * Check if the command already exists and return an error | ||
1583 | - * to ensure we detect name clashes while loading the Rrd | ||
1584 | - * extension. | ||
1585 | - */ | ||
1586 | - if (Tcl_GetCommandInfo(interp, cmdInfoPtr->name, &info)) { | ||
1587 | - Tcl_AppendResult(interp, "command \"", cmdInfoPtr->name, | ||
1588 | - "\" already exists", (char *) NULL); | ||
1589 | - return TCL_ERROR; | ||
1590 | - } | ||
1591 | - if (safe && cmdInfoPtr->hide) { | ||
1592 | -#if 0 | ||
1593 | - /* | ||
1594 | - * Turns out the one cannot hide a command in a namespace | ||
1595 | - * due to a limitation of Tcl, one can only hide global | ||
1596 | - * commands. Thus, if we created the commands without | ||
1597 | - * the Rrd:: namespace in a safe interpreter, then the | ||
1598 | - * "unsafe" commands could be hidden -- which would allow | ||
1599 | - * an owning interpreter either un-hiding them or doing | ||
1600 | - * an "interp invokehidden". If the Rrd:: namespace is | ||
1601 | - * used, then it's still possible for the owning interpreter | ||
1602 | - * to fake out the missing commands: | ||
1603 | - * | ||
1604 | - * # Make all Rrd::* commands available in master interperter | ||
1605 | - * package require Rrd | ||
1606 | - * set safe [interp create -safe] | ||
1607 | - * # Make safe Rrd::* commands available in safe interperter | ||
1608 | - * interp invokehidden $safe -global load ./tclrrd1.2.11.so | ||
1609 | - * # Provide the safe interpreter with the missing commands | ||
1610 | - * $safe alias Rrd::update do_update $safe | ||
1611 | - * proc do_update {which_interp $args} { | ||
1612 | - * # Do some checking maybe... | ||
1613 | - * : | ||
1614 | - * return [eval Rrd::update $args] | ||
1615 | - * } | ||
1616 | - * | ||
1617 | - * Our solution for now is to just not create the "unsafe" | ||
1618 | - * commands in a safe interpreter. | ||
1619 | - */ | ||
1620 | - if (Tcl_HideCommand(interp, cmdInfoPtr->name, cmdInfoPtr->name) != | ||
1621 | - TCL_OK) | ||
1622 | - return TCL_ERROR; | ||
1623 | -#endif | ||
1624 | - } else | ||
1625 | - Tcl_CreateCommand(interp, cmdInfoPtr->name, cmdInfoPtr->proc, | ||
1626 | - (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL); | ||
1627 | - } | ||
1628 | - | ||
1629 | - if (Tcl_PkgProvide(interp, "Rrd", VERSION) != TCL_OK) { | ||
1630 | - return TCL_ERROR; | ||
1631 | - } | ||
1632 | - | ||
1633 | - return TCL_OK; | ||
1634 | -} | ||
1635 | - | ||
1636 | -int Tclrrd_Init( | ||
1637 | - Tcl_Interp *interp) | ||
1638 | -{ | ||
1639 | - return init(interp, 0); | ||
1640 | -} | ||
1641 | - | ||
1642 | -/* | ||
1643 | - * See the comments above and note how few commands are considered "safe"... | ||
1644 | - * Using rrdtool in a safe interpreter has very limited functionality. It's | ||
1645 | - * tempting to just return TCL_ERROR and forget about it. | ||
1646 | - */ | ||
1647 | -int Tclrrd_SafeInit( | ||
1648 | - Tcl_Interp *interp) | ||
1649 | -{ | ||
1650 | - return init(interp, 1); | ||
1651 | -} | ||
1652 | diff --git a/configure.ac b/configure.ac | ||
1653 | index 73ef4ec..acd74e8 100644 | ||
1654 | --- a/configure.ac | ||
1655 | +++ b/configure.ac | ||
1656 | @@ -830,57 +830,6 @@ AM_CONDITIONAL(LUA_SITE_LINSTALL, [test "$LUA_INSTALL_LMOD" != "$LUA_RRD_LIBDIR" | ||
1657 | AM_CONDITIONAL(LUA50, [test "$lua_vndot" = "50"]) | ||
1658 | AM_CONDITIONAL(BUILD_LUA, [test "$enable_lua" = "yes"]) | ||
1659 | |||
1660 | -enable_tcl_site=no | ||
1661 | - | ||
1662 | -AC_ARG_ENABLE(tcl,AS_HELP_STRING([--disable-tcl],[do not build the tcl modules]), | ||
1663 | -[],[enable_tcl=yes]) | ||
1664 | - | ||
1665 | -if test "$enable_tcl" = "yes"; then | ||
1666 | - dnl Check for Tcl. | ||
1667 | - withval="" | ||
1668 | - AC_ARG_WITH(tcllib,[ --with-tcllib=DIR location of the tclConfig.sh]) | ||
1669 | - enable_tcl=no | ||
1670 | - for dir in $withval /usr/lib /usr/lib64 /usr/local/lib /usr/lib/tcl8.4 /usr/lib/tcl8.3 ; do | ||
1671 | - AC_MSG_CHECKING(for tclConfig.sh in $dir) | ||
1672 | - if test -f "$dir/tclConfig.sh" ; then | ||
1673 | - tcl_config=$dir/tclConfig.sh | ||
1674 | - enable_tcl=yes | ||
1675 | - AC_MSG_RESULT(yes) | ||
1676 | - break | ||
1677 | - else | ||
1678 | - AC_MSG_RESULT(no) | ||
1679 | - fi | ||
1680 | - done | ||
1681 | - | ||
1682 | - if test "$enable_tcl" = "no"; then | ||
1683 | - AC_MSG_WARN([tclConfig.sh not found - Tcl interface will not be built]) | ||
1684 | - else | ||
1685 | - . $tcl_config | ||
1686 | - TCL_PACKAGE_DIR="$TCL_PACKAGE_PATH/tclrrd$VERSION" | ||
1687 | - if test -n "$TCL_INC_DIR"; then | ||
1688 | - TCL_INCLUDE_SPEC="$TCL_INCLUDE_SPEC -I$TCL_INC_DIR" | ||
1689 | - fi | ||
1690 | - fi | ||
1691 | - AC_ARG_ENABLE(tcl-site,AS_HELP_STRING([--enable-tcl-site],[install the tcl extension in the tcl tree]), | ||
1692 | - [],[enable_tcl_site=yes]) | ||
1693 | - | ||
1694 | -fi | ||
1695 | - | ||
1696 | -AM_CONDITIONAL(BUILD_TCL, test "$enable_tcl" = "yes" ) | ||
1697 | -AM_CONDITIONAL(BUILD_TCL_SITE, test "$enable_tcl_site" = "yes" ) | ||
1698 | - | ||
1699 | - | ||
1700 | -AC_SUBST(TCL_PREFIX) | ||
1701 | -AC_SUBST(TCL_SHLIB_CFLAGS) | ||
1702 | -AC_SUBST(TCL_SHLIB_LD) | ||
1703 | -AC_SUBST(TCL_SHLIB_SUFFIX) | ||
1704 | -AC_SUBST(TCL_PACKAGE_PATH) | ||
1705 | -AC_SUBST(TCL_LD_SEARCH_FLAGS) | ||
1706 | -AC_SUBST(TCL_STUB_LIB_SPEC) | ||
1707 | -AC_SUBST(TCL_VERSION) | ||
1708 | -AC_SUBST(TCL_PACKAGE_DIR) | ||
1709 | -AC_SUBST(TCL_INCLUDE_SPEC) | ||
1710 | - | ||
1711 | AC_ARG_ENABLE(python,AS_HELP_STRING([--disable-python],[do not build the python modules]), | ||
1712 | [],[enable_python=yes]) | ||
1713 | |||
1714 | @@ -932,8 +881,6 @@ AC_CONFIG_FILES([src/Makefile]) | ||
1715 | AC_CONFIG_FILES([src/librrd.sym.in]) | ||
1716 | AC_CONFIG_FILES([src/librrd.pc]) | ||
1717 | AC_CONFIG_FILES([bindings/Makefile]) | ||
1718 | -AC_CONFIG_FILES([bindings/tcl/Makefile]) | ||
1719 | -AC_CONFIG_FILES([bindings/tcl/ifOctets.tcl]) | ||
1720 | AC_CONFIG_FILES([Makefile]) | ||
1721 | AC_CONFIG_FILES([bindings/lua/Makefile]) | ||
1722 | |||
1723 | @@ -982,7 +929,6 @@ if test "$lua_need_compat51" = "1"; then | ||
1724 | echo " Lua Lua-modules dir: $LUA_INSTALL_LMOD" | ||
1725 | fi | ||
1726 | fi | ||
1727 | -echo " Build Tcl Bindings: $enable_tcl" | ||
1728 | echo " Build Python Bindings: $enable_python" | ||
1729 | echo " Build rrdcgi: $enable_rrdcgi" | ||
1730 | echo " Build librrd MT: $enable_pthread" | ||
1731 | -- | ||
1732 | 1.7.10 | ||
1733 | |||
diff --git a/meta-oe/recipes-extended/rrdtool/rrdtool/remove_hardcoded_xml_include.patch b/meta-oe/recipes-extended/rrdtool/rrdtool/remove_hardcoded_xml_include.patch new file mode 100644 index 0000000000..321a842b62 --- /dev/null +++ b/meta-oe/recipes-extended/rrdtool/rrdtool/remove_hardcoded_xml_include.patch | |||
@@ -0,0 +1,11 @@ | |||
1 | --- a/configure.ac 2012-11-06 11:20:54.099021892 -0500 | ||
2 | +++ b/configure.ac~ 2012-11-06 11:19:57.255023857 -0500 | ||
3 | @@ -548,7 +548,7 @@ | ||
4 | |||
5 | fi | ||
6 | EX_CHECK_ALL(glib-2.0, glib_check_version, glib.h, glib-2.0, 2.28.7, ftp://ftp.gtk.org/pub/glib/2.28/, "") | ||
7 | -EX_CHECK_ALL(xml2, xmlParseFile, libxml/parser.h, libxml-2.0, 2.7.8, http://xmlsoft.org/downloads.html, /usr/include/libxml2) | ||
8 | +EX_CHECK_ALL(xml2, xmlParseFile, libxml/parser.h, libxml-2.0, 2.7.8, http://xmlsoft.org/downloads.html, "") | ||
9 | |||
10 | if test "$EX_CHECK_ALL_ERR" = "YES"; then | ||
11 | AC_MSG_ERROR([Please fix the library issues listed above and try again.]) | ||
diff --git a/meta-oe/recipes-extended/rrdtool/rrdtool_1.4.7.bb b/meta-oe/recipes-extended/rrdtool/rrdtool_1.4.7.bb new file mode 100644 index 0000000000..2994df28ea --- /dev/null +++ b/meta-oe/recipes-extended/rrdtool/rrdtool_1.4.7.bb | |||
@@ -0,0 +1,119 @@ | |||
1 | SUMMARY = "High performance data logging and graphing system for time series data" | ||
2 | HOMEPAGE = "http://oss.oetiker.ch/rrdtool/" | ||
3 | |||
4 | LICENSE = "GPLv2" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=44fee82a1d2ed0676cf35478283e0aa0" | ||
6 | |||
7 | DEPENDS = "libpng zlib cairo pango glib-2.0 libxml2" | ||
8 | |||
9 | PR = "r2" | ||
10 | |||
11 | SRC_URI = "http://oss.oetiker.ch/rrdtool/pub/rrdtool-${PV}.tar.gz \ | ||
12 | file://0001-rrdtool-eradicate-tcl-support.patch \ | ||
13 | file://remove_hardcoded_xml_include.patch \ | ||
14 | " | ||
15 | SRC_URI[md5sum] = "ffe369d8921b4dfdeaaf43812100c38f" | ||
16 | SRC_URI[sha256sum] = "956aaf431c955ba88dd7d98920ade3a8c4bad04adb1f9431377950a813a7af11" | ||
17 | |||
18 | inherit autotools gettext pythonnative perlnative python-dir | ||
19 | |||
20 | EXTRA_AUTORECONF = "-I m4" | ||
21 | |||
22 | PACKAGECONFIG ??= "python perl" | ||
23 | |||
24 | PACKAGECONFIG[python] = "--enable-python=yes \ | ||
25 | am_cv_python_pythondir=${STAGING_LIBDIR}/python${PYTHON_BASEVERSION}/site-packages \ | ||
26 | am_cv_python_pyexecdir=${STAGING_LIBDIR}/python${PYTHON_BASEVERSION}/site-packages,\ | ||
27 | --disable-python,python," | ||
28 | |||
29 | PACKAGECONFIG[perl] = \ | ||
30 | "--enable-perl=yes --with-perl-options='INSTALLDIRS="vendor"' \ | ||
31 | ac_cv_path_PERL_CC='${CC}', \ | ||
32 | --disable-perl,perl," | ||
33 | |||
34 | PACKAGECONFIG[dbi] = "--enable-libdbi,--disable-libdbi,libdbi" | ||
35 | |||
36 | EXTRA_OECONF = " \ | ||
37 | --enable-shared \ | ||
38 | --disable-libwrap \ | ||
39 | --program-prefix='' \ | ||
40 | rd_cv_ieee_works=yes \ | ||
41 | --disable-ruby \ | ||
42 | --disable-lua \ | ||
43 | --disable-rpath \ | ||
44 | " | ||
45 | |||
46 | # don't use perl.real, this results in break issues with prebuilts since perl.real doesn't | ||
47 | # know where the PERL5LIB is... | ||
48 | # use wrapper perl instead | ||
49 | EXTRA_OEMAKE = "PERL=${STAGING_BINDIR_NATIVE}/perl-native/perl FULLPERL=${STAGING_BINDIR_NATIVE}/perl-native/perl" | ||
50 | |||
51 | export BUILD_SYS | ||
52 | export HOST_SYS | ||
53 | export STAGING_LIBDIR | ||
54 | export STAGING_INCDIR | ||
55 | |||
56 | do_configure() { | ||
57 | #fix the pkglib problem with newer automake | ||
58 | #perl | ||
59 | sed -i -e "s|-Wl,--rpath -Wl,\$rp||g" \ | ||
60 | ${S}/bindings/perl-shared/Makefile.PL | ||
61 | |||
62 | #python | ||
63 | sed -i -e '/PYTHON_INCLUDES="-I${/c \ | ||
64 | PYTHON_INCLUDES="-I=/usr/include/python${PYTHON_BASEVERSION}"' \ | ||
65 | ${S}/m4/acinclude.m4 | ||
66 | #remove the hardcoded $(libdir) rpath | ||
67 | sed -i -e 's|--rpath=$(libdir)||g' ${S}/bindings/Makefile.am | ||
68 | |||
69 | autotools_do_configure | ||
70 | |||
71 | perl_version=`perl -v 2>/dev/null | \ | ||
72 | sed -n 's/This is perl.*v[a-z ]*\([0-9]\.[0-9][0-9.]*\).*$/\1/p'` | ||
73 | |||
74 | #modify python sitepkg | ||
75 | #remove the dependency of perl-shared:Makefile | ||
76 | #or perl-shared/Makefile will be regenerated | ||
77 | #if any code touch bindings/Makefile after below perl bindings code | ||
78 | sed -i -e "s:\$(PYTHON) setup.py install:\$(PYTHON) setup.py install \ | ||
79 | --install-lib=${D}${PYTHON_SITEPACKAGES_DIR}:" \ | ||
80 | -e "s:perl-shared/Makefile.PL Makefile:perl-shared/Makefile.PL:" \ | ||
81 | ${S}/bindings/Makefile | ||
82 | |||
83 | #redo the perl bindings | ||
84 | ( | ||
85 | cd bindings/perl-shared; | ||
86 | perl -I${STAGING_LIBDIR}/perl/$perl_version Makefile.PL INSTALLDIRS="vendor" | ||
87 | INSTALLPRIVLIB="abc"; | ||
88 | sed -i -e "s| ${libdir}/perl/| ${STAGING_LIBDIR}/perl/|g" Makefile; | ||
89 | |||
90 | cd ../../bindings/perl-piped; | ||
91 | perl -I${STAGING_LIBDIR}/perl/$perl_version Makefile.PL INSTALLDIRS="vendor"; | ||
92 | sed -i -e "s| ${libdir}/perl/| ${STAGING_LIBDIR}/perl/|g" Makefile; | ||
93 | ) | ||
94 | |||
95 | #change the interpreter in file | ||
96 | sed -i -e "s|^PERL = ${STAGING_BINDIR_NATIVE}/.*|PERL = /usr/bin/perl|g" \ | ||
97 | ${S}/examples/Makefile | ||
98 | sed -i -e "s|${STAGING_BINDIR_NATIVE}/perl-native/perl|/usr/bin/perl|g" \ | ||
99 | ${S}/examples/*.pl | ||
100 | } | ||
101 | |||
102 | PACKAGES =+ "${PN}-perl ${PN}-python" | ||
103 | |||
104 | FILES_${PN}-doc += "${datadir}/examples" | ||
105 | |||
106 | DESCRIPTION_${PN}-perl = \ | ||
107 | "The ${PN}-perl package includes RRDtool bindings for perl." | ||
108 | FILES_${PN}-perl = "${libdir}/perl/vendor_perl/*/*.pm ${datadir}/${PN}/examples \ | ||
109 | ${libdir}/perl/vendor_perl/*/auto/RRDs/RRDs.*" | ||
110 | RDEPENDS_${PN}-perl = "perl perl-module-lib perl-module-getopt-long perl-module-time-hires \ | ||
111 | perl-module-io-file perl-module-ipc-open2 perl-module-io-socket" | ||
112 | |||
113 | DESCRIPTION_${PN}-python = \ | ||
114 | "The ${PN}-python package includes RRDtool bindings for python." | ||
115 | FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*" | ||
116 | RDEPENDS_${PN}-python = "python" | ||
117 | |||
118 | FILES_${PN}-dbg += "${libdir}/perl/vendor_perl/*/auto/RRDs/.debug \ | ||
119 | ${libdir}/python${PYTHON_BASEVERSION}/site-packages/.debug" | ||
diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog/initscript b/meta-oe/recipes-extended/rsyslog/rsyslog/initscript new file mode 100644 index 0000000000..7a8f8f9918 --- /dev/null +++ b/meta-oe/recipes-extended/rsyslog/rsyslog/initscript | |||
@@ -0,0 +1,118 @@ | |||
1 | #! /bin/sh | ||
2 | # | ||
3 | # This is an init script for openembedded | ||
4 | # Copy it to /etc/init.d/rsyslog and type | ||
5 | # > update-rc.d rsyslog defaults 5 | ||
6 | # | ||
7 | |||
8 | PATH=/sbin:/usr/sbin:/bin:/usr/bin | ||
9 | NAME=rsyslog | ||
10 | RSYSLOGD=rsyslogd | ||
11 | RSYSLOGD_BIN=/usr/sbin/rsyslogd | ||
12 | RSYSLOGD_OPTIONS="" | ||
13 | RSYSLOGD_PIDFILE=/var/run/rsyslogd.pid | ||
14 | SCRIPTNAME=/etc/init.d/$NAME | ||
15 | # Exit if the package is not installed | ||
16 | [ -x "$RSYSLOGD_BIN" ] || exit 0 | ||
17 | # Read configuration variable file if it is present | ||
18 | [ -r /etc/default/$NAME ] && . /etc/default/$NAME | ||
19 | # | ||
20 | # Function that starts the daemon/service | ||
21 | # | ||
22 | do_start() | ||
23 | { | ||
24 | DAEMON=$1 | ||
25 | DAEMON_ARGS=$2 | ||
26 | PIDFILE=$3 | ||
27 | # Return | ||
28 | # 0 if daemon has been started | ||
29 | # 1 if daemon could not be started | ||
30 | # if daemon had already been started, start-stop-daemon will return 1 | ||
31 | # so add -o/--oknodo(if nothing is done, exit 0) | ||
32 | start-stop-daemon -S --quiet --pidfile $PIDFILE --exec $DAEMON \ | ||
33 | --oknodo -- $DAEMON_ARGS || return 1 | ||
34 | } | ||
35 | # | ||
36 | # Function that stops the daemon/service | ||
37 | # | ||
38 | do_stop() | ||
39 | { | ||
40 | NAME=$1 | ||
41 | PIDFILE=$2 | ||
42 | # Return | ||
43 | # 0 if daemon has been stopped | ||
44 | # 1 if daemon was already stopped | ||
45 | # 2 if daemon could not be stopped | ||
46 | # other if a failure occurred | ||
47 | # QUIT/TERM/INT should work here, but they don't ????? | ||
48 | start-stop-daemon -K --quiet --signal KILL --pidfile $PIDFILE --name $NAME | ||
49 | RETVAL="$?" | ||
50 | rm -f $PIDFILE | ||
51 | return "$RETVAL" | ||
52 | } | ||
53 | # | ||
54 | # Function that sends a SIGHUP to the daemon/service | ||
55 | # | ||
56 | do_reload() { | ||
57 | NAME=$1 | ||
58 | PIDFILE=$2 | ||
59 | start-stop-daemon -K --signal HUP --quiet --pidfile $PIDFILE --name $NAME | ||
60 | return 0 | ||
61 | } | ||
62 | |||
63 | do_status() { | ||
64 | NAME=$1 | ||
65 | PIDFILE=$2 | ||
66 | # -t: test only but not stop | ||
67 | start-stop-daemon -K -t --quiet --pidfile $PIDFILE --name $NAME | ||
68 | # exit with status 0 if process is found | ||
69 | if [ "$?" = "0" ]; then | ||
70 | return 0 | ||
71 | else | ||
72 | return 1 | ||
73 | fi | ||
74 | } | ||
75 | |||
76 | case "$1" in | ||
77 | start) | ||
78 | echo -n "starting $RSYSLOGD ... " | ||
79 | do_start "$RSYSLOGD_BIN" "$RSYSLOGD_OPTIONS" "$RSYSLOGD_PIDFILE" | ||
80 | case "$?" in | ||
81 | 0) echo "done" ;; | ||
82 | 1) echo "failed" ;; | ||
83 | esac | ||
84 | ;; | ||
85 | stop) | ||
86 | echo -n "stopping $RSYSLOGD ... " | ||
87 | do_stop "$RSYSLOGD" "$RSYSLOGD_PIDFILE" | ||
88 | case "$?" in | ||
89 | 0|1) echo "done" ;; | ||
90 | 2) echo "failed" ;; | ||
91 | esac | ||
92 | ;; | ||
93 | reload|force-reload) | ||
94 | echo -n "reloading $RSYSLOGD ... " | ||
95 | do_reload "$RSYSLOGD" "$RSYSLOGD_PIDFILE" | ||
96 | echo "done" | ||
97 | ;; | ||
98 | restart) | ||
99 | $0 stop | ||
100 | $0 start | ||
101 | ;; | ||
102 | status) | ||
103 | echo -n "status $RSYSLOGD ... " | ||
104 | do_status "$RSYSLOGD" "$RSYSLOGD_PIDFILE" | ||
105 | if [ "$?" = "0" ]; then | ||
106 | echo "running" | ||
107 | exit 0 | ||
108 | else | ||
109 | echo "stopped" | ||
110 | exit 1 | ||
111 | fi | ||
112 | ;; | ||
113 | *) | ||
114 | echo "Usage: $SCRIPTNAME {start|stop|status|restart|reload|force-reload}" >&2 | ||
115 | exit 3 | ||
116 | ;; | ||
117 | esac | ||
118 | exit 0 | ||
diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog/rsyslog.conf b/meta-oe/recipes-extended/rsyslog/rsyslog/rsyslog.conf new file mode 100644 index 0000000000..54f8bb6a56 --- /dev/null +++ b/meta-oe/recipes-extended/rsyslog/rsyslog/rsyslog.conf | |||
@@ -0,0 +1,84 @@ | |||
1 | # if you experience problems, check | ||
2 | # http://www.rsyslog.com/troubleshoot for assistance | ||
3 | |||
4 | # rsyslog v3: load input modules | ||
5 | # If you do not load inputs, nothing happens! | ||
6 | # You may need to set the module load path if modules are not found. | ||
7 | # | ||
8 | # Ported from debian's sysklogd.conf | ||
9 | |||
10 | $ModLoad immark # provides --MARK-- message capability | ||
11 | $ModLoad imuxsock # provides support for local system logging (e.g. via logger command) | ||
12 | $ModLoad imklog # kernel logging (formerly provided by rklogd) | ||
13 | |||
14 | # | ||
15 | # Set the default permissions | ||
16 | # | ||
17 | $FileCreateMode 0640 | ||
18 | $DirCreateMode 0755 | ||
19 | $Umask 0022 | ||
20 | |||
21 | auth,authpriv.* /var/log/auth.log | ||
22 | *.*;auth,authpriv.none -/var/log/syslog | ||
23 | cron.* /var/log/cron.log | ||
24 | daemon.* -/var/log/daemon.log | ||
25 | kern.* -/var/log/kern.log | ||
26 | lpr.* -/var/log/lpr.log | ||
27 | mail.* -/var/log/mail.log | ||
28 | user.* -/var/log/user.log | ||
29 | |||
30 | # | ||
31 | # Logging for the mail system. Split it up so that | ||
32 | # it is easy to write scripts to parse these files. | ||
33 | # | ||
34 | mail.info -/var/log/mail.info | ||
35 | mail.warn -/var/log/mail.warn | ||
36 | mail.err /var/log/mail.err | ||
37 | |||
38 | # Logging for INN news system | ||
39 | # | ||
40 | news.crit /var/log/news.crit | ||
41 | news.err /var/log/news.err | ||
42 | news.notice -/var/log/news.notice | ||
43 | |||
44 | # | ||
45 | # Some `catch-all' logfiles. | ||
46 | # | ||
47 | *.=debug;\ | ||
48 | auth,authpriv.none;\ | ||
49 | news.none;mail.none -/var/log/debug | ||
50 | *.=info;*.=notice;*.=warn;\ | ||
51 | auth,authpriv.none;\ | ||
52 | cron,daemon.none;\ | ||
53 | mail,news.none -/var/log/messages | ||
54 | |||
55 | # | ||
56 | # Emergencies are sent to everybody logged in. | ||
57 | # | ||
58 | *.emerg :omusrmsg:* | ||
59 | |||
60 | # Save boot messages also to boot.log | ||
61 | local7.* /var/log/boot.log | ||
62 | |||
63 | # Remote Logging (we use TCP for reliable delivery) | ||
64 | # An on-disk queue is created for this action. If the remote host is | ||
65 | # down, messages are spooled to disk and sent when it is up again. | ||
66 | #$WorkDirectory /var/spool/rsyslog # where to place spool files | ||
67 | #$ActionQueueFileName uniqName # unique name prefix for spool files | ||
68 | $ActionQueueMaxDiskSpace 10m # 1gb space limit (use as much as possible) | ||
69 | #$ActionQueueSaveOnShutdown on # save messages to disk on shutdown | ||
70 | #$ActionQueueType LinkedList # run asynchronously | ||
71 | #$ActionResumeRetryCount -1 # infinite retries if host is down | ||
72 | # remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional | ||
73 | #*.* @@remote-host:514 | ||
74 | |||
75 | |||
76 | # ######### Receiving Messages from Remote Hosts ########## | ||
77 | # TCP Syslog Server: | ||
78 | # provides TCP syslog reception and GSS-API (if compiled to support it) | ||
79 | #$ModLoad imtcp.so # load module | ||
80 | #$InputTCPServerRun 514 # start up TCP listener at port 514 | ||
81 | |||
82 | # UDP Syslog Server: | ||
83 | #$ModLoad imudp.so # provides UDP syslog reception | ||
84 | #$UDPServerRun 514 # start a UDP syslog server at standard port 514 | ||
diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate b/meta-oe/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate new file mode 100644 index 0000000000..ba1120af44 --- /dev/null +++ b/meta-oe/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate | |||
@@ -0,0 +1,39 @@ | |||
1 | # /etc/logrotate.d/rsyslog - Ported from Debian | ||
2 | |||
3 | /var/log/syslog | ||
4 | { | ||
5 | rotate 7 | ||
6 | daily | ||
7 | missingok | ||
8 | notifempty | ||
9 | delaycompress | ||
10 | compress | ||
11 | postrotate | ||
12 | /etc/init.d/rsyslog reload 2> /dev/null || true | ||
13 | endscript | ||
14 | } | ||
15 | |||
16 | /var/log/mail.info | ||
17 | /var/log/mail.warn | ||
18 | /var/log/mail.err | ||
19 | /var/log/mail.log | ||
20 | /var/log/daemon.log | ||
21 | /var/log/kern.log | ||
22 | /var/log/auth.log | ||
23 | /var/log/user.log | ||
24 | /var/log/lpr.log | ||
25 | /var/log/cron.log | ||
26 | /var/log/debug | ||
27 | /var/log/messages | ||
28 | { | ||
29 | rotate 4 | ||
30 | weekly | ||
31 | missingok | ||
32 | notifempty | ||
33 | compress | ||
34 | delaycompress | ||
35 | sharedscripts | ||
36 | postrotate | ||
37 | /etc/init.d/rsyslog reload 2> /dev/null || true | ||
38 | endscript | ||
39 | } | ||
diff --git a/meta-oe/recipes-extended/rsyslog/rsyslog_7.4.4.bb b/meta-oe/recipes-extended/rsyslog/rsyslog_7.4.4.bb new file mode 100644 index 0000000000..344a131579 --- /dev/null +++ b/meta-oe/recipes-extended/rsyslog/rsyslog_7.4.4.bb | |||
@@ -0,0 +1,105 @@ | |||
1 | SUMMARY = "Rsyslog is an enhanced multi-threaded syslogd" | ||
2 | DESCRIPTION = "\ | ||
3 | Rsyslog is an enhanced syslogd supporting, among others, MySQL,\ | ||
4 | PostgreSQL, failover log destinations, syslog/tcp, fine grain\ | ||
5 | output format control, high precision timestamps, queued operations\ | ||
6 | and the ability to filter on any message part. It is quite\ | ||
7 | compatible to stock sysklogd and can be used as a drop-in replacement.\ | ||
8 | Its advanced features make it suitable for enterprise-class,\ | ||
9 | encryption protected syslog relay chains while at the same time being\ | ||
10 | very easy to setup for the novice user." | ||
11 | |||
12 | DEPENDS = "zlib libestr json-c bison-native flex-native" | ||
13 | HOMEPAGE = "http://www.rsyslog.com/" | ||
14 | LICENSE = "GPLv3 & LGPLv3 & Apache-2.0" | ||
15 | LIC_FILES_CHKSUM = "file://COPYING;md5=51d9635e646fb75e1b74c074f788e973 \ | ||
16 | file://COPYING.LESSER;md5=cb7903f1e5c39ae838209e130dca270a \ | ||
17 | file://COPYING.ASL20;md5=052f8a09206615ab07326ff8ce2d9d32\ | ||
18 | " | ||
19 | |||
20 | SRC_URI = "http://www.rsyslog.com/files/download/rsyslog/${BPN}-${PV}.tar.gz \ | ||
21 | file://initscript \ | ||
22 | file://rsyslog.conf \ | ||
23 | file://rsyslog.logrotate \ | ||
24 | " | ||
25 | |||
26 | SRC_URI[md5sum] = "ebcc010a6205c28eb505c0fe862f32c6" | ||
27 | SRC_URI[sha256sum] = "276d094d1e4c62c770ec8a72723667f119eee038912b79cf3337d439bc2f9087" | ||
28 | |||
29 | inherit autotools pkgconfig systemd update-rc.d update-alternatives | ||
30 | |||
31 | EXTRA_OECONF += "--enable-cached-man-pages" | ||
32 | |||
33 | # first line is default yes in configure | ||
34 | PACKAGECONFIG ??= " \ | ||
35 | zlib rsyslogd rsyslogrt klog inet regexp uuid libgcrypt \ | ||
36 | imdiag gnutls \ | ||
37 | ${@base_contains('DISTRO_FEATURES', 'snmp', 'snmp', '', d)} \ | ||
38 | ${@base_contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \ | ||
39 | " | ||
40 | |||
41 | # default yes in configure | ||
42 | PACKAGECONFIG[zlib] = "--enable-zlib,--disable-zlib,zlib," | ||
43 | PACKAGECONFIG[rsyslogd] = "--enable-rsyslogd,--disable-rsyslogd,," | ||
44 | PACKAGECONFIG[rsyslogrt] = "--enable-rsyslogrt,--disable-rsyslogrt,," | ||
45 | PACKAGECONFIG[inet] = "--enable-inet,--disable-inet,," | ||
46 | PACKAGECONFIG[klog] = "--enable-klog,--disable-klog,," | ||
47 | PACKAGECONFIG[regexp] = "--enable-regexp,--disable-regexp,," | ||
48 | PACKAGECONFIG[uuid] = "--enable-uuid,--disable-uuid,util-linux," | ||
49 | PACKAGECONFIG[libgcrypt] = "--enable-libgcrypt,--disable-libgcrypt,libgcrypt," | ||
50 | PACKAGECONFIG[testbench] = "--enable-testbench,--disable-testbench,," | ||
51 | |||
52 | # default no in configure | ||
53 | PACKAGECONFIG[debug] = "--enable-debug,--disable-debug,," | ||
54 | PACKAGECONFIG[imdiag] = "--enable-imdiag,--disable-imdiag,," | ||
55 | PACKAGECONFIG[snmp] = "--enable-snmp,--disable-snmp,net-snmp," | ||
56 | PACKAGECONFIG[gnutls] = "--enable-gnutls,--disable-gnutls,gnutls," | ||
57 | PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--without-systemdsystemunitdir,systemd," | ||
58 | PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5," | ||
59 | PACKAGECONFIG[postgresql] = "--enable-pgsql,--disable-pgsql,postgresql," | ||
60 | PACKAGECONFIG[libdbi] = "--enable-libdbi,--disable-libdbi,libdbi," | ||
61 | PACKAGECONFIG[mail] = "--enable-mail,--disable-mail,," | ||
62 | PACKAGECONFIG[gui] = "--enable-gui,--disable-gui,," | ||
63 | |||
64 | do_install_append() { | ||
65 | install -d "${D}${sysconfdir}/init.d" | ||
66 | install -m 755 ${WORKDIR}/initscript ${D}${sysconfdir}/init.d/rsyslogd | ||
67 | install -m 644 ${WORKDIR}/rsyslog.conf ${D}${sysconfdir}/rsyslog.conf | ||
68 | install -m 644 ${WORKDIR}/rsyslog.logrotate ${D}${sysconfdir}/logrotate.rsyslog | ||
69 | } | ||
70 | |||
71 | FILES_${PN} += "${bindir}" | ||
72 | |||
73 | INITSCRIPT_NAME = "rsyslogd" | ||
74 | INITSCRIPT_PARAMS = "defaults" | ||
75 | |||
76 | # higher than sysklogd's 100 | ||
77 | ALTERNATIVE_PRIORITY = "110" | ||
78 | |||
79 | ALTERNATIVE_${PN} = "rsyslogd syslog-conf syslog-logrotate" | ||
80 | |||
81 | ALTERNATIVE_LINK_NAME[rsyslogd] = "${base_sbindir}/syslogd" | ||
82 | ALTERNATIVE_TARGET[rsyslogd] = "${sbindir}/rsyslogd" | ||
83 | ALTERNATIVE_LINK_NAME[syslog-conf] = "${sysconfdir}/syslog.conf" | ||
84 | ALTERNATIVE_TARGET[syslog-conf] = "${sysconfdir}/rsyslog.conf" | ||
85 | ALTERNATIVE_LINK_NAME[syslog-logrotate] = "${sysconfdir}/logrotate.d/syslog" | ||
86 | ALTERNATIVE_TARGET[syslog-logrotate] = "${sysconfdir}/logrotate.rsyslog" | ||
87 | |||
88 | CONFFILES_${PN} = "${sysconfdir}/rsyslog.conf" | ||
89 | |||
90 | RPROVIDES_${PN} += "${PN}-systemd" | ||
91 | RREPLACES_${PN} += "${PN}-systemd" | ||
92 | RCONFLICTS_${PN} += "${PN}-systemd" | ||
93 | SYSTEMD_SERVICE_${PN} = "${BPN}.service" | ||
94 | |||
95 | RDEPENDS_${PN} += "logrotate" | ||
96 | |||
97 | # no syslog-init for systemd | ||
98 | python () { | ||
99 | if 'sysvinit' in d.getVar("DISTRO_FEATURES", True).split(): | ||
100 | pn = d.getVar('PN', True) | ||
101 | sysconfdir = d.getVar('sysconfdir', True) | ||
102 | d.appendVar('ALTERNATIVE_%s' % (pn), ' syslog-init') | ||
103 | d.setVarFlag('ALTERNATIVE_LINK_NAME', 'syslog-init', '%s/init.d/syslogd' % (sysconfdir)) | ||
104 | d.setVarFlag('ALTERNATIVE_TARGET', 'syslog-init', '%s/init.d/rsyslogd' % (sysconfdir)) | ||
105 | } | ||
diff --git a/meta-oe/recipes-extended/sip/sip-native_4.14.2.bb b/meta-oe/recipes-extended/sip/sip-native_4.14.2.bb new file mode 100644 index 0000000000..602dc250f5 --- /dev/null +++ b/meta-oe/recipes-extended/sip/sip-native_4.14.2.bb | |||
@@ -0,0 +1,35 @@ | |||
1 | SUMMARY = "SIP is a C++/Python Wrapper Generator" | ||
2 | AUTHOR = "Phil Thompson" | ||
3 | HOMEPAGE = "http://www.riverbankcomputing.co.uk/sip" | ||
4 | SECTION = "devel" | ||
5 | LICENSE = "GPLv2+" | ||
6 | LIC_FILES_CHKSUM = "file://sipgen.sbf;endline=15;md5=61b2ce7ddd624968411804d2fa9d776c" | ||
7 | |||
8 | # riverbankcomputing is upstream, but keeps only latest version, sf usually have few older | ||
9 | #SRC_URI = "http://www.riverbankcomputing.com/static/Downloads/sip4/sip-${PV}.tar.gz" | ||
10 | SRC_URI = "${SOURCEFORGE_MIRROR}/project/pyqt/sip/sip-${PV}/sip-${PV}.tar.gz" | ||
11 | SRC_URI[md5sum] = "b93442e745b3be2fad89de0686a76ce9" | ||
12 | SRC_URI[sha256sum] = "1a9d3bf26c821f369c175f8e68946b79bc994da4f96e8f5ecff06e6ee7ac0528" | ||
13 | S = "${WORKDIR}/sip-${PV}/sipgen" | ||
14 | |||
15 | inherit qmake2 native python-dir | ||
16 | |||
17 | EXTRA_QMAKEVARS_POST += "DESTDIR=${S} CONFIG=console" | ||
18 | |||
19 | export BUILD_SYS | ||
20 | export HOST_SYS | ||
21 | export STAGING_LIBDIR | ||
22 | export STAGING_INCDIR | ||
23 | |||
24 | do_configure_prepend() { | ||
25 | cat sipgen.sbf | sed s,target,TARGET, | sed s,sources,SOURCES, | sed s,headers,HEADERS, > sipgen.pro | ||
26 | } | ||
27 | do_install() { | ||
28 | install -d ${D}${bindir} | ||
29 | install -m 0755 sip ${D}${bindir}/sip | ||
30 | # python-pyqt expects sip4 | ||
31 | ln -sf sip ${D}${bindir}/sip4 | ||
32 | cd ${WORKDIR}/sip-${PV} && python configure.py | ||
33 | install -d ${D}${PYTHON_SITEPACKAGES_DIR} | ||
34 | install -m 0755 sip*.py ${D}${PYTHON_SITEPACKAGES_DIR} | ||
35 | } | ||
diff --git a/meta-oe/recipes-extended/smartmontools/files/initd.smartd b/meta-oe/recipes-extended/smartmontools/files/initd.smartd new file mode 100755 index 0000000000..29c27e4756 --- /dev/null +++ b/meta-oe/recipes-extended/smartmontools/files/initd.smartd | |||
@@ -0,0 +1,108 @@ | |||
1 | #! /bin/sh | ||
2 | |||
3 | # smartmontools init file for smartd | ||
4 | # Copyright (C) 2002-8 Bruce Allen <smartmontools-support@lists.sourceforge.net> | ||
5 | # $Id: smartd.initd.in 3360 2011-06-06 19:25:36Z chrfranke $ | ||
6 | |||
7 | # For RedHat and cousins: | ||
8 | # chkconfig: - 60 60 | ||
9 | # description: Self Monitoring and Reporting Technology (SMART) Daemon | ||
10 | # processname: smartd | ||
11 | |||
12 | # For SuSE and cousins | ||
13 | ### BEGIN INIT INFO | ||
14 | # Provides: smartd | ||
15 | # Required-Start: $syslog $remote_fs | ||
16 | # Should-Start: sendmail | ||
17 | # Required-Stop: $syslog $remote_fs | ||
18 | # Should-Stop: sendmail | ||
19 | # Default-Start: | ||
20 | # Default-Stop: 0 1 2 3 4 5 6 | ||
21 | # Short-Description: Monitors disk and tape health via S.M.A.R.T. | ||
22 | # Description: Start S.M.A.R.T. disk and tape monitor. | ||
23 | ### END INIT INFO | ||
24 | |||
25 | # This program is free software; you can redistribute it and/or modify it | ||
26 | # under the terms of the GNU General Public License as published by the Free | ||
27 | # Software Foundation; either version 2, or (at your option) any later | ||
28 | # version. | ||
29 | # You should have received a copy of the GNU General Public License (for | ||
30 | # example COPYING); if not, write to the Free Software Foundation, Inc., 675 | ||
31 | # Mass Ave, Cambridge, MA 02139, USA. | ||
32 | # This code was originally developed as a Senior Thesis by Michael Cornwell | ||
33 | # at the Concurrent Systems Laboratory (now part of the Storage Systems | ||
34 | # Research Center), Jack Baskin School of Engineering, University of | ||
35 | # California, Santa Cruz. http://ssrc.soe.ucsc.edu/. | ||
36 | |||
37 | # Uncomment the line below to pass options to smartd on startup. | ||
38 | # Note that distribution specific configuration files like | ||
39 | # /etc/{default,sysconfig}/smartmontools might override these | ||
40 | #smartd_opts="--interval=1800" | ||
41 | |||
42 | SMARTD_BIN=/usr/sbin/smartd | ||
43 | SMARTDPID=/var/run/smartd.pid | ||
44 | [ -x $SMARTD_BIN ] || exit 0 | ||
45 | RET=0 | ||
46 | |||
47 | # source configuration file | ||
48 | [ -r /etc/default/rcS ] && . /etc/default/rcS | ||
49 | [ -r /etc/default/smartmontools ] && . /etc/default/smartmontools | ||
50 | |||
51 | smartd_opts="--pidfile $SMARTDPID $smartd_opts" | ||
52 | |||
53 | case "$1" in | ||
54 | start) | ||
55 | echo -n "Starting S.M.A.R.T. daemon: smartd" | ||
56 | if start-stop-daemon --start --quiet --pidfile $SMARTDPID \ | ||
57 | --exec $SMARTD_BIN -- $smartd_opts; then | ||
58 | echo "." | ||
59 | else | ||
60 | echo " (failed)" | ||
61 | RET=1 | ||
62 | fi | ||
63 | ;; | ||
64 | stop) | ||
65 | echo -n "Stopping S.M.A.R.T. daemon: smartd" | ||
66 | start-stop-daemon --stop --quiet --oknodo --pidfile $SMARTDPID | ||
67 | echo "." | ||
68 | ;; | ||
69 | restart) | ||
70 | $0 stop | ||
71 | $0 start | ||
72 | ;; | ||
73 | force-reload) | ||
74 | $0 reload || $0 restart | ||
75 | ;; | ||
76 | reload) | ||
77 | echo -n "Reload S.M.A.R.T. daemon: smartd" | ||
78 | if start-stop-daemon --stop --quiet --signal 1 \ | ||
79 | --pidfile $SMARTDPID; then | ||
80 | echo "." | ||
81 | else | ||
82 | echo " (failed)" | ||
83 | RET=1 | ||
84 | fi | ||
85 | ;; | ||
86 | report) | ||
87 | echo -n "Checking SMART devices now" | ||
88 | if start-stop-daemon --stop --quiet --signal 10 \ | ||
89 | --pidfile $SMARTDPID; then | ||
90 | echo "." | ||
91 | else | ||
92 | echo " (failed)" | ||
93 | RET=1 | ||
94 | fi | ||
95 | ;; | ||
96 | status) | ||
97 | if pidof $SMARTD_BIN >/dev/null; then | ||
98 | echo "$SMARTD_BIN is running." | ||
99 | else | ||
100 | echo "$SMARTD_BIN is not running." | ||
101 | RET=1 | ||
102 | fi | ||
103 | ;; | ||
104 | *) | ||
105 | echo "Usage: $0 {start|stop|restart|force-reload|reload|report|status}" | ||
106 | exit 1 | ||
107 | esac | ||
108 | exit $RET | ||
diff --git a/meta-oe/recipes-extended/smartmontools/smartmontools_6.2.bb b/meta-oe/recipes-extended/smartmontools/smartmontools_6.2.bb new file mode 100644 index 0000000000..9b9454c880 --- /dev/null +++ b/meta-oe/recipes-extended/smartmontools/smartmontools_6.2.bb | |||
@@ -0,0 +1,39 @@ | |||
1 | SUMMARY = "Control and monitor storage systems using S.M.A.R.T" | ||
2 | DESCRIPTION = \ | ||
3 | "The smartmontools package contains two utility programs (smartctl \ | ||
4 | and smartd) to control and monitor storage systems using the Self-\ | ||
5 | Monitoring, Analysis and Reporting Technology System (SMART) built \ | ||
6 | into most modern ATA and SCSI hard disks. In many cases, these \ | ||
7 | utilities will provide advanced warning of disk degradation and failure." | ||
8 | |||
9 | HOMEPAGE = "http://smartmontools.sourceforge.net/" | ||
10 | SECTION = "console/utils" | ||
11 | |||
12 | LICENSE = "GPLv2" | ||
13 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" | ||
14 | |||
15 | SRC_URI = "${SOURCEFORGE_MIRROR}/smartmontools/smartmontools-${PV}.tar.gz \ | ||
16 | file://initd.smartd \ | ||
17 | " | ||
18 | |||
19 | PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'libcap-ng', 'libcap-ng', '', d)} \ | ||
20 | ${@base_contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)} \ | ||
21 | " | ||
22 | PACKAGECONFIG[libcap-ng] = "--with-libcap-ng=yes,--with-libcap-ng=no,libcap-ng" | ||
23 | PACKAGECONFIG[selinux] = "--with-selinux=yes,--with-selinux=no,libselinux" | ||
24 | |||
25 | SRC_URI[md5sum] = "d44f84081a12cef79cd17f78044351fc" | ||
26 | SRC_URI[sha256sum] = "486f660579bb0fb4f6b927ded7531cb1f99685c666397377761c5b04dd96065b" | ||
27 | |||
28 | inherit autotools update-rc.d | ||
29 | |||
30 | do_install_append () { | ||
31 | #install the init.d/smartd | ||
32 | install -d ${D}${sysconfdir}/init.d | ||
33 | install -p -m 0755 ${WORKDIR}/initd.smartd ${D}${sysconfdir}/init.d/smartd | ||
34 | } | ||
35 | |||
36 | INITSCRIPT_NAME = "smartd" | ||
37 | INITSCRIPT_PARAMS = "start 60 . stop 60 0 1 2 3 4 5 6 ." | ||
38 | |||
39 | RDEPENDS_${PN} += "mailx" | ||
diff --git a/meta-oe/recipes-extended/socketcan/can-utils_git.bb b/meta-oe/recipes-extended/socketcan/can-utils_git.bb new file mode 100644 index 0000000000..d8de9dfd27 --- /dev/null +++ b/meta-oe/recipes-extended/socketcan/can-utils_git.bb | |||
@@ -0,0 +1,16 @@ | |||
1 | SUMMARY = "Linux CAN network development utilities" | ||
2 | DESCRIPTION = "Linux CAN network development" | ||
3 | LICENSE = "GPLv2 & BSD-3-Clause" | ||
4 | LIC_FILES_CHKSUM = "file://include/linux/can.h;endline=43;md5=390a2c9a3c5e3595a069ac1436553ee7" | ||
5 | |||
6 | DEPENDS = "libsocketcan" | ||
7 | |||
8 | SRC_URI = "git://git.gitorious.org/linux-can/${BPN}.git;protocol=git;branch=master" | ||
9 | SRCREV = "67a2bdcd336e6becfa5784742e18c88dbeddc973" | ||
10 | |||
11 | PV = "0.0+gitr${SRCPV}" | ||
12 | |||
13 | S = "${WORKDIR}/git" | ||
14 | |||
15 | inherit autotools pkgconfig | ||
16 | |||
diff --git a/meta-oe/recipes-extended/socketcan/canutils/0001-canutils-candump-Add-error-frame-s-handling.patch b/meta-oe/recipes-extended/socketcan/canutils/0001-canutils-candump-Add-error-frame-s-handling.patch new file mode 100644 index 0000000000..fcc38e0617 --- /dev/null +++ b/meta-oe/recipes-extended/socketcan/canutils/0001-canutils-candump-Add-error-frame-s-handling.patch | |||
@@ -0,0 +1,94 @@ | |||
1 | From bab595e38295dcafcfc17a011d3d51f2df1618e6 Mon Sep 17 00:00:00 2001 | ||
2 | From: AnilKumar Ch <anilkumar@ti.com> | ||
3 | Date: Tue, 10 Jan 2012 18:55:11 +0530 | ||
4 | Subject: [PATCH] canutils: candump: Add error frame's handling | ||
5 | |||
6 | This patch adds the error handling capability to candump utility | ||
7 | by adding error flags for displaying all kind of error frames | ||
8 | like tx_timeout, lost arbitration, controller problems, buserrors, | ||
9 | bus warnings etc. | ||
10 | |||
11 | Usage of candump for error frame display on console: | ||
12 | candump [<can-interface>] [Options] | ||
13 | Ex: candump can0 --error | ||
14 | |||
15 | This patch is created on top of canutils-4.0.6 tag from | ||
16 | http://git.pengutronix.de/?p=tools/canutils.git | ||
17 | |||
18 | Signed-off-by: AnilKumar Ch <anilkumar@ti.com> | ||
19 | Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> | ||
20 | --- | ||
21 | Upstream-Status: Backport | ||
22 | |||
23 | src/candump.c | 20 ++++++++++++++++++++ | ||
24 | 1 file changed, 20 insertions(+) | ||
25 | |||
26 | diff --git a/src/candump.c b/src/candump.c | ||
27 | index 259d442..c16425b 100644 | ||
28 | --- a/src/candump.c | ||
29 | +++ b/src/candump.c | ||
30 | @@ -20,6 +20,7 @@ | ||
31 | |||
32 | #include <linux/can.h> | ||
33 | #include <linux/can/raw.h> | ||
34 | +#include <linux/can/error.h> | ||
35 | |||
36 | extern int optind, opterr, optopt; | ||
37 | |||
38 | @@ -40,6 +41,7 @@ static void print_usage(char *prg) | ||
39 | " -p, --protocol=PROTO\t" "CAN protocol (default CAN_RAW = %d)\n" | ||
40 | " --filter=id:mask[:id:mask]...\n" | ||
41 | "\t\t\t" "apply filter\n" | ||
42 | + " -e, --error\t\t" "dump error frames along with data frames\n" | ||
43 | " -h, --help\t\t" "this help\n" | ||
44 | " -o <filename>\t\t" "output into filename\n" | ||
45 | " -d\t\t\t" "daemonize\n" | ||
46 | @@ -86,6 +88,11 @@ int main(int argc, char **argv) | ||
47 | int nbytes, i; | ||
48 | int opt, optdaemon = 0; | ||
49 | uint32_t id, mask; | ||
50 | + int error = 0; | ||
51 | + can_err_mask_t err_mask = (CAN_ERR_TX_TIMEOUT | CAN_ERR_LOSTARB | | ||
52 | + CAN_ERR_CRTL | CAN_ERR_PROT | | ||
53 | + CAN_ERR_TRX | CAN_ERR_ACK | CAN_ERR_BUSOFF | | ||
54 | + CAN_ERR_BUSERROR); | ||
55 | |||
56 | signal(SIGPIPE, SIG_IGN); | ||
57 | |||
58 | @@ -95,6 +102,7 @@ int main(int argc, char **argv) | ||
59 | { "protocol", required_argument, 0, 'p' }, | ||
60 | { "type", required_argument, 0, 't' }, | ||
61 | { "filter", required_argument, 0, FILTER_OPTION }, | ||
62 | + { "error", no_argument, 0, 'e' }, | ||
63 | { "version", no_argument, 0, VERSION_OPTION}, | ||
64 | { 0, 0, 0, 0}, | ||
65 | }; | ||
66 | @@ -121,6 +129,10 @@ int main(int argc, char **argv) | ||
67 | proto = strtoul(optarg, NULL, 0); | ||
68 | break; | ||
69 | |||
70 | + case 'e': | ||
71 | + error = 1; | ||
72 | + break; | ||
73 | + | ||
74 | case 'o': | ||
75 | optout = optarg; | ||
76 | break; | ||
77 | @@ -186,6 +198,14 @@ int main(int argc, char **argv) | ||
78 | } | ||
79 | } | ||
80 | |||
81 | + if (error) { | ||
82 | + if (setsockopt(s, SOL_CAN_RAW, CAN_RAW_ERR_FILTER, &err_mask, | ||
83 | + sizeof(err_mask)) != 0) { | ||
84 | + perror("setsockopt"); | ||
85 | + exit(1); | ||
86 | + } | ||
87 | + } | ||
88 | + | ||
89 | if (optdaemon) | ||
90 | daemon(1, 0); | ||
91 | else { | ||
92 | -- | ||
93 | 1.8.3.1 | ||
94 | |||
diff --git a/meta-oe/recipes-extended/socketcan/canutils_4.0.6.bb b/meta-oe/recipes-extended/socketcan/canutils_4.0.6.bb new file mode 100644 index 0000000000..8195ed9183 --- /dev/null +++ b/meta-oe/recipes-extended/socketcan/canutils_4.0.6.bb | |||
@@ -0,0 +1,17 @@ | |||
1 | SUMMARY = "canutils (PTX flavour)" | ||
2 | HOMEPAGE = "http://www.pengutronix.de" | ||
3 | SECTION = "console/network" | ||
4 | |||
5 | LICENSE = "GPLv2" | ||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" | ||
7 | |||
8 | DEPENDS = "libsocketcan" | ||
9 | |||
10 | SRCREV = "299dff7f5322bf0348dcdd60071958ebedf5f09d" | ||
11 | SRC_URI = "git://git.pengutronix.de/git/tools/canutils.git;protocol=git \ | ||
12 | file://0001-canutils-candump-Add-error-frame-s-handling.patch \ | ||
13 | " | ||
14 | |||
15 | S = "${WORKDIR}/git" | ||
16 | |||
17 | inherit autotools | ||
diff --git a/meta-oe/recipes-extended/socketcan/libsocketcan/0001-Use-strcmp-instead-of-sizeof-on-char-string.patch b/meta-oe/recipes-extended/socketcan/libsocketcan/0001-Use-strcmp-instead-of-sizeof-on-char-string.patch new file mode 100644 index 0000000000..aa6196ee90 --- /dev/null +++ b/meta-oe/recipes-extended/socketcan/libsocketcan/0001-Use-strcmp-instead-of-sizeof-on-char-string.patch | |||
@@ -0,0 +1,39 @@ | |||
1 | From 94094cc4ee7ae585da3e5e7e83e7d82b5d6de656 Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Stein <alexander.stein@systec-electronic.com> | ||
3 | Date: Wed, 14 Nov 2012 12:13:06 +0100 | ||
4 | Subject: [PATCH] Use strcmp instead of sizeof on char* string | ||
5 | |||
6 | This bug was detected by the clang warning: | ||
7 | libsocketcan.c:384:16: warning: argument to 'sizeof' in 'strncmp' call | ||
8 | is the same expression as the source; did you mean to provide an | ||
9 | explicit length? [-Wsizeof-pointer-memaccess] | ||
10 | sizeof(name)) != 0) | ||
11 | ~~~~~~~^~~~~~ | ||
12 | |||
13 | Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com> | ||
14 | Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> | ||
15 | --- | ||
16 | Upstream-Status: Backport | ||
17 | |||
18 | src/libsocketcan.c | 5 ++--- | ||
19 | 1 file changed, 2 insertions(+), 3 deletions(-) | ||
20 | |||
21 | diff --git a/src/libsocketcan.c b/src/libsocketcan.c | ||
22 | index fedcbdc..841c2ed 100644 | ||
23 | --- a/src/libsocketcan.c | ||
24 | +++ b/src/libsocketcan.c | ||
25 | @@ -379,9 +379,8 @@ static int do_get_nl_link(int fd, __u8 acquire, const char *name, void *res) | ||
26 | nl_msg->nlmsg_len - NLMSG_LENGTH(sizeof(struct ifaddrmsg)); | ||
27 | parse_rtattr(tb, IFLA_MAX, IFLA_RTA(ifi), len); | ||
28 | |||
29 | - if (strncmp | ||
30 | - ((char *)RTA_DATA(tb[IFLA_IFNAME]), name, | ||
31 | - sizeof(name)) != 0) | ||
32 | + if (strcmp | ||
33 | + ((char *)RTA_DATA(tb[IFLA_IFNAME]), name) != 0) | ||
34 | continue; | ||
35 | |||
36 | if (tb[IFLA_LINKINFO]) | ||
37 | -- | ||
38 | 1.8.3.1 | ||
39 | |||
diff --git a/meta-oe/recipes-extended/socketcan/libsocketcan_0.0.9.bb b/meta-oe/recipes-extended/socketcan/libsocketcan_0.0.9.bb new file mode 100644 index 0000000000..df3c163ba3 --- /dev/null +++ b/meta-oe/recipes-extended/socketcan/libsocketcan_0.0.9.bb | |||
@@ -0,0 +1,20 @@ | |||
1 | SUMMARY = "Control basic functions in socketcan from userspace" | ||
2 | HOMEPAGE = "http://www.pengutronix.de" | ||
3 | SECTION = "libs/network" | ||
4 | |||
5 | LICENSE = "LGPLv2.1" | ||
6 | LIC_FILES_CHKSUM = "file://src/libsocketcan.c;beginline=3;endline=17;md5=97e38adced4385d8fba1ae2437cedee1" | ||
7 | |||
8 | SRCREV = "e1a224bf1c409adf0c02b07a90deada634e54b88" | ||
9 | |||
10 | SRC_URI = "git://git.pengutronix.de/git/tools/libsocketcan.git;protocol=git \ | ||
11 | file://0001-Use-strcmp-instead-of-sizeof-on-char-string.patch \ | ||
12 | " | ||
13 | |||
14 | S = "${WORKDIR}/git" | ||
15 | |||
16 | inherit autotools pkgconfig | ||
17 | |||
18 | do_configure_prepend() { | ||
19 | sed -i -e s:tests/GNUmakefile::g -e s:trunk:0.0.9: configure.ac | ||
20 | } | ||
diff --git a/meta-oe/recipes-extended/subsurface/subsurface_git.bb b/meta-oe/recipes-extended/subsurface/subsurface_git.bb new file mode 100644 index 0000000000..eb4536aa61 --- /dev/null +++ b/meta-oe/recipes-extended/subsurface/subsurface_git.bb | |||
@@ -0,0 +1,30 @@ | |||
1 | SUMMARY = "Subsurface is an open source dive log program" | ||
2 | LICENSE = "GPLv2" | ||
3 | LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263" | ||
4 | |||
5 | DEPENDS = "libdivecomputer gtk+ libxml2 glib-2.0 gconf" | ||
6 | |||
7 | inherit gtk-icon-cache | ||
8 | |||
9 | inherit gitpkgv | ||
10 | PKGV = "${GITPKGVTAG}" | ||
11 | PV = "1.1" | ||
12 | |||
13 | SRCREV = "bd275d73ac06823619230915a3aa29deddc996fb" | ||
14 | SRC_URI = "git://subsurface.hohndel.org/subsurface.git" | ||
15 | S = "${WORKDIR}/git" | ||
16 | |||
17 | EXTRA_OEMAKE = "CC='${CC}' \ | ||
18 | libdc-usr=${STAGING_INCDIR}/libdivecomputer/* \ | ||
19 | LIBDIVECOMPUTERINCLUDES=${STAGING_INCDIR}/libdivecomputer \ | ||
20 | LIBDIVECOMPUTERARCHIVE=${STAGING_LIBDIR}/libdivecomputer.a \ | ||
21 | " | ||
22 | |||
23 | do_install() { | ||
24 | oe_runmake install DESTDIR=${D} | ||
25 | rm ${D}${datadir}/icons/hicolor/icon-theme.cache | ||
26 | } | ||
27 | |||
28 | FILES_${PN} += "${datadir}/icons/hicolor/scalable/apps/subsurface.svg" | ||
29 | RRECOMMENDS_${PN}_append_libc-glibc = " eglibc-gconv-iso8859-15" | ||
30 | |||
diff --git a/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/configure.patch b/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/configure.patch new file mode 100644 index 0000000000..8b98707cd7 --- /dev/null +++ b/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/configure.patch | |||
@@ -0,0 +1,128 @@ | |||
1 | |||
2 | # | ||
3 | # Patch managed by http://www.holgerschurig.de/patcher.html | ||
4 | # | ||
5 | |||
6 | --- t1lib-5.0.2/configure.in~configure.patch | ||
7 | +++ t1lib-5.0.2/configure.in | ||
8 | @@ -75,9 +75,9 @@ | ||
9 | T1LIB_VERSIONSTRING=\"MACRO_T1LIB_IDENTIFIER\" | ||
10 | |||
11 | |||
12 | -dnl We use this file by Andreas Zeller to check for libXaw | ||
13 | -builtin(include, ac-tools/ice_find_athena.m4) | ||
14 | -builtin(include, ac-tools/aclocal.m4) | ||
15 | +#dnl We use this file by Andreas Zeller to check for libXaw | ||
16 | +#builtin(include, ac-tools/ice_find_athena.m4) | ||
17 | +#builtin(include, ac-tools/aclocal.m4) | ||
18 | |||
19 | dnl We want these before the checks, so the checks can modify their values. | ||
20 | test -z "$LDLIBS" && LDLIBS=-lm AC_SUBST(LDLIBS) | ||
21 | @@ -161,6 +161,7 @@ | ||
22 | |||
23 | dnl **** Check for underscore on external symbols **** | ||
24 | |||
25 | +AH_TEMPLATE([NEED_UNDERSCORE_PREFIX], [Define if external symbols need an underscore prefix]) | ||
26 | AC_CACHE_CHECK("whether external symbols need an underscore prefix", | ||
27 | ac_cv_c_extern_prefix, | ||
28 | [saved_libs=$LIBS | ||
29 | @@ -178,68 +179,48 @@ | ||
30 | AC_DEFINE(NEED_UNDERSCORE_PREFIX) | ||
31 | fi | ||
32 | |||
33 | -dnl **** Check which ANSI integer type is 16 bit | ||
34 | +dnl **** Check which ANSI integer type is 16 bit | ||
35 | +T1_AA_TYPE16="" | ||
36 | +for type in short int; do | ||
37 | + if test x"`eval echo \\$ac_cv_sizeof_$type`" = "x2"; then | ||
38 | + T1_AA_TYPE16="-DT1_AA_TYPE16=$type" | ||
39 | + T1_INT16="$type" | ||
40 | + break | ||
41 | + fi | ||
42 | +done | ||
43 | |||
44 | -AC_CACHE_CHECK( "which ANSI integer type is 16 bit", ac_16bit_type, | ||
45 | - AC_TRY_RUN([ | ||
46 | -int main(void) { | ||
47 | - if (sizeof(short)==2) | ||
48 | - return(0); | ||
49 | - else if (sizeof(int)==2) | ||
50 | - return(1); | ||
51 | - else | ||
52 | - return(2); | ||
53 | -}], ac_16bit_type="short", ac_16bit_type="int", ac_16bit_type=)) | ||
54 | -if test "$ac_16bit_type" = "short" | ||
55 | -then | ||
56 | - T1_AA_TYPE16="-DT1_AA_TYPE16=short" | ||
57 | - T1_INT16="short" | ||
58 | -else | ||
59 | - T1_AA_TYPE16="-DT1_AA_TYPE16=int" | ||
60 | - T1_INT16="int" | ||
61 | +if test x"$T1_AA_TYPE16" = "x"; then | ||
62 | + AC_MSG_ERROR("Unable to determine which integer type is 16 bit.") | ||
63 | fi | ||
64 | |||
65 | - | ||
66 | dnl **** Check which ANSI integer type is 32 bit | ||
67 | +T1_AA_TYPE32="" | ||
68 | +for type in int long; do | ||
69 | + if test x"`eval echo \\$ac_cv_sizeof_$type`" = "x4"; then | ||
70 | + T1_AA_TYPE32="-DT1_AA_TYPE32=$type" | ||
71 | + T1_INT32="$type" | ||
72 | + break | ||
73 | + fi | ||
74 | +done | ||
75 | |||
76 | -AC_CACHE_CHECK( "which ANSI integer type is 32 bit", ac_32bit_type, | ||
77 | - AC_TRY_RUN([ | ||
78 | -int main(void) { | ||
79 | - if (sizeof(int)==4) | ||
80 | - return(0); | ||
81 | - else if (sizeof(long)==4) | ||
82 | - return(1); | ||
83 | - else | ||
84 | - return(2); | ||
85 | -}], ac_32bit_type="int", ac_32bit_type="long", ac_32bit_type=)) | ||
86 | -if test "$ac_32bit_type" = "int" | ||
87 | -then | ||
88 | - T1_AA_TYPE32="-DT1_AA_TYPE32=int" | ||
89 | - T1_INT32="int" | ||
90 | -else | ||
91 | - T1_AA_TYPE32="-DT1_AA_TYPE32=long" | ||
92 | - T1_INT32="long" | ||
93 | +if test x"$T1_AA_TYPE32" = "x"; then | ||
94 | + AC_MSG_ERROR("Unable to determine which integer type is 32 bit.") | ||
95 | fi | ||
96 | |||
97 | - | ||
98 | dnl **** Check which ANSI integer type is 64 bit | ||
99 | +T1_AA_TYPE64="" | ||
100 | +for type in long long_long; do | ||
101 | + if test x"`eval echo \\$ac_cv_sizeof_$type`" = "x8"; then | ||
102 | + AC_MSG_WARN("$type is 64 bit") | ||
103 | + T1_AA_TYPE64="-DT1_AA_TYPE64=\"`echo $type|tr '_' ' '`\"" | ||
104 | + break | ||
105 | + fi | ||
106 | +done | ||
107 | |||
108 | -AC_CACHE_CHECK( "which ANSI integer type is 64 bit", ac_64bit_type, | ||
109 | - AC_TRY_RUN([ | ||
110 | -int main(void) { | ||
111 | - if (sizeof(long)==8) | ||
112 | - return(0); | ||
113 | - else | ||
114 | - return(1); | ||
115 | -}], ac_64bit_type="long", ac_64bit_type="<none>")) | ||
116 | -if test "$ac_64bit_type" = "long" | ||
117 | -then | ||
118 | - T1_AA_TYPE64="-DT1_AA_TYPE64=long" | ||
119 | -else | ||
120 | - T1_AA_TYPE64= | ||
121 | +if test x"$T1_AA_TYPE64" = "x"; then | ||
122 | + AC_MSG_ERROR("Unable to determine which integer type is 64 bit.") | ||
123 | fi | ||
124 | |||
125 | - | ||
126 | CFLAGS="${CFLAGS} -DT1LIB_IDENT=\"\\\"${T1LIB_IDENTIFIER}\\\"\" -DGLOBAL_CONFIG_DIR=\"\\\"${T1LIB_DATA_DIR}\\\"\"" | ||
127 | |||
128 | dnl **** Check for functions and header files **** | ||
diff --git a/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/libtool.patch b/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/libtool.patch new file mode 100644 index 0000000000..e050025739 --- /dev/null +++ b/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/libtool.patch | |||
@@ -0,0 +1,116 @@ | |||
1 | |||
2 | # | ||
3 | # Patch managed by http://www.holgerschurig.de/patcher.html | ||
4 | # | ||
5 | |||
6 | --- t1lib-5.0.2/Makefile.in~libtool | ||
7 | +++ t1lib-5.0.2/Makefile.in | ||
8 | @@ -18,7 +18,8 @@ | ||
9 | # Last modified: 2001-04-01 | ||
10 | # | ||
11 | |||
12 | -SHELL = /bin/sh | ||
13 | +SHELL = @SHELL@ | ||
14 | +LIBTOOL = @LIBTOOL@ | ||
15 | CC = @CC@ | ||
16 | CPP = @CPP@ | ||
17 | CFLAGS = @CFLAGS@ | ||
18 | @@ -150,7 +151,7 @@ | ||
19 | $(RM) examples/Makefile | ||
20 | $(RM) xglyph/Makefile | ||
21 | $(RM) doc/Makefile | ||
22 | - $(RM) libtool | ||
23 | + $(RM) $(LIBTOOL) | ||
24 | |||
25 | |||
26 | # The following two targets are for building and cleaning the python- | ||
27 | --- t1lib-5.0.2/examples/Makefile.in~libtool | ||
28 | +++ t1lib-5.0.2/examples/Makefile.in | ||
29 | @@ -14,9 +14,10 @@ | ||
30 | # Last modified: 2001-04-01 | ||
31 | # | ||
32 | |||
33 | +top_builddir = @top_builddir@ | ||
34 | |||
35 | -LIBTOOL = ../libtool | ||
36 | -SHELL = /bin/sh | ||
37 | +LIBTOOL = @LIBTOOL@ | ||
38 | +SHELL = @SHELL@ | ||
39 | CC = @CC@ | ||
40 | CPP = @CPP@ | ||
41 | CFLAGS = @CFLAGS@ | ||
42 | --- t1lib-5.0.2/lib/Makefile.in~libtool | ||
43 | +++ t1lib-5.0.2/lib/Makefile.in | ||
44 | @@ -15,8 +15,10 @@ | ||
45 | # | ||
46 | # Contributions by H.Kakugawa to use libtool! | ||
47 | |||
48 | -LIBTOOL = ../libtool | ||
49 | -SHELL = /bin/sh | ||
50 | +top_builddir = @top_builddir@ | ||
51 | + | ||
52 | +LIBTOOL = @LIBTOOL@ | ||
53 | +SHELL = @SHELL@ | ||
54 | CC = @CC@ | ||
55 | CPP = @CPP@ | ||
56 | CFLAGS = @CFLAGS@ | ||
57 | --- t1lib-5.0.2/lib/t1lib/Makefile.in~libtool | ||
58 | +++ t1lib-5.0.2/lib/t1lib/Makefile.in | ||
59 | @@ -14,8 +14,10 @@ | ||
60 | # | ||
61 | # Modified by H.Kakugawa to use libtool | ||
62 | |||
63 | -LIBTOOL = ../../libtool | ||
64 | -SHELL = /bin/sh | ||
65 | +top_builddir = @top_builddir@ | ||
66 | + | ||
67 | +LIBTOOL = @LIBTOOL@ | ||
68 | +SHELL = @SHELL@ | ||
69 | CC = @CC@ | ||
70 | CPP = @CPP@ | ||
71 | CFLAGS = @CFLAGS@ | ||
72 | --- t1lib-5.0.2/lib/type1/Makefile.in~libtool | ||
73 | +++ t1lib-5.0.2/lib/type1/Makefile.in | ||
74 | @@ -14,8 +14,10 @@ | ||
75 | # | ||
76 | # Modified by H.Kakugawa to use libtool | ||
77 | |||
78 | -LIBTOOL = ../../libtool | ||
79 | -SHELL = /bin/sh | ||
80 | +top_builddir = @top_builddir@ | ||
81 | + | ||
82 | +LIBTOOL = @LIBTOOL@ | ||
83 | +SHELL = @SHELL@ | ||
84 | CC = @CC@ | ||
85 | CPP = @CPP@ | ||
86 | CFLAGS = @CFLAGS@ | ||
87 | --- t1lib-5.0.2/type1afm/Makefile.in~libtool | ||
88 | +++ t1lib-5.0.2/type1afm/Makefile.in | ||
89 | @@ -15,8 +15,10 @@ | ||
90 | # | ||
91 | # Modified by H.Kakugawa to use libtool | ||
92 | |||
93 | -LIBTOOL = ../libtool | ||
94 | -SHELL = /bin/sh | ||
95 | +top_builddir = @top_builddir@ | ||
96 | + | ||
97 | +LIBTOOL = @LIBTOOL@ | ||
98 | +SHELL = @SHELL@ | ||
99 | CC = @CC@ | ||
100 | CPP = @CPP@ | ||
101 | CFLAGS = @CFLAGS@ | ||
102 | --- t1lib-5.0.2/xglyph/Makefile.in~libtool | ||
103 | +++ t1lib-5.0.2/xglyph/Makefile.in | ||
104 | @@ -15,8 +15,10 @@ | ||
105 | # | ||
106 | # Modified by H.Kakugawa to use libtool | ||
107 | |||
108 | -LIBTOOL = ../libtool | ||
109 | -SHELL = /bin/sh | ||
110 | +top_builddir = @top_builddir@ | ||
111 | + | ||
112 | +LIBTOOL = @LIBTOOL@ | ||
113 | +SHELL = @SHELL@ | ||
114 | CC = @CC@ | ||
115 | CPP = @CPP@ | ||
116 | CFLAGS = @CFLAGS@ | ||
diff --git a/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb b/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb new file mode 100644 index 0000000000..86cc166e2d --- /dev/null +++ b/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb | |||
@@ -0,0 +1,26 @@ | |||
1 | SUMMARY = "A Type1 Font Rastering Library" | ||
2 | SECTION = "libs" | ||
3 | DEPENDS = "virtual/libx11 libxaw" | ||
4 | |||
5 | LICENSE = "LGPLv2 GPLv2" | ||
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=8ca43cbc842c2336e835926c2166c28b \ | ||
7 | file://LGPL;md5=6e29c688d912da12b66b73e32b03d812 \ | ||
8 | " | ||
9 | |||
10 | SRC_URI = "${DEBIAN_MIRROR}/main/t/t1lib/t1lib_${PV}.orig.tar.gz \ | ||
11 | file://configure.patch \ | ||
12 | file://libtool.patch" | ||
13 | SRC_URI[md5sum] = "a5629b56b93134377718009df1435f3c" | ||
14 | SRC_URI[sha256sum] = "821328b5054f7890a0d0cd2f52825270705df3641dbd476d58d17e56ed957b59" | ||
15 | |||
16 | inherit autotools-brokensep | ||
17 | |||
18 | # Fix GNU_HASH problem | ||
19 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
20 | |||
21 | EXTRA_OECONF = "--with-x --without-athena" | ||
22 | EXTRA_OEMAKE = "without_doc" | ||
23 | |||
24 | FILES_${PN} += " ${datadir}/t1lib/t1lib.config" | ||
25 | FILES_${PN}-doc = "${datadir}/t1lib/doc/t1lib_doc.pdf" | ||
26 | |||
diff --git a/meta-oe/recipes-extended/tcsh/files/01_build.1.patch b/meta-oe/recipes-extended/tcsh/files/01_build.1.patch new file mode 100644 index 0000000000..b9f41ade90 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/01_build.1.patch | |||
@@ -0,0 +1,16 @@ | |||
1 | Author: Franz Pletz <fpletz@franz-pletz.org> | ||
2 | Description: Original comment: Fix build | ||
3 | Not sure why we have this patch. Let's keep it for compatibility. | ||
4 | --- a/pathnames.h | ||
5 | +++ b/pathnames.h | ||
6 | @@ -92,6 +92,10 @@ | ||
7 | # define _PATH_TCSHELL "/local/bin/tcsh" /* use ram disk */ | ||
8 | #endif /* _MINIX && !_PATH_TCSHELL */ | ||
9 | |||
10 | +#ifndef _PATH_TCSHELL | ||
11 | +# define _PATH_TCSHELL "/bin/tcsh" /* Debian */ | ||
12 | +#endif /* !_PATH_TCSHELL */ | ||
13 | + | ||
14 | #if defined(__EMX__) && !defined(_PATH_DEVNULL) | ||
15 | # define _PATH_DEVNULL "nul" | ||
16 | #endif /* __EMX__ && !_PATH_DEVNULL */ | ||
diff --git a/meta-oe/recipes-extended/tcsh/files/01_build.2.patch b/meta-oe/recipes-extended/tcsh/files/01_build.2.patch new file mode 100644 index 0000000000..ff2753154f --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/01_build.2.patch | |||
@@ -0,0 +1,13 @@ | |||
1 | Author: Franz Pletz <fpletz@franz-pletz.org> | ||
2 | Description: Update manpage. | ||
3 | --- a/tcsh.man | ||
4 | +++ b/tcsh.man | ||
5 | @@ -578,7 +578,7 @@ Repeating \fIdabbrev-expand\fR without a | ||
6 | changes to the next previous word etc., skipping identical matches | ||
7 | much like \fIhistory-search-backward\fR does. | ||
8 | .TP 8 | ||
9 | -.B delete-char \fR(not bound) | ||
10 | +.B delete-char \fR(bound to `Del' if using the standard \fI/etc/csh.cshrc\fR) | ||
11 | Deletes the character under the cursor. | ||
12 | See also \fIdelete-char-or-list-or-eof\fR. | ||
13 | .TP 8 | ||
diff --git a/meta-oe/recipes-extended/tcsh/files/01_build.3.patch b/meta-oe/recipes-extended/tcsh/files/01_build.3.patch new file mode 100644 index 0000000000..d36c177af7 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/01_build.3.patch | |||
@@ -0,0 +1,13 @@ | |||
1 | Author: Franz Pletz <fpletz@franz-pletz.org> | ||
2 | Description: Enable NODOT | ||
3 | --- a/config_f.h | ||
4 | +++ b/config_f.h | ||
5 | @@ -98,7 +98,7 @@ | ||
6 | /* | ||
7 | * NODOT Don't put "." in the default path, for security reasons | ||
8 | */ | ||
9 | -#undef NODOT | ||
10 | +#define NODOT | ||
11 | |||
12 | /* | ||
13 | * AUTOLOGOUT tries to determine if it should set autologout depending | ||
diff --git a/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch b/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch new file mode 100644 index 0000000000..faa59cc800 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch | |||
@@ -0,0 +1,24 @@ | |||
1 | Author: Franz Pletz <fpletz@franz-pletz.org> | ||
2 | Description: Don't die on unknown LS_COLORS values | ||
3 | Removing the patch causes a segfault when dircolors is set by coreutils' dircolors. | ||
4 | Debian-Bug: #592089 | ||
5 | |||
6 | --- a/tw.color.c | ||
7 | +++ b/tw.color.c | ||
8 | @@ -239,13 +239,10 @@ parseLS_COLORS(const Char *value) | ||
9 | if ((Char)variables[i].variable[0] == (v[0] & CHAR) && | ||
10 | (Char)variables[i].variable[1] == (v[1] & CHAR)) | ||
11 | break; | ||
12 | - if (i < nvariables) { | ||
13 | - v += 3; | ||
14 | + v += 3; | ||
15 | + if (i < nvariables) | ||
16 | getstring(&c, &v, &variables[i].color, ':'); | ||
17 | - continue; | ||
18 | - } | ||
19 | - else | ||
20 | - stderror(ERR_BADCOLORVAR, v[0], v[1]); | ||
21 | + continue; | ||
22 | } | ||
23 | break; | ||
24 | } | ||
diff --git a/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch b/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch new file mode 100644 index 0000000000..cbc9f65d04 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch | |||
@@ -0,0 +1,14 @@ | |||
1 | Author: Lucas Nussbaum <lucas@debian.org> | ||
2 | Description: do not strip binary | ||
3 | Stripping should be handled by dh_strip instead, so DEB_BUILD_OPTIONS=nostrip works. | ||
4 | Closes: #438109, #411607 | ||
5 | --- a/Makefile.in | ||
6 | +++ b/Makefile.in | ||
7 | @@ -596,7 +596,6 @@ install: tcsh$(EXEEXT) | ||
8 | -mkdir -p ${DESTBIN} | ||
9 | -mv -f ${DESTBIN}/tcsh$(EXEEXT) ${DESTBIN}/tcsh.old | ||
10 | cp tcsh$(EXEEXT) ${DESTBIN}/tcsh$(EXEEXT) | ||
11 | - -strip ${DESTBIN}/tcsh$(EXEEXT) | ||
12 | chmod 755 ${DESTBIN}/tcsh$(EXEEXT) | ||
13 | |||
14 | install.man: tcsh.man | ||
diff --git a/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch b/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch new file mode 100644 index 0000000000..0bda0ba103 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch | |||
@@ -0,0 +1,14 @@ | |||
1 | Author: Lucas Nussbaum <lucas@debian.org> | ||
2 | Description: disable syntactically incorrect test | ||
3 | --- a/tests/lexical.at | ||
4 | +++ b/tests/lexical.at | ||
5 | @@ -172,9 +172,6 @@ | ||
6 | AT_DATA([nohist.csh], | ||
7 | [echo ! space ! tab != "!(" newline ! | ||
8 | ]) | ||
9 | -AT_CHECK([tcsh -f nohist.csh], , | ||
10 | -[[! space ! tab != !( newline ! | ||
11 | -]]) | ||
12 | |||
13 | AT_CLEANUP | ||
14 | |||
diff --git a/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch b/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch new file mode 100644 index 0000000000..98a9b2e1d5 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch | |||
@@ -0,0 +1,30 @@ | |||
1 | --- a/tests/lexical.at | ||
2 | +++ b/tests/lexical.at | ||
3 | @@ -27,27 +27,6 @@ AT_CHECK([tcsh -f oneword.csh], , | ||
4 | |||
5 | AT_CLEANUP | ||
6 | |||
7 | - | ||
8 | -AT_SETUP([Comments]) | ||
9 | - | ||
10 | -AT_CHECK([echo 'echo OK@%:@comment' | tcsh -f], , [OK | ||
11 | -]) | ||
12 | - | ||
13 | -AT_CHECK([tcsh -f -c 'echo @%:@no comment'], , | ||
14 | -[@%:@no comment | ||
15 | -]) | ||
16 | - | ||
17 | -AT_DATA([comment2.csh], | ||
18 | -[[echo testing...@%:@\ | ||
19 | -OK | ||
20 | -]]) | ||
21 | -AT_CHECK([tcsh -f comment2.csh], , | ||
22 | -[testing... OK | ||
23 | -]) | ||
24 | - | ||
25 | -AT_CLEANUP | ||
26 | - | ||
27 | - | ||
28 | AT_SETUP([Escaping special characters]) | ||
29 | |||
30 | AT_DATA([nosplit.csh], | ||
diff --git a/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch b/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch new file mode 100644 index 0000000000..79f918c083 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch | |||
@@ -0,0 +1,23 @@ | |||
1 | Author: Lucas Nussbaum <lucas@debian.org> | ||
2 | Description: disable test that fails on the buildd with | ||
3 | "setpriority: Permission denied". | ||
4 | --- a/tests/commands.at | ||
5 | +++ b/tests/commands.at | ||
6 | @@ -888,17 +888,6 @@ TCSH_UNTESTED([migrate]) | ||
7 | TCSH_UNTESTED([newgrp]) | ||
8 | |||
9 | |||
10 | -AT_SETUP([nice]) | ||
11 | - | ||
12 | -# Nothing really tested | ||
13 | -AT_CHECK([tcsh -f -c 'nice set var=1; echo $?var'], , | ||
14 | -[0 | ||
15 | -]) | ||
16 | - | ||
17 | - | ||
18 | -AT_CLEANUP | ||
19 | - | ||
20 | - | ||
21 | AT_SETUP([nohup]) | ||
22 | |||
23 | AT_DATA([nohup.csh], | ||
diff --git a/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch b/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch new file mode 100644 index 0000000000..69f0564e88 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch | |||
@@ -0,0 +1,30 @@ | |||
1 | From: Lucas Nussbaum <lucas@debian.org> | ||
2 | Description: Those tests fail when running the testsuite without a tty. Disabling them. | ||
3 | |||
4 | --- a/tests/commands.at | ||
5 | +++ b/tests/commands.at | ||
6 | @@ -1203,11 +1203,6 @@ AT_SETUP([source]) | ||
7 | AT_DATA([script.csh], | ||
8 | [[set var=$1 | ||
9 | ]]) | ||
10 | -AT_CHECK([[tcsh -f -c 'source -h script.csh foo; history' \ | ||
11 | - | sed 's/ [^ ]* / TIME /']], , | ||
12 | -[ 1 TIME source -h script.csh foo ; history | ||
13 | - 2 TIME set var=$1 | ||
14 | -]) | ||
15 | |||
16 | AT_CHECK([tcsh -f -c 'source -h script.csh foo; echo $var'], 1, [], | ||
17 | [var: Undefined variable. | ||
18 | --- a/tests/variables.at | ||
19 | +++ b/tests/variables.at | ||
20 | @@ -319,10 +319,6 @@ AT_CLEANUP | ||
21 | |||
22 | AT_SETUP([$ edit]) | ||
23 | |||
24 | -AT_CHECK([TERM=something tcsh -f -c 'echo $?edit'], , | ||
25 | -[1 | ||
26 | -]) | ||
27 | - | ||
28 | AT_CHECK([TERM=dumb tcsh -f -c 'echo $?edit'], , | ||
29 | [0 | ||
30 | ]) | ||
diff --git a/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch b/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch new file mode 100644 index 0000000000..3dd420a0e3 --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch | |||
@@ -0,0 +1,18 @@ | |||
1 | Author: Jean-Luc Leger <reiga@dspnet.fr.eu.org> | ||
2 | Description: fix broken globbing expansion | ||
3 | Debian-Bug: #603545 | ||
4 | Index: tcsh-6.18.01/tc.str.c | ||
5 | =================================================================== | ||
6 | --- tcsh-6.18.01.orig/tc.str.c 2012-01-10 13:34:31.000000000 -0800 | ||
7 | +++ tcsh-6.18.01/tc.str.c 2013-02-26 13:12:13.429153489 -0800 | ||
8 | @@ -122,8 +122,9 @@ | ||
9 | #else | ||
10 | ret = mbtowc(&tmp, s, n); | ||
11 | #endif | ||
12 | - if (ret > 0) { | ||
13 | + if (ret >= 0) | ||
14 | *pwc = tmp; | ||
15 | + if (ret >= 0) { | ||
16 | #if defined(UTF16_STRINGS) && defined(HAVE_MBRTOWC) | ||
17 | if (tmp >= 0xd800 && tmp <= 0xdbff) { | ||
18 | /* UTF-16 surrogate pair. Fetch second half and compute | ||
diff --git a/meta-oe/recipes-extended/tcsh/tcsh_6.18.01.bb b/meta-oe/recipes-extended/tcsh/tcsh_6.18.01.bb new file mode 100644 index 0000000000..16ecdb025f --- /dev/null +++ b/meta-oe/recipes-extended/tcsh/tcsh_6.18.01.bb | |||
@@ -0,0 +1,49 @@ | |||
1 | DESCRIPTION = "TENEX C Shell, an enhanced version of Berkeley csh \ | ||
2 | The TENEX C Shell is an enhanced version of the Berkeley Unix C shell. \ | ||
3 | It includes all features of 4.4BSD C shell, plus a command-line editor, \ | ||
4 | programmable word completion, spelling correction and more." | ||
5 | |||
6 | HOMEPAGE = "http://www.tcsh.org/" | ||
7 | LICENSE = "BSD" | ||
8 | LIC_FILES_CHKSUM = "file://Copyright;md5=1cf29be62df2be1a3763118b25b4c780" | ||
9 | SECTION = "base" | ||
10 | DEPENDS = "ncurses" | ||
11 | SRC_URI = " \ | ||
12 | ${DEBIAN_MIRROR}/main/t/tcsh/tcsh_${PV}.orig.tar.gz;name=tarball \ | ||
13 | ${DEBIAN_MIRROR}/main/t/tcsh/tcsh_${PV}-2.diff.gz;name=diffs \ | ||
14 | file://01_build.1.patch \ | ||
15 | file://01_build.2.patch \ | ||
16 | file://01_build.3.patch \ | ||
17 | file://15_no-strip.patch \ | ||
18 | file://disable-test-notty.patch \ | ||
19 | file://disable-test-nice.patch \ | ||
20 | file://disable-lexical.at-31.patch \ | ||
21 | file://12_unknown_lscolors.patch \ | ||
22 | file://tcsh-6.17.02-multibyte.patch \ | ||
23 | file://disable-broken-test.patch \ | ||
24 | " | ||
25 | SRC_URI[tarball.md5sum] = "6eed09dbd4223ab5b6955378450d228a" | ||
26 | SRC_URI[tarball.sha256sum] = "d81ca27851f3e8545666399b4bcf25433e602a195113b3f7c73886fef84c9fa8" | ||
27 | SRC_URI[diffs.md5sum] = "ea39b818b624aca49ebf2cd2708d6ff9" | ||
28 | SRC_URI[diffs.sha256sum] = "95b0c1a339b745c47c5d2f9d02c22a71597462e2e882b51614a9d1f75bd3d16c" | ||
29 | |||
30 | inherit autotools | ||
31 | |||
32 | do_install_append () { | ||
33 | oe_runmake install.man DESTDIR=${D} | ||
34 | |||
35 | install -d ${D}${base_bindir} | ||
36 | ln -s /usr/bin/tcsh ${D}${base_bindir}/tcsh | ||
37 | |||
38 | install -d ${D}${sysconfdir}/csh/login.d | ||
39 | install -m 0644 ${S}/debian/csh.cshrc ${S}/debian/csh.login ${S}/debian/csh.logout ${S}/complete.tcsh ${D}${sysconfdir} | ||
40 | install -D -m 0644 ${S}/csh-mode.el ${D}${datadir}/emacs/site-lisp/csh-mode.el | ||
41 | } | ||
42 | |||
43 | FILES_${PN} += "${datadir}/emacs/site-lisp/csh-mode.el" | ||
44 | |||
45 | |||
46 | pkg_postinst_${PN} () { | ||
47 | #!/bin/sh -e | ||
48 | echo /usr/bin/tcsh >> $D/etc/shells | ||
49 | } | ||
diff --git a/meta-oe/recipes-extended/tipcutils/tipcutils_2.0.6.bb b/meta-oe/recipes-extended/tipcutils/tipcutils_2.0.6.bb new file mode 100644 index 0000000000..ee56952d9e --- /dev/null +++ b/meta-oe/recipes-extended/tipcutils/tipcutils_2.0.6.bb | |||
@@ -0,0 +1,40 @@ | |||
1 | SUMMARY = "Transparent Inter-Process Communication protocol" | ||
2 | LICENSE = "BSD-3-Clause" | ||
3 | LIC_FILES_CHKSUM = "file://tipc-config/tipc-config.c;endline=32;md5=527a3d5745e1581b15a4fddfb5dfda68" | ||
4 | |||
5 | SRC_URI = "git://tipc.git.sourceforge.net/gitroot/tipc/tipcutils" | ||
6 | SRCREV = "292a03e17f889013fca2c7bd0aaeebd600c88f40" | ||
7 | |||
8 | DEPENDS="virtual/kernel" | ||
9 | |||
10 | inherit autotools | ||
11 | |||
12 | S = "${WORKDIR}/git" | ||
13 | |||
14 | do_configure_prepend() { | ||
15 | ( cd ${S}; ${S}/bootstrap ) | ||
16 | } | ||
17 | |||
18 | do_install_append() { | ||
19 | demos="benchmark hello_world topology_subscr_demo connection_demo \ | ||
20 | multicast_demo stream_demo" | ||
21 | for i in $demos;do | ||
22 | install -d ${D}/opt/tipcutils/demos/$i | ||
23 | install ${S}/demos/$i/client_tipc ${D}/opt/tipcutils/demos/$i/ | ||
24 | install ${S}/demos/$i/server_tipc ${D}/opt/tipcutils/demos/$i/ | ||
25 | done | ||
26 | install -d ${D}/opt/tipcutils/demos/inventory_sim | ||
27 | install ${S}/demos/inventory_sim/inventory_sim ${D}/opt/tipcutils/demos/inventory_sim/ | ||
28 | |||
29 | install -d ${D}/opt/tipcutils/ptts | ||
30 | install ${S}/ptts/tipcTS ${D}/opt/tipcutils/ptts/ | ||
31 | install ${S}/ptts/tipcTC ${D}/opt/tipcutils/ptts/ | ||
32 | |||
33 | install -d ${D}${sysconfdir} | ||
34 | cp -a ${S}/scripts/etc/* ${D}${sysconfdir}/ | ||
35 | } | ||
36 | |||
37 | PACKAGES += "${PN}-demos" | ||
38 | FILES_${PN}-dbg += "/opt/tipcutils/demos/*/.debug /opt/tipcutils/ptts/.debug" | ||
39 | FILES_${PN}-demos = "/opt/tipcutils/*" | ||
40 | |||
diff --git a/meta-oe/recipes-extended/tmux/tmux_1.6.bb b/meta-oe/recipes-extended/tmux/tmux_1.6.bb new file mode 100644 index 0000000000..def5520099 --- /dev/null +++ b/meta-oe/recipes-extended/tmux/tmux_1.6.bb | |||
@@ -0,0 +1,18 @@ | |||
1 | SUMMARY = "Terminal multiplexer" | ||
2 | HOMEPAGE = "http://tmux.sourceforge.net" | ||
3 | SECTION = "console/utils" | ||
4 | |||
5 | LICENSE = "ISC" | ||
6 | LIC_FILES_CHKSUM = "file://tmux.c;beginline=3;endline=17;md5=8685b4455330a940fab1ff451aa941a0" | ||
7 | |||
8 | DEPENDS = "ncurses libevent sed-native" | ||
9 | |||
10 | SRC_URI = "${SOURCEFORGE_MIRROR}/tmux/${P}.tar.gz" | ||
11 | SRC_URI[md5sum] = "3e37db24aa596bf108a0442a81c845b3" | ||
12 | SRC_URI[sha256sum] = "faee08ba1bd8c22537cd5b7458881d1bdb4985df88ed6bc5967c56881a7efbd6" | ||
13 | |||
14 | inherit autotools | ||
15 | |||
16 | do_configure_prepend () { | ||
17 | sed -i -e 's:-I/usr/local/include::' Makefile.am || bb_fatal "sed failed" | ||
18 | } | ||
diff --git a/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/fix-ldflags.patch b/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/fix-ldflags.patch new file mode 100644 index 0000000000..05cc5371f7 --- /dev/null +++ b/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/fix-ldflags.patch | |||
@@ -0,0 +1,16 @@ | |||
1 | |||
2 | # | ||
3 | # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher | ||
4 | # | ||
5 | |||
6 | --- tools/mconsole/Makefile~fix-ldflags 2003-02-08 05:10:08.000000000 +0100 | ||
7 | +++ tools/mconsole/Makefile 2004-04-01 15:37:37.000000000 +0200 | ||
8 | @@ -7,7 +7,7 @@ | ||
9 | all : $(BIN) | ||
10 | |||
11 | $(BIN) : $(OBJS) | ||
12 | - $(CC) $(CFLAGS) -o $(BIN) $(OBJS) -lreadline -lncurses | ||
13 | + $(CC) $(CFLAGS) -o $(BIN) $(OBJS) $(LDFLAGS) -lreadline -lncurses | ||
14 | |||
15 | clean : | ||
16 | rm -f $(BIN) $(OBJS) *~ | ||
diff --git a/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/unstrip.patch b/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/unstrip.patch new file mode 100644 index 0000000000..868001dbd5 --- /dev/null +++ b/meta-oe/recipes-extended/uml-utilities/uml-utilities-20040406/unstrip.patch | |||
@@ -0,0 +1,84 @@ | |||
1 | Dont strip during install let the packaging handle it | ||
2 | |||
3 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
4 | |||
5 | Index: tools/jailtest/Makefile | ||
6 | =================================================================== | ||
7 | --- tools.orig/jailtest/Makefile 2003-02-07 20:10:27.000000000 -0800 | ||
8 | +++ tools/jailtest/Makefile 2012-09-05 12:13:56.061615854 -0700 | ||
9 | @@ -14,4 +14,4 @@ | ||
10 | |||
11 | install : $(BIN) | ||
12 | install -d $(DESTDIR)$(BIN_DIR) | ||
13 | - install -s $(BIN) $(DESTDIR)$(BIN_DIR) | ||
14 | + install $(BIN) $(DESTDIR)$(BIN_DIR) | ||
15 | Index: tools/mconsole/Makefile | ||
16 | =================================================================== | ||
17 | --- tools.orig/mconsole/Makefile 2012-09-05 12:05:09.869607043 -0700 | ||
18 | +++ tools/mconsole/Makefile 2012-09-05 12:14:07.725607469 -0700 | ||
19 | @@ -14,4 +14,4 @@ | ||
20 | |||
21 | install : $(BIN) | ||
22 | install -d $(DESTDIR)$(BIN_DIR) | ||
23 | - install -s $(BIN) $(DESTDIR)$(BIN_DIR) | ||
24 | + install $(BIN) $(DESTDIR)$(BIN_DIR) | ||
25 | Index: tools/moo/Makefile | ||
26 | =================================================================== | ||
27 | --- tools.orig/moo/Makefile 2003-06-26 09:27:00.000000000 -0700 | ||
28 | +++ tools/moo/Makefile 2012-09-05 12:14:20.981604580 -0700 | ||
29 | @@ -22,4 +22,4 @@ | ||
30 | |||
31 | install : $(BIN) | ||
32 | install -d $(DESTDIR)$(BIN_DIR) | ||
33 | - install -s $(BIN) $(DESTDIR)$(BIN_DIR) | ||
34 | + install $(BIN) $(DESTDIR)$(BIN_DIR) | ||
35 | Index: tools/port-helper/Makefile | ||
36 | =================================================================== | ||
37 | --- tools.orig/port-helper/Makefile 2003-02-07 20:05:31.000000000 -0800 | ||
38 | +++ tools/port-helper/Makefile 2012-09-05 12:14:39.429609678 -0700 | ||
39 | @@ -14,4 +14,4 @@ | ||
40 | |||
41 | install : $(BIN) | ||
42 | install -d $(DESTDIR)$(LIB_DIR) | ||
43 | - install -s $(BIN) $(DESTDIR)$(LIB_DIR) | ||
44 | + install $(BIN) $(DESTDIR)$(LIB_DIR) | ||
45 | Index: tools/tunctl/Makefile | ||
46 | =================================================================== | ||
47 | --- tools.orig/tunctl/Makefile 2003-02-07 20:05:04.000000000 -0800 | ||
48 | +++ tools/tunctl/Makefile 2012-09-05 12:14:49.985606470 -0700 | ||
49 | @@ -14,4 +14,4 @@ | ||
50 | |||
51 | install : $(BIN) | ||
52 | install -d $(DESTDIR)$(BIN_DIR) | ||
53 | - install -s $(BIN) $(DESTDIR)$(BIN_DIR) | ||
54 | + install $(BIN) $(DESTDIR)$(BIN_DIR) | ||
55 | Index: tools/uml_net/Makefile | ||
56 | =================================================================== | ||
57 | --- tools.orig/uml_net/Makefile 2003-02-07 20:04:55.000000000 -0800 | ||
58 | +++ tools/uml_net/Makefile 2012-09-05 12:15:00.961607290 -0700 | ||
59 | @@ -21,4 +21,4 @@ | ||
60 | |||
61 | install : $(BIN) | ||
62 | install -d $(DESTDIR)$(BIN_DIR) | ||
63 | - install -s -m 04755 $(BIN) $(DESTDIR)$(BIN_DIR) | ||
64 | + install -m 04755 $(BIN) $(DESTDIR)$(BIN_DIR) | ||
65 | Index: tools/uml_router/Makefile | ||
66 | =================================================================== | ||
67 | --- tools.orig/uml_router/Makefile 2003-02-07 20:04:39.000000000 -0800 | ||
68 | +++ tools/uml_router/Makefile 2012-09-05 12:15:10.649607571 -0700 | ||
69 | @@ -20,4 +20,4 @@ | ||
70 | |||
71 | install : $(BIN) | ||
72 | install -d $(DESTDIR)$(BIN_DIR) | ||
73 | - install -s $(BIN) $(DESTDIR)$(BIN_DIR) | ||
74 | + install $(BIN) $(DESTDIR)$(BIN_DIR) | ||
75 | Index: tools/watchdog/Makefile | ||
76 | =================================================================== | ||
77 | --- tools.orig/watchdog/Makefile 2003-02-07 20:04:25.000000000 -0800 | ||
78 | +++ tools/watchdog/Makefile 2012-09-05 12:15:35.561612203 -0700 | ||
79 | @@ -14,4 +14,4 @@ | ||
80 | |||
81 | install : $(BIN) | ||
82 | install -d $(DESTDIR)$(BIN_DIR) | ||
83 | - install -s $(BIN) $(DESTDIR)$(BIN_DIR) | ||
84 | + install $(BIN) $(DESTDIR)$(BIN_DIR) | ||
diff --git a/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb b/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb new file mode 100644 index 0000000000..45cc2e7511 --- /dev/null +++ b/meta-oe/recipes-extended/uml-utilities/uml-utilities_20040406.bb | |||
@@ -0,0 +1,26 @@ | |||
1 | SECTION = "console/utils" | ||
2 | SUMMARY = "Utilities for User-Mode-Linux" | ||
3 | LICENSE = "GPL-2.0" | ||
4 | DEPENDS = "zlib ncurses readline" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" | ||
6 | SRC_URI = "http://downloads.sourceforge.net/project/user-mode-linux/tools/1/uml_utilities_${PV}.tar.bz2 \ | ||
7 | file://fix-ldflags.patch \ | ||
8 | file://unstrip.patch \ | ||
9 | " | ||
10 | SRC_URI[md5sum] = "2c1ccd9efacbfb39e42d482b89b2550a" | ||
11 | SRC_URI[sha256sum] = "4f179b1db021ef15ac7e9b2eed57c525db127a754c574f591c367460cded9f41" | ||
12 | |||
13 | PR = "r1" | ||
14 | |||
15 | S = "${WORKDIR}/tools" | ||
16 | |||
17 | do_compile() { | ||
18 | oe_runmake | ||
19 | } | ||
20 | |||
21 | do_install() { | ||
22 | oe_runmake install DESTDIR=${D} | ||
23 | } | ||
24 | |||
25 | FILES_${PN} += "${exec_prefix}${nonarch_base_libdir}" | ||
26 | FILES_${PN}-dbg += "${exec_prefix}${nonarch_base_libdir}/uml/.debug" | ||
diff --git a/meta-oe/recipes-extended/zram/zram/init b/meta-oe/recipes-extended/zram/zram/init new file mode 100644 index 0000000000..d12616936c --- /dev/null +++ b/meta-oe/recipes-extended/zram/zram/init | |||
@@ -0,0 +1,85 @@ | |||
1 | #!/bin/bash | ||
2 | ### BEGIN INIT INFO | ||
3 | # Provides: zram | ||
4 | # Required-Start: | ||
5 | # Required-Stop: | ||
6 | # Default-Start: 2 3 4 5 | ||
7 | # Default-Stop: 0 1 6 | ||
8 | # Short-Description: Increased Performance In Linux With zRam (Virtual Swap Compressed in RAM) | ||
9 | # Description: Adapted from systemd scripts at https://github.com/mystilleef/FedoraZram | ||
10 | # Included as part of antix-goodies package by anticapitalista <antiX@operamail.com> | ||
11 | # This script was written by tradetaxfree and is found at http://crunchbanglinux.org/forums/topic/15344/zram-a-good-idea/ | ||
12 | # Copy this script (as root) from /usr/local/bin to /etc/init.d and then #update-rc.d zram defaults | ||
13 | # After booting verify the module is loaded with: lsmod | grep zram | ||
14 | ### END INIT INFO | ||
15 | set -e | ||
16 | |||
17 | start() { | ||
18 | # get the number of CPUs | ||
19 | num_cpus=$(grep -c processor /proc/cpuinfo) | ||
20 | # if something goes wrong, assume we have 1 | ||
21 | [ "$num_cpus" != 0 ] || num_cpus=1 | ||
22 | |||
23 | # set decremented number of CPUs | ||
24 | last_cpu=$((num_cpus - 1)) | ||
25 | |||
26 | #default Factor % = 90 change this value here or create /etc/default/zram | ||
27 | FACTOR=90 | ||
28 | #& put the above single line in /etc/default/zram with the value you want | ||
29 | [ -f /etc/default/zram ] && source /etc/default/zram || true | ||
30 | factor=$FACTOR # percentage | ||
31 | |||
32 | # get the amount of memory in the machine | ||
33 | memtotal=$(grep MemTotal /proc/meminfo | awk ' { print $2 } ') | ||
34 | mem_by_cpu=$(($memtotal/$num_cpus*$factor/100*1024)) | ||
35 | |||
36 | # load dependency modules | ||
37 | modprobe zram zram_num_devices=$num_cpus | ||
38 | echo "zram devices probed successfully" | ||
39 | |||
40 | # initialize the devices | ||
41 | for i in $(seq 0 $last_cpu); do | ||
42 | echo 1 > /sys/block/zram$i/reset | ||
43 | echo $mem_by_cpu > /sys/block/zram$i/disksize | ||
44 | # Creating swap filesystems | ||
45 | mkswap /dev/zram$i | ||
46 | # Switch the swaps on | ||
47 | swapon -p 100 /dev/zram$i | ||
48 | done | ||
49 | } | ||
50 | |||
51 | stop() { | ||
52 | # get the number of CPUs | ||
53 | num_cpus=$(grep -c processor /proc/cpuinfo) | ||
54 | |||
55 | # set decremented number of CPUs | ||
56 | last_cpu=$((num_cpus - 1)) | ||
57 | |||
58 | # Switching off swap | ||
59 | for i in $(seq 0 $last_cpu); do | ||
60 | if [ "$(grep /dev/zram$i /proc/swaps)" != "" ]; then | ||
61 | swapoff /dev/zram$i | ||
62 | sleep 1 | ||
63 | fi | ||
64 | done | ||
65 | sleep 1 | ||
66 | rmmod zram | ||
67 | } | ||
68 | |||
69 | case "$1" in | ||
70 | start) | ||
71 | start | ||
72 | ;; | ||
73 | stop) | ||
74 | stop | ||
75 | ;; | ||
76 | restart) | ||
77 | stop | ||
78 | sleep 3 | ||
79 | start | ||
80 | ;; | ||
81 | *) | ||
82 | echo "Usage: $0 {start|stop|restart}" | ||
83 | RETVAL=1 | ||
84 | esac | ||
85 | exit $RETVAL | ||
diff --git a/meta-oe/recipes-extended/zram/zram/zram.service b/meta-oe/recipes-extended/zram/zram/zram.service new file mode 100644 index 0000000000..4a19367d93 --- /dev/null +++ b/meta-oe/recipes-extended/zram/zram/zram.service | |||
@@ -0,0 +1,12 @@ | |||
1 | [Unit] | ||
2 | Description=Enable zram compressed in-memory swap. | ||
3 | After=multi-user.target | ||
4 | |||
5 | [Service] | ||
6 | RemainAfterExit=yes | ||
7 | ExecStart=/usr/bin/zram-load.sh --load | ||
8 | ExecStop=/usr/bin/zram-load.sh --unload | ||
9 | Type=oneshot | ||
10 | |||
11 | [Install] | ||
12 | WantedBy=multi-user.target | ||
diff --git a/meta-oe/recipes-extended/zram/zram_0.1.bb b/meta-oe/recipes-extended/zram/zram_0.1.bb new file mode 100644 index 0000000000..e07f570d1a --- /dev/null +++ b/meta-oe/recipes-extended/zram/zram_0.1.bb | |||
@@ -0,0 +1,33 @@ | |||
1 | SUMMARY = "Linux zram compressed in-memory swap" | ||
2 | LICENSE = "MIT" | ||
3 | LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690" | ||
4 | |||
5 | inherit update-rc.d systemd | ||
6 | |||
7 | RDEPENDS_${PN} = "util-linux-swaponoff kmod" | ||
8 | RRECOMMENDS_${PN} = "kernel-module-zram" | ||
9 | |||
10 | PR = "r3" | ||
11 | |||
12 | SRC_URI = " \ | ||
13 | file://init \ | ||
14 | file://zram.service \ | ||
15 | " | ||
16 | |||
17 | do_install () { | ||
18 | # Sysvinit | ||
19 | install -d ${D}${sysconfdir}/init.d | ||
20 | install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/zram | ||
21 | |||
22 | install -d ${D}${systemd_unitdir}/system | ||
23 | install -m 0644 ${WORKDIR}/zram.service ${D}${systemd_unitdir}/system | ||
24 | } | ||
25 | |||
26 | FILES_${PN} = "${sysconfdir}" | ||
27 | INITSCRIPT_NAME = "zram" | ||
28 | INITSCRIPT_PARAMS = "start 05 2 3 4 5 . stop 22 0 1 6 ." | ||
29 | |||
30 | RPROVIDES_${PN} += "${PN}-systemd" | ||
31 | RREPLACES_${PN} += "${PN}-systemd" | ||
32 | RCONFLICTS_${PN} += "${PN}-systemd" | ||
33 | SYSTEMD_SERVICE_${PN} = "zram.service" | ||
diff --git a/meta-oe/recipes-extended/zsh/zsh.inc b/meta-oe/recipes-extended/zsh/zsh.inc new file mode 100644 index 0000000000..db51f39605 --- /dev/null +++ b/meta-oe/recipes-extended/zsh/zsh.inc | |||
@@ -0,0 +1,57 @@ | |||
1 | SUMMARY = "UNIX Shell similar to the Korn shell" | ||
2 | DESCRIPTION = "Zsh is a shell designed for interactive use, although it is also a \ | ||
3 | powerful scripting language. Many of the useful features of bash, \ | ||
4 | ksh, and tcsh were incorporated into zsh; many original features were added." | ||
5 | HOMEPAGE = "http://www.zsh.org" | ||
6 | SECTION = "base/shell" | ||
7 | |||
8 | LICENSE = "zsh" | ||
9 | LIC_FILES_CHKSUM = "file://LICENCE;md5=b7bc853894664be455a922db9805288e" | ||
10 | |||
11 | DEPENDS = "ncurses bison-native" | ||
12 | |||
13 | SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz" | ||
14 | |||
15 | inherit autotools gettext update-alternatives | ||
16 | |||
17 | EXTRA_OECONF = " \ | ||
18 | --bindir=${base_bindir} \ | ||
19 | --enable-etcdir=${sysconfdir} \ | ||
20 | --enable-fndir=${datadir}/${PN}/${PV}/functions \ | ||
21 | --enable-site-fndir=${datadir}/${PN}/site-functions \ | ||
22 | --with-term-lib='ncursesw ncurses' \ | ||
23 | --with-tcsetpgrp \ | ||
24 | --enable-cap \ | ||
25 | --enable-multibyte \ | ||
26 | --disable-gdbm \ | ||
27 | --disable-dynamic \ | ||
28 | zsh_cv_shared_environ=yes \ | ||
29 | " | ||
30 | |||
31 | ALTERNATIVE_${PN} = "sh" | ||
32 | ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh" | ||
33 | ALTERNATIVE_TARGET[sh] = "${base_bindir}/${BPN}" | ||
34 | ALTERNATIVE_PRIORITY = "100" | ||
35 | |||
36 | export AUTOHEADER = "true" | ||
37 | |||
38 | do_configure () { | ||
39 | gnu-configize --force | ||
40 | oe_runconf | ||
41 | } | ||
42 | |||
43 | do_install_append () { | ||
44 | rm -fr ${D}/usr/share | ||
45 | } | ||
46 | |||
47 | pkg_postinst_${PN} () { | ||
48 | touch $D${sysconfdir}/shells | ||
49 | grep -q "bin/zsh" $D${sysconfdir}/shells || echo /bin/zsh >> $D${sysconfdir}/shells | ||
50 | grep -q "bin/sh" $D${sysconfdir}/shells || echo /bin/sh >> $D${sysconfdir}/shells | ||
51 | } | ||
52 | |||
53 | FILES_${PN}-dbg += "\ | ||
54 | ${libdir}/${PN}/${PV}/${PN}/.debug/*.so \ | ||
55 | ${libdir}/${PN}/${PV}/${PN}/db/.debug/*.so \ | ||
56 | ${libdir}/${PN}/${PV}/${PN}/net/.debug/*.so \ | ||
57 | " | ||
diff --git a/meta-oe/recipes-extended/zsh/zsh_5.0.5.bb b/meta-oe/recipes-extended/zsh/zsh_5.0.5.bb new file mode 100644 index 0000000000..a7170dca87 --- /dev/null +++ b/meta-oe/recipes-extended/zsh/zsh_5.0.5.bb | |||
@@ -0,0 +1,5 @@ | |||
1 | require zsh.inc | ||
2 | DEPENDS += "libcap libpcre gdbm groff-native" | ||
3 | |||
4 | SRC_URI[md5sum] = "6fb0e3e52a0f8de5ca63138391b81ce0" | ||
5 | SRC_URI[sha256sum] = "b35cf19e4a6ba39fd03c6372b8a8760a491cc2e2e4aba3d15023ff291c2894b4" | ||