Merge lp:~oif-packaging/grail/packaging.touch-gestures into lp:grail

Proposed by Chase Douglas
Status: Superseded
Proposed branch: lp:~oif-packaging/grail/packaging.touch-gestures
Merge into: lp:grail
Diff against target: 41136 lines (+40743/-73) (has conflicts)
40 files modified
ChangeLog (+1334/-0)
Makefile.in (+793/-0)
aclocal.m4 (+9115/-0)
autogen.sh (+0/-11)
config-aux/config.guess (+1502/-0)
config-aux/config.sub (+1714/-0)
config-aux/depcomp (+630/-0)
config-aux/install-sh (+520/-0)
config-aux/ltmain.sh (+8413/-0)
config-aux/missing (+376/-0)
config.h.in (+62/-0)
configure (+13798/-0)
debian/changelog (+171/-0)
debian/compat (+1/-0)
debian/control (+68/-0)
debian/copyright (+45/-0)
debian/libutouch-grail-dev.install (+3/-0)
debian/libutouch-grail1-udeb.install (+1/-0)
debian/libutouch-grail1.install (+1/-0)
debian/libutouch-grail1.symbols (+14/-0)
debian/patches/0001-set-proper-tap-properties.patch (+13/-0)
debian/patches/0002-disable-semi-mt-rotation.patch (+25/-0)
debian/patches/0003-add-touch-gestures.patch (+508/-0)
debian/patches/0004-dont-hold-back-active-gestures.patch (+39/-0)
debian/patches/series (+4/-0)
debian/rules (+16/-0)
debian/source/format (+1/-0)
debian/utouch-grail-tools.install (+1/-0)
debian/watch (+2/-0)
docs/grail-problems.txt (+0/-60)
src/Makefile.in (+598/-0)
src/gestures-drag.c (+20/-0)
src/gestures-pinch.c (+20/-0)
src/gestures-rotate.c (+20/-0)
src/grail-api.c (+10/-0)
src/grail-gestures.c (+13/-0)
src/grail-impl.h (+5/-0)
src/grail-inserter.h (+9/-2)
test/Makefile.in (+358/-0)
tools/Makefile.in (+520/-0)
Text conflict in src/gestures-drag.c
Text conflict in src/gestures-pinch.c
Text conflict in src/gestures-rotate.c
Text conflict in src/grail-api.c
Text conflict in src/grail-gestures.c
Text conflict in src/grail-impl.h
Text conflict in src/grail-inserter.h
To merge this branch: bzr merge lp:~oif-packaging/grail/packaging.touch-gestures
Reviewer Review Type Date Requested Status
Open Input Framework Team Pending
Review via email: mp+55232@code.launchpad.net

Description of the change

Includes three patches for the associated bugs:

* Prevent semi-mt rotation
* Add touch gestures
* Ensure gesture end events are sent

To post a comment you must log in.
Revision history for this message
Chase Douglas (chasedouglas) wrote :

Oops, proposed against the wrong branch.

84. By Chase Douglas

Fold in related fix to 0004-dont-hold-back-active-gestures.patch

Unmerged revisions

84. By Chase Douglas

Fold in related fix to 0004-dont-hold-back-active-gestures.patch

83. By Chase Douglas

Ensure all started gestures end (LP: #744391)

82. By Chase Douglas

Add touch gestures (LP: #742582)

81. By Chase Douglas

Prevent rotation gestures on semi-mt trackpads (LP: #724979)

80. By Chase Douglas

releasing version 1.0.20-0ubuntu2

79. By Chase Douglas

Show all properties on multitouch taps (LP: #742006)

78. By Chase Douglas

releasing version 1.0.20-0ubuntu1

77. By Chase Douglas

* New upstream release.
* Fixes bug LP: #637106

76. By Colin Watson

releasing version 1.0.19-0ubuntu2

75. By Colin Watson

Rebuild against utouch-frame 1.0.0-0ubuntu3 to fix udeb dependencies.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'ChangeLog'
2--- ChangeLog 1970-01-01 00:00:00 +0000
3+++ ChangeLog 2011-03-28 21:03:46 +0000
4@@ -0,0 +1,1334 @@
5+------------------------------------------------------------
6+revno: 126
7+tags: v1.0.20
8+committer: Henrik Rydberg <rydberg@bitmath.org>
9+branch nick: trunk
10+timestamp: Fri 2011-03-04 01:05:19 +0100
11+message:
12+ Bump to v1.0.20
13+------------------------------------------------------------
14+revno: 125
15+committer: Henrik Rydberg <rydberg@bitmath.org>
16+branch nick: trunk
17+timestamp: Fri 2011-03-04 01:04:55 +0100
18+message:
19+ Make grabbing client exclusive
20+
21+ When a possible gesture is started for a global client (sysflag set),
22+ it is desirable that gestures to other clients are disregarded until
23+ all contacts have left the surface. In principle this could be refined
24+ further, such that if gesture are not detected, they are passed on to
25+ other clients, but that also affects how touches are passed onto lower
26+ layers like XI2.1, so simply making sure a global system client gets
27+ all events potentially leading to gestures is good enough for now.
28+
29+ Also note that in the current combination of synaptics/evdev X servers
30+ and grail, there can be no overlapping potential gestures between two
31+ global clients, or the resulting event recipient is not correct.
32+------------------------------------------------------------
33+revno: 124
34+committer: Henrik Rydberg <rydberg@bitmath.org>
35+branch nick: trunk
36+timestamp: Thu 2011-02-24 23:51:33 +0100
37+message:
38+ Make reset logic of pinch and drag same as for drag
39+
40+ There is no direct reason for one-fingered pinch/rotate gestures
41+ to be discarded immediately, so only reset gestures on touch down,
42+ as for drags.
43+------------------------------------------------------------
44+revno: 123
45+committer: Henrik Rydberg <rydberg@bitmath.org>
46+branch nick: trunk
47+timestamp: Thu 2011-02-24 23:51:17 +0100
48+message:
49+ Remove unused tapping state
50+
51+ This patch removes some cruft that was left over from the
52+ removal of the short tap time logic.
53+------------------------------------------------------------
54+revno: 122
55+committer: Henrik Rydberg <rydberg@bitmath.org>
56+branch nick: trunk
57+timestamp: Thu 2011-02-24 23:50:59 +0100
58+message:
59+ Reset tap state after timeout
60+
61+ A touch and hold will not properly reset the tap state, such that
62+ the next tap fails to register. Fixed with this patch.
63+------------------------------------------------------------
64+revno: 121
65+committer: Henrik Rydberg <rydberg@bitmath.org>
66+branch nick: trunk
67+timestamp: Thu 2011-02-24 23:50:31 +0100
68+message:
69+ Adjust gesture buffer sizes and timings
70+
71+ Adjust timings to put drag, pinch and rotate on more equal footing,
72+ with regard to gesture timeouts. Also make sure events are not lost
73+ during hold, now that all MT events are buffered as well.
74+------------------------------------------------------------
75+revno: 120
76+committer: Henrik Rydberg <rydberg@bitmath.org>
77+branch nick: trunk
78+timestamp: Thu 2011-02-24 23:50:14 +0100
79+message:
80+ Skip events selectively
81+
82+ Buffer all events as planned, but strip the stream of all events
83+ involved with pointer and MT, rather than bluntly removing all
84+ events. In practise, this means button and switch events are let
85+ through, undistorted although possibly slightly delayed.
86+------------------------------------------------------------
87+revno: 119
88+committer: Henrik Rydberg <rydberg@bitmath.org>
89+branch nick: trunk
90+timestamp: Thu 2011-02-24 23:49:59 +0100
91+message:
92+ Wait for the right number of fingers before gesture timeout
93+
94+ A client listening only for multi-finger gestures will not get
95+ the chance to recognize unless there is a gesture timeout. This
96+ patch waits until the drag hold time has passed before releasing
97+ the touch.
98+------------------------------------------------------------
99+revno: 118
100+committer: Henrik Rydberg <rydberg@bitmath.org>
101+branch nick: trunk
102+timestamp: Thu 2011-02-24 23:49:45 +0100
103+message:
104+ Introduce activation hold time
105+
106+ Do not activate a drag, pinch or rotate immediately, even
107+ if the activation threshold is met. This allows for a smoother
108+ transition between fingers.
109+------------------------------------------------------------
110+revno: 117
111+committer: Henrik Rydberg <rydberg@bitmath.org>
112+branch nick: trunk
113+timestamp: Thu 2011-02-24 23:49:22 +0100
114+message:
115+ Introduce gesture timeouts
116+
117+ The timeout of a gesture is integral to the gesture type.
118+ This patch introduces timeout per gesture type, potentially
119+ enabling more control over gesture timing aspects. The timeout
120+ logic replaces the recently added recognition state.
121+------------------------------------------------------------
122+revno: 116
123+committer: Henrik Rydberg <rydberg@bitmath.org>
124+branch nick: trunk
125+timestamp: Thu 2011-02-24 23:49:02 +0100
126+message:
127+ Revert "Add global vs local gesture handling"
128+------------------------------------------------------------
129+revno: 115
130+committer: Henrik Rydberg <rydberg@bitmath.org>
131+branch nick: trunk
132+timestamp: Thu 2011-02-24 23:48:45 +0100
133+message:
134+ Revert "Add button passthrough"
135+------------------------------------------------------------
136+revno: 114
137+tags: v1.0.19
138+committer: Chase Douglas <chase.douglas@ubuntu.com>
139+branch nick: utouch-grail
140+timestamp: Mon 2011-02-21 14:20:28 -0500
141+message:
142+ Release version 1.0.19
143+------------------------------------------------------------
144+revno: 113 [merge]
145+committer: Chase Douglas <chase.douglas@ubuntu.com>
146+branch nick: utouch-grail-pristine
147+timestamp: Mon 2011-02-21 14:15:58 -0500
148+message:
149+ Merge button passthrough branch
150+------------------------------------------------------------
151+revno: 112 [merge]
152+committer: Chase Douglas <chase.douglas@ubuntu.com>
153+branch nick: utouch-grail-pristine
154+timestamp: Thu 2011-02-10 12:27:50 -0500
155+message:
156+ Merge global vs local gesture handling and fix event leakage
157+------------------------------------------------------------
158+revno: 111
159+committer: Chase Douglas <chase.douglas@ubuntu.com>
160+branch nick: utouch-grail
161+timestamp: Thu 2011-02-03 17:23:32 -0500
162+message:
163+ Don't treat key events differently anymore
164+
165+ Left over from grail pointer emulation.
166+------------------------------------------------------------
167+revno: 110
168+committer: Chase Douglas <chase.douglas@ubuntu.com>
169+branch nick: utouch-grail
170+timestamp: Thu 2011-02-03 11:57:47 -0500
171+message:
172+ Add in time boundaries for recognition
173+
174+ 50 ms: Minimum time waiting for touch configuration to settle before
175+ flushing touch events to X. We don't want a two finger gesture
176+ triggering X events for the first finger before the second finger
177+ lands.
178+
179+ 200 ms: Maximum time for touches to begin a gesture. If no gesture is
180+ found within this time period, the events are flushed to X.
181+
182+ If after 50 ms there are no possible gestures for the number of active
183+ touches, the events are immediately flushed to X.
184+
185+ If events are flushed to X, no more gesture recognition is possible until
186+ all touches are lifted. Likewise, if any gesture is recognized, no events
187+ may be flushed to X until all touches are lifted.
188+------------------------------------------------------------
189+revno: 109
190+committer: Chase Douglas <chase.douglas@ubuntu.com>
191+branch nick: utouch-grail
192+timestamp: Wed 2011-02-02 17:16:20 -0500
193+message:
194+ Remove pointer emulation, X will handle it
195+------------------------------------------------------------
196+revno: 108
197+committer: Chase Douglas <chase.douglas@ubuntu.com>
198+branch nick: utouch-grail
199+timestamp: Wed 2011-02-02 17:15:03 -0500
200+message:
201+ Small compilation warning fixes
202+
203+ Found by using -Wall -Werror
204+------------------------------------------------------------
205+revno: 107
206+tags: v1.0.18
207+committer: Henrik Rydberg <rydberg@bitmath.org>
208+branch nick: trunk
209+timestamp: Mon 2011-01-03 16:42:45 +0100
210+message:
211+ Bump to v1.0.18
212+
213+ The grail symbols are intact and abi compatible, whereas the remaining
214+ symbols, which should not really be present, have all been
215+ removed. Since the remaining symbols represent the actual official
216+ API, this is not considered an ABI breakage.
217+------------------------------------------------------------
218+revno: 106
219+committer: Henrik Rydberg <rydberg@bitmath.org>
220+branch nick: trunk
221+timestamp: Sun 2011-01-02 13:08:42 +0100
222+message:
223+ Only export the intended grail symbols
224+
225+ In the making of grail1, the intention was never that the
226+ gin, gru and touch symbols be exported. Rectify this by adding
227+ an explicit symbols file used during linking.
228+------------------------------------------------------------
229+revno: 105
230+committer: Henrik Rydberg <rydberg@bitmath.org>
231+branch nick: trunk
232+timestamp: Sun 2011-01-02 13:08:08 +0100
233+message:
234+ Replace touch logic with utouch frame engine
235+
236+ The original grail uses an internal touch framework and exports some
237+ touch information as extended attributes to gesture events. This was
238+ never quite the intention, but rather to expose gestures and touches
239+ on a similar footing, such that grail can be input agnostic. This
240+ patch starts off by replacing the internal touch framework with the
241+ utouch-frame engine.
242+------------------------------------------------------------
243+revno: 104
244+committer: Henrik Rydberg <rydberg@bitmath.org>
245+branch nick: trunk
246+timestamp: Sun 2011-01-02 13:06:56 +0100
247+message:
248+ Prepare for queued event handling
249+
250+ The current grail operates via callbacks. In order to make grail work
251+ as a pipe, where input and output can be controlled externally, add
252+ the missing event queue for gestures, and align the code to simplify a
253+ switch.
254+------------------------------------------------------------
255+revno: 103
256+committer: Henrik Rydberg <rydberg@bitmath.org>
257+branch nick: trunk
258+timestamp: Sun 2011-01-02 13:06:04 +0100
259+message:
260+ Move test program to tools directory
261+
262+ The current test programs are tools rather than automatic tests. To
263+ conform better to the the usage of "make check", move the current
264+ tools over the appropriate directory. Also drop the grail-touch
265+ program, as it will be replaced by the utouch-frame package.
266+------------------------------------------------------------
267+revno: 102
268+tags: v1.0.17
269+committer: Henrik Rydberg <rydberg@bitmath.org>
270+branch nick: trunk
271+timestamp: Wed 2010-11-17 17:29:52 +0100
272+message:
273+ grail v1.0.17
274+------------------------------------------------------------
275+revno: 101
276+committer: Henrik Rydberg <rydberg@bitmath.org>
277+branch nick: trunk
278+timestamp: Wed 2010-11-17 17:29:28 +0100
279+message:
280+ Use a unified pointer emulation model
281+
282+ The existing kernel MT devices together use a handful of different
283+ pointer emulation strategies, each with its own subtlety. This creates
284+ a problem for grail, which needs to rebuild pointer emulation during
285+ gesture recognition; relying on the correct pointer information to be
286+ available at the right time becomes almost impossible.
287+
288+ This patch implements a common pointer emulation model for grail,
289+ following a strategy recently discussed on LKML. This resolves the
290+ problems stemming from different emulation strategies, and results
291+ in a common pointer emulation experience for all devices.
292+------------------------------------------------------------
293+revno: 100
294+tags: v1.0.16
295+committer: Henrik Rydberg <rydberg@bitmath.org>
296+branch nick: trunk
297+timestamp: Mon 2010-11-08 20:46:42 +0100
298+message:
299+ grail v1.0.16
300+------------------------------------------------------------
301+revno: 99
302+committer: Henrik Rydberg <rydberg@bitmath.org>
303+branch nick: trunk
304+timestamp: Thu 2010-10-28 16:02:38 +0200
305+message:
306+ Report touch down on one-finger entry (LP: #667802)
307+
308+ The current code mistakenly set the pointer logic based on
309+ the single variable, which is false at the entry to one-finger
310+ mode, but true immediately afterwards. This leads to grail
311+ sometimes failing to emit the proper emulation sequence, resulting
312+ in a missed touch in X.
313+
314+ This patch corrects the logic such that the pointer is based directly
315+ on one-finger mode, thereby solving the problem.
316+------------------------------------------------------------
317+revno: 98
318+tags: v1.0.15
319+committer: Henrik Rydberg <rydberg@bitmath.org>
320+branch nick: trunk
321+timestamp: Tue 2010-09-28 11:33:43 +0200
322+message:
323+ grail v1.0.15
324+------------------------------------------------------------
325+revno: 97
326+committer: Henrik Rydberg <rydberg@bitmath.org>
327+branch nick: trunk
328+timestamp: Tue 2010-09-28 11:33:20 +0200
329+message:
330+ Only support pure absolute devices at this time
331+
332+ There are some hybrid relative/absolute devices out there, like
333+ the magic mouse, for which special behavior, outside the current
334+ scope of grail, is expected. This patch disables grail for those
335+ devices.
336+------------------------------------------------------------
337+revno: 96
338+tags: v1.0.14
339+committer: Henrik Rydberg <rydberg@bitmath.org>
340+branch nick: trunk
341+timestamp: Tue 2010-09-21 13:27:20 +0200
342+message:
343+ grail v1.0.14
344+------------------------------------------------------------
345+revno: 95
346+committer: Henrik Rydberg <rydberg@bitmath.org>
347+branch nick: trunk
348+timestamp: Tue 2010-09-21 13:27:02 +0200
349+message:
350+ Show all information for pass-through events
351+
352+ In grail-gesture, the timing information is missing. Remedied with
353+ this patch.
354+------------------------------------------------------------
355+revno: 94
356+committer: Henrik Rydberg <rydberg@bitmath.org>
357+branch nick: trunk
358+timestamp: Tue 2010-09-21 13:26:43 +0200
359+message:
360+ Add tap state to the tapping model
361+
362+ Add the ability to read off the tap state in the tapping
363+ model. Useful for emulation i lieu of tapping gestures.
364+------------------------------------------------------------
365+revno: 93
366+committer: Henrik Rydberg <rydberg@bitmath.org>
367+branch nick: trunk
368+timestamp: Tue 2010-09-21 13:26:10 +0200
369+message:
370+ Add tap emulation
371+
372+ Touchscreens always emit a button event when touching the
373+ screen. Trackpads, however, are considered hovering while
374+ touching the pad, and instead uses taps to emits button events,
375+ which is traditionally implemented elsewhere, and thus leaves
376+ a functionality discrepancy. This patch adds tap emulation to
377+ grail, utilizing gesture engine.
378+------------------------------------------------------------
379+revno: 92
380+committer: Henrik Rydberg <rydberg@bitmath.org>
381+branch nick: trunk
382+timestamp: Tue 2010-09-21 13:25:43 +0200
383+message:
384+ Split pointer status and report status
385+
386+ Separate out reporting of the touch state, such that reporting
387+ can be deferred. Does not introduce any logic changes.
388+------------------------------------------------------------
389+revno: 91
390+committer: Henrik Rydberg <rydberg@bitmath.org>
391+branch nick: trunk
392+timestamp: Tue 2010-09-21 13:25:14 +0200
393+message:
394+ Do not tap when leaving fingers on the pad
395+
396+ The current code will treat a 3-down-2-up as a tap. This patch
397+ changes the logic so that taps are only emitted when the number of
398+ fingers returns to the baseline.
399+------------------------------------------------------------
400+revno: 90
401+committer: Henrik Rydberg <rydberg@bitmath.org>
402+branch nick: trunk
403+timestamp: Tue 2010-09-21 13:24:47 +0200
404+message:
405+ bug: Only report position change events
406+
407+ This bug was introduced in v1.0.11. Only report events when
408+ the pointer position is actually changing.
409+------------------------------------------------------------
410+revno: 89
411+committer: Henrik Rydberg <rydberg@bitmath.org>
412+branch nick: trunk
413+timestamp: Tue 2010-09-21 13:24:31 +0200
414+message:
415+ Reorganize input event emulation code
416+
417+ Inject the emulated events into the event buffer instead,
418+ and move the pointer logic into the emulation handler.
419+ Introduces no logical changes, but reveals the bug in the
420+ position event frequency.
421+------------------------------------------------------------
422+revno: 88
423+committer: Henrik Rydberg <rydberg@bitmath.org>
424+branch nick: trunk
425+timestamp: Tue 2010-09-21 13:24:08 +0200
426+message:
427+ Move input event filter from tail side to head side
428+
429+ There is no need to buffer events that will be ignored later on,
430+ so move the event filter to the upstream side. This also allows
431+ the event buffer to be used for injected events.
432+------------------------------------------------------------
433+revno: 87
434+committer: Henrik Rydberg <rydberg@bitmath.org>
435+branch nick: trunk
436+timestamp: Tue 2010-09-21 13:23:35 +0200
437+message:
438+ Simplify book-keeping of active gestures
439+
440+ The current frame computation returns the event types to filter,
441+ which is less useful than knowing what gesture types are active
442+ in the frame. Add the active gesture types to the frame struct
443+ and simplify usage.
444+------------------------------------------------------------
445+revno: 86
446+tags: v1.0.13
447+committer: Henrik Rydberg <rydberg@bitmath.org>
448+branch nick: trunk
449+timestamp: Fri 2010-09-10 14:10:09 +0200
450+message:
451+ grail v1.0.13
452+------------------------------------------------------------
453+revno: 85
454+committer: Henrik Rydberg <rydberg@bitmath.org>
455+branch nick: trunk
456+timestamp: Fri 2010-09-10 14:09:48 +0200
457+message:
458+ Allow slow tapping
459+
460+ For the benefit of hardware that cannot accurately meet the desirable
461+ response times, allow for tapping times up to 300 ms.
462+------------------------------------------------------------
463+revno: 84
464+committer: Henrik Rydberg <rydberg@bitmath.org>
465+branch nick: trunk
466+timestamp: Fri 2010-09-10 14:09:26 +0200
467+message:
468+ Inhibit taps immediately after a finger is lifted
469+
470+ The intentional tap starts with a finger in the air. This patch
471+ treats the sequence up-down-up as unintentional, unless performed
472+ with a single finger. Fixes the problem with accidental taps during
473+ multi-finger gestures.
474+------------------------------------------------------------
475+revno: 83
476+committer: Henrik Rydberg <rydberg@bitmath.org>
477+branch nick: trunk
478+timestamp: Fri 2010-09-10 14:08:24 +0200
479+message:
480+ Only emit abs events when motion is active
481+
482+ This bug was hidden behind the motion inhibit during tapping,
483+ but resurfaced when tapping from resting finger was introduced.
484+ With this patch, pointer movement is inhibited also when lifting
485+ fingers from the surface.
486+
487+ Ideally, tapping should be treated as a transient event, which would
488+ allow zero pointer event also _before_ the tap, but presently unity
489+ seems to depend on the initial pointer movement as a touch-down event.
490+------------------------------------------------------------
491+revno: 82
492+committer: Henrik Rydberg <rydberg@bitmath.org>
493+branch nick: trunk
494+timestamp: Fri 2010-09-10 14:01:29 +0200
495+message:
496+ Cancel tapping also on zoom events
497+
498+ The current code cancels tapping when dragging is active. This
499+ patch adds zooming to the set, to inhibit tapping also when a
500+ perfect zoom without dragging is performed.
501+
502+ Reported-by: Chase Douglas <chase.douglas@canonical.com>
503+------------------------------------------------------------
504+revno: 81
505+committer: Henrik Rydberg <rydberg@bitmath.org>
506+branch nick: trunk
507+timestamp: Fri 2010-09-10 14:01:07 +0200
508+message:
509+ Discard tapping even when there are zero events between dow
510+ n and up
511+
512+ The current logic assumes there will be at least one frame with
513+ between touch up and touch down or the tap will not be properly
514+ timed out. Fixed with this patch.
515+
516+ Reported-by: Chase Douglas <chase.douglas@canonical.com>
517+------------------------------------------------------------
518+revno: 80
519+committer: Henrik Rydberg <rydberg@bitmath.org>
520+branch nick: trunk
521+timestamp: Fri 2010-09-10 14:00:27 +0200
522+message:
523+ Support legacy devices
524+
525+ Simulate MT touch events for legacy devices that support the
526+ DOUBLETAP, TRIPLETAP and QUADTAP events. This allows multi-finger
527+ tap and drag gestures to be emitted, providing a basic level of
528+ MT functionality for legacy devices.
529+------------------------------------------------------------
530+revno: 79
531+committer: Henrik Rydberg <rydberg@bitmath.org>
532+branch nick: trunk
533+timestamp: Fri 2010-09-10 13:59:52 +0200
534+message:
535+ Make sure contact area is always defined
536+
537+ Some devices do not always send touch_minor after touch_major
538+ has been set. According to the MT protocol, this case should
539+ be treated as if minor is equal to major. This patch makes sure
540+ touch_minor is never zero when touch_major is set.
541+------------------------------------------------------------
542+revno: 78
543+tags: v1.0.12
544+committer: Henrik Rydberg <rydberg@bitmath.org>
545+branch nick: trunk
546+timestamp: Wed 2010-09-01 23:01:08 +0200
547+message:
548+ grail v1.0.12
549+------------------------------------------------------------
550+revno: 77
551+committer: Henrik Rydberg <rydberg@bitmath.org>
552+branch nick: trunk
553+timestamp: Wed 2010-09-01 23:00:37 +0200
554+message:
555+ Do not compute velocity until enough data is available
556+
557+ The first few ticks since a configuration change are not really
558+ suited for velocity computation, so move the speed computation
559+ over to the periodic sampling point.
560+------------------------------------------------------------
561+revno: 76
562+committer: Henrik Rydberg <rydberg@bitmath.org>
563+branch nick: trunk
564+timestamp: Tue 2010-08-31 14:20:32 +0200
565+message:
566+ Make orientation computation more robust
567+
568+ The MT protocol defines the angle to be between -Pi/2 and Pi/2,
569+ and expects the defined range to be symmetric around zero.
570+ Make the angle computation more robust against varying definitions
571+ in the kernel drivers.
572+------------------------------------------------------------
573+revno: 75
574+tags: v1.0.11
575+committer: Henrik Rydberg <rydberg@bitmath.org>
576+branch nick: utouch-grail-trunk
577+timestamp: Thu 2010-08-26 16:41:39 +0200
578+message:
579+ grail v1.0.11
580+------------------------------------------------------------
581+revno: 74
582+committer: Henrik Rydberg <rydberg@bitmath.org>
583+branch nick: utouch-grail-trunk
584+timestamp: Thu 2010-08-26 16:41:20 +0200
585+message:
586+ Introduce tapping from any finger configuration
587+
588+ The current code only emits taps from zero fingers to N fingers.
589+ This patch introduces tapping from any prior finger configuration.
590+ A tap is defined as an increased number of fingers followed by a
591+ decrease within the tap timeout. A tap is reported as the maximum
592+ number of fingers present during the tap sequence.
593+------------------------------------------------------------
594+revno: 73
595+committer: Henrik Rydberg <rydberg@bitmath.org>
596+branch nick: utouch-grail-trunk
597+timestamp: Thu 2010-08-26 16:40:53 +0200
598+message:
599+ Trim tapping timeouts
600+
601+ Reduce the tapping timeout to 200 ms.
602+------------------------------------------------------------
603+revno: 72
604+committer: Henrik Rydberg <rydberg@bitmath.org>
605+branch nick: utouch-grail-trunk
606+timestamp: Thu 2010-08-26 16:40:35 +0200
607+message:
608+ Correct abs event handling
609+
610+ The current code lets abs events through during one-finger drags,
611+ and tapping does not work properly due to abs events not always
612+ being present during taps. Track the pointer position and emit abs
613+ events only if no gestures are in effect, and only if not explicitly
614+ filtered.
615+------------------------------------------------------------
616+revno: 71
617+committer: Henrik Rydberg <rydberg@bitmath.org>
618+branch nick: utouch-grail-trunk
619+timestamp: Thu 2010-08-26 16:39:58 +0200
620+message:
621+ Plug hole in tentative gestures state during finger transition
622+
623+ During finger configuration transition, as well as after a tap,
624+ there would be no tentative gestures registered in the instantiator,
625+ leading to faulty emission of motion events. Fixed with this patch.
626+------------------------------------------------------------
627+revno: 70
628+tags: v1.0.10
629+committer: Henrik Rydberg <rydberg@bitmath.org>
630+branch nick: utouch-grail-trunk
631+timestamp: Fri 2010-08-20 09:01:27 +0200
632+message:
633+ Adding file missing from revision 58.
634+------------------------------------------------------------
635+revno: 69
636+committer: Henrik Rydberg <rydberg@bitmath.org>
637+branch nick: utouch-grail-trunk
638+timestamp: Fri 2010-08-20 08:46:06 +0200
639+message:
640+ grail v1.0.10
641+------------------------------------------------------------
642+revno: 68
643+committer: Henrik Rydberg <rydberg@bitmath.org>
644+branch nick: utouch-grail-trunk
645+timestamp: Fri 2010-08-20 08:45:26 +0200
646+message:
647+ Declare missing header file for distro package
648+------------------------------------------------------------
649+revno: 67
650+tags: v1.0.9
651+committer: Henrik Rydberg <rydberg@bitmath.org>
652+branch nick: utouch-grail-trunk
653+timestamp: Thu 2010-08-19 22:36:39 +0200
654+message:
655+ grail v1.0.9
656+------------------------------------------------------------
657+revno: 66
658+committer: Henrik Rydberg <rydberg@bitmath.org>
659+branch nick: utouch-grail-trunk
660+timestamp: Thu 2010-08-19 22:36:11 +0200
661+message:
662+ Add contact information to the property list
663+
664+ Add the five first contacts to the property list, and unify the
665+ handling of all gesture types in this regard. To avoid duplication,
666+ move the scaling of properties closer to the gesture recognizer.
667+ Move all gesture event handling code to grail-event.c, simplifying
668+ the structure somewhat.
669+------------------------------------------------------------
670+revno: 65
671+committer: Henrik Rydberg <rydberg@bitmath.org>
672+branch nick: utouch-grail-trunk
673+timestamp: Thu 2010-08-19 22:35:45 +0200
674+message:
675+ Crank up the maximum number of properties
676+
677+ To prepare for the (for maverick only) addition of individual contact
678+ information via the properties array, increase the maximum number of
679+ contacts.
680+------------------------------------------------------------
681+revno: 64
682+committer: Henrik Rydberg <rydberg@bitmath.org>
683+branch nick: utouch-grail-trunk
684+timestamp: Thu 2010-08-19 22:35:18 +0200
685+message:
686+ Use the touch_caps directly rather than grail_get_units()
687+------------------------------------------------------------
688+revno: 63
689+committer: Henrik Rydberg <rydberg@bitmath.org>
690+branch nick: utouch-grail-trunk
691+timestamp: Thu 2010-08-19 22:34:47 +0200
692+message:
693+ Add grail_contact and a method to retrieve the current contacts
694+
695+ This patch adds the possibility to extract the current set of
696+ contacts from the grail state.
697+------------------------------------------------------------
698+revno: 62
699+committer: Henrik Rydberg <rydberg@bitmath.org>
700+branch nick: utouch-grail-trunk
701+timestamp: Thu 2010-08-19 22:34:11 +0200
702+message:
703+ Make gesture inserter visible to all local files
704+
705+ Also remove the transformed flag in favor of a unit transformation.
706+------------------------------------------------------------
707+revno: 61
708+committer: Henrik Rydberg <rydberg@bitmath.org>
709+branch nick: utouch-grail-trunk
710+timestamp: Thu 2010-08-19 22:33:47 +0200
711+message:
712+ Reserve one mask position for system use
713+
714+ This is needed for gesture propagation outside of grail
715+------------------------------------------------------------
716+revno: 60
717+committer: Henrik Rydberg <rydberg@bitmath.org>
718+branch nick: utouch-grail-trunk
719+timestamp: Thu 2010-08-19 22:27:59 +0200
720+message:
721+ Make grail implementation visible to all local files
722+------------------------------------------------------------
723+revno: 59
724+committer: Henrik Rydberg <rydberg@bitmath.org>
725+branch nick: utouch-grail-trunk
726+timestamp: Thu 2010-08-19 22:27:20 +0200
727+message:
728+ Add documentation to structs and functions in grail.h
729+------------------------------------------------------------
730+revno: 58
731+committer: Henrik Rydberg <rydberg@bitmath.org>
732+branch nick: utouch-grail-trunk
733+timestamp: Thu 2010-08-19 22:26:11 +0200
734+message:
735+ Simplify touch machinery
736+
737+ To be able to model touch information uniformly across all supported
738+ devices, the semantics of the touch attributes has to be treated
739+ explicitly. Drop the generic touch property array and replace it
740+ by an actual structure. In addition, the touch-engine abstraction
741+ turned out to not be needed, so drop it as well.
742+------------------------------------------------------------
743+revno: 57
744+tags: v1.0.8
745+committer: Henrik Rydberg <rydberg@bitmath.org>
746+branch nick: utouch-grail-trunk
747+timestamp: Thu 2010-08-12 16:56:04 +0100
748+message:
749+ utouch-grail v1.0.8
750+------------------------------------------------------------
751+revno: 56
752+committer: Henrik Rydberg <rydberg@bitmath.org>
753+branch nick: utouch-grail-trunk
754+timestamp: Thu 2010-08-12 16:55:30 +0100
755+message:
756+ Change package name to utouch-grail
757+------------------------------------------------------------
758+revno: 55
759+committer: Henrik Rydberg <rydberg@bitmath.org>
760+branch nick: grail-trunk
761+timestamp: Wed 2010-08-11 18:12:13 +0100
762+message:
763+ grail v1.0.7
764+------------------------------------------------------------
765+revno: 54
766+committer: Henrik Rydberg <rydberg@bitmath.org>
767+branch nick: grail-trunk
768+timestamp: Wed 2010-08-11 18:07:40 +0100
769+message:
770+ Add a translation utility to grail
771+
772+ By calling the grail_set_bbox(), grail will do translation of api
773+ coordinates and matching properties to an external coordinate system,
774+ such as screen coordinates.
775+------------------------------------------------------------
776+revno: 53
777+committer: Henrik Rydberg <rydberg@bitmath.org>
778+branch nick: grail-trunk
779+timestamp: Wed 2010-08-11 18:07:08 +0100
780+message:
781+ api: Add bounding box to rotate gestures
782+------------------------------------------------------------
783+revno: 52
784+committer: Henrik Rydberg <rydberg@bitmath.org>
785+branch nick: grail-trunk
786+timestamp: Wed 2010-08-11 18:06:36 +0100
787+message:
788+ Split out bounding box computation
789+------------------------------------------------------------
790+revno: 51
791+committer: Henrik Rydberg <rydberg@bitmath.org>
792+branch nick: grail-trunk
793+timestamp: Wed 2010-08-11 18:05:46 +0100
794+message:
795+ Add main type numbers to grail type properties
796+------------------------------------------------------------
797+revno: 50
798+committer: Henrik Rydberg <rydberg@bitmath.org>
799+branch nick: grail-trunk
800+timestamp: Wed 2010-08-11 18:05:21 +0100
801+message:
802+ janitor: conformant argument order in api
803+------------------------------------------------------------
804+revno: 49
805+committer: Henrik Rydberg <rydberg@bitmath.org>
806+branch nick: grail-trunk
807+timestamp: Wed 2010-08-11 18:04:45 +0100
808+message:
809+ Add environment and meta gestures
810+
811+ With meta gestures, the gesture starts given a certain number of
812+ fingers, but can then continue even if the number of fingers change.
813+ By configuration, such gestures live on a different priority plane
814+ from normal gestures. To match window manager specs, this patch adds
815+ the environment and meta planes, and add drag, pinch and rotate gestures
816+ initiated with three and four fingers, respectively.
817+------------------------------------------------------------
818+revno: 48
819+tags: v1.0.6
820+committer: Henrik Rydberg <rydberg@bitmath.org>
821+branch nick: grail-trunk
822+timestamp: Tue 2010-08-10 19:10:28 +0100
823+message:
824+ grail v1.0.6
825+------------------------------------------------------------
826+revno: 47
827+committer: Henrik Rydberg <rydberg@bitmath.org>
828+branch nick: grail-trunk
829+timestamp: Tue 2010-08-10 19:10:01 +0100
830+message:
831+ Count the extra touch event and mask additional abs events
832+
833+ Not counting the BTN_TOUCH event implied not emitting the sync
834+ event, which confused evdev.
835+------------------------------------------------------------
836+revno: 46
837+tags: v1.0.5
838+committer: Henrik Rydberg <rydberg@bitmath.org>
839+branch nick: grail-trunk
840+timestamp: Tue 2010-08-10 17:43:48 +0100
841+message:
842+ grail v1.0.5
843+------------------------------------------------------------
844+revno: 45
845+committer: Henrik Rydberg <rydberg@bitmath.org>
846+branch nick: grail-trunk
847+timestamp: Tue 2010-08-10 17:43:11 +0100
848+message:
849+ Change rotation units to angles
850+
851+ Use angle units, such that a complete revolution corresponds
852+ to 2 pi.
853+------------------------------------------------------------
854+revno: 44
855+committer: Henrik Rydberg <rydberg@bitmath.org>
856+branch nick: grail-trunk
857+timestamp: Tue 2010-08-10 17:42:43 +0100
858+message:
859+ pinch: Add bounding box to property list
860+------------------------------------------------------------
861+revno: 43
862+committer: Henrik Rydberg <rydberg@bitmath.org>
863+branch nick: grail-trunk
864+timestamp: Tue 2010-08-10 17:42:10 +0100
865+message:
866+ Make tapping position appear properly
867+------------------------------------------------------------
868+revno: 42
869+committer: Henrik Rydberg <rydberg@bitmath.org>
870+branch nick: grail-trunk
871+timestamp: Tue 2010-08-10 17:41:34 +0100
872+message:
873+ Filter kernel touch and tap buttons
874+
875+ Reinsert BTN_TOUCH depending on the drag gesture.
876+------------------------------------------------------------
877+revno: 41
878+committer: Henrik Rydberg <rydberg@bitmath.org>
879+branch nick: grail-trunk
880+timestamp: Tue 2010-08-10 17:41:06 +0100
881+message:
882+ Filter abs events by default in grail-gesture
883+
884+ Also connect the timeout for press with the timeout of tapping.
885+------------------------------------------------------------
886+revno: 40
887+committer: Henrik Rydberg <rydberg@bitmath.org>
888+branch nick: grail-trunk
889+timestamp: Tue 2010-08-10 17:40:19 +0100
890+message:
891+ Always send pointer movement gestures
892+
893+ Always send drag events for one-finger touches, but only filter
894+ the ABS_X/Y events if grail_filter_abs_events() is set to true.
895+------------------------------------------------------------
896+revno: 39
897+committer: Henrik Rydberg <rydberg@bitmath.org>
898+branch nick: grail-trunk
899+timestamp: Tue 2010-08-10 17:39:47 +0100
900+message:
901+ Add property declarations to grail-types
902+
903+ Also add accumulated values for delta and velocity properties.
904+------------------------------------------------------------
905+revno: 38
906+committer: Henrik Rydberg <rydberg@bitmath.org>
907+branch nick: grail-trunk
908+timestamp: Tue 2010-08-10 17:38:31 +0100
909+message:
910+ api: Rename gestures to conform to design docs
911+
912+ Use the names drag, pinch and rotate, and remove the combo gesture.
913+------------------------------------------------------------
914+revno: 37
915+tags: v1.0.4
916+committer: Henrik Rydberg <rydberg@alnilam>
917+branch nick: grail-trunk
918+timestamp: Sun 2010-08-08 12:20:41 +0200
919+message:
920+ grail v1.0.4
921+------------------------------------------------------------
922+revno: 36
923+committer: Henrik Rydberg <rydberg@alnilam>
924+branch nick: grail-trunk
925+timestamp: Sun 2010-08-08 12:19:56 +0200
926+message:
927+ Trim the bars for action somewhat
928+
929+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
930+------------------------------------------------------------
931+revno: 35
932+committer: Henrik Rydberg <rydberg@alnilam>
933+branch nick: grail-trunk
934+timestamp: Sun 2010-08-08 12:18:25 +0200
935+message:
936+ Keep both raw and action delta in move model
937+
938+ Accumulated values can be obtained either by using the raw_delta,
939+ which is the actual (filtered) change between frames, or by using
940+ the action delta, which sums up to the same position, but in a non-
941+ linear fashion. Use the raw delta for pointer gestures.
942+
943+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
944+------------------------------------------------------------
945+revno: 34
946+committer: Henrik Rydberg <rydberg@alnilam>
947+branch nick: grail-trunk
948+timestamp: Sat 2010-08-07 22:21:27 +0200
949+message:
950+ Send proper begin/update/end status for gestures
951+
952+ For transient gestures like taps, use update only.
953+
954+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
955+------------------------------------------------------------
956+revno: 33
957+committer: Henrik Rydberg <rydberg@alnilam>
958+branch nick: grail-trunk
959+timestamp: Sat 2010-08-07 22:20:28 +0200
960+message:
961+ Add configurable pointer gesture
962+
963+ In some applications, it is desirable to treat pointer movements
964+ as a gesture. This patch adds a gru configuration parameter which,
965+ then true, makes grail emit pointer gesture events.
966+
967+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
968+------------------------------------------------------------
969+revno: 32
970+committer: Henrik Rydberg <rydberg@alnilam>
971+branch nick: grail-trunk
972+timestamp: Sat 2010-08-07 22:19:17 +0200
973+message:
974+ gesture: Improved tickle/active logic
975+
976+ Reorganize the motion model to use bitmasks for tickle and active,
977+ and refine the tickle logic for each gesture.
978+
979+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
980+------------------------------------------------------------
981+revno: 31
982+committer: Henrik Rydberg <rydberg@alnilam>
983+branch nick: grail-trunk
984+timestamp: Sat 2010-08-07 22:17:57 +0200
985+message:
986+ Accumulate delta while motion is inactive
987+
988+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
989+------------------------------------------------------------
990+revno: 30
991+committer: Henrik Rydberg <rydberg@alnilam>
992+branch nick: grail-trunk
993+timestamp: Sat 2010-08-07 22:15:16 +0200
994+message:
995+ Treat one-finger moves in move model and simplify tapping logic.
996+
997+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
998+------------------------------------------------------------
999+revno: 29
1000+committer: Henrik Rydberg <rydberg@alnilam>
1001+branch nick: grail-trunk
1002+timestamp: Sat 2010-08-07 22:13:32 +0200
1003+message:
1004+ Remove unused declarations
1005+
1006+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1007+------------------------------------------------------------
1008+revno: 28
1009+committer: Henrik Rydberg <rydberg@alnilam>
1010+branch nick: grail-trunk
1011+timestamp: Fri 2010-08-06 22:30:20 +0200
1012+message:
1013+ Update README and copyright in all files
1014+
1015+ Add the author to the copyright, courtesy of Canonical Ltd.
1016+
1017+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1018+------------------------------------------------------------
1019+revno: 27
1020+committer: Henrik Rydberg <rydberg@alnilam>
1021+branch nick: grail-trunk
1022+timestamp: Fri 2010-08-06 21:10:27 +0200
1023+message:
1024+ remove gitignore file from repo
1025+------------------------------------------------------------
1026+revno: 26
1027+tags: v1.0.3
1028+committer: cndougla <cndougla@txpawl01>
1029+branch nick: grail-trunk
1030+timestamp: Fri 2010-08-06 17:25:13 +0000
1031+message:
1032+ grail v1.0.3
1033+------------------------------------------------------------
1034+revno: 25
1035+committer: cndougla <cndougla@txpawl01>
1036+branch nick: grail-trunk
1037+timestamp: Fri 2010-08-06 17:24:21 +0000
1038+message:
1039+ Ensure the math library is linked in
1040+------------------------------------------------------------
1041+revno: 24
1042+tags: v1.0.2
1043+committer: cndougla <cndougla@txpawl01>
1044+branch nick: grail-trunk
1045+timestamp: Fri 2010-08-06 16:38:21 +0000
1046+message:
1047+ grail v1.0.2
1048+------------------------------------------------------------
1049+revno: 23
1050+committer: cndougla <cndougla@txpawl01>
1051+branch nick: grail-trunk
1052+timestamp: Fri 2010-08-06 16:35:40 +0000
1053+message:
1054+ Use bzr log for ChangeLog
1055+------------------------------------------------------------
1056+revno: 22
1057+tags: v1.0.1
1058+git commit: 4af2240c46ea401ce259f1c4c1401b335b397987
1059+committer: Henrik Rydberg <rydberg@euromail.se>
1060+timestamp: Fri 2010-08-06 14:39:27 +0200
1061+message:
1062+ grail v1.0.1
1063+------------------------------------------------------------
1064+revno: 21
1065+git commit: 3b6bc1a7dc5871aef2c47426f87bb409a622de29
1066+author: Henrik Rydberg <rydberg@bitmath.org>
1067+committer: Henrik Rydberg <rydberg@euromail.se>
1068+timestamp: Fri 2010-08-06 14:33:32 +0200
1069+message:
1070+ Remove thread code
1071+
1072+ The primary usecase of grail involves using it together with the
1073+ xserver, which is not threaded. Revert the touch-dev code back to
1074+ the state prior to adding the threaded processing. Deferred event
1075+ handling can be implemented by other means when needed.
1076+
1077+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1078+------------------------------------------------------------
1079+revno: 20
1080+tags: v1.0.0
1081+git commit: 40d6c7304cf431f13bfe81600656b268c881a4a2
1082+author: Henrik Rydberg <rydberg@bitmath.org>
1083+committer: Henrik Rydberg <rydberg@euromail.se>
1084+timestamp: Thu 2010-08-05 22:48:38 +0200
1085+message:
1086+ Prepare a proper upstream package
1087+
1088+ Make sure that tarballs can be made, and change the version to 1.0.
1089+
1090+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1091+------------------------------------------------------------
1092+revno: 19
1093+git commit: 41be604bacf259d8dbcd6d5641fc3e6bb113dafc
1094+author: Henrik Rydberg <rydberg@bitmath.org>
1095+committer: Henrik Rydberg <rydberg@euromail.se>
1096+timestamp: Thu 2010-08-05 22:48:38 +0200
1097+message:
1098+ grail-gesture: Allow more versatile input
1099+
1100+ The current code does not allow input in hex form. This patch switches
1101+ to use strtoull, allowing for a 32/64 bitmask to be specified on
1102+ commandline.
1103+
1104+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1105+------------------------------------------------------------
1106+revno: 18
1107+git commit: 7559b3d7aa725cd75ee4e6746246205392fe1c0f
1108+author: Henrik Rydberg <rydberg@bitmath.org>
1109+committer: Henrik Rydberg <rydberg@euromail.se>
1110+timestamp: Thu 2010-08-05 22:48:38 +0200
1111+message:
1112+ Rename and install test binaries
1113+
1114+ Install the test programs as grail-touch and grail-gesture.
1115+
1116+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1117+------------------------------------------------------------
1118+revno: 17
1119+git commit: 8bbf06f8d0056ae30fdfaf260000e763fad2345c
1120+author: Henrik Rydberg <rydberg@bitmath.org>
1121+committer: Henrik Rydberg <rydberg@euromail.se>
1122+timestamp: Thu 2010-08-05 22:48:38 +0200
1123+message:
1124+ make event units public in the api
1125+
1126+ Add grail_get_units() to the api, so so that applications can
1127+ extract the min/max coordinates used in the gesture events.
1128+
1129+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1130+------------------------------------------------------------
1131+revno: 16
1132+git commit: d5f810a0d3e0013a76136750eaff825ceec099a2
1133+author: Henrik Rydberg <rydberg@bitmath.org>
1134+committer: Henrik Rydberg <rydberg@euromail.se>
1135+timestamp: Thu 2010-08-05 22:48:38 +0200
1136+message:
1137+ tapping: Cancel multi-finger taps when moving
1138+
1139+ Cancel multi-finger taps when multi move is active, to avoid accidental
1140+ tapping during quick gestures.
1141+
1142+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1143+------------------------------------------------------------
1144+revno: 15
1145+git commit: d8e8d112aa907f8021ae99e6d7cd7856f1d90b70
1146+author: Henrik Rydberg <rydberg@bitmath.org>
1147+committer: Henrik Rydberg <rydberg@euromail.se>
1148+timestamp: Thu 2010-08-05 22:48:38 +0200
1149+message:
1150+ Add four-finger and five-finger gestures
1151+
1152+ Add four-finger and five-finger gestures, and move all gesture types
1153+ out to a separate file.
1154+
1155+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1156+------------------------------------------------------------
1157+revno: 14
1158+git commit: 00f7895d101de2703dbcea3600a68c4f653a0378
1159+author: Henrik Rydberg <rydberg@bitmath.org>
1160+committer: Henrik Rydberg <rydberg@euromail.se>
1161+timestamp: Thu 2010-08-05 22:48:38 +0200
1162+message:
1163+ Correct mistake in api argument names
1164+
1165+ The bitmask passed to get_clients takes the number of bytes
1166+ in the bitmask as argument, not the number of types, as easily
1167+ assumed given the argument name. This patch changes the name
1168+ to type_bytes to avoid confusion.
1169+
1170+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1171+------------------------------------------------------------
1172+revno: 13
1173+git commit: d7d89e2afae9151f4d16aa71a99eedbf920ecc1a
1174+author: Henrik Rydberg <rydberg@bitmath.org>
1175+committer: Henrik Rydberg <rydberg@euromail.se>
1176+timestamp: Thu 2010-08-05 22:48:38 +0200
1177+message:
1178+ tapping: Cancel early in case of one-finger movement
1179+
1180+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1181+------------------------------------------------------------
1182+revno: 12
1183+git commit: 88dada465e0fad35b5a535a042e0a93046ffff7c
1184+author: Henrik Rydberg <rydberg@bitmath.org>
1185+committer: Henrik Rydberg <rydberg@euromail.se>
1186+timestamp: Thu 2010-08-05 22:48:38 +0200
1187+message:
1188+ Cleanup tapping and gesture code
1189+
1190+ Improved tapping quality with this patch.
1191+
1192+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1193+------------------------------------------------------------
1194+revno: 11
1195+git commit: 697b5b5c7d2b1c46387061fcbed24cbee51d98ce
1196+author: Henrik Rydberg <rydberg@bitmath.org>
1197+committer: Henrik Rydberg <rydberg@euromail.se>
1198+timestamp: Thu 2010-08-05 22:48:38 +0200
1199+message:
1200+ Introduce tapping
1201+
1202+ Simplify some common parts of the recognizer code and add tapping
1203+ to the gesture suite.
1204+
1205+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1206+------------------------------------------------------------
1207+revno: 10
1208+git commit: 642d7ee26f347152a106d48ddad37a8059d36fb1
1209+author: Henrik Rydberg <rydberg@bitmath.org>
1210+committer: Henrik Rydberg <rydberg@euromail.se>
1211+timestamp: Thu 2010-08-05 22:48:38 +0200
1212+message:
1213+ Fix hanging event bug
1214+
1215+ The no-wait approach, where events are read and process asynchronously,
1216+ resulted in spurious events getting stuck in the input queue. This
1217+ patch reverts the behavior to synchronous buffer read and processing,
1218+ resolving the problem for now.
1219+
1220+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1221+------------------------------------------------------------
1222+revno: 9
1223+git commit: d07c43f9f19dc0ee38aaf44947cfc396f437490e
1224+author: Henrik Rydberg <rydberg@bitmath.org>
1225+committer: Henrik Rydberg <rydberg@euromail.se>
1226+timestamp: Thu 2010-08-05 22:48:38 +0200
1227+message:
1228+ Introduce zoom, rotate and combo gestures
1229+
1230+ Introduce grail_mask bit functions, and add new gestures as separate
1231+ functions, referring to the same move model.
1232+
1233+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1234+------------------------------------------------------------
1235+revno: 8
1236+git commit: 342a43e7b2ceec1dd200bffa24b052fec33f5bdc
1237+author: Henrik Rydberg <rydberg@bitmath.org>
1238+committer: Henrik Rydberg <rydberg@euromail.se>
1239+timestamp: Thu 2010-08-05 22:48:38 +0200
1240+message:
1241+ Introduce threading
1242+
1243+ In order to enable deferred events from grail, but the event
1244+ processing in a separate thread, and have the calling thread return
1245+ as quickly as possible.
1246+
1247+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1248+------------------------------------------------------------
1249+revno: 7
1250+git commit: e0eb1015bf30fd0913db571b000ba6a83ea22660
1251+author: Henrik Rydberg <rydberg@bitmath.org>
1252+committer: Henrik Rydberg <rydberg@euromail.se>
1253+timestamp: Thu 2010-08-05 22:48:38 +0200
1254+message:
1255+ Split the code into recognizer and inserter
1256+
1257+ Refactor code to make more room for gesture recognition. Also simplify
1258+ public headers.
1259+
1260+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1261+------------------------------------------------------------
1262+revno: 6
1263+git commit: b76660d71e2ea77752025089bd71deffad64e325
1264+author: Henrik Rydberg <rydberg@bitmath.org>
1265+committer: Henrik Rydberg <rydberg@euromail.se>
1266+timestamp: Thu 2010-08-05 22:48:38 +0200
1267+message:
1268+ Test implementation of grail api
1269+
1270+ This patch introduces the grail API, and a program to test it (evlink).
1271+
1272+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1273+------------------------------------------------------------
1274+revno: 5
1275+git commit: eb896e11aacab5f53e3915a8d19ffffd92ce8e10
1276+author: Henrik Rydberg <rydberg@bitmath.org>
1277+committer: Henrik Rydberg <rydberg@euromail.se>
1278+timestamp: Thu 2010-08-05 22:48:38 +0200
1279+message:
1280+ Touch API changes
1281+
1282+ Add touch time to the touch frame (Thanks Rafi)
1283+ Add touch change counters to the touch frame
1284+ Add event bypass callback
1285+
1286+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1287+------------------------------------------------------------
1288+revno: 4
1289+git commit: 3b9c20f869a2f55bd9953665c9e7fd713db4ff43
1290+author: Henrik Rydberg <rydberg@bitmath.org>
1291+committer: Henrik Rydberg <rydberg@euromail.se>
1292+timestamp: Thu 2010-08-05 22:48:37 +0200
1293+message:
1294+ Merge in fix of dev package. This patch moves header files around, and does not contain any logic changes.
1295+
1296+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1297+------------------------------------------------------------
1298+revno: 3
1299+git commit: 49922aacc4e6361e2a11dd2ce8460c80b41ab493
1300+author: Henrik Rydberg <rydberg@bitmath.org>
1301+committer: Henrik Rydberg <rydberg@euromail.se>
1302+timestamp: Thu 2010-08-05 22:48:37 +0200
1303+message:
1304+ Add grail problems and solutions documentation
1305+
1306+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1307+------------------------------------------------------------
1308+revno: 2
1309+git commit: 7c277ee54e7d0ea0c44b304897049a01e2d1a44a
1310+author: Stephen M. Webb <stephen.webb@bregmasoft.ca>
1311+committer: Henrik Rydberg <rydberg@euromail.se>
1312+timestamp: Thu 2010-08-05 22:48:37 +0200
1313+message:
1314+ Configure fixes
1315+
1316+ Adds the mtdev package dependency and fix some smaller issues.
1317+
1318+ Signed-off-by: Stephen M. Webb <stephen.webb@bregmasoft.ca>
1319+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1320+------------------------------------------------------------
1321+revno: 1
1322+git commit: 3b837806891de6cf77d4d74d04567e7e68c82fc0
1323+committer: Henrik Rydberg <rydberg@bitmath.org>
1324+timestamp: Tue 2010-07-13 11:26:46 +0200
1325+message:
1326+ Gesture Recognition And Instantiation Library (grail)
1327+
1328+ The aim of this first commit is to get down to hard testing of concepts,
1329+ and the library currently has two test programs, touch and grail,
1330+ which can be run on commandline. Touch tests the touch interface,
1331+ and grail tests the gesture interface.
1332+
1333+ Expect thinking errors and some glitches. Other than that, the code
1334+ runs fine.
1335+
1336+ Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
1337+------------------------------------------------------------
1338+Use --include-merges or -n0 to see merged revisions.
1339
1340=== added file 'Makefile.in'
1341--- Makefile.in 1970-01-01 00:00:00 +0000
1342+++ Makefile.in 2011-03-28 21:03:46 +0000
1343@@ -0,0 +1,793 @@
1344+# Makefile.in generated by automake 1.11.1 from Makefile.am.
1345+# @configure_input@
1346+
1347+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
1348+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
1349+# Inc.
1350+# This Makefile.in is free software; the Free Software Foundation
1351+# gives unlimited permission to copy and/or distribute it,
1352+# with or without modifications, as long as this notice is preserved.
1353+
1354+# This program is distributed in the hope that it will be useful,
1355+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
1356+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
1357+# PARTICULAR PURPOSE.
1358+
1359+@SET_MAKE@
1360+
1361+VPATH = @srcdir@
1362+pkgdatadir = $(datadir)/@PACKAGE@
1363+pkgincludedir = $(includedir)/@PACKAGE@
1364+pkglibdir = $(libdir)/@PACKAGE@
1365+pkglibexecdir = $(libexecdir)/@PACKAGE@
1366+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
1367+install_sh_DATA = $(install_sh) -c -m 644
1368+install_sh_PROGRAM = $(install_sh) -c
1369+install_sh_SCRIPT = $(install_sh) -c
1370+INSTALL_HEADER = $(INSTALL_DATA)
1371+transform = $(program_transform_name)
1372+NORMAL_INSTALL = :
1373+PRE_INSTALL = :
1374+POST_INSTALL = :
1375+NORMAL_UNINSTALL = :
1376+PRE_UNINSTALL = :
1377+POST_UNINSTALL = :
1378+build_triplet = @build@
1379+host_triplet = @host@
1380+subdir = .
1381+DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
1382+ $(srcdir)/Makefile.in $(srcdir)/config.h.in \
1383+ $(srcdir)/utouch-grail.pc.in $(srcdir)/utouch-grail.sym.in \
1384+ $(top_srcdir)/configure COPYING ChangeLog INSTALL \
1385+ config-aux/config.guess config-aux/config.sub \
1386+ config-aux/depcomp config-aux/install-sh config-aux/ltmain.sh \
1387+ config-aux/missing
1388+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
1389+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
1390+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
1391+ $(ACLOCAL_M4)
1392+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
1393+ configure.lineno config.status.lineno
1394+mkinstalldirs = $(install_sh) -d
1395+CONFIG_HEADER = config.h
1396+CONFIG_CLEAN_FILES = utouch-grail.sym utouch-grail.pc
1397+CONFIG_CLEAN_VPATH_FILES =
1398+SOURCES =
1399+DIST_SOURCES =
1400+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
1401+ html-recursive info-recursive install-data-recursive \
1402+ install-dvi-recursive install-exec-recursive \
1403+ install-html-recursive install-info-recursive \
1404+ install-pdf-recursive install-ps-recursive install-recursive \
1405+ installcheck-recursive installdirs-recursive pdf-recursive \
1406+ ps-recursive uninstall-recursive
1407+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
1408+am__vpath_adj = case $$p in \
1409+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
1410+ *) f=$$p;; \
1411+ esac;
1412+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
1413+am__install_max = 40
1414+am__nobase_strip_setup = \
1415+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
1416+am__nobase_strip = \
1417+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
1418+am__nobase_list = $(am__nobase_strip_setup); \
1419+ for p in $$list; do echo "$$p $$p"; done | \
1420+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
1421+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
1422+ if (++n[$$2] == $(am__install_max)) \
1423+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
1424+ END { for (dir in files) print dir, files[dir] }'
1425+am__base_list = \
1426+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
1427+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
1428+am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
1429+DATA = $(pkgconfig_DATA)
1430+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
1431+ distclean-recursive maintainer-clean-recursive
1432+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
1433+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
1434+ distdir dist dist-all distcheck
1435+ETAGS = etags
1436+CTAGS = ctags
1437+DIST_SUBDIRS = $(SUBDIRS)
1438+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
1439+distdir = $(PACKAGE)-$(VERSION)
1440+top_distdir = $(distdir)
1441+am__remove_distdir = \
1442+ { test ! -d "$(distdir)" \
1443+ || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
1444+ && rm -fr "$(distdir)"; }; }
1445+am__relativize = \
1446+ dir0=`pwd`; \
1447+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
1448+ sed_rest='s,^[^/]*/*,,'; \
1449+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
1450+ sed_butlast='s,/*[^/]*$$,,'; \
1451+ while test -n "$$dir1"; do \
1452+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
1453+ if test "$$first" != "."; then \
1454+ if test "$$first" = ".."; then \
1455+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
1456+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
1457+ else \
1458+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
1459+ if test "$$first2" = "$$first"; then \
1460+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
1461+ else \
1462+ dir2="../$$dir2"; \
1463+ fi; \
1464+ dir0="$$dir0"/"$$first"; \
1465+ fi; \
1466+ fi; \
1467+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
1468+ done; \
1469+ reldir="$$dir2"
1470+DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
1471+GZIP_ENV = --best
1472+distuninstallcheck_listfiles = find . -type f -print
1473+distcleancheck_listfiles = find . -type f -print
1474+ACLOCAL = @ACLOCAL@
1475+AMTAR = @AMTAR@
1476+AR = @AR@
1477+AUTOCONF = @AUTOCONF@
1478+AUTOHEADER = @AUTOHEADER@
1479+AUTOMAKE = @AUTOMAKE@
1480+AWK = @AWK@
1481+CC = @CC@
1482+CCDEPMODE = @CCDEPMODE@
1483+CFLAGS = @CFLAGS@
1484+CPP = @CPP@
1485+CPPFLAGS = @CPPFLAGS@
1486+CYGPATH_W = @CYGPATH_W@
1487+DEFS = @DEFS@
1488+DEPDIR = @DEPDIR@
1489+DSYMUTIL = @DSYMUTIL@
1490+DUMPBIN = @DUMPBIN@
1491+ECHO_C = @ECHO_C@
1492+ECHO_N = @ECHO_N@
1493+ECHO_T = @ECHO_T@
1494+EGREP = @EGREP@
1495+EVEMU_CFLAGS = @EVEMU_CFLAGS@
1496+EVEMU_LIBS = @EVEMU_LIBS@
1497+EXEEXT = @EXEEXT@
1498+FGREP = @FGREP@
1499+FRAME_CFLAGS = @FRAME_CFLAGS@
1500+FRAME_LIBS = @FRAME_LIBS@
1501+GREP = @GREP@
1502+INSTALL = @INSTALL@
1503+INSTALL_DATA = @INSTALL_DATA@
1504+INSTALL_PROGRAM = @INSTALL_PROGRAM@
1505+INSTALL_SCRIPT = @INSTALL_SCRIPT@
1506+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
1507+LD = @LD@
1508+LDFLAGS = @LDFLAGS@
1509+LIBOBJS = @LIBOBJS@
1510+LIBS = @LIBS@
1511+LIBTOOL = @LIBTOOL@
1512+LIB_VERSION = @LIB_VERSION@
1513+LIPO = @LIPO@
1514+LN_S = @LN_S@
1515+LTLIBOBJS = @LTLIBOBJS@
1516+MAINT = @MAINT@
1517+MAKEINFO = @MAKEINFO@
1518+MKDIR_P = @MKDIR_P@
1519+MTDEV_CFLAGS = @MTDEV_CFLAGS@
1520+MTDEV_LIBS = @MTDEV_LIBS@
1521+NM = @NM@
1522+NMEDIT = @NMEDIT@
1523+OBJDUMP = @OBJDUMP@
1524+OBJEXT = @OBJEXT@
1525+OTOOL = @OTOOL@
1526+OTOOL64 = @OTOOL64@
1527+PACKAGE = @PACKAGE@
1528+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
1529+PACKAGE_NAME = @PACKAGE_NAME@
1530+PACKAGE_STRING = @PACKAGE_STRING@
1531+PACKAGE_TARNAME = @PACKAGE_TARNAME@
1532+PACKAGE_URL = @PACKAGE_URL@
1533+PACKAGE_VERSION = @PACKAGE_VERSION@
1534+PATH_SEPARATOR = @PATH_SEPARATOR@
1535+PKG_CONFIG = @PKG_CONFIG@
1536+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
1537+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
1538+RANLIB = @RANLIB@
1539+SED = @SED@
1540+SET_MAKE = @SET_MAKE@
1541+SHELL = @SHELL@
1542+STRIP = @STRIP@
1543+VERSION = @VERSION@
1544+abs_builddir = @abs_builddir@
1545+abs_srcdir = @abs_srcdir@
1546+abs_top_builddir = @abs_top_builddir@
1547+abs_top_srcdir = @abs_top_srcdir@
1548+ac_ct_CC = @ac_ct_CC@
1549+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
1550+am__include = @am__include@
1551+am__leading_dot = @am__leading_dot@
1552+am__quote = @am__quote@
1553+am__tar = @am__tar@
1554+am__untar = @am__untar@
1555+bindir = @bindir@
1556+build = @build@
1557+build_alias = @build_alias@
1558+build_cpu = @build_cpu@
1559+build_os = @build_os@
1560+build_vendor = @build_vendor@
1561+builddir = @builddir@
1562+datadir = @datadir@
1563+datarootdir = @datarootdir@
1564+docdir = @docdir@
1565+dvidir = @dvidir@
1566+exec_prefix = @exec_prefix@
1567+host = @host@
1568+host_alias = @host_alias@
1569+host_cpu = @host_cpu@
1570+host_os = @host_os@
1571+host_vendor = @host_vendor@
1572+htmldir = @htmldir@
1573+includedir = @includedir@
1574+infodir = @infodir@
1575+install_sh = @install_sh@
1576+libdir = @libdir@
1577+libexecdir = @libexecdir@
1578+localedir = @localedir@
1579+localstatedir = @localstatedir@
1580+lt_ECHO = @lt_ECHO@
1581+mandir = @mandir@
1582+mkdir_p = @mkdir_p@
1583+oldincludedir = @oldincludedir@
1584+pdfdir = @pdfdir@
1585+prefix = @prefix@
1586+program_transform_name = @program_transform_name@
1587+psdir = @psdir@
1588+sbindir = @sbindir@
1589+sharedstatedir = @sharedstatedir@
1590+srcdir = @srcdir@
1591+sysconfdir = @sysconfdir@
1592+target_alias = @target_alias@
1593+top_build_prefix = @top_build_prefix@
1594+top_builddir = @top_builddir@
1595+top_srcdir = @top_srcdir@
1596+SUBDIRS = src test tools
1597+pkgconfigdir = $(libdir)/pkgconfig
1598+pkgconfig_DATA = utouch-grail.pc
1599+INCLUDES = $(top_srcdir)/include/
1600+all: config.h
1601+ $(MAKE) $(AM_MAKEFLAGS) all-recursive
1602+
1603+.SUFFIXES:
1604+am--refresh:
1605+ @:
1606+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
1607+ @for dep in $?; do \
1608+ case '$(am__configure_deps)' in \
1609+ *$$dep*) \
1610+ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
1611+ $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
1612+ && exit 0; \
1613+ exit 1;; \
1614+ esac; \
1615+ done; \
1616+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
1617+ $(am__cd) $(top_srcdir) && \
1618+ $(AUTOMAKE) --foreign Makefile
1619+.PRECIOUS: Makefile
1620+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
1621+ @case '$?' in \
1622+ *config.status*) \
1623+ echo ' $(SHELL) ./config.status'; \
1624+ $(SHELL) ./config.status;; \
1625+ *) \
1626+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
1627+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
1628+ esac;
1629+
1630+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
1631+ $(SHELL) ./config.status --recheck
1632+
1633+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
1634+ $(am__cd) $(srcdir) && $(AUTOCONF)
1635+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
1636+ $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
1637+$(am__aclocal_m4_deps):
1638+
1639+config.h: stamp-h1
1640+ @if test ! -f $@; then \
1641+ rm -f stamp-h1; \
1642+ $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
1643+ else :; fi
1644+
1645+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
1646+ @rm -f stamp-h1
1647+ cd $(top_builddir) && $(SHELL) ./config.status config.h
1648+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
1649+ ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
1650+ rm -f stamp-h1
1651+ touch $@
1652+
1653+distclean-hdr:
1654+ -rm -f config.h stamp-h1
1655+utouch-grail.sym: $(top_builddir)/config.status $(srcdir)/utouch-grail.sym.in
1656+ cd $(top_builddir) && $(SHELL) ./config.status $@
1657+utouch-grail.pc: $(top_builddir)/config.status $(srcdir)/utouch-grail.pc.in
1658+ cd $(top_builddir) && $(SHELL) ./config.status $@
1659+
1660+mostlyclean-libtool:
1661+ -rm -f *.lo
1662+
1663+clean-libtool:
1664+ -rm -rf .libs _libs
1665+
1666+distclean-libtool:
1667+ -rm -f libtool config.lt
1668+install-pkgconfigDATA: $(pkgconfig_DATA)
1669+ @$(NORMAL_INSTALL)
1670+ test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
1671+ @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
1672+ for p in $$list; do \
1673+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
1674+ echo "$$d$$p"; \
1675+ done | $(am__base_list) | \
1676+ while read files; do \
1677+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \
1678+ $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \
1679+ done
1680+
1681+uninstall-pkgconfigDATA:
1682+ @$(NORMAL_UNINSTALL)
1683+ @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
1684+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
1685+ test -n "$$files" || exit 0; \
1686+ echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
1687+ cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
1688+
1689+# This directory's subdirectories are mostly independent; you can cd
1690+# into them and run `make' without going through this Makefile.
1691+# To change the values of `make' variables: instead of editing Makefiles,
1692+# (1) if the variable is set in `config.status', edit `config.status'
1693+# (which will cause the Makefiles to be regenerated when you run `make');
1694+# (2) otherwise, pass the desired values on the `make' command line.
1695+$(RECURSIVE_TARGETS):
1696+ @fail= failcom='exit 1'; \
1697+ for f in x $$MAKEFLAGS; do \
1698+ case $$f in \
1699+ *=* | --[!k]*);; \
1700+ *k*) failcom='fail=yes';; \
1701+ esac; \
1702+ done; \
1703+ dot_seen=no; \
1704+ target=`echo $@ | sed s/-recursive//`; \
1705+ list='$(SUBDIRS)'; for subdir in $$list; do \
1706+ echo "Making $$target in $$subdir"; \
1707+ if test "$$subdir" = "."; then \
1708+ dot_seen=yes; \
1709+ local_target="$$target-am"; \
1710+ else \
1711+ local_target="$$target"; \
1712+ fi; \
1713+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
1714+ || eval $$failcom; \
1715+ done; \
1716+ if test "$$dot_seen" = "no"; then \
1717+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
1718+ fi; test -z "$$fail"
1719+
1720+$(RECURSIVE_CLEAN_TARGETS):
1721+ @fail= failcom='exit 1'; \
1722+ for f in x $$MAKEFLAGS; do \
1723+ case $$f in \
1724+ *=* | --[!k]*);; \
1725+ *k*) failcom='fail=yes';; \
1726+ esac; \
1727+ done; \
1728+ dot_seen=no; \
1729+ case "$@" in \
1730+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
1731+ *) list='$(SUBDIRS)' ;; \
1732+ esac; \
1733+ rev=''; for subdir in $$list; do \
1734+ if test "$$subdir" = "."; then :; else \
1735+ rev="$$subdir $$rev"; \
1736+ fi; \
1737+ done; \
1738+ rev="$$rev ."; \
1739+ target=`echo $@ | sed s/-recursive//`; \
1740+ for subdir in $$rev; do \
1741+ echo "Making $$target in $$subdir"; \
1742+ if test "$$subdir" = "."; then \
1743+ local_target="$$target-am"; \
1744+ else \
1745+ local_target="$$target"; \
1746+ fi; \
1747+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
1748+ || eval $$failcom; \
1749+ done && test -z "$$fail"
1750+tags-recursive:
1751+ list='$(SUBDIRS)'; for subdir in $$list; do \
1752+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
1753+ done
1754+ctags-recursive:
1755+ list='$(SUBDIRS)'; for subdir in $$list; do \
1756+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
1757+ done
1758+
1759+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
1760+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
1761+ unique=`for i in $$list; do \
1762+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
1763+ done | \
1764+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
1765+ END { if (nonempty) { for (i in files) print i; }; }'`; \
1766+ mkid -fID $$unique
1767+tags: TAGS
1768+
1769+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
1770+ $(TAGS_FILES) $(LISP)
1771+ set x; \
1772+ here=`pwd`; \
1773+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
1774+ include_option=--etags-include; \
1775+ empty_fix=.; \
1776+ else \
1777+ include_option=--include; \
1778+ empty_fix=; \
1779+ fi; \
1780+ list='$(SUBDIRS)'; for subdir in $$list; do \
1781+ if test "$$subdir" = .; then :; else \
1782+ test ! -f $$subdir/TAGS || \
1783+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
1784+ fi; \
1785+ done; \
1786+ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
1787+ unique=`for i in $$list; do \
1788+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
1789+ done | \
1790+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
1791+ END { if (nonempty) { for (i in files) print i; }; }'`; \
1792+ shift; \
1793+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
1794+ test -n "$$unique" || unique=$$empty_fix; \
1795+ if test $$# -gt 0; then \
1796+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
1797+ "$$@" $$unique; \
1798+ else \
1799+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
1800+ $$unique; \
1801+ fi; \
1802+ fi
1803+ctags: CTAGS
1804+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
1805+ $(TAGS_FILES) $(LISP)
1806+ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
1807+ unique=`for i in $$list; do \
1808+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
1809+ done | \
1810+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
1811+ END { if (nonempty) { for (i in files) print i; }; }'`; \
1812+ test -z "$(CTAGS_ARGS)$$unique" \
1813+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
1814+ $$unique
1815+
1816+GTAGS:
1817+ here=`$(am__cd) $(top_builddir) && pwd` \
1818+ && $(am__cd) $(top_srcdir) \
1819+ && gtags -i $(GTAGS_ARGS) "$$here"
1820+
1821+distclean-tags:
1822+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
1823+
1824+distdir: $(DISTFILES)
1825+ $(am__remove_distdir)
1826+ test -d "$(distdir)" || mkdir "$(distdir)"
1827+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
1828+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
1829+ list='$(DISTFILES)'; \
1830+ dist_files=`for file in $$list; do echo $$file; done | \
1831+ sed -e "s|^$$srcdirstrip/||;t" \
1832+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
1833+ case $$dist_files in \
1834+ */*) $(MKDIR_P) `echo "$$dist_files" | \
1835+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
1836+ sort -u` ;; \
1837+ esac; \
1838+ for file in $$dist_files; do \
1839+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
1840+ if test -d $$d/$$file; then \
1841+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
1842+ if test -d "$(distdir)/$$file"; then \
1843+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
1844+ fi; \
1845+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
1846+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
1847+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
1848+ fi; \
1849+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
1850+ else \
1851+ test -f "$(distdir)/$$file" \
1852+ || cp -p $$d/$$file "$(distdir)/$$file" \
1853+ || exit 1; \
1854+ fi; \
1855+ done
1856+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
1857+ if test "$$subdir" = .; then :; else \
1858+ test -d "$(distdir)/$$subdir" \
1859+ || $(MKDIR_P) "$(distdir)/$$subdir" \
1860+ || exit 1; \
1861+ fi; \
1862+ done
1863+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
1864+ if test "$$subdir" = .; then :; else \
1865+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
1866+ $(am__relativize); \
1867+ new_distdir=$$reldir; \
1868+ dir1=$$subdir; dir2="$(top_distdir)"; \
1869+ $(am__relativize); \
1870+ new_top_distdir=$$reldir; \
1871+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
1872+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
1873+ ($(am__cd) $$subdir && \
1874+ $(MAKE) $(AM_MAKEFLAGS) \
1875+ top_distdir="$$new_top_distdir" \
1876+ distdir="$$new_distdir" \
1877+ am__remove_distdir=: \
1878+ am__skip_length_check=: \
1879+ am__skip_mode_fix=: \
1880+ distdir) \
1881+ || exit 1; \
1882+ fi; \
1883+ done
1884+ $(MAKE) $(AM_MAKEFLAGS) \
1885+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
1886+ dist-hook
1887+ -test -n "$(am__skip_mode_fix)" \
1888+ || find "$(distdir)" -type d ! -perm -755 \
1889+ -exec chmod u+rwx,go+rx {} \; -o \
1890+ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
1891+ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
1892+ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
1893+ || chmod -R a+r "$(distdir)"
1894+dist-gzip: distdir
1895+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
1896+ $(am__remove_distdir)
1897+dist-bzip2: distdir
1898+ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
1899+ $(am__remove_distdir)
1900+
1901+dist-lzma: distdir
1902+ tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
1903+ $(am__remove_distdir)
1904+
1905+dist-xz: distdir
1906+ tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
1907+ $(am__remove_distdir)
1908+
1909+dist-tarZ: distdir
1910+ tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
1911+ $(am__remove_distdir)
1912+
1913+dist-shar: distdir
1914+ shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
1915+ $(am__remove_distdir)
1916+
1917+dist-zip: distdir
1918+ -rm -f $(distdir).zip
1919+ zip -rq $(distdir).zip $(distdir)
1920+ $(am__remove_distdir)
1921+
1922+dist dist-all: distdir
1923+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
1924+ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
1925+ $(am__remove_distdir)
1926+
1927+# This target untars the dist file and tries a VPATH configuration. Then
1928+# it guarantees that the distribution is self-contained by making another
1929+# tarfile.
1930+distcheck: dist
1931+ case '$(DIST_ARCHIVES)' in \
1932+ *.tar.gz*) \
1933+ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
1934+ *.tar.bz2*) \
1935+ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
1936+ *.tar.lzma*) \
1937+ lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
1938+ *.tar.xz*) \
1939+ xz -dc $(distdir).tar.xz | $(am__untar) ;;\
1940+ *.tar.Z*) \
1941+ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
1942+ *.shar.gz*) \
1943+ GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
1944+ *.zip*) \
1945+ unzip $(distdir).zip ;;\
1946+ esac
1947+ chmod -R a-w $(distdir); chmod a+w $(distdir)
1948+ mkdir $(distdir)/_build
1949+ mkdir $(distdir)/_inst
1950+ chmod a-w $(distdir)
1951+ test -d $(distdir)/_build || exit 0; \
1952+ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
1953+ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
1954+ && am__cwd=`pwd` \
1955+ && $(am__cd) $(distdir)/_build \
1956+ && ../configure --srcdir=.. --prefix="$$dc_install_base" \
1957+ $(DISTCHECK_CONFIGURE_FLAGS) \
1958+ && $(MAKE) $(AM_MAKEFLAGS) \
1959+ && $(MAKE) $(AM_MAKEFLAGS) dvi \
1960+ && $(MAKE) $(AM_MAKEFLAGS) check \
1961+ && $(MAKE) $(AM_MAKEFLAGS) install \
1962+ && $(MAKE) $(AM_MAKEFLAGS) installcheck \
1963+ && $(MAKE) $(AM_MAKEFLAGS) uninstall \
1964+ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
1965+ distuninstallcheck \
1966+ && chmod -R a-w "$$dc_install_base" \
1967+ && ({ \
1968+ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
1969+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
1970+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
1971+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
1972+ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
1973+ } || { rm -rf "$$dc_destdir"; exit 1; }) \
1974+ && rm -rf "$$dc_destdir" \
1975+ && $(MAKE) $(AM_MAKEFLAGS) dist \
1976+ && rm -rf $(DIST_ARCHIVES) \
1977+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
1978+ && cd "$$am__cwd" \
1979+ || exit 1
1980+ $(am__remove_distdir)
1981+ @(echo "$(distdir) archives ready for distribution: "; \
1982+ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
1983+ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
1984+distuninstallcheck:
1985+ @$(am__cd) '$(distuninstallcheck_dir)' \
1986+ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
1987+ || { echo "ERROR: files left after uninstall:" ; \
1988+ if test -n "$(DESTDIR)"; then \
1989+ echo " (check DESTDIR support)"; \
1990+ fi ; \
1991+ $(distuninstallcheck_listfiles) ; \
1992+ exit 1; } >&2
1993+distcleancheck: distclean
1994+ @if test '$(srcdir)' = . ; then \
1995+ echo "ERROR: distcleancheck can only run from a VPATH build" ; \
1996+ exit 1 ; \
1997+ fi
1998+ @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
1999+ || { echo "ERROR: files left in build directory after distclean:" ; \
2000+ $(distcleancheck_listfiles) ; \
2001+ exit 1; } >&2
2002+check-am: all-am
2003+check: check-recursive
2004+all-am: Makefile $(DATA) config.h
2005+installdirs: installdirs-recursive
2006+installdirs-am:
2007+ for dir in "$(DESTDIR)$(pkgconfigdir)"; do \
2008+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
2009+ done
2010+install: install-recursive
2011+install-exec: install-exec-recursive
2012+install-data: install-data-recursive
2013+uninstall: uninstall-recursive
2014+
2015+install-am: all-am
2016+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
2017+
2018+installcheck: installcheck-recursive
2019+install-strip:
2020+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
2021+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
2022+ `test -z '$(STRIP)' || \
2023+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
2024+mostlyclean-generic:
2025+
2026+clean-generic:
2027+
2028+distclean-generic:
2029+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
2030+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
2031+
2032+maintainer-clean-generic:
2033+ @echo "This command is intended for maintainers to use"
2034+ @echo "it deletes files that may require special tools to rebuild."
2035+clean: clean-recursive
2036+
2037+clean-am: clean-generic clean-libtool mostlyclean-am
2038+
2039+distclean: distclean-recursive
2040+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
2041+ -rm -f Makefile
2042+distclean-am: clean-am distclean-generic distclean-hdr \
2043+ distclean-libtool distclean-tags
2044+
2045+dvi: dvi-recursive
2046+
2047+dvi-am:
2048+
2049+html: html-recursive
2050+
2051+html-am:
2052+
2053+info: info-recursive
2054+
2055+info-am:
2056+
2057+install-data-am: install-pkgconfigDATA
2058+
2059+install-dvi: install-dvi-recursive
2060+
2061+install-dvi-am:
2062+
2063+install-exec-am:
2064+
2065+install-html: install-html-recursive
2066+
2067+install-html-am:
2068+
2069+install-info: install-info-recursive
2070+
2071+install-info-am:
2072+
2073+install-man:
2074+
2075+install-pdf: install-pdf-recursive
2076+
2077+install-pdf-am:
2078+
2079+install-ps: install-ps-recursive
2080+
2081+install-ps-am:
2082+
2083+installcheck-am:
2084+
2085+maintainer-clean: maintainer-clean-recursive
2086+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
2087+ -rm -rf $(top_srcdir)/autom4te.cache
2088+ -rm -f Makefile
2089+maintainer-clean-am: distclean-am maintainer-clean-generic
2090+
2091+mostlyclean: mostlyclean-recursive
2092+
2093+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
2094+
2095+pdf: pdf-recursive
2096+
2097+pdf-am:
2098+
2099+ps: ps-recursive
2100+
2101+ps-am:
2102+
2103+uninstall-am: uninstall-pkgconfigDATA
2104+
2105+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
2106+ ctags-recursive install-am install-strip tags-recursive
2107+
2108+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
2109+ all all-am am--refresh check check-am clean clean-generic \
2110+ clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
2111+ dist-gzip dist-hook dist-lzma dist-shar dist-tarZ dist-xz \
2112+ dist-zip distcheck distclean distclean-generic distclean-hdr \
2113+ distclean-libtool distclean-tags distcleancheck distdir \
2114+ distuninstallcheck dvi dvi-am html html-am info info-am \
2115+ install install-am install-data install-data-am install-dvi \
2116+ install-dvi-am install-exec install-exec-am install-html \
2117+ install-html-am install-info install-info-am install-man \
2118+ install-pdf install-pdf-am install-pkgconfigDATA install-ps \
2119+ install-ps-am install-strip installcheck installcheck-am \
2120+ installdirs installdirs-am maintainer-clean \
2121+ maintainer-clean-generic mostlyclean mostlyclean-generic \
2122+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
2123+ uninstall uninstall-am uninstall-pkgconfigDATA
2124+
2125+
2126+.PHONY: ChangeLog INSTALL
2127+INSTALL:
2128+ $(INSTALL_CMD)
2129+ChangeLog:
2130+ bzr log > ChangeLog
2131+
2132+dist-hook: ChangeLog INSTALL
2133+
2134+# Tell versions [3.59,3.63) of GNU make to not export all variables.
2135+# Otherwise a system limit (for SysV at least) may be exceeded.
2136+.NOEXPORT:
2137
2138=== added file 'aclocal.m4'
2139--- aclocal.m4 1970-01-01 00:00:00 +0000
2140+++ aclocal.m4 2011-03-28 21:03:46 +0000
2141@@ -0,0 +1,9115 @@
2142+# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
2143+
2144+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
2145+# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
2146+# This file is free software; the Free Software Foundation
2147+# gives unlimited permission to copy and/or distribute it,
2148+# with or without modifications, as long as this notice is preserved.
2149+
2150+# This program is distributed in the hope that it will be useful,
2151+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
2152+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
2153+# PARTICULAR PURPOSE.
2154+
2155+m4_ifndef([AC_AUTOCONF_VERSION],
2156+ [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
2157+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.67],,
2158+[m4_warning([this file was generated for autoconf 2.67.
2159+You have another version of autoconf. It may work, but is not guaranteed to.
2160+If you have problems, you may need to regenerate the build system entirely.
2161+To do so, use the procedure documented by the package, typically `autoreconf'.])])
2162+
2163+# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
2164+#
2165+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
2166+# 2006, 2007, 2008 Free Software Foundation, Inc.
2167+# Written by Gordon Matzigkeit, 1996
2168+#
2169+# This file is free software; the Free Software Foundation gives
2170+# unlimited permission to copy and/or distribute it, with or without
2171+# modifications, as long as this notice is preserved.
2172+
2173+m4_define([_LT_COPYING], [dnl
2174+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
2175+# 2006, 2007, 2008 Free Software Foundation, Inc.
2176+# Written by Gordon Matzigkeit, 1996
2177+#
2178+# This file is part of GNU Libtool.
2179+#
2180+# GNU Libtool is free software; you can redistribute it and/or
2181+# modify it under the terms of the GNU General Public License as
2182+# published by the Free Software Foundation; either version 2 of
2183+# the License, or (at your option) any later version.
2184+#
2185+# As a special exception to the GNU General Public License,
2186+# if you distribute this file as part of a program or library that
2187+# is built using GNU Libtool, you may include this file under the
2188+# same distribution terms that you use for the rest of that program.
2189+#
2190+# GNU Libtool is distributed in the hope that it will be useful,
2191+# but WITHOUT ANY WARRANTY; without even the implied warranty of
2192+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2193+# GNU General Public License for more details.
2194+#
2195+# You should have received a copy of the GNU General Public License
2196+# along with GNU Libtool; see the file COPYING. If not, a copy
2197+# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
2198+# obtained by writing to the Free Software Foundation, Inc.,
2199+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
2200+])
2201+
2202+# serial 56 LT_INIT
2203+
2204+
2205+# LT_PREREQ(VERSION)
2206+# ------------------
2207+# Complain and exit if this libtool version is less that VERSION.
2208+m4_defun([LT_PREREQ],
2209+[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
2210+ [m4_default([$3],
2211+ [m4_fatal([Libtool version $1 or higher is required],
2212+ 63)])],
2213+ [$2])])
2214+
2215+
2216+# _LT_CHECK_BUILDDIR
2217+# ------------------
2218+# Complain if the absolute build directory name contains unusual characters
2219+m4_defun([_LT_CHECK_BUILDDIR],
2220+[case `pwd` in
2221+ *\ * | *\ *)
2222+ AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
2223+esac
2224+])
2225+
2226+
2227+# LT_INIT([OPTIONS])
2228+# ------------------
2229+AC_DEFUN([LT_INIT],
2230+[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
2231+AC_BEFORE([$0], [LT_LANG])dnl
2232+AC_BEFORE([$0], [LT_OUTPUT])dnl
2233+AC_BEFORE([$0], [LTDL_INIT])dnl
2234+m4_require([_LT_CHECK_BUILDDIR])dnl
2235+
2236+dnl Autoconf doesn't catch unexpanded LT_ macros by default:
2237+m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
2238+m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
2239+dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
2240+dnl unless we require an AC_DEFUNed macro:
2241+AC_REQUIRE([LTOPTIONS_VERSION])dnl
2242+AC_REQUIRE([LTSUGAR_VERSION])dnl
2243+AC_REQUIRE([LTVERSION_VERSION])dnl
2244+AC_REQUIRE([LTOBSOLETE_VERSION])dnl
2245+m4_require([_LT_PROG_LTMAIN])dnl
2246+
2247+dnl Parse OPTIONS
2248+_LT_SET_OPTIONS([$0], [$1])
2249+
2250+# This can be used to rebuild libtool when needed
2251+LIBTOOL_DEPS="$ltmain"
2252+
2253+# Always use our own libtool.
2254+LIBTOOL='$(SHELL) $(top_builddir)/libtool'
2255+AC_SUBST(LIBTOOL)dnl
2256+
2257+_LT_SETUP
2258+
2259+# Only expand once:
2260+m4_define([LT_INIT])
2261+])# LT_INIT
2262+
2263+# Old names:
2264+AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
2265+AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
2266+dnl aclocal-1.4 backwards compatibility:
2267+dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
2268+dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
2269+
2270+
2271+# _LT_CC_BASENAME(CC)
2272+# -------------------
2273+# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
2274+m4_defun([_LT_CC_BASENAME],
2275+[for cc_temp in $1""; do
2276+ case $cc_temp in
2277+ compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
2278+ distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
2279+ \-*) ;;
2280+ *) break;;
2281+ esac
2282+done
2283+cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
2284+])
2285+
2286+
2287+# _LT_FILEUTILS_DEFAULTS
2288+# ----------------------
2289+# It is okay to use these file commands and assume they have been set
2290+# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
2291+m4_defun([_LT_FILEUTILS_DEFAULTS],
2292+[: ${CP="cp -f"}
2293+: ${MV="mv -f"}
2294+: ${RM="rm -f"}
2295+])# _LT_FILEUTILS_DEFAULTS
2296+
2297+
2298+# _LT_SETUP
2299+# ---------
2300+m4_defun([_LT_SETUP],
2301+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2302+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
2303+_LT_DECL([], [host_alias], [0], [The host system])dnl
2304+_LT_DECL([], [host], [0])dnl
2305+_LT_DECL([], [host_os], [0])dnl
2306+dnl
2307+_LT_DECL([], [build_alias], [0], [The build system])dnl
2308+_LT_DECL([], [build], [0])dnl
2309+_LT_DECL([], [build_os], [0])dnl
2310+dnl
2311+AC_REQUIRE([AC_PROG_CC])dnl
2312+AC_REQUIRE([LT_PATH_LD])dnl
2313+AC_REQUIRE([LT_PATH_NM])dnl
2314+dnl
2315+AC_REQUIRE([AC_PROG_LN_S])dnl
2316+test -z "$LN_S" && LN_S="ln -s"
2317+_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
2318+dnl
2319+AC_REQUIRE([LT_CMD_MAX_LEN])dnl
2320+_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
2321+_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
2322+dnl
2323+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2324+m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2325+m4_require([_LT_CMD_RELOAD])dnl
2326+m4_require([_LT_CHECK_MAGIC_METHOD])dnl
2327+m4_require([_LT_CMD_OLD_ARCHIVE])dnl
2328+m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
2329+
2330+_LT_CONFIG_LIBTOOL_INIT([
2331+# See if we are running on zsh, and set the options which allow our
2332+# commands through without removal of \ escapes INIT.
2333+if test -n "\${ZSH_VERSION+set}" ; then
2334+ setopt NO_GLOB_SUBST
2335+fi
2336+])
2337+if test -n "${ZSH_VERSION+set}" ; then
2338+ setopt NO_GLOB_SUBST
2339+fi
2340+
2341+_LT_CHECK_OBJDIR
2342+
2343+m4_require([_LT_TAG_COMPILER])dnl
2344+_LT_PROG_ECHO_BACKSLASH
2345+
2346+case $host_os in
2347+aix3*)
2348+ # AIX sometimes has problems with the GCC collect2 program. For some
2349+ # reason, if we set the COLLECT_NAMES environment variable, the problems
2350+ # vanish in a puff of smoke.
2351+ if test "X${COLLECT_NAMES+set}" != Xset; then
2352+ COLLECT_NAMES=
2353+ export COLLECT_NAMES
2354+ fi
2355+ ;;
2356+esac
2357+
2358+# Sed substitution that helps us do robust quoting. It backslashifies
2359+# metacharacters that are still active within double-quoted strings.
2360+sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
2361+
2362+# Same as above, but do not quote variable references.
2363+double_quote_subst='s/\([["`\\]]\)/\\\1/g'
2364+
2365+# Sed substitution to delay expansion of an escaped shell variable in a
2366+# double_quote_subst'ed string.
2367+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
2368+
2369+# Sed substitution to delay expansion of an escaped single quote.
2370+delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
2371+
2372+# Sed substitution to avoid accidental globbing in evaled expressions
2373+no_glob_subst='s/\*/\\\*/g'
2374+
2375+# Global variables:
2376+ofile=libtool
2377+can_build_shared=yes
2378+
2379+# All known linkers require a `.a' archive for static linking (except MSVC,
2380+# which needs '.lib').
2381+libext=a
2382+
2383+with_gnu_ld="$lt_cv_prog_gnu_ld"
2384+
2385+old_CC="$CC"
2386+old_CFLAGS="$CFLAGS"
2387+
2388+# Set sane defaults for various variables
2389+test -z "$CC" && CC=cc
2390+test -z "$LTCC" && LTCC=$CC
2391+test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
2392+test -z "$LD" && LD=ld
2393+test -z "$ac_objext" && ac_objext=o
2394+
2395+_LT_CC_BASENAME([$compiler])
2396+
2397+# Only perform the check for file, if the check method requires it
2398+test -z "$MAGIC_CMD" && MAGIC_CMD=file
2399+case $deplibs_check_method in
2400+file_magic*)
2401+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then
2402+ _LT_PATH_MAGIC
2403+ fi
2404+ ;;
2405+esac
2406+
2407+# Use C for the default configuration in the libtool script
2408+LT_SUPPORTED_TAG([CC])
2409+_LT_LANG_C_CONFIG
2410+_LT_LANG_DEFAULT_CONFIG
2411+_LT_CONFIG_COMMANDS
2412+])# _LT_SETUP
2413+
2414+
2415+# _LT_PROG_LTMAIN
2416+# ---------------
2417+# Note that this code is called both from `configure', and `config.status'
2418+# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
2419+# `config.status' has no value for ac_aux_dir unless we are using Automake,
2420+# so we pass a copy along to make sure it has a sensible value anyway.
2421+m4_defun([_LT_PROG_LTMAIN],
2422+[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
2423+_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
2424+ltmain="$ac_aux_dir/ltmain.sh"
2425+])# _LT_PROG_LTMAIN
2426+
2427+
2428+
2429+# So that we can recreate a full libtool script including additional
2430+# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
2431+# in macros and then make a single call at the end using the `libtool'
2432+# label.
2433+
2434+
2435+# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
2436+# ----------------------------------------
2437+# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
2438+m4_define([_LT_CONFIG_LIBTOOL_INIT],
2439+[m4_ifval([$1],
2440+ [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
2441+ [$1
2442+])])])
2443+
2444+# Initialize.
2445+m4_define([_LT_OUTPUT_LIBTOOL_INIT])
2446+
2447+
2448+# _LT_CONFIG_LIBTOOL([COMMANDS])
2449+# ------------------------------
2450+# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
2451+m4_define([_LT_CONFIG_LIBTOOL],
2452+[m4_ifval([$1],
2453+ [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
2454+ [$1
2455+])])])
2456+
2457+# Initialize.
2458+m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
2459+
2460+
2461+# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
2462+# -----------------------------------------------------
2463+m4_defun([_LT_CONFIG_SAVE_COMMANDS],
2464+[_LT_CONFIG_LIBTOOL([$1])
2465+_LT_CONFIG_LIBTOOL_INIT([$2])
2466+])
2467+
2468+
2469+# _LT_FORMAT_COMMENT([COMMENT])
2470+# -----------------------------
2471+# Add leading comment marks to the start of each line, and a trailing
2472+# full-stop to the whole comment if one is not present already.
2473+m4_define([_LT_FORMAT_COMMENT],
2474+[m4_ifval([$1], [
2475+m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
2476+ [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
2477+)])
2478+
2479+
2480+
2481+
2482+
2483+# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
2484+# -------------------------------------------------------------------
2485+# CONFIGNAME is the name given to the value in the libtool script.
2486+# VARNAME is the (base) name used in the configure script.
2487+# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
2488+# VARNAME. Any other value will be used directly.
2489+m4_define([_LT_DECL],
2490+[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
2491+ [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
2492+ [m4_ifval([$1], [$1], [$2])])
2493+ lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
2494+ m4_ifval([$4],
2495+ [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
2496+ lt_dict_add_subkey([lt_decl_dict], [$2],
2497+ [tagged?], [m4_ifval([$5], [yes], [no])])])
2498+])
2499+
2500+
2501+# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
2502+# --------------------------------------------------------
2503+m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
2504+
2505+
2506+# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
2507+# ------------------------------------------------
2508+m4_define([lt_decl_tag_varnames],
2509+[_lt_decl_filter([tagged?], [yes], $@)])
2510+
2511+
2512+# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
2513+# ---------------------------------------------------------
2514+m4_define([_lt_decl_filter],
2515+[m4_case([$#],
2516+ [0], [m4_fatal([$0: too few arguments: $#])],
2517+ [1], [m4_fatal([$0: too few arguments: $#: $1])],
2518+ [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
2519+ [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
2520+ [lt_dict_filter([lt_decl_dict], $@)])[]dnl
2521+])
2522+
2523+
2524+# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
2525+# --------------------------------------------------
2526+m4_define([lt_decl_quote_varnames],
2527+[_lt_decl_filter([value], [1], $@)])
2528+
2529+
2530+# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
2531+# ---------------------------------------------------
2532+m4_define([lt_decl_dquote_varnames],
2533+[_lt_decl_filter([value], [2], $@)])
2534+
2535+
2536+# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
2537+# ---------------------------------------------------
2538+m4_define([lt_decl_varnames_tagged],
2539+[m4_assert([$# <= 2])dnl
2540+_$0(m4_quote(m4_default([$1], [[, ]])),
2541+ m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
2542+ m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
2543+m4_define([_lt_decl_varnames_tagged],
2544+[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
2545+
2546+
2547+# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
2548+# ------------------------------------------------
2549+m4_define([lt_decl_all_varnames],
2550+[_$0(m4_quote(m4_default([$1], [[, ]])),
2551+ m4_if([$2], [],
2552+ m4_quote(lt_decl_varnames),
2553+ m4_quote(m4_shift($@))))[]dnl
2554+])
2555+m4_define([_lt_decl_all_varnames],
2556+[lt_join($@, lt_decl_varnames_tagged([$1],
2557+ lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
2558+])
2559+
2560+
2561+# _LT_CONFIG_STATUS_DECLARE([VARNAME])
2562+# ------------------------------------
2563+# Quote a variable value, and forward it to `config.status' so that its
2564+# declaration there will have the same value as in `configure'. VARNAME
2565+# must have a single quote delimited value for this to work.
2566+m4_define([_LT_CONFIG_STATUS_DECLARE],
2567+[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
2568+
2569+
2570+# _LT_CONFIG_STATUS_DECLARATIONS
2571+# ------------------------------
2572+# We delimit libtool config variables with single quotes, so when
2573+# we write them to config.status, we have to be sure to quote all
2574+# embedded single quotes properly. In configure, this macro expands
2575+# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
2576+#
2577+# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
2578+m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
2579+[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
2580+ [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
2581+
2582+
2583+# _LT_LIBTOOL_TAGS
2584+# ----------------
2585+# Output comment and list of tags supported by the script
2586+m4_defun([_LT_LIBTOOL_TAGS],
2587+[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
2588+available_tags="_LT_TAGS"dnl
2589+])
2590+
2591+
2592+# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
2593+# -----------------------------------
2594+# Extract the dictionary values for VARNAME (optionally with TAG) and
2595+# expand to a commented shell variable setting:
2596+#
2597+# # Some comment about what VAR is for.
2598+# visible_name=$lt_internal_name
2599+m4_define([_LT_LIBTOOL_DECLARE],
2600+[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
2601+ [description])))[]dnl
2602+m4_pushdef([_libtool_name],
2603+ m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
2604+m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
2605+ [0], [_libtool_name=[$]$1],
2606+ [1], [_libtool_name=$lt_[]$1],
2607+ [2], [_libtool_name=$lt_[]$1],
2608+ [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
2609+m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
2610+])
2611+
2612+
2613+# _LT_LIBTOOL_CONFIG_VARS
2614+# -----------------------
2615+# Produce commented declarations of non-tagged libtool config variables
2616+# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
2617+# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
2618+# section) are produced by _LT_LIBTOOL_TAG_VARS.
2619+m4_defun([_LT_LIBTOOL_CONFIG_VARS],
2620+[m4_foreach([_lt_var],
2621+ m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
2622+ [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
2623+
2624+
2625+# _LT_LIBTOOL_TAG_VARS(TAG)
2626+# -------------------------
2627+m4_define([_LT_LIBTOOL_TAG_VARS],
2628+[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
2629+ [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
2630+
2631+
2632+# _LT_TAGVAR(VARNAME, [TAGNAME])
2633+# ------------------------------
2634+m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
2635+
2636+
2637+# _LT_CONFIG_COMMANDS
2638+# -------------------
2639+# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
2640+# variables for single and double quote escaping we saved from calls
2641+# to _LT_DECL, we can put quote escaped variables declarations
2642+# into `config.status', and then the shell code to quote escape them in
2643+# for loops in `config.status'. Finally, any additional code accumulated
2644+# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
2645+m4_defun([_LT_CONFIG_COMMANDS],
2646+[AC_PROVIDE_IFELSE([LT_OUTPUT],
2647+ dnl If the libtool generation code has been placed in $CONFIG_LT,
2648+ dnl instead of duplicating it all over again into config.status,
2649+ dnl then we will have config.status run $CONFIG_LT later, so it
2650+ dnl needs to know what name is stored there:
2651+ [AC_CONFIG_COMMANDS([libtool],
2652+ [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
2653+ dnl If the libtool generation code is destined for config.status,
2654+ dnl expand the accumulated commands and init code now:
2655+ [AC_CONFIG_COMMANDS([libtool],
2656+ [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
2657+])#_LT_CONFIG_COMMANDS
2658+
2659+
2660+# Initialize.
2661+m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
2662+[
2663+
2664+# The HP-UX ksh and POSIX shell print the target directory to stdout
2665+# if CDPATH is set.
2666+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
2667+
2668+sed_quote_subst='$sed_quote_subst'
2669+double_quote_subst='$double_quote_subst'
2670+delay_variable_subst='$delay_variable_subst'
2671+_LT_CONFIG_STATUS_DECLARATIONS
2672+LTCC='$LTCC'
2673+LTCFLAGS='$LTCFLAGS'
2674+compiler='$compiler_DEFAULT'
2675+
2676+# Quote evaled strings.
2677+for var in lt_decl_all_varnames([[ \
2678+]], lt_decl_quote_varnames); do
2679+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
2680+ *[[\\\\\\\`\\"\\\$]]*)
2681+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
2682+ ;;
2683+ *)
2684+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
2685+ ;;
2686+ esac
2687+done
2688+
2689+# Double-quote double-evaled strings.
2690+for var in lt_decl_all_varnames([[ \
2691+]], lt_decl_dquote_varnames); do
2692+ case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
2693+ *[[\\\\\\\`\\"\\\$]]*)
2694+ eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
2695+ ;;
2696+ *)
2697+ eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
2698+ ;;
2699+ esac
2700+done
2701+
2702+# Fix-up fallback echo if it was mangled by the above quoting rules.
2703+case \$lt_ECHO in
2704+*'\\\[$]0 --fallback-echo"')dnl "
2705+ lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
2706+ ;;
2707+esac
2708+
2709+_LT_OUTPUT_LIBTOOL_INIT
2710+])
2711+
2712+
2713+# LT_OUTPUT
2714+# ---------
2715+# This macro allows early generation of the libtool script (before
2716+# AC_OUTPUT is called), incase it is used in configure for compilation
2717+# tests.
2718+AC_DEFUN([LT_OUTPUT],
2719+[: ${CONFIG_LT=./config.lt}
2720+AC_MSG_NOTICE([creating $CONFIG_LT])
2721+cat >"$CONFIG_LT" <<_LTEOF
2722+#! $SHELL
2723+# Generated by $as_me.
2724+# Run this file to recreate a libtool stub with the current configuration.
2725+
2726+lt_cl_silent=false
2727+SHELL=\${CONFIG_SHELL-$SHELL}
2728+_LTEOF
2729+
2730+cat >>"$CONFIG_LT" <<\_LTEOF
2731+AS_SHELL_SANITIZE
2732+_AS_PREPARE
2733+
2734+exec AS_MESSAGE_FD>&1
2735+exec AS_MESSAGE_LOG_FD>>config.log
2736+{
2737+ echo
2738+ AS_BOX([Running $as_me.])
2739+} >&AS_MESSAGE_LOG_FD
2740+
2741+lt_cl_help="\
2742+\`$as_me' creates a local libtool stub from the current configuration,
2743+for use in further configure time tests before the real libtool is
2744+generated.
2745+
2746+Usage: $[0] [[OPTIONS]]
2747+
2748+ -h, --help print this help, then exit
2749+ -V, --version print version number, then exit
2750+ -q, --quiet do not print progress messages
2751+ -d, --debug don't remove temporary files
2752+
2753+Report bugs to <bug-libtool@gnu.org>."
2754+
2755+lt_cl_version="\
2756+m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
2757+m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
2758+configured by $[0], generated by m4_PACKAGE_STRING.
2759+
2760+Copyright (C) 2008 Free Software Foundation, Inc.
2761+This config.lt script is free software; the Free Software Foundation
2762+gives unlimited permision to copy, distribute and modify it."
2763+
2764+while test $[#] != 0
2765+do
2766+ case $[1] in
2767+ --version | --v* | -V )
2768+ echo "$lt_cl_version"; exit 0 ;;
2769+ --help | --h* | -h )
2770+ echo "$lt_cl_help"; exit 0 ;;
2771+ --debug | --d* | -d )
2772+ debug=: ;;
2773+ --quiet | --q* | --silent | --s* | -q )
2774+ lt_cl_silent=: ;;
2775+
2776+ -*) AC_MSG_ERROR([unrecognized option: $[1]
2777+Try \`$[0] --help' for more information.]) ;;
2778+
2779+ *) AC_MSG_ERROR([unrecognized argument: $[1]
2780+Try \`$[0] --help' for more information.]) ;;
2781+ esac
2782+ shift
2783+done
2784+
2785+if $lt_cl_silent; then
2786+ exec AS_MESSAGE_FD>/dev/null
2787+fi
2788+_LTEOF
2789+
2790+cat >>"$CONFIG_LT" <<_LTEOF
2791+_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
2792+_LTEOF
2793+
2794+cat >>"$CONFIG_LT" <<\_LTEOF
2795+AC_MSG_NOTICE([creating $ofile])
2796+_LT_OUTPUT_LIBTOOL_COMMANDS
2797+AS_EXIT(0)
2798+_LTEOF
2799+chmod +x "$CONFIG_LT"
2800+
2801+# configure is writing to config.log, but config.lt does its own redirection,
2802+# appending to config.log, which fails on DOS, as config.log is still kept
2803+# open by configure. Here we exec the FD to /dev/null, effectively closing
2804+# config.log, so it can be properly (re)opened and appended to by config.lt.
2805+if test "$no_create" != yes; then
2806+ lt_cl_success=:
2807+ test "$silent" = yes &&
2808+ lt_config_lt_args="$lt_config_lt_args --quiet"
2809+ exec AS_MESSAGE_LOG_FD>/dev/null
2810+ $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
2811+ exec AS_MESSAGE_LOG_FD>>config.log
2812+ $lt_cl_success || AS_EXIT(1)
2813+fi
2814+])# LT_OUTPUT
2815+
2816+
2817+# _LT_CONFIG(TAG)
2818+# ---------------
2819+# If TAG is the built-in tag, create an initial libtool script with a
2820+# default configuration from the untagged config vars. Otherwise add code
2821+# to config.status for appending the configuration named by TAG from the
2822+# matching tagged config vars.
2823+m4_defun([_LT_CONFIG],
2824+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2825+_LT_CONFIG_SAVE_COMMANDS([
2826+ m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
2827+ m4_if(_LT_TAG, [C], [
2828+ # See if we are running on zsh, and set the options which allow our
2829+ # commands through without removal of \ escapes.
2830+ if test -n "${ZSH_VERSION+set}" ; then
2831+ setopt NO_GLOB_SUBST
2832+ fi
2833+
2834+ cfgfile="${ofile}T"
2835+ trap "$RM \"$cfgfile\"; exit 1" 1 2 15
2836+ $RM "$cfgfile"
2837+
2838+ cat <<_LT_EOF >> "$cfgfile"
2839+#! $SHELL
2840+
2841+# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
2842+# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
2843+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
2844+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
2845+#
2846+_LT_COPYING
2847+_LT_LIBTOOL_TAGS
2848+
2849+# ### BEGIN LIBTOOL CONFIG
2850+_LT_LIBTOOL_CONFIG_VARS
2851+_LT_LIBTOOL_TAG_VARS
2852+# ### END LIBTOOL CONFIG
2853+
2854+_LT_EOF
2855+
2856+ case $host_os in
2857+ aix3*)
2858+ cat <<\_LT_EOF >> "$cfgfile"
2859+# AIX sometimes has problems with the GCC collect2 program. For some
2860+# reason, if we set the COLLECT_NAMES environment variable, the problems
2861+# vanish in a puff of smoke.
2862+if test "X${COLLECT_NAMES+set}" != Xset; then
2863+ COLLECT_NAMES=
2864+ export COLLECT_NAMES
2865+fi
2866+_LT_EOF
2867+ ;;
2868+ esac
2869+
2870+ _LT_PROG_LTMAIN
2871+
2872+ # We use sed instead of cat because bash on DJGPP gets confused if
2873+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
2874+ # text mode, it properly converts lines to CR/LF. This bash problem
2875+ # is reportedly fixed, but why not run on old versions too?
2876+ sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
2877+ || (rm -f "$cfgfile"; exit 1)
2878+
2879+ _LT_PROG_XSI_SHELLFNS
2880+
2881+ sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
2882+ || (rm -f "$cfgfile"; exit 1)
2883+
2884+ mv -f "$cfgfile" "$ofile" ||
2885+ (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
2886+ chmod +x "$ofile"
2887+],
2888+[cat <<_LT_EOF >> "$ofile"
2889+
2890+dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
2891+dnl in a comment (ie after a #).
2892+# ### BEGIN LIBTOOL TAG CONFIG: $1
2893+_LT_LIBTOOL_TAG_VARS(_LT_TAG)
2894+# ### END LIBTOOL TAG CONFIG: $1
2895+_LT_EOF
2896+])dnl /m4_if
2897+],
2898+[m4_if([$1], [], [
2899+ PACKAGE='$PACKAGE'
2900+ VERSION='$VERSION'
2901+ TIMESTAMP='$TIMESTAMP'
2902+ RM='$RM'
2903+ ofile='$ofile'], [])
2904+])dnl /_LT_CONFIG_SAVE_COMMANDS
2905+])# _LT_CONFIG
2906+
2907+
2908+# LT_SUPPORTED_TAG(TAG)
2909+# ---------------------
2910+# Trace this macro to discover what tags are supported by the libtool
2911+# --tag option, using:
2912+# autoconf --trace 'LT_SUPPORTED_TAG:$1'
2913+AC_DEFUN([LT_SUPPORTED_TAG], [])
2914+
2915+
2916+# C support is built-in for now
2917+m4_define([_LT_LANG_C_enabled], [])
2918+m4_define([_LT_TAGS], [])
2919+
2920+
2921+# LT_LANG(LANG)
2922+# -------------
2923+# Enable libtool support for the given language if not already enabled.
2924+AC_DEFUN([LT_LANG],
2925+[AC_BEFORE([$0], [LT_OUTPUT])dnl
2926+m4_case([$1],
2927+ [C], [_LT_LANG(C)],
2928+ [C++], [_LT_LANG(CXX)],
2929+ [Java], [_LT_LANG(GCJ)],
2930+ [Fortran 77], [_LT_LANG(F77)],
2931+ [Fortran], [_LT_LANG(FC)],
2932+ [Windows Resource], [_LT_LANG(RC)],
2933+ [m4_ifdef([_LT_LANG_]$1[_CONFIG],
2934+ [_LT_LANG($1)],
2935+ [m4_fatal([$0: unsupported language: "$1"])])])dnl
2936+])# LT_LANG
2937+
2938+
2939+# _LT_LANG(LANGNAME)
2940+# ------------------
2941+m4_defun([_LT_LANG],
2942+[m4_ifdef([_LT_LANG_]$1[_enabled], [],
2943+ [LT_SUPPORTED_TAG([$1])dnl
2944+ m4_append([_LT_TAGS], [$1 ])dnl
2945+ m4_define([_LT_LANG_]$1[_enabled], [])dnl
2946+ _LT_LANG_$1_CONFIG($1)])dnl
2947+])# _LT_LANG
2948+
2949+
2950+# _LT_LANG_DEFAULT_CONFIG
2951+# -----------------------
2952+m4_defun([_LT_LANG_DEFAULT_CONFIG],
2953+[AC_PROVIDE_IFELSE([AC_PROG_CXX],
2954+ [LT_LANG(CXX)],
2955+ [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
2956+
2957+AC_PROVIDE_IFELSE([AC_PROG_F77],
2958+ [LT_LANG(F77)],
2959+ [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
2960+
2961+AC_PROVIDE_IFELSE([AC_PROG_FC],
2962+ [LT_LANG(FC)],
2963+ [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
2964+
2965+dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
2966+dnl pulling things in needlessly.
2967+AC_PROVIDE_IFELSE([AC_PROG_GCJ],
2968+ [LT_LANG(GCJ)],
2969+ [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
2970+ [LT_LANG(GCJ)],
2971+ [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
2972+ [LT_LANG(GCJ)],
2973+ [m4_ifdef([AC_PROG_GCJ],
2974+ [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
2975+ m4_ifdef([A][M_PROG_GCJ],
2976+ [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
2977+ m4_ifdef([LT_PROG_GCJ],
2978+ [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
2979+
2980+AC_PROVIDE_IFELSE([LT_PROG_RC],
2981+ [LT_LANG(RC)],
2982+ [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
2983+])# _LT_LANG_DEFAULT_CONFIG
2984+
2985+# Obsolete macros:
2986+AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
2987+AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
2988+AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
2989+AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
2990+dnl aclocal-1.4 backwards compatibility:
2991+dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
2992+dnl AC_DEFUN([AC_LIBTOOL_F77], [])
2993+dnl AC_DEFUN([AC_LIBTOOL_FC], [])
2994+dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
2995+
2996+
2997+# _LT_TAG_COMPILER
2998+# ----------------
2999+m4_defun([_LT_TAG_COMPILER],
3000+[AC_REQUIRE([AC_PROG_CC])dnl
3001+
3002+_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
3003+_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
3004+_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
3005+_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
3006+
3007+# If no C compiler was specified, use CC.
3008+LTCC=${LTCC-"$CC"}
3009+
3010+# If no C compiler flags were specified, use CFLAGS.
3011+LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
3012+
3013+# Allow CC to be a program name with arguments.
3014+compiler=$CC
3015+])# _LT_TAG_COMPILER
3016+
3017+
3018+# _LT_COMPILER_BOILERPLATE
3019+# ------------------------
3020+# Check for compiler boilerplate output or warnings with
3021+# the simple compiler test code.
3022+m4_defun([_LT_COMPILER_BOILERPLATE],
3023+[m4_require([_LT_DECL_SED])dnl
3024+ac_outfile=conftest.$ac_objext
3025+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
3026+eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
3027+_lt_compiler_boilerplate=`cat conftest.err`
3028+$RM conftest*
3029+])# _LT_COMPILER_BOILERPLATE
3030+
3031+
3032+# _LT_LINKER_BOILERPLATE
3033+# ----------------------
3034+# Check for linker boilerplate output or warnings with
3035+# the simple link test code.
3036+m4_defun([_LT_LINKER_BOILERPLATE],
3037+[m4_require([_LT_DECL_SED])dnl
3038+ac_outfile=conftest.$ac_objext
3039+echo "$lt_simple_link_test_code" >conftest.$ac_ext
3040+eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
3041+_lt_linker_boilerplate=`cat conftest.err`
3042+$RM -r conftest*
3043+])# _LT_LINKER_BOILERPLATE
3044+
3045+# _LT_REQUIRED_DARWIN_CHECKS
3046+# -------------------------
3047+m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
3048+ case $host_os in
3049+ rhapsody* | darwin*)
3050+ AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
3051+ AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
3052+ AC_CHECK_TOOL([LIPO], [lipo], [:])
3053+ AC_CHECK_TOOL([OTOOL], [otool], [:])
3054+ AC_CHECK_TOOL([OTOOL64], [otool64], [:])
3055+ _LT_DECL([], [DSYMUTIL], [1],
3056+ [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
3057+ _LT_DECL([], [NMEDIT], [1],
3058+ [Tool to change global to local symbols on Mac OS X])
3059+ _LT_DECL([], [LIPO], [1],
3060+ [Tool to manipulate fat objects and archives on Mac OS X])
3061+ _LT_DECL([], [OTOOL], [1],
3062+ [ldd/readelf like tool for Mach-O binaries on Mac OS X])
3063+ _LT_DECL([], [OTOOL64], [1],
3064+ [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
3065+
3066+ AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
3067+ [lt_cv_apple_cc_single_mod=no
3068+ if test -z "${LT_MULTI_MODULE}"; then
3069+ # By default we will add the -single_module flag. You can override
3070+ # by either setting the environment variable LT_MULTI_MODULE
3071+ # non-empty at configure time, or by adding -multi_module to the
3072+ # link flags.
3073+ rm -rf libconftest.dylib*
3074+ echo "int foo(void){return 1;}" > conftest.c
3075+ echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
3076+-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
3077+ $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
3078+ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
3079+ _lt_result=$?
3080+ if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
3081+ lt_cv_apple_cc_single_mod=yes
3082+ else
3083+ cat conftest.err >&AS_MESSAGE_LOG_FD
3084+ fi
3085+ rm -rf libconftest.dylib*
3086+ rm -f conftest.*
3087+ fi])
3088+ AC_CACHE_CHECK([for -exported_symbols_list linker flag],
3089+ [lt_cv_ld_exported_symbols_list],
3090+ [lt_cv_ld_exported_symbols_list=no
3091+ save_LDFLAGS=$LDFLAGS
3092+ echo "_main" > conftest.sym
3093+ LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
3094+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
3095+ [lt_cv_ld_exported_symbols_list=yes],
3096+ [lt_cv_ld_exported_symbols_list=no])
3097+ LDFLAGS="$save_LDFLAGS"
3098+ ])
3099+ case $host_os in
3100+ rhapsody* | darwin1.[[012]])
3101+ _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
3102+ darwin1.*)
3103+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
3104+ darwin*) # darwin 5.x on
3105+ # if running on 10.5 or later, the deployment target defaults
3106+ # to the OS version, if on x86, and 10.4, the deployment
3107+ # target defaults to 10.4. Don't you love it?
3108+ case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
3109+ 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
3110+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
3111+ 10.[[012]]*)
3112+ _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
3113+ 10.*)
3114+ _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
3115+ esac
3116+ ;;
3117+ esac
3118+ if test "$lt_cv_apple_cc_single_mod" = "yes"; then
3119+ _lt_dar_single_mod='$single_module'
3120+ fi
3121+ if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
3122+ _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
3123+ else
3124+ _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
3125+ fi
3126+ if test "$DSYMUTIL" != ":"; then
3127+ _lt_dsymutil='~$DSYMUTIL $lib || :'
3128+ else
3129+ _lt_dsymutil=
3130+ fi
3131+ ;;
3132+ esac
3133+])
3134+
3135+
3136+# _LT_DARWIN_LINKER_FEATURES
3137+# --------------------------
3138+# Checks for linker and compiler features on darwin
3139+m4_defun([_LT_DARWIN_LINKER_FEATURES],
3140+[
3141+ m4_require([_LT_REQUIRED_DARWIN_CHECKS])
3142+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
3143+ _LT_TAGVAR(hardcode_direct, $1)=no
3144+ _LT_TAGVAR(hardcode_automatic, $1)=yes
3145+ _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
3146+ _LT_TAGVAR(whole_archive_flag_spec, $1)=''
3147+ _LT_TAGVAR(link_all_deplibs, $1)=yes
3148+ _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
3149+ case $cc_basename in
3150+ ifort*) _lt_dar_can_shared=yes ;;
3151+ *) _lt_dar_can_shared=$GCC ;;
3152+ esac
3153+ if test "$_lt_dar_can_shared" = "yes"; then
3154+ output_verbose_link_cmd=echo
3155+ _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
3156+ _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
3157+ _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
3158+ _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
3159+ m4_if([$1], [CXX],
3160+[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
3161+ _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
3162+ _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
3163+ fi
3164+],[])
3165+ else
3166+ _LT_TAGVAR(ld_shlibs, $1)=no
3167+ fi
3168+])
3169+
3170+# _LT_SYS_MODULE_PATH_AIX
3171+# -----------------------
3172+# Links a minimal program and checks the executable
3173+# for the system default hardcoded library path. In most cases,
3174+# this is /usr/lib:/lib, but when the MPI compilers are used
3175+# the location of the communication and MPI libs are included too.
3176+# If we don't find anything, use the default library path according
3177+# to the aix ld manual.
3178+m4_defun([_LT_SYS_MODULE_PATH_AIX],
3179+[m4_require([_LT_DECL_SED])dnl
3180+AC_LINK_IFELSE(AC_LANG_PROGRAM,[
3181+lt_aix_libpath_sed='
3182+ /Import File Strings/,/^$/ {
3183+ /^0/ {
3184+ s/^0 *\(.*\)$/\1/
3185+ p
3186+ }
3187+ }'
3188+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
3189+# Check for a 64-bit object if we didn't find anything.
3190+if test -z "$aix_libpath"; then
3191+ aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
3192+fi],[])
3193+if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
3194+])# _LT_SYS_MODULE_PATH_AIX
3195+
3196+
3197+# _LT_SHELL_INIT(ARG)
3198+# -------------------
3199+m4_define([_LT_SHELL_INIT],
3200+[ifdef([AC_DIVERSION_NOTICE],
3201+ [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
3202+ [AC_DIVERT_PUSH(NOTICE)])
3203+$1
3204+AC_DIVERT_POP
3205+])# _LT_SHELL_INIT
3206+
3207+
3208+# _LT_PROG_ECHO_BACKSLASH
3209+# -----------------------
3210+# Add some code to the start of the generated configure script which
3211+# will find an echo command which doesn't interpret backslashes.
3212+m4_defun([_LT_PROG_ECHO_BACKSLASH],
3213+[_LT_SHELL_INIT([
3214+# Check that we are running under the correct shell.
3215+SHELL=${CONFIG_SHELL-/bin/sh}
3216+
3217+case X$lt_ECHO in
3218+X*--fallback-echo)
3219+ # Remove one level of quotation (which was required for Make).
3220+ ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
3221+ ;;
3222+esac
3223+
3224+ECHO=${lt_ECHO-echo}
3225+if test "X[$]1" = X--no-reexec; then
3226+ # Discard the --no-reexec flag, and continue.
3227+ shift
3228+elif test "X[$]1" = X--fallback-echo; then
3229+ # Avoid inline document here, it may be left over
3230+ :
3231+elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
3232+ # Yippee, $ECHO works!
3233+ :
3234+else
3235+ # Restart under the correct shell.
3236+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
3237+fi
3238+
3239+if test "X[$]1" = X--fallback-echo; then
3240+ # used as fallback echo
3241+ shift
3242+ cat <<_LT_EOF
3243+[$]*
3244+_LT_EOF
3245+ exit 0
3246+fi
3247+
3248+# The HP-UX ksh and POSIX shell print the target directory to stdout
3249+# if CDPATH is set.
3250+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
3251+
3252+if test -z "$lt_ECHO"; then
3253+ if test "X${echo_test_string+set}" != Xset; then
3254+ # find a string as large as possible, as long as the shell can cope with it
3255+ for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
3256+ # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
3257+ if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
3258+ { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
3259+ then
3260+ break
3261+ fi
3262+ done
3263+ fi
3264+
3265+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
3266+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
3267+ test "X$echo_testing_string" = "X$echo_test_string"; then
3268+ :
3269+ else
3270+ # The Solaris, AIX, and Digital Unix default echo programs unquote
3271+ # backslashes. This makes it impossible to quote backslashes using
3272+ # echo "$something" | sed 's/\\/\\\\/g'
3273+ #
3274+ # So, first we look for a working echo in the user's PATH.
3275+
3276+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3277+ for dir in $PATH /usr/ucb; do
3278+ IFS="$lt_save_ifs"
3279+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
3280+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
3281+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
3282+ test "X$echo_testing_string" = "X$echo_test_string"; then
3283+ ECHO="$dir/echo"
3284+ break
3285+ fi
3286+ done
3287+ IFS="$lt_save_ifs"
3288+
3289+ if test "X$ECHO" = Xecho; then
3290+ # We didn't find a better echo, so look for alternatives.
3291+ if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
3292+ echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
3293+ test "X$echo_testing_string" = "X$echo_test_string"; then
3294+ # This shell has a builtin print -r that does the trick.
3295+ ECHO='print -r'
3296+ elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
3297+ test "X$CONFIG_SHELL" != X/bin/ksh; then
3298+ # If we have ksh, try running configure again with it.
3299+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
3300+ export ORIGINAL_CONFIG_SHELL
3301+ CONFIG_SHELL=/bin/ksh
3302+ export CONFIG_SHELL
3303+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
3304+ else
3305+ # Try using printf.
3306+ ECHO='printf %s\n'
3307+ if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
3308+ echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
3309+ test "X$echo_testing_string" = "X$echo_test_string"; then
3310+ # Cool, printf works
3311+ :
3312+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
3313+ test "X$echo_testing_string" = 'X\t' &&
3314+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
3315+ test "X$echo_testing_string" = "X$echo_test_string"; then
3316+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
3317+ export CONFIG_SHELL
3318+ SHELL="$CONFIG_SHELL"
3319+ export SHELL
3320+ ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
3321+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
3322+ test "X$echo_testing_string" = 'X\t' &&
3323+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
3324+ test "X$echo_testing_string" = "X$echo_test_string"; then
3325+ ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
3326+ else
3327+ # maybe with a smaller string...
3328+ prev=:
3329+
3330+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
3331+ if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
3332+ then
3333+ break
3334+ fi
3335+ prev="$cmd"
3336+ done
3337+
3338+ if test "$prev" != 'sed 50q "[$]0"'; then
3339+ echo_test_string=`eval $prev`
3340+ export echo_test_string
3341+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
3342+ else
3343+ # Oops. We lost completely, so just stick with echo.
3344+ ECHO=echo
3345+ fi
3346+ fi
3347+ fi
3348+ fi
3349+ fi
3350+fi
3351+
3352+# Copy echo and quote the copy suitably for passing to libtool from
3353+# the Makefile, instead of quoting the original, which is used later.
3354+lt_ECHO=$ECHO
3355+if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
3356+ lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
3357+fi
3358+
3359+AC_SUBST(lt_ECHO)
3360+])
3361+_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
3362+_LT_DECL([], [ECHO], [1],
3363+ [An echo program that does not interpret backslashes])
3364+])# _LT_PROG_ECHO_BACKSLASH
3365+
3366+
3367+# _LT_ENABLE_LOCK
3368+# ---------------
3369+m4_defun([_LT_ENABLE_LOCK],
3370+[AC_ARG_ENABLE([libtool-lock],
3371+ [AS_HELP_STRING([--disable-libtool-lock],
3372+ [avoid locking (might break parallel builds)])])
3373+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
3374+
3375+# Some flags need to be propagated to the compiler or linker for good
3376+# libtool support.
3377+case $host in
3378+ia64-*-hpux*)
3379+ # Find out which ABI we are using.
3380+ echo 'int i;' > conftest.$ac_ext
3381+ if AC_TRY_EVAL(ac_compile); then
3382+ case `/usr/bin/file conftest.$ac_objext` in
3383+ *ELF-32*)
3384+ HPUX_IA64_MODE="32"
3385+ ;;
3386+ *ELF-64*)
3387+ HPUX_IA64_MODE="64"
3388+ ;;
3389+ esac
3390+ fi
3391+ rm -rf conftest*
3392+ ;;
3393+*-*-irix6*)
3394+ # Find out which ABI we are using.
3395+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext
3396+ if AC_TRY_EVAL(ac_compile); then
3397+ if test "$lt_cv_prog_gnu_ld" = yes; then
3398+ case `/usr/bin/file conftest.$ac_objext` in
3399+ *32-bit*)
3400+ LD="${LD-ld} -melf32bsmip"
3401+ ;;
3402+ *N32*)
3403+ LD="${LD-ld} -melf32bmipn32"
3404+ ;;
3405+ *64-bit*)
3406+ LD="${LD-ld} -melf64bmip"
3407+ ;;
3408+ esac
3409+ else
3410+ case `/usr/bin/file conftest.$ac_objext` in
3411+ *32-bit*)
3412+ LD="${LD-ld} -32"
3413+ ;;
3414+ *N32*)
3415+ LD="${LD-ld} -n32"
3416+ ;;
3417+ *64-bit*)
3418+ LD="${LD-ld} -64"
3419+ ;;
3420+ esac
3421+ fi
3422+ fi
3423+ rm -rf conftest*
3424+ ;;
3425+
3426+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
3427+s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
3428+ # Find out which ABI we are using.
3429+ echo 'int i;' > conftest.$ac_ext
3430+ if AC_TRY_EVAL(ac_compile); then
3431+ case `/usr/bin/file conftest.o` in
3432+ *32-bit*)
3433+ case $host in
3434+ x86_64-*kfreebsd*-gnu)
3435+ LD="${LD-ld} -m elf_i386_fbsd"
3436+ ;;
3437+ x86_64-*linux*)
3438+ LD="${LD-ld} -m elf_i386"
3439+ ;;
3440+ ppc64-*linux*|powerpc64-*linux*)
3441+ LD="${LD-ld} -m elf32ppclinux"
3442+ ;;
3443+ s390x-*linux*)
3444+ LD="${LD-ld} -m elf_s390"
3445+ ;;
3446+ sparc64-*linux*)
3447+ LD="${LD-ld} -m elf32_sparc"
3448+ ;;
3449+ esac
3450+ ;;
3451+ *64-bit*)
3452+ case $host in
3453+ x86_64-*kfreebsd*-gnu)
3454+ LD="${LD-ld} -m elf_x86_64_fbsd"
3455+ ;;
3456+ x86_64-*linux*)
3457+ LD="${LD-ld} -m elf_x86_64"
3458+ ;;
3459+ ppc*-*linux*|powerpc*-*linux*)
3460+ LD="${LD-ld} -m elf64ppc"
3461+ ;;
3462+ s390*-*linux*|s390*-*tpf*)
3463+ LD="${LD-ld} -m elf64_s390"
3464+ ;;
3465+ sparc*-*linux*)
3466+ LD="${LD-ld} -m elf64_sparc"
3467+ ;;
3468+ esac
3469+ ;;
3470+ esac
3471+ fi
3472+ rm -rf conftest*
3473+ ;;
3474+
3475+*-*-sco3.2v5*)
3476+ # On SCO OpenServer 5, we need -belf to get full-featured binaries.
3477+ SAVE_CFLAGS="$CFLAGS"
3478+ CFLAGS="$CFLAGS -belf"
3479+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
3480+ [AC_LANG_PUSH(C)
3481+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
3482+ AC_LANG_POP])
3483+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then
3484+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
3485+ CFLAGS="$SAVE_CFLAGS"
3486+ fi
3487+ ;;
3488+sparc*-*solaris*)
3489+ # Find out which ABI we are using.
3490+ echo 'int i;' > conftest.$ac_ext
3491+ if AC_TRY_EVAL(ac_compile); then
3492+ case `/usr/bin/file conftest.o` in
3493+ *64-bit*)
3494+ case $lt_cv_prog_gnu_ld in
3495+ yes*) LD="${LD-ld} -m elf64_sparc" ;;
3496+ *)
3497+ if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
3498+ LD="${LD-ld} -64"
3499+ fi
3500+ ;;
3501+ esac
3502+ ;;
3503+ esac
3504+ fi
3505+ rm -rf conftest*
3506+ ;;
3507+esac
3508+
3509+need_locks="$enable_libtool_lock"
3510+])# _LT_ENABLE_LOCK
3511+
3512+
3513+# _LT_CMD_OLD_ARCHIVE
3514+# -------------------
3515+m4_defun([_LT_CMD_OLD_ARCHIVE],
3516+[AC_CHECK_TOOL(AR, ar, false)
3517+test -z "$AR" && AR=ar
3518+test -z "$AR_FLAGS" && AR_FLAGS=cru
3519+_LT_DECL([], [AR], [1], [The archiver])
3520+_LT_DECL([], [AR_FLAGS], [1])
3521+
3522+AC_CHECK_TOOL(STRIP, strip, :)
3523+test -z "$STRIP" && STRIP=:
3524+_LT_DECL([], [STRIP], [1], [A symbol stripping program])
3525+
3526+AC_CHECK_TOOL(RANLIB, ranlib, :)
3527+test -z "$RANLIB" && RANLIB=:
3528+_LT_DECL([], [RANLIB], [1],
3529+ [Commands used to install an old-style archive])
3530+
3531+# Determine commands to create old-style static archives.
3532+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
3533+old_postinstall_cmds='chmod 644 $oldlib'
3534+old_postuninstall_cmds=
3535+
3536+if test -n "$RANLIB"; then
3537+ case $host_os in
3538+ openbsd*)
3539+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
3540+ ;;
3541+ *)
3542+ old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
3543+ ;;
3544+ esac
3545+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
3546+fi
3547+_LT_DECL([], [old_postinstall_cmds], [2])
3548+_LT_DECL([], [old_postuninstall_cmds], [2])
3549+_LT_TAGDECL([], [old_archive_cmds], [2],
3550+ [Commands used to build an old-style archive])
3551+])# _LT_CMD_OLD_ARCHIVE
3552+
3553+
3554+# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
3555+# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
3556+# ----------------------------------------------------------------
3557+# Check whether the given compiler option works
3558+AC_DEFUN([_LT_COMPILER_OPTION],
3559+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3560+m4_require([_LT_DECL_SED])dnl
3561+AC_CACHE_CHECK([$1], [$2],
3562+ [$2=no
3563+ m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
3564+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
3565+ lt_compiler_flag="$3"
3566+ # Insert the option either (1) after the last *FLAGS variable, or
3567+ # (2) before a word containing "conftest.", or (3) at the end.
3568+ # Note that $ac_compile itself does not contain backslashes and begins
3569+ # with a dollar sign (not a hyphen), so the echo should work correctly.
3570+ # The option is referenced via a variable to avoid confusing sed.
3571+ lt_compile=`echo "$ac_compile" | $SED \
3572+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
3573+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
3574+ -e 's:$: $lt_compiler_flag:'`
3575+ (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
3576+ (eval "$lt_compile" 2>conftest.err)
3577+ ac_status=$?
3578+ cat conftest.err >&AS_MESSAGE_LOG_FD
3579+ echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
3580+ if (exit $ac_status) && test -s "$ac_outfile"; then
3581+ # The compiler can only warn and ignore the option if not recognized
3582+ # So say no if there are warnings other than the usual output.
3583+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
3584+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
3585+ if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
3586+ $2=yes
3587+ fi
3588+ fi
3589+ $RM conftest*
3590+])
3591+
3592+if test x"[$]$2" = xyes; then
3593+ m4_if([$5], , :, [$5])
3594+else
3595+ m4_if([$6], , :, [$6])
3596+fi
3597+])# _LT_COMPILER_OPTION
3598+
3599+# Old name:
3600+AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
3601+dnl aclocal-1.4 backwards compatibility:
3602+dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
3603+
3604+
3605+# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
3606+# [ACTION-SUCCESS], [ACTION-FAILURE])
3607+# ----------------------------------------------------
3608+# Check whether the given linker option works
3609+AC_DEFUN([_LT_LINKER_OPTION],
3610+[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3611+m4_require([_LT_DECL_SED])dnl
3612+AC_CACHE_CHECK([$1], [$2],
3613+ [$2=no
3614+ save_LDFLAGS="$LDFLAGS"
3615+ LDFLAGS="$LDFLAGS $3"
3616+ echo "$lt_simple_link_test_code" > conftest.$ac_ext
3617+ if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
3618+ # The linker can only warn and ignore the option if not recognized
3619+ # So say no if there are warnings
3620+ if test -s conftest.err; then
3621+ # Append any errors to the config.log.
3622+ cat conftest.err 1>&AS_MESSAGE_LOG_FD
3623+ $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
3624+ $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
3625+ if diff conftest.exp conftest.er2 >/dev/null; then
3626+ $2=yes
3627+ fi
3628+ else
3629+ $2=yes
3630+ fi
3631+ fi
3632+ $RM -r conftest*
3633+ LDFLAGS="$save_LDFLAGS"
3634+])
3635+
3636+if test x"[$]$2" = xyes; then
3637+ m4_if([$4], , :, [$4])
3638+else
3639+ m4_if([$5], , :, [$5])
3640+fi
3641+])# _LT_LINKER_OPTION
3642+
3643+# Old name:
3644+AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
3645+dnl aclocal-1.4 backwards compatibility:
3646+dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
3647+
3648+
3649+# LT_CMD_MAX_LEN
3650+#---------------
3651+AC_DEFUN([LT_CMD_MAX_LEN],
3652+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3653+# find the maximum length of command line arguments
3654+AC_MSG_CHECKING([the maximum length of command line arguments])
3655+AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
3656+ i=0
3657+ teststring="ABCD"
3658+
3659+ case $build_os in
3660+ msdosdjgpp*)
3661+ # On DJGPP, this test can blow up pretty badly due to problems in libc
3662+ # (any single argument exceeding 2000 bytes causes a buffer overrun
3663+ # during glob expansion). Even if it were fixed, the result of this
3664+ # check would be larger than it should be.
3665+ lt_cv_sys_max_cmd_len=12288; # 12K is about right
3666+ ;;
3667+
3668+ gnu*)
3669+ # Under GNU Hurd, this test is not required because there is
3670+ # no limit to the length of command line arguments.
3671+ # Libtool will interpret -1 as no limit whatsoever
3672+ lt_cv_sys_max_cmd_len=-1;
3673+ ;;
3674+
3675+ cygwin* | mingw* | cegcc*)
3676+ # On Win9x/ME, this test blows up -- it succeeds, but takes
3677+ # about 5 minutes as the teststring grows exponentially.
3678+ # Worse, since 9x/ME are not pre-emptively multitasking,
3679+ # you end up with a "frozen" computer, even though with patience
3680+ # the test eventually succeeds (with a max line length of 256k).
3681+ # Instead, let's just punt: use the minimum linelength reported by
3682+ # all of the supported platforms: 8192 (on NT/2K/XP).
3683+ lt_cv_sys_max_cmd_len=8192;
3684+ ;;
3685+
3686+ amigaos*)
3687+ # On AmigaOS with pdksh, this test takes hours, literally.
3688+ # So we just punt and use a minimum line length of 8192.
3689+ lt_cv_sys_max_cmd_len=8192;
3690+ ;;
3691+
3692+ netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
3693+ # This has been around since 386BSD, at least. Likely further.
3694+ if test -x /sbin/sysctl; then
3695+ lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
3696+ elif test -x /usr/sbin/sysctl; then
3697+ lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
3698+ else
3699+ lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
3700+ fi
3701+ # And add a safety zone
3702+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
3703+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
3704+ ;;
3705+
3706+ interix*)
3707+ # We know the value 262144 and hardcode it with a safety zone (like BSD)
3708+ lt_cv_sys_max_cmd_len=196608
3709+ ;;
3710+
3711+ osf*)
3712+ # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
3713+ # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
3714+ # nice to cause kernel panics so lets avoid the loop below.
3715+ # First set a reasonable default.
3716+ lt_cv_sys_max_cmd_len=16384
3717+ #
3718+ if test -x /sbin/sysconfig; then
3719+ case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
3720+ *1*) lt_cv_sys_max_cmd_len=-1 ;;
3721+ esac
3722+ fi
3723+ ;;
3724+ sco3.2v5*)
3725+ lt_cv_sys_max_cmd_len=102400
3726+ ;;
3727+ sysv5* | sco5v6* | sysv4.2uw2*)
3728+ kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
3729+ if test -n "$kargmax"; then
3730+ lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
3731+ else
3732+ lt_cv_sys_max_cmd_len=32768
3733+ fi
3734+ ;;
3735+ *)
3736+ lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
3737+ if test -n "$lt_cv_sys_max_cmd_len"; then
3738+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
3739+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
3740+ else
3741+ # Make teststring a little bigger before we do anything with it.
3742+ # a 1K string should be a reasonable start.
3743+ for i in 1 2 3 4 5 6 7 8 ; do
3744+ teststring=$teststring$teststring
3745+ done
3746+ SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
3747+ # If test is not a shell built-in, we'll probably end up computing a
3748+ # maximum length that is only half of the actual maximum length, but
3749+ # we can't tell.
3750+ while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
3751+ = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
3752+ test $i != 17 # 1/2 MB should be enough
3753+ do
3754+ i=`expr $i + 1`
3755+ teststring=$teststring$teststring
3756+ done
3757+ # Only check the string length outside the loop.
3758+ lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
3759+ teststring=
3760+ # Add a significant safety factor because C++ compilers can tack on
3761+ # massive amounts of additional arguments before passing them to the
3762+ # linker. It appears as though 1/2 is a usable value.
3763+ lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
3764+ fi
3765+ ;;
3766+ esac
3767+])
3768+if test -n $lt_cv_sys_max_cmd_len ; then
3769+ AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
3770+else
3771+ AC_MSG_RESULT(none)
3772+fi
3773+max_cmd_len=$lt_cv_sys_max_cmd_len
3774+_LT_DECL([], [max_cmd_len], [0],
3775+ [What is the maximum length of a command?])
3776+])# LT_CMD_MAX_LEN
3777+
3778+# Old name:
3779+AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
3780+dnl aclocal-1.4 backwards compatibility:
3781+dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
3782+
3783+
3784+# _LT_HEADER_DLFCN
3785+# ----------------
3786+m4_defun([_LT_HEADER_DLFCN],
3787+[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
3788+])# _LT_HEADER_DLFCN
3789+
3790+
3791+# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
3792+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
3793+# ----------------------------------------------------------------
3794+m4_defun([_LT_TRY_DLOPEN_SELF],
3795+[m4_require([_LT_HEADER_DLFCN])dnl
3796+if test "$cross_compiling" = yes; then :
3797+ [$4]
3798+else
3799+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
3800+ lt_status=$lt_dlunknown
3801+ cat > conftest.$ac_ext <<_LT_EOF
3802+[#line __oline__ "configure"
3803+#include "confdefs.h"
3804+
3805+#if HAVE_DLFCN_H
3806+#include <dlfcn.h>
3807+#endif
3808+
3809+#include <stdio.h>
3810+
3811+#ifdef RTLD_GLOBAL
3812+# define LT_DLGLOBAL RTLD_GLOBAL
3813+#else
3814+# ifdef DL_GLOBAL
3815+# define LT_DLGLOBAL DL_GLOBAL
3816+# else
3817+# define LT_DLGLOBAL 0
3818+# endif
3819+#endif
3820+
3821+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
3822+ find out it does not work in some platform. */
3823+#ifndef LT_DLLAZY_OR_NOW
3824+# ifdef RTLD_LAZY
3825+# define LT_DLLAZY_OR_NOW RTLD_LAZY
3826+# else
3827+# ifdef DL_LAZY
3828+# define LT_DLLAZY_OR_NOW DL_LAZY
3829+# else
3830+# ifdef RTLD_NOW
3831+# define LT_DLLAZY_OR_NOW RTLD_NOW
3832+# else
3833+# ifdef DL_NOW
3834+# define LT_DLLAZY_OR_NOW DL_NOW
3835+# else
3836+# define LT_DLLAZY_OR_NOW 0
3837+# endif
3838+# endif
3839+# endif
3840+# endif
3841+#endif
3842+
3843+void fnord() { int i=42;}
3844+int main ()
3845+{
3846+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
3847+ int status = $lt_dlunknown;
3848+
3849+ if (self)
3850+ {
3851+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
3852+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
3853+ /* dlclose (self); */
3854+ }
3855+ else
3856+ puts (dlerror ());
3857+
3858+ return status;
3859+}]
3860+_LT_EOF
3861+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
3862+ (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
3863+ lt_status=$?
3864+ case x$lt_status in
3865+ x$lt_dlno_uscore) $1 ;;
3866+ x$lt_dlneed_uscore) $2 ;;
3867+ x$lt_dlunknown|x*) $3 ;;
3868+ esac
3869+ else :
3870+ # compilation failed
3871+ $3
3872+ fi
3873+fi
3874+rm -fr conftest*
3875+])# _LT_TRY_DLOPEN_SELF
3876+
3877+
3878+# LT_SYS_DLOPEN_SELF
3879+# ------------------
3880+AC_DEFUN([LT_SYS_DLOPEN_SELF],
3881+[m4_require([_LT_HEADER_DLFCN])dnl
3882+if test "x$enable_dlopen" != xyes; then
3883+ enable_dlopen=unknown
3884+ enable_dlopen_self=unknown
3885+ enable_dlopen_self_static=unknown
3886+else
3887+ lt_cv_dlopen=no
3888+ lt_cv_dlopen_libs=
3889+
3890+ case $host_os in
3891+ beos*)
3892+ lt_cv_dlopen="load_add_on"
3893+ lt_cv_dlopen_libs=
3894+ lt_cv_dlopen_self=yes
3895+ ;;
3896+
3897+ mingw* | pw32* | cegcc*)
3898+ lt_cv_dlopen="LoadLibrary"
3899+ lt_cv_dlopen_libs=
3900+ ;;
3901+
3902+ cygwin*)
3903+ lt_cv_dlopen="dlopen"
3904+ lt_cv_dlopen_libs=
3905+ ;;
3906+
3907+ darwin*)
3908+ # if libdl is installed we need to link against it
3909+ AC_CHECK_LIB([dl], [dlopen],
3910+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
3911+ lt_cv_dlopen="dyld"
3912+ lt_cv_dlopen_libs=
3913+ lt_cv_dlopen_self=yes
3914+ ])
3915+ ;;
3916+
3917+ *)
3918+ AC_CHECK_FUNC([shl_load],
3919+ [lt_cv_dlopen="shl_load"],
3920+ [AC_CHECK_LIB([dld], [shl_load],
3921+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
3922+ [AC_CHECK_FUNC([dlopen],
3923+ [lt_cv_dlopen="dlopen"],
3924+ [AC_CHECK_LIB([dl], [dlopen],
3925+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
3926+ [AC_CHECK_LIB([svld], [dlopen],
3927+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
3928+ [AC_CHECK_LIB([dld], [dld_link],
3929+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
3930+ ])
3931+ ])
3932+ ])
3933+ ])
3934+ ])
3935+ ;;
3936+ esac
3937+
3938+ if test "x$lt_cv_dlopen" != xno; then
3939+ enable_dlopen=yes
3940+ else
3941+ enable_dlopen=no
3942+ fi
3943+
3944+ case $lt_cv_dlopen in
3945+ dlopen)
3946+ save_CPPFLAGS="$CPPFLAGS"
3947+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
3948+
3949+ save_LDFLAGS="$LDFLAGS"
3950+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
3951+
3952+ save_LIBS="$LIBS"
3953+ LIBS="$lt_cv_dlopen_libs $LIBS"
3954+
3955+ AC_CACHE_CHECK([whether a program can dlopen itself],
3956+ lt_cv_dlopen_self, [dnl
3957+ _LT_TRY_DLOPEN_SELF(
3958+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
3959+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
3960+ ])
3961+
3962+ if test "x$lt_cv_dlopen_self" = xyes; then
3963+ wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
3964+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
3965+ lt_cv_dlopen_self_static, [dnl
3966+ _LT_TRY_DLOPEN_SELF(
3967+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
3968+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
3969+ ])
3970+ fi
3971+
3972+ CPPFLAGS="$save_CPPFLAGS"
3973+ LDFLAGS="$save_LDFLAGS"
3974+ LIBS="$save_LIBS"
3975+ ;;
3976+ esac
3977+
3978+ case $lt_cv_dlopen_self in
3979+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
3980+ *) enable_dlopen_self=unknown ;;
3981+ esac
3982+
3983+ case $lt_cv_dlopen_self_static in
3984+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
3985+ *) enable_dlopen_self_static=unknown ;;
3986+ esac
3987+fi
3988+_LT_DECL([dlopen_support], [enable_dlopen], [0],
3989+ [Whether dlopen is supported])
3990+_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
3991+ [Whether dlopen of programs is supported])
3992+_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
3993+ [Whether dlopen of statically linked programs is supported])
3994+])# LT_SYS_DLOPEN_SELF
3995+
3996+# Old name:
3997+AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
3998+dnl aclocal-1.4 backwards compatibility:
3999+dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
4000+
4001+
4002+# _LT_COMPILER_C_O([TAGNAME])
4003+# ---------------------------
4004+# Check to see if options -c and -o are simultaneously supported by compiler.
4005+# This macro does not hard code the compiler like AC_PROG_CC_C_O.
4006+m4_defun([_LT_COMPILER_C_O],
4007+[m4_require([_LT_DECL_SED])dnl
4008+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4009+m4_require([_LT_TAG_COMPILER])dnl
4010+AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
4011+ [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
4012+ [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
4013+ $RM -r conftest 2>/dev/null
4014+ mkdir conftest
4015+ cd conftest
4016+ mkdir out
4017+ echo "$lt_simple_compile_test_code" > conftest.$ac_ext
4018+
4019+ lt_compiler_flag="-o out/conftest2.$ac_objext"
4020+ # Insert the option either (1) after the last *FLAGS variable, or
4021+ # (2) before a word containing "conftest.", or (3) at the end.
4022+ # Note that $ac_compile itself does not contain backslashes and begins
4023+ # with a dollar sign (not a hyphen), so the echo should work correctly.
4024+ lt_compile=`echo "$ac_compile" | $SED \
4025+ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
4026+ -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
4027+ -e 's:$: $lt_compiler_flag:'`
4028+ (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
4029+ (eval "$lt_compile" 2>out/conftest.err)
4030+ ac_status=$?
4031+ cat out/conftest.err >&AS_MESSAGE_LOG_FD
4032+ echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
4033+ if (exit $ac_status) && test -s out/conftest2.$ac_objext
4034+ then
4035+ # The compiler can only warn and ignore the option if not recognized
4036+ # So say no if there are warnings
4037+ $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
4038+ $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
4039+ if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
4040+ _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
4041+ fi
4042+ fi
4043+ chmod u+w . 2>&AS_MESSAGE_LOG_FD
4044+ $RM conftest*
4045+ # SGI C++ compiler will create directory out/ii_files/ for
4046+ # template instantiation
4047+ test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
4048+ $RM out/* && rmdir out
4049+ cd ..
4050+ $RM -r conftest
4051+ $RM conftest*
4052+])
4053+_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
4054+ [Does compiler simultaneously support -c and -o options?])
4055+])# _LT_COMPILER_C_O
4056+
4057+
4058+# _LT_COMPILER_FILE_LOCKS([TAGNAME])
4059+# ----------------------------------
4060+# Check to see if we can do hard links to lock some files if needed
4061+m4_defun([_LT_COMPILER_FILE_LOCKS],
4062+[m4_require([_LT_ENABLE_LOCK])dnl
4063+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4064+_LT_COMPILER_C_O([$1])
4065+
4066+hard_links="nottested"
4067+if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
4068+ # do not overwrite the value of need_locks provided by the user
4069+ AC_MSG_CHECKING([if we can lock with hard links])
4070+ hard_links=yes
4071+ $RM conftest*
4072+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
4073+ touch conftest.a
4074+ ln conftest.a conftest.b 2>&5 || hard_links=no
4075+ ln conftest.a conftest.b 2>/dev/null && hard_links=no
4076+ AC_MSG_RESULT([$hard_links])
4077+ if test "$hard_links" = no; then
4078+ AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
4079+ need_locks=warn
4080+ fi
4081+else
4082+ need_locks=no
4083+fi
4084+_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
4085+])# _LT_COMPILER_FILE_LOCKS
4086+
4087+
4088+# _LT_CHECK_OBJDIR
4089+# ----------------
4090+m4_defun([_LT_CHECK_OBJDIR],
4091+[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
4092+[rm -f .libs 2>/dev/null
4093+mkdir .libs 2>/dev/null
4094+if test -d .libs; then
4095+ lt_cv_objdir=.libs
4096+else
4097+ # MS-DOS does not allow filenames that begin with a dot.
4098+ lt_cv_objdir=_libs
4099+fi
4100+rmdir .libs 2>/dev/null])
4101+objdir=$lt_cv_objdir
4102+_LT_DECL([], [objdir], [0],
4103+ [The name of the directory that contains temporary libtool files])dnl
4104+m4_pattern_allow([LT_OBJDIR])dnl
4105+AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
4106+ [Define to the sub-directory in which libtool stores uninstalled libraries.])
4107+])# _LT_CHECK_OBJDIR
4108+
4109+
4110+# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
4111+# --------------------------------------
4112+# Check hardcoding attributes.
4113+m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
4114+[AC_MSG_CHECKING([how to hardcode library paths into programs])
4115+_LT_TAGVAR(hardcode_action, $1)=
4116+if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
4117+ test -n "$_LT_TAGVAR(runpath_var, $1)" ||
4118+ test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
4119+
4120+ # We can hardcode non-existent directories.
4121+ if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
4122+ # If the only mechanism to avoid hardcoding is shlibpath_var, we
4123+ # have to relink, otherwise we might link with an installed library
4124+ # when we should be linking with a yet-to-be-installed one
4125+ ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
4126+ test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
4127+ # Linking always hardcodes the temporary library directory.
4128+ _LT_TAGVAR(hardcode_action, $1)=relink
4129+ else
4130+ # We can link without hardcoding, and we can hardcode nonexisting dirs.
4131+ _LT_TAGVAR(hardcode_action, $1)=immediate
4132+ fi
4133+else
4134+ # We cannot hardcode anything, or else we can only hardcode existing
4135+ # directories.
4136+ _LT_TAGVAR(hardcode_action, $1)=unsupported
4137+fi
4138+AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
4139+
4140+if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
4141+ test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
4142+ # Fast installation is not supported
4143+ enable_fast_install=no
4144+elif test "$shlibpath_overrides_runpath" = yes ||
4145+ test "$enable_shared" = no; then
4146+ # Fast installation is not necessary
4147+ enable_fast_install=needless
4148+fi
4149+_LT_TAGDECL([], [hardcode_action], [0],
4150+ [How to hardcode a shared library path into an executable])
4151+])# _LT_LINKER_HARDCODE_LIBPATH
4152+
4153+
4154+# _LT_CMD_STRIPLIB
4155+# ----------------
4156+m4_defun([_LT_CMD_STRIPLIB],
4157+[m4_require([_LT_DECL_EGREP])
4158+striplib=
4159+old_striplib=
4160+AC_MSG_CHECKING([whether stripping libraries is possible])
4161+if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
4162+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
4163+ test -z "$striplib" && striplib="$STRIP --strip-unneeded"
4164+ AC_MSG_RESULT([yes])
4165+else
4166+# FIXME - insert some real tests, host_os isn't really good enough
4167+ case $host_os in
4168+ darwin*)
4169+ if test -n "$STRIP" ; then
4170+ striplib="$STRIP -x"
4171+ old_striplib="$STRIP -S"
4172+ AC_MSG_RESULT([yes])
4173+ else
4174+ AC_MSG_RESULT([no])
4175+ fi
4176+ ;;
4177+ *)
4178+ AC_MSG_RESULT([no])
4179+ ;;
4180+ esac
4181+fi
4182+_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
4183+_LT_DECL([], [striplib], [1])
4184+])# _LT_CMD_STRIPLIB
4185+
4186+
4187+# _LT_SYS_DYNAMIC_LINKER([TAG])
4188+# -----------------------------
4189+# PORTME Fill in your ld.so characteristics
4190+m4_defun([_LT_SYS_DYNAMIC_LINKER],
4191+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
4192+m4_require([_LT_DECL_EGREP])dnl
4193+m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4194+m4_require([_LT_DECL_OBJDUMP])dnl
4195+m4_require([_LT_DECL_SED])dnl
4196+AC_MSG_CHECKING([dynamic linker characteristics])
4197+m4_if([$1],
4198+ [], [
4199+if test "$GCC" = yes; then
4200+ case $host_os in
4201+ darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
4202+ *) lt_awk_arg="/^libraries:/" ;;
4203+ esac
4204+ lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
4205+ if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
4206+ # if the path contains ";" then we assume it to be the separator
4207+ # otherwise default to the standard path separator (i.e. ":") - it is
4208+ # assumed that no part of a normal pathname contains ";" but that should
4209+ # okay in the real world where ";" in dirpaths is itself problematic.
4210+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
4211+ else
4212+ lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
4213+ fi
4214+ # Ok, now we have the path, separated by spaces, we can step through it
4215+ # and add multilib dir if necessary.
4216+ lt_tmp_lt_search_path_spec=
4217+ lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
4218+ for lt_sys_path in $lt_search_path_spec; do
4219+ if test -d "$lt_sys_path/$lt_multi_os_dir"; then
4220+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
4221+ else
4222+ test -d "$lt_sys_path" && \
4223+ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
4224+ fi
4225+ done
4226+ lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
4227+BEGIN {RS=" "; FS="/|\n";} {
4228+ lt_foo="";
4229+ lt_count=0;
4230+ for (lt_i = NF; lt_i > 0; lt_i--) {
4231+ if ($lt_i != "" && $lt_i != ".") {
4232+ if ($lt_i == "..") {
4233+ lt_count++;
4234+ } else {
4235+ if (lt_count == 0) {
4236+ lt_foo="/" $lt_i lt_foo;
4237+ } else {
4238+ lt_count--;
4239+ }
4240+ }
4241+ }
4242+ }
4243+ if (lt_foo != "") { lt_freq[[lt_foo]]++; }
4244+ if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
4245+}'`
4246+ sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
4247+else
4248+ sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
4249+fi])
4250+library_names_spec=
4251+libname_spec='lib$name'
4252+soname_spec=
4253+shrext_cmds=".so"
4254+postinstall_cmds=
4255+postuninstall_cmds=
4256+finish_cmds=
4257+finish_eval=
4258+shlibpath_var=
4259+shlibpath_overrides_runpath=unknown
4260+version_type=none
4261+dynamic_linker="$host_os ld.so"
4262+sys_lib_dlsearch_path_spec="/lib /usr/lib"
4263+need_lib_prefix=unknown
4264+hardcode_into_libs=no
4265+
4266+# when you set need_version to no, make sure it does not cause -set_version
4267+# flags to be left without arguments
4268+need_version=unknown
4269+
4270+case $host_os in
4271+aix3*)
4272+ version_type=linux
4273+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
4274+ shlibpath_var=LIBPATH
4275+
4276+ # AIX 3 has no versioning support, so we append a major version to the name.
4277+ soname_spec='${libname}${release}${shared_ext}$major'
4278+ ;;
4279+
4280+aix[[4-9]]*)
4281+ version_type=linux
4282+ need_lib_prefix=no
4283+ need_version=no
4284+ hardcode_into_libs=yes
4285+ if test "$host_cpu" = ia64; then
4286+ # AIX 5 supports IA64
4287+ library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
4288+ shlibpath_var=LD_LIBRARY_PATH
4289+ else
4290+ # With GCC up to 2.95.x, collect2 would create an import file
4291+ # for dependence libraries. The import file would start with
4292+ # the line `#! .'. This would cause the generated library to
4293+ # depend on `.', always an invalid library. This was fixed in
4294+ # development snapshots of GCC prior to 3.0.
4295+ case $host_os in
4296+ aix4 | aix4.[[01]] | aix4.[[01]].*)
4297+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
4298+ echo ' yes '
4299+ echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
4300+ :
4301+ else
4302+ can_build_shared=no
4303+ fi
4304+ ;;
4305+ esac
4306+ # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
4307+ # soname into executable. Probably we can add versioning support to
4308+ # collect2, so additional links can be useful in future.
4309+ if test "$aix_use_runtimelinking" = yes; then
4310+ # If using run time linking (on AIX 4.2 or later) use lib<name>.so
4311+ # instead of lib<name>.a to let people know that these are not
4312+ # typical AIX shared libraries.
4313+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4314+ else
4315+ # We preserve .a as extension for shared libraries through AIX4.2
4316+ # and later when we are not doing run time linking.
4317+ library_names_spec='${libname}${release}.a $libname.a'
4318+ soname_spec='${libname}${release}${shared_ext}$major'
4319+ fi
4320+ shlibpath_var=LIBPATH
4321+ fi
4322+ ;;
4323+
4324+amigaos*)
4325+ case $host_cpu in
4326+ powerpc)
4327+ # Since July 2007 AmigaOS4 officially supports .so libraries.
4328+ # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
4329+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4330+ ;;
4331+ m68k)
4332+ library_names_spec='$libname.ixlibrary $libname.a'
4333+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
4334+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
4335+ ;;
4336+ esac
4337+ ;;
4338+
4339+beos*)
4340+ library_names_spec='${libname}${shared_ext}'
4341+ dynamic_linker="$host_os ld.so"
4342+ shlibpath_var=LIBRARY_PATH
4343+ ;;
4344+
4345+bsdi[[45]]*)
4346+ version_type=linux
4347+ need_version=no
4348+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4349+ soname_spec='${libname}${release}${shared_ext}$major'
4350+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
4351+ shlibpath_var=LD_LIBRARY_PATH
4352+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
4353+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
4354+ # the default ld.so.conf also contains /usr/contrib/lib and
4355+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
4356+ # libtool to hard-code these into programs
4357+ ;;
4358+
4359+cygwin* | mingw* | pw32* | cegcc*)
4360+ version_type=windows
4361+ shrext_cmds=".dll"
4362+ need_version=no
4363+ need_lib_prefix=no
4364+
4365+ case $GCC,$host_os in
4366+ yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
4367+ library_names_spec='$libname.dll.a'
4368+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
4369+ postinstall_cmds='base_file=`basename \${file}`~
4370+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
4371+ dldir=$destdir/`dirname \$dlpath`~
4372+ test -d \$dldir || mkdir -p \$dldir~
4373+ $install_prog $dir/$dlname \$dldir/$dlname~
4374+ chmod a+x \$dldir/$dlname~
4375+ if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
4376+ eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
4377+ fi'
4378+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
4379+ dlpath=$dir/\$dldll~
4380+ $RM \$dlpath'
4381+ shlibpath_overrides_runpath=yes
4382+
4383+ case $host_os in
4384+ cygwin*)
4385+ # Cygwin DLLs use 'cyg' prefix rather than 'lib'
4386+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
4387+ sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
4388+ ;;
4389+ mingw* | cegcc*)
4390+ # MinGW DLLs use traditional 'lib' prefix
4391+ soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
4392+ sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
4393+ if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
4394+ # It is most probably a Windows format PATH printed by
4395+ # mingw gcc, but we are running on Cygwin. Gcc prints its search
4396+ # path with ; separators, and with drive letters. We can handle the
4397+ # drive letters (cygwin fileutils understands them), so leave them,
4398+ # especially as we might pass files found there to a mingw objdump,
4399+ # which wouldn't understand a cygwinified path. Ahh.
4400+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
4401+ else
4402+ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
4403+ fi
4404+ ;;
4405+ pw32*)
4406+ # pw32 DLLs use 'pw' prefix rather than 'lib'
4407+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
4408+ ;;
4409+ esac
4410+ ;;
4411+
4412+ *)
4413+ library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
4414+ ;;
4415+ esac
4416+ dynamic_linker='Win32 ld.exe'
4417+ # FIXME: first we should search . and the directory the executable is in
4418+ shlibpath_var=PATH
4419+ ;;
4420+
4421+darwin* | rhapsody*)
4422+ dynamic_linker="$host_os dyld"
4423+ version_type=darwin
4424+ need_lib_prefix=no
4425+ need_version=no
4426+ library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
4427+ soname_spec='${libname}${release}${major}$shared_ext'
4428+ shlibpath_overrides_runpath=yes
4429+ shlibpath_var=DYLD_LIBRARY_PATH
4430+ shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
4431+m4_if([$1], [],[
4432+ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
4433+ sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
4434+ ;;
4435+
4436+dgux*)
4437+ version_type=linux
4438+ need_lib_prefix=no
4439+ need_version=no
4440+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
4441+ soname_spec='${libname}${release}${shared_ext}$major'
4442+ shlibpath_var=LD_LIBRARY_PATH
4443+ ;;
4444+
4445+freebsd1*)
4446+ dynamic_linker=no
4447+ ;;
4448+
4449+freebsd* | dragonfly*)
4450+ # DragonFly does not have aout. When/if they implement a new
4451+ # versioning mechanism, adjust this.
4452+ if test -x /usr/bin/objformat; then
4453+ objformat=`/usr/bin/objformat`
4454+ else
4455+ case $host_os in
4456+ freebsd[[123]]*) objformat=aout ;;
4457+ *) objformat=elf ;;
4458+ esac
4459+ fi
4460+ version_type=freebsd-$objformat
4461+ case $version_type in
4462+ freebsd-elf*)
4463+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
4464+ need_version=no
4465+ need_lib_prefix=no
4466+ ;;
4467+ freebsd-*)
4468+ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
4469+ need_version=yes
4470+ ;;
4471+ esac
4472+ shlibpath_var=LD_LIBRARY_PATH
4473+ case $host_os in
4474+ freebsd2*)
4475+ shlibpath_overrides_runpath=yes
4476+ ;;
4477+ freebsd3.[[01]]* | freebsdelf3.[[01]]*)
4478+ shlibpath_overrides_runpath=yes
4479+ hardcode_into_libs=yes
4480+ ;;
4481+ freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
4482+ freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
4483+ shlibpath_overrides_runpath=no
4484+ hardcode_into_libs=yes
4485+ ;;
4486+ *) # from 4.6 on, and DragonFly
4487+ shlibpath_overrides_runpath=yes
4488+ hardcode_into_libs=yes
4489+ ;;
4490+ esac
4491+ ;;
4492+
4493+gnu*)
4494+ version_type=linux
4495+ need_lib_prefix=no
4496+ need_version=no
4497+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
4498+ soname_spec='${libname}${release}${shared_ext}$major'
4499+ shlibpath_var=LD_LIBRARY_PATH
4500+ hardcode_into_libs=yes
4501+ ;;
4502+
4503+hpux9* | hpux10* | hpux11*)
4504+ # Give a soname corresponding to the major version so that dld.sl refuses to
4505+ # link against other versions.
4506+ version_type=sunos
4507+ need_lib_prefix=no
4508+ need_version=no
4509+ case $host_cpu in
4510+ ia64*)
4511+ shrext_cmds='.so'
4512+ hardcode_into_libs=yes
4513+ dynamic_linker="$host_os dld.so"
4514+ shlibpath_var=LD_LIBRARY_PATH
4515+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
4516+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4517+ soname_spec='${libname}${release}${shared_ext}$major'
4518+ if test "X$HPUX_IA64_MODE" = X32; then
4519+ sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
4520+ else
4521+ sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
4522+ fi
4523+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
4524+ ;;
4525+ hppa*64*)
4526+ shrext_cmds='.sl'
4527+ hardcode_into_libs=yes
4528+ dynamic_linker="$host_os dld.sl"
4529+ shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
4530+ shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
4531+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4532+ soname_spec='${libname}${release}${shared_ext}$major'
4533+ sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
4534+ sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
4535+ ;;
4536+ *)
4537+ shrext_cmds='.sl'
4538+ dynamic_linker="$host_os dld.sl"
4539+ shlibpath_var=SHLIB_PATH
4540+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
4541+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4542+ soname_spec='${libname}${release}${shared_ext}$major'
4543+ ;;
4544+ esac
4545+ # HP-UX runs *really* slowly unless shared libraries are mode 555.
4546+ postinstall_cmds='chmod 555 $lib'
4547+ ;;
4548+
4549+interix[[3-9]]*)
4550+ version_type=linux
4551+ need_lib_prefix=no
4552+ need_version=no
4553+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
4554+ soname_spec='${libname}${release}${shared_ext}$major'
4555+ dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
4556+ shlibpath_var=LD_LIBRARY_PATH
4557+ shlibpath_overrides_runpath=no
4558+ hardcode_into_libs=yes
4559+ ;;
4560+
4561+irix5* | irix6* | nonstopux*)
4562+ case $host_os in
4563+ nonstopux*) version_type=nonstopux ;;
4564+ *)
4565+ if test "$lt_cv_prog_gnu_ld" = yes; then
4566+ version_type=linux
4567+ else
4568+ version_type=irix
4569+ fi ;;
4570+ esac
4571+ need_lib_prefix=no
4572+ need_version=no
4573+ soname_spec='${libname}${release}${shared_ext}$major'
4574+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
4575+ case $host_os in
4576+ irix5* | nonstopux*)
4577+ libsuff= shlibsuff=
4578+ ;;
4579+ *)
4580+ case $LD in # libtool.m4 will add one of these switches to LD
4581+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
4582+ libsuff= shlibsuff= libmagic=32-bit;;
4583+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
4584+ libsuff=32 shlibsuff=N32 libmagic=N32;;
4585+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
4586+ libsuff=64 shlibsuff=64 libmagic=64-bit;;
4587+ *) libsuff= shlibsuff= libmagic=never-match;;
4588+ esac
4589+ ;;
4590+ esac
4591+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
4592+ shlibpath_overrides_runpath=no
4593+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
4594+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
4595+ hardcode_into_libs=yes
4596+ ;;
4597+
4598+# No shared lib support for Linux oldld, aout, or coff.
4599+linux*oldld* | linux*aout* | linux*coff*)
4600+ dynamic_linker=no
4601+ ;;
4602+
4603+# This must be Linux ELF.
4604+linux* | k*bsd*-gnu | kopensolaris*-gnu)
4605+ version_type=linux
4606+ need_lib_prefix=no
4607+ need_version=no
4608+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4609+ soname_spec='${libname}${release}${shared_ext}$major'
4610+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
4611+ shlibpath_var=LD_LIBRARY_PATH
4612+ shlibpath_overrides_runpath=no
4613+ # Some binutils ld are patched to set DT_RUNPATH
4614+ save_LDFLAGS=$LDFLAGS
4615+ save_libdir=$libdir
4616+ eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
4617+ LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
4618+ AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
4619+ [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
4620+ [shlibpath_overrides_runpath=yes])])
4621+ LDFLAGS=$save_LDFLAGS
4622+ libdir=$save_libdir
4623+
4624+ # This implies no fast_install, which is unacceptable.
4625+ # Some rework will be needed to allow for fast_install
4626+ # before this can be enabled.
4627+ hardcode_into_libs=yes
4628+
4629+ # Append ld.so.conf contents to the search path
4630+ if test -f /etc/ld.so.conf; then
4631+ lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
4632+ sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
4633+ fi
4634+
4635+ # We used to test for /lib/ld.so.1 and disable shared libraries on
4636+ # powerpc, because MkLinux only supported shared libraries with the
4637+ # GNU dynamic linker. Since this was broken with cross compilers,
4638+ # most powerpc-linux boxes support dynamic linking these days and
4639+ # people can always --disable-shared, the test was removed, and we
4640+ # assume the GNU/Linux dynamic linker is in use.
4641+ dynamic_linker='GNU/Linux ld.so'
4642+ ;;
4643+
4644+netbsdelf*-gnu)
4645+ version_type=linux
4646+ need_lib_prefix=no
4647+ need_version=no
4648+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
4649+ soname_spec='${libname}${release}${shared_ext}$major'
4650+ shlibpath_var=LD_LIBRARY_PATH
4651+ shlibpath_overrides_runpath=no
4652+ hardcode_into_libs=yes
4653+ dynamic_linker='NetBSD ld.elf_so'
4654+ ;;
4655+
4656+netbsd*)
4657+ version_type=sunos
4658+ need_lib_prefix=no
4659+ need_version=no
4660+ if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4661+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
4662+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
4663+ dynamic_linker='NetBSD (a.out) ld.so'
4664+ else
4665+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
4666+ soname_spec='${libname}${release}${shared_ext}$major'
4667+ dynamic_linker='NetBSD ld.elf_so'
4668+ fi
4669+ shlibpath_var=LD_LIBRARY_PATH
4670+ shlibpath_overrides_runpath=yes
4671+ hardcode_into_libs=yes
4672+ ;;
4673+
4674+newsos6)
4675+ version_type=linux
4676+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4677+ shlibpath_var=LD_LIBRARY_PATH
4678+ shlibpath_overrides_runpath=yes
4679+ ;;
4680+
4681+*nto* | *qnx*)
4682+ version_type=qnx
4683+ need_lib_prefix=no
4684+ need_version=no
4685+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4686+ soname_spec='${libname}${release}${shared_ext}$major'
4687+ shlibpath_var=LD_LIBRARY_PATH
4688+ shlibpath_overrides_runpath=no
4689+ hardcode_into_libs=yes
4690+ dynamic_linker='ldqnx.so'
4691+ ;;
4692+
4693+openbsd*)
4694+ version_type=sunos
4695+ sys_lib_dlsearch_path_spec="/usr/lib"
4696+ need_lib_prefix=no
4697+ # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
4698+ case $host_os in
4699+ openbsd3.3 | openbsd3.3.*) need_version=yes ;;
4700+ *) need_version=no ;;
4701+ esac
4702+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
4703+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
4704+ shlibpath_var=LD_LIBRARY_PATH
4705+ if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
4706+ case $host_os in
4707+ openbsd2.[[89]] | openbsd2.[[89]].*)
4708+ shlibpath_overrides_runpath=no
4709+ ;;
4710+ *)
4711+ shlibpath_overrides_runpath=yes
4712+ ;;
4713+ esac
4714+ else
4715+ shlibpath_overrides_runpath=yes
4716+ fi
4717+ ;;
4718+
4719+os2*)
4720+ libname_spec='$name'
4721+ shrext_cmds=".dll"
4722+ need_lib_prefix=no
4723+ library_names_spec='$libname${shared_ext} $libname.a'
4724+ dynamic_linker='OS/2 ld.exe'
4725+ shlibpath_var=LIBPATH
4726+ ;;
4727+
4728+osf3* | osf4* | osf5*)
4729+ version_type=osf
4730+ need_lib_prefix=no
4731+ need_version=no
4732+ soname_spec='${libname}${release}${shared_ext}$major'
4733+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4734+ shlibpath_var=LD_LIBRARY_PATH
4735+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
4736+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
4737+ ;;
4738+
4739+rdos*)
4740+ dynamic_linker=no
4741+ ;;
4742+
4743+solaris*)
4744+ version_type=linux
4745+ need_lib_prefix=no
4746+ need_version=no
4747+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4748+ soname_spec='${libname}${release}${shared_ext}$major'
4749+ shlibpath_var=LD_LIBRARY_PATH
4750+ shlibpath_overrides_runpath=yes
4751+ hardcode_into_libs=yes
4752+ # ldd complains unless libraries are executable
4753+ postinstall_cmds='chmod +x $lib'
4754+ ;;
4755+
4756+sunos4*)
4757+ version_type=sunos
4758+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
4759+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
4760+ shlibpath_var=LD_LIBRARY_PATH
4761+ shlibpath_overrides_runpath=yes
4762+ if test "$with_gnu_ld" = yes; then
4763+ need_lib_prefix=no
4764+ fi
4765+ need_version=yes
4766+ ;;
4767+
4768+sysv4 | sysv4.3*)
4769+ version_type=linux
4770+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4771+ soname_spec='${libname}${release}${shared_ext}$major'
4772+ shlibpath_var=LD_LIBRARY_PATH
4773+ case $host_vendor in
4774+ sni)
4775+ shlibpath_overrides_runpath=no
4776+ need_lib_prefix=no
4777+ runpath_var=LD_RUN_PATH
4778+ ;;
4779+ siemens)
4780+ need_lib_prefix=no
4781+ ;;
4782+ motorola)
4783+ need_lib_prefix=no
4784+ need_version=no
4785+ shlibpath_overrides_runpath=no
4786+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
4787+ ;;
4788+ esac
4789+ ;;
4790+
4791+sysv4*MP*)
4792+ if test -d /usr/nec ;then
4793+ version_type=linux
4794+ library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
4795+ soname_spec='$libname${shared_ext}.$major'
4796+ shlibpath_var=LD_LIBRARY_PATH
4797+ fi
4798+ ;;
4799+
4800+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
4801+ version_type=freebsd-elf
4802+ need_lib_prefix=no
4803+ need_version=no
4804+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
4805+ soname_spec='${libname}${release}${shared_ext}$major'
4806+ shlibpath_var=LD_LIBRARY_PATH
4807+ shlibpath_overrides_runpath=yes
4808+ hardcode_into_libs=yes
4809+ if test "$with_gnu_ld" = yes; then
4810+ sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
4811+ else
4812+ sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
4813+ case $host_os in
4814+ sco3.2v5*)
4815+ sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
4816+ ;;
4817+ esac
4818+ fi
4819+ sys_lib_dlsearch_path_spec='/usr/lib'
4820+ ;;
4821+
4822+tpf*)
4823+ # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
4824+ version_type=linux
4825+ need_lib_prefix=no
4826+ need_version=no
4827+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4828+ shlibpath_var=LD_LIBRARY_PATH
4829+ shlibpath_overrides_runpath=no
4830+ hardcode_into_libs=yes
4831+ ;;
4832+
4833+uts4*)
4834+ version_type=linux
4835+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4836+ soname_spec='${libname}${release}${shared_ext}$major'
4837+ shlibpath_var=LD_LIBRARY_PATH
4838+ ;;
4839+
4840+*)
4841+ dynamic_linker=no
4842+ ;;
4843+esac
4844+AC_MSG_RESULT([$dynamic_linker])
4845+test "$dynamic_linker" = no && can_build_shared=no
4846+
4847+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
4848+if test "$GCC" = yes; then
4849+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
4850+fi
4851+
4852+if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
4853+ sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
4854+fi
4855+if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
4856+ sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
4857+fi
4858+
4859+_LT_DECL([], [variables_saved_for_relink], [1],
4860+ [Variables whose values should be saved in libtool wrapper scripts and
4861+ restored at link time])
4862+_LT_DECL([], [need_lib_prefix], [0],
4863+ [Do we need the "lib" prefix for modules?])
4864+_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
4865+_LT_DECL([], [version_type], [0], [Library versioning type])
4866+_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
4867+_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
4868+_LT_DECL([], [shlibpath_overrides_runpath], [0],
4869+ [Is shlibpath searched before the hard-coded library search path?])
4870+_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
4871+_LT_DECL([], [library_names_spec], [1],
4872+ [[List of archive names. First name is the real one, the rest are links.
4873+ The last name is the one that the linker finds with -lNAME]])
4874+_LT_DECL([], [soname_spec], [1],
4875+ [[The coded name of the library, if different from the real name]])
4876+_LT_DECL([], [postinstall_cmds], [2],
4877+ [Command to use after installation of a shared archive])
4878+_LT_DECL([], [postuninstall_cmds], [2],
4879+ [Command to use after uninstallation of a shared archive])
4880+_LT_DECL([], [finish_cmds], [2],
4881+ [Commands used to finish a libtool library installation in a directory])
4882+_LT_DECL([], [finish_eval], [1],
4883+ [[As "finish_cmds", except a single script fragment to be evaled but
4884+ not shown]])
4885+_LT_DECL([], [hardcode_into_libs], [0],
4886+ [Whether we should hardcode library paths into libraries])
4887+_LT_DECL([], [sys_lib_search_path_spec], [2],
4888+ [Compile-time system search path for libraries])
4889+_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
4890+ [Run-time system search path for libraries])
4891+])# _LT_SYS_DYNAMIC_LINKER
4892+
4893+
4894+# _LT_PATH_TOOL_PREFIX(TOOL)
4895+# --------------------------
4896+# find a file program which can recognize shared library
4897+AC_DEFUN([_LT_PATH_TOOL_PREFIX],
4898+[m4_require([_LT_DECL_EGREP])dnl
4899+AC_MSG_CHECKING([for $1])
4900+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
4901+[case $MAGIC_CMD in
4902+[[\\/*] | ?:[\\/]*])
4903+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
4904+ ;;
4905+*)
4906+ lt_save_MAGIC_CMD="$MAGIC_CMD"
4907+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
4908+dnl $ac_dummy forces splitting on constant user-supplied paths.
4909+dnl POSIX.2 word splitting is done only on the output of word expansions,
4910+dnl not every word. This closes a longstanding sh security hole.
4911+ ac_dummy="m4_if([$2], , $PATH, [$2])"
4912+ for ac_dir in $ac_dummy; do
4913+ IFS="$lt_save_ifs"
4914+ test -z "$ac_dir" && ac_dir=.
4915+ if test -f $ac_dir/$1; then
4916+ lt_cv_path_MAGIC_CMD="$ac_dir/$1"
4917+ if test -n "$file_magic_test_file"; then
4918+ case $deplibs_check_method in
4919+ "file_magic "*)
4920+ file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
4921+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
4922+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
4923+ $EGREP "$file_magic_regex" > /dev/null; then
4924+ :
4925+ else
4926+ cat <<_LT_EOF 1>&2
4927+
4928+*** Warning: the command libtool uses to detect shared libraries,
4929+*** $file_magic_cmd, produces output that libtool cannot recognize.
4930+*** The result is that libtool may fail to recognize shared libraries
4931+*** as such. This will affect the creation of libtool libraries that
4932+*** depend on shared libraries, but programs linked with such libtool
4933+*** libraries will work regardless of this problem. Nevertheless, you
4934+*** may want to report the problem to your system manager and/or to
4935+*** bug-libtool@gnu.org
4936+
4937+_LT_EOF
4938+ fi ;;
4939+ esac
4940+ fi
4941+ break
4942+ fi
4943+ done
4944+ IFS="$lt_save_ifs"
4945+ MAGIC_CMD="$lt_save_MAGIC_CMD"
4946+ ;;
4947+esac])
4948+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
4949+if test -n "$MAGIC_CMD"; then
4950+ AC_MSG_RESULT($MAGIC_CMD)
4951+else
4952+ AC_MSG_RESULT(no)
4953+fi
4954+_LT_DECL([], [MAGIC_CMD], [0],
4955+ [Used to examine libraries when file_magic_cmd begins with "file"])dnl
4956+])# _LT_PATH_TOOL_PREFIX
4957+
4958+# Old name:
4959+AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
4960+dnl aclocal-1.4 backwards compatibility:
4961+dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
4962+
4963+
4964+# _LT_PATH_MAGIC
4965+# --------------
4966+# find a file program which can recognize a shared library
4967+m4_defun([_LT_PATH_MAGIC],
4968+[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
4969+if test -z "$lt_cv_path_MAGIC_CMD"; then
4970+ if test -n "$ac_tool_prefix"; then
4971+ _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
4972+ else
4973+ MAGIC_CMD=:
4974+ fi
4975+fi
4976+])# _LT_PATH_MAGIC
4977+
4978+
4979+# LT_PATH_LD
4980+# ----------
4981+# find the pathname to the GNU or non-GNU linker
4982+AC_DEFUN([LT_PATH_LD],
4983+[AC_REQUIRE([AC_PROG_CC])dnl
4984+AC_REQUIRE([AC_CANONICAL_HOST])dnl
4985+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
4986+m4_require([_LT_DECL_SED])dnl
4987+m4_require([_LT_DECL_EGREP])dnl
4988+
4989+AC_ARG_WITH([gnu-ld],
4990+ [AS_HELP_STRING([--with-gnu-ld],
4991+ [assume the C compiler uses GNU ld @<:@default=no@:>@])],
4992+ [test "$withval" = no || with_gnu_ld=yes],
4993+ [with_gnu_ld=no])dnl
4994+
4995+ac_prog=ld
4996+if test "$GCC" = yes; then
4997+ # Check if gcc -print-prog-name=ld gives a path.
4998+ AC_MSG_CHECKING([for ld used by $CC])
4999+ case $host in
5000+ *-*-mingw*)
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches