Codebase list gimp-plugin-registry / 562fe73
Remove focus-blur. Not compatible with 2.10 Bernd Zeimetz 6 years ago
79 changed file(s) with 0 addition(s) and 29709 deletion(s). Raw diff Collapse all Expand all
+0
-14
debian/patches/focus-blur/g_thread_init_deprecated less more
0 --- a/focus-blur/src/src/gimpplugin.c
1 +++ b/focus-blur/src/src/gimpplugin.c
2 @@ -116,9 +116,11 @@ run (const gchar *name,
3 drawable_ID = param[2].data.d_drawable;
4
5 #ifdef ENABLE_MP
6 +#if !GLIB_CHECK_VERSION (2, 31, 0)
7 if (! g_thread_supported ())
8 g_thread_init (NULL);
9 #endif
10 +#endif
11
12 INIT_I18N ();
13
+0
-170
debian/patches/focus-blur/glib-single-include less more
0 --- a/focus-blur/src/src/aaa.h
1 +++ b/focus-blur/src/src/aaa.h
2 @@ -19,8 +19,7 @@
3 #ifndef __AAA_H__
4 #define __AAA_H__
5
6 -#include <glib/gmacros.h>
7 -#include <glib/gtypes.h>
8 +#include <glib.h>
9
10
11 G_BEGIN_DECLS
12 --- a/focus-blur/src/src/brush.h
13 +++ b/focus-blur/src/src/brush.h
14 @@ -22,7 +22,7 @@
15 #ifndef __FOCUSBLUR_BRUSH_H__
16 #define __FOCUSBLUR_BRUSH_H__
17
18 -#include <glib/gtypes.h>
19 +#include <glib.h>
20 #include "focusblurtypes.h"
21
22 G_BEGIN_DECLS
23 --- a/focus-blur/src/src/depthmap.h
24 +++ b/focus-blur/src/src/depthmap.h
25 @@ -22,7 +22,7 @@
26 #ifndef __FOCUSBLUR_DEPTHMAP_H__
27 #define __FOCUSBLUR_DEPTHMAP_H__
28
29 -#include <glib/gtypes.h>
30 +#include <glib.h>
31
32 #include "focusblurtypes.h"
33 #include "focusblurenums.h"
34 --- a/focus-blur/src/src/diffusion.h
35 +++ b/focus-blur/src/src/diffusion.h
36 @@ -23,7 +23,7 @@
37 #define __FOCUSBLUR_DIFFUSION_H__
38
39
40 -#include <glib/gtypes.h>
41 +#include <glib.h>
42
43 #include "focusblur.h"
44 #include "focusblurtypes.h"
45 --- a/focus-blur/src/src/fftblur.h
46 +++ b/focus-blur/src/src/fftblur.h
47 @@ -23,8 +23,7 @@
48 #define __FOCUSBLUR_FFTBLUR_H__
49
50
51 -#include <glib/gmacros.h>
52 -#include <glib/gtypes.h>
53 +#include <glib.h>
54 #include <libgimpwidgets/gimpwidgetstypes.h>
55
56 #include "focusblurparam.h"
57 --- a/focus-blur/src/src/fftblurbuffer.h
58 +++ b/focus-blur/src/src/fftblurbuffer.h
59 @@ -28,8 +28,7 @@
60 #endif
61 #include <fftw3.h>
62
63 -#include <glib/gmacros.h>
64 -#include <glib/gtypes.h>
65 +#include <glib.h>
66 #include <gtk/gtkstyle.h>
67 #include <libgimp/gimptypes.h>
68 #include <libgimpwidgets/gimpwidgetstypes.h>
69 --- a/focus-blur/src/src/fftblurproc.h
70 +++ b/focus-blur/src/src/fftblurproc.h
71 @@ -23,8 +23,7 @@
72 #define __FOCUSBLUR_FFTBLUR_PROC_H__
73
74
75 -#include <glib/gmacros.h>
76 -#include <glib/gtypes.h>
77 +#include <glib.h>
78
79 #include "focusblurtypes.h"
80
81 --- a/focus-blur/src/src/focusblur.h
82 +++ b/focus-blur/src/src/focusblur.h
83 @@ -22,7 +22,7 @@
84 #ifndef __FOCUSBLUR_H__
85 #define __FOCUSBLUR_H__
86
87 -#include <glib/gmacros.h>
88 +#include <glib.h>
89
90 G_BEGIN_DECLS
91
92 --- a/focus-blur/src/src/focusblurparam.h
93 +++ b/focus-blur/src/src/focusblurparam.h
94 @@ -22,8 +22,7 @@
95 #ifndef __FOCUSBLUR_PARAM_H__
96 #define __FOCUSBLUR_PARAM_H__
97
98 -#include <glib/gmacros.h>
99 -#include <glib/gtypes.h>
100 +#include <glib.h>
101 #include <gtk/gtkstyle.h>
102 #include <libgimp/gimptypes.h>
103
104 --- a/focus-blur/src/src/focusblurstock.h
105 +++ b/focus-blur/src/src/focusblurstock.h
106 @@ -22,7 +22,7 @@
107 #ifndef __FOCUSBLUR_STOCK_H__
108 #define __FOCUSBLUR_STOCK_H__
109
110 -#include <glib/gtypes.h>
111 +#include <glib.h>
112
113 G_BEGIN_DECLS
114
115 --- a/focus-blur/src/src/focusblurtypes.h
116 +++ b/focus-blur/src/src/focusblurtypes.h
117 @@ -22,7 +22,7 @@
118 #ifndef __FOCUSBLUR_TYPES_H__
119 #define __FOCUSBLUR_TYPES_H__
120
121 -#include <glib/gmacros.h>
122 +#include <glib.h>
123
124
125 G_BEGIN_DECLS
126 --- a/focus-blur/src/src/interface.h
127 +++ b/focus-blur/src/src/interface.h
128 @@ -22,7 +22,7 @@
129 #ifndef __FOCUSBLUR_INTERFACE_H__
130 #define __FOCUSBLUR_INTERFACE_H__
131
132 -#include <glib/gtypes.h>
133 +#include <glib.h>
134
135 #include "focusblurtypes.h"
136
137 --- a/focus-blur/src/src/render.h
138 +++ b/focus-blur/src/src/render.h
139 @@ -24,7 +24,7 @@
140
141 #include "config.h"
142
143 -#include <glib/gtypes.h>
144 +#include <glib.h>
145 //#include <libgimp/gimp.h>
146 #include <libgimp/gimpui.h>
147
148 --- a/focus-blur/src/src/shine.h
149 +++ b/focus-blur/src/src/shine.h
150 @@ -22,7 +22,7 @@
151 #ifndef __FOCUSBLUR_SHINE_H__
152 #define __FOCUSBLUR_SHINE_H__
153
154 -#include <glib/gtypes.h>
155 +#include <glib.h>
156 #include <libgimp/gimptypes.h>
157
158 #include "focusblurtypes.h"
159 --- a/focus-blur/src/src/source.h
160 +++ b/focus-blur/src/src/source.h
161 @@ -24,7 +24,7 @@
162
163 #include "config.h"
164
165 -#include <glib/gtypes.h>
166 +#include <glib.h>
167 #include <libgimp/gimptypes.h>
168
169 #include "focusblurtypes.h"
55 DBP/menu
66 DBP/gcc4.3-fixes
77 resynthesizer/g_thread_init_deprecated
8 focus-blur/g_thread_init_deprecated
9 focus-blur/glib-single-include
108 cmyk-tiff-2-pdf/pdfviewer
119 bw-simulation/menu
1210 fix-ca/menu
+0
-4
focus-blur/Makefile less more
0 CLEAN-HOOK = rm -f src/po/*.gmo src/pixmaps/pixbufs.h
1 LDFLAGS += -lm
2 include ../common-autotools.mk
3
+0
-6
focus-blur/control less more
0 Description: Focus-Blur
1 This plugin tries to simulate an out-of-focus blur
2 Homepage: http://registry.gimp.org/node/1444
3 Version: 3.2.6
4 Uploaders: Bernd Zeimetz <bzed@debian.org>
5 Build-Depends: libxml-parser-perl, libfftw3-dev
+0
-19
focus-blur/copyright less more
0 Focus Blur -- blur with focus plug-in.
1 Copyright (C) 2002-2007 Kyoichiro Suda
2
3 The GIMP -- an image manipulation program
4 Copyright (C) 1995 Spencer Kimball and Peter Mattis
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this package; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+0
-1111
focus-blur/focusblur-3.2.6/ABOUT-NLS less more
0 1 Notes on the Free Translation Project
1 ***************************************
2
3 Free software is going international! The Free Translation Project is
4 a way to get maintainers of free software, translators, and users all
5 together, so that free software will gradually become able to speak many
6 languages. A few packages already provide translations for their
7 messages.
8
9 If you found this `ABOUT-NLS' file inside a distribution, you may
10 assume that the distributed package does use GNU `gettext' internally,
11 itself available at your nearest GNU archive site. But you do _not_
12 need to install GNU `gettext' prior to configuring, installing or using
13 this package with messages translated.
14
15 Installers will find here some useful hints. These notes also
16 explain how users should proceed for getting the programs to use the
17 available translations. They tell how people wanting to contribute and
18 work on translations can contact the appropriate team.
19
20 When reporting bugs in the `intl/' directory or bugs which may be
21 related to internationalization, you should tell about the version of
22 `gettext' which is used. The information can be found in the
23 `intl/VERSION' file, in internationalized packages.
24
25 1.1 Quick configuration advice
26 ==============================
27
28 If you want to exploit the full power of internationalization, you
29 should configure it using
30
31 ./configure --with-included-gettext
32
33 to force usage of internationalizing routines provided within this
34 package, despite the existence of internationalizing capabilities in the
35 operating system where this package is being installed. So far, only
36 the `gettext' implementation in the GNU C library version 2 provides as
37 many features (such as locale alias, message inheritance, automatic
38 charset conversion or plural form handling) as the implementation here.
39 It is also not possible to offer this additional functionality on top
40 of a `catgets' implementation. Future versions of GNU `gettext' will
41 very likely convey even more functionality. So it might be a good idea
42 to change to GNU `gettext' as soon as possible.
43
44 So you need _not_ provide this option if you are using GNU libc 2 or
45 you have installed a recent copy of the GNU gettext package with the
46 included `libintl'.
47
48 1.2 INSTALL Matters
49 ===================
50
51 Some packages are "localizable" when properly installed; the programs
52 they contain can be made to speak your own native language. Most such
53 packages use GNU `gettext'. Other packages have their own ways to
54 internationalization, predating GNU `gettext'.
55
56 By default, this package will be installed to allow translation of
57 messages. It will automatically detect whether the system already
58 provides the GNU `gettext' functions. If not, the included GNU
59 `gettext' library will be used. This library is wholly contained
60 within this package, usually in the `intl/' subdirectory, so prior
61 installation of the GNU `gettext' package is _not_ required.
62 Installers may use special options at configuration time for changing
63 the default behaviour. The commands:
64
65 ./configure --with-included-gettext
66 ./configure --disable-nls
67
68 will, respectively, bypass any pre-existing `gettext' to use the
69 internationalizing routines provided within this package, or else,
70 _totally_ disable translation of messages.
71
72 When you already have GNU `gettext' installed on your system and run
73 configure without an option for your new package, `configure' will
74 probably detect the previously built and installed `libintl.a' file and
75 will decide to use this. This might not be desirable. You should use
76 the more recent version of the GNU `gettext' library. I.e. if the file
77 `intl/VERSION' shows that the library which comes with this package is
78 more recent, you should use
79
80 ./configure --with-included-gettext
81
82 to prevent auto-detection.
83
84 The configuration process will not test for the `catgets' function
85 and therefore it will not be used. The reason is that even an
86 emulation of `gettext' on top of `catgets' could not provide all the
87 extensions of the GNU `gettext' library.
88
89 Internationalized packages usually have many `po/LL.po' files, where
90 LL gives an ISO 639 two-letter code identifying the language. Unless
91 translations have been forbidden at `configure' time by using the
92 `--disable-nls' switch, all available translations are installed
93 together with the package. However, the environment variable `LINGUAS'
94 may be set, prior to configuration, to limit the installed set.
95 `LINGUAS' should then contain a space separated list of two-letter
96 codes, stating which languages are allowed.
97
98 1.3 Using This Package
99 ======================
100
101 As a user, if your language has been installed for this package, you
102 only have to set the `LANG' environment variable to the appropriate
103 `LL_CC' combination. Here `LL' is an ISO 639 two-letter language code,
104 and `CC' is an ISO 3166 two-letter country code. For example, let's
105 suppose that you speak German and live in Germany. At the shell
106 prompt, merely execute `setenv LANG de_DE' (in `csh'),
107 `export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
108 This can be done from your `.login' or `.profile' file, once and for
109 all.
110
111 You might think that the country code specification is redundant.
112 But in fact, some languages have dialects in different countries. For
113 example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The
114 country code serves to distinguish the dialects.
115
116 The locale naming convention of `LL_CC', with `LL' denoting the
117 language and `CC' denoting the country, is the one use on systems based
118 on GNU libc. On other systems, some variations of this scheme are
119 used, such as `LL' or `LL_CC.ENCODING'. You can get the list of
120 locales supported by your system for your country by running the command
121 `locale -a | grep '^LL''.
122
123 Not all programs have translations for all languages. By default, an
124 English message is shown in place of a nonexistent translation. If you
125 understand other languages, you can set up a priority list of languages.
126 This is done through a different environment variable, called
127 `LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG'
128 for the purpose of message handling, but you still need to have `LANG'
129 set to the primary language; this is required by other parts of the
130 system libraries. For example, some Swedish users who would rather
131 read translations in German than English for when Swedish is not
132 available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'.
133
134 Special advice for Norwegian users: The language code for Norwegian
135 bokma*l changed from `no' to `nb' recently (in 2003). During the
136 transition period, while some message catalogs for this language are
137 installed under `nb' and some older ones under `no', it's recommended
138 for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and
139 older translations are used.
140
141 In the `LANGUAGE' environment variable, but not in the `LANG'
142 environment variable, `LL_CC' combinations can be abbreviated as `LL'
143 to denote the language's main dialect. For example, `de' is equivalent
144 to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
145 (Portuguese as spoken in Portugal) in this context.
146
147 1.4 Translating Teams
148 =====================
149
150 For the Free Translation Project to be a success, we need interested
151 people who like their own language and write it well, and who are also
152 able to synergize with other translators speaking the same language.
153 Each translation team has its own mailing list. The up-to-date list of
154 teams can be found at the Free Translation Project's homepage,
155 `http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams"
156 area.
157
158 If you'd like to volunteer to _work_ at translating messages, you
159 should become a member of the translating team for your own language.
160 The subscribing address is _not_ the same as the list itself, it has
161 `-request' appended. For example, speakers of Swedish can send a
162 message to `sv-request@li.org', having this message body:
163
164 subscribe
165
166 Keep in mind that team members are expected to participate
167 _actively_ in translations, or at solving translational difficulties,
168 rather than merely lurking around. If your team does not exist yet and
169 you want to start one, or if you are unsure about what to do or how to
170 get started, please write to `translation@iro.umontreal.ca' to reach the
171 coordinator for all translator teams.
172
173 The English team is special. It works at improving and uniformizing
174 the terminology in use. Proven linguistic skill are praised more than
175 programming skill, here.
176
177 1.5 Available Packages
178 ======================
179
180 Languages are not equally supported in all packages. The following
181 matrix shows the current state of internationalization, as of June
182 2006. The matrix shows, in regard of each package, for which languages
183 PO files have been submitted to translation coordination, with a
184 translation percentage of at least 50%.
185
186 Ready PO files af am ar az be bg bs ca cs cy da de el en en_GB eo
187 +----------------------------------------------------+
188 GNUnet | [] |
189 a2ps | [] [] [] [] [] |
190 aegis | () |
191 ant-phone | () |
192 anubis | [] |
193 ap-utils | |
194 aspell | [] [] [] [] |
195 bash | [] [] [] |
196 batchelor | [] |
197 bfd | |
198 bibshelf | [] |
199 binutils | [] |
200 bison | [] [] |
201 bison-runtime | |
202 bluez-pin | [] [] [] [] [] |
203 cflow | [] |
204 clisp | [] [] |
205 console-tools | [] [] |
206 coreutils | [] [] [] [] |
207 cpio | |
208 cpplib | [] [] [] |
209 cryptonit | [] |
210 darkstat | [] () [] |
211 dialog | [] [] [] [] [] [] |
212 diffutils | [] [] [] [] [] [] |
213 doodle | [] |
214 e2fsprogs | [] [] |
215 enscript | [] [] [] [] |
216 error | [] [] [] [] |
217 fetchmail | [] [] () [] |
218 fileutils | [] [] |
219 findutils | [] [] [] |
220 flex | [] [] [] |
221 fslint | [] |
222 gas | |
223 gawk | [] [] [] |
224 gbiff | [] |
225 gcal | [] |
226 gcc | [] |
227 gettext-examples | [] [] [] [] |
228 gettext-runtime | [] [] [] [] |
229 gettext-tools | [] [] |
230 gimp-print | [] [] [] [] |
231 gip | [] |
232 gliv | [] |
233 glunarclock | [] |
234 gmult | [] [] |
235 gnubiff | () |
236 gnucash | () () [] |
237 gnucash-glossary | [] () |
238 gnuedu | |
239 gnulib | [] [] [] [] [] [] |
240 gnunet-gtk | |
241 gnutls | |
242 gpe-aerial | [] [] |
243 gpe-beam | [] [] |
244 gpe-calendar | [] [] |
245 gpe-clock | [] [] |
246 gpe-conf | [] [] |
247 gpe-contacts | |
248 gpe-edit | [] |
249 gpe-filemanager | |
250 gpe-go | [] |
251 gpe-login | [] [] |
252 gpe-ownerinfo | [] [] |
253 gpe-package | |
254 gpe-sketchbook | [] [] |
255 gpe-su | [] [] |
256 gpe-taskmanager | [] [] |
257 gpe-timesheet | [] |
258 gpe-today | [] [] |
259 gpe-todo | |
260 gphoto2 | [] [] [] [] |
261 gprof | [] [] |
262 gpsdrive | () () |
263 gramadoir | [] [] |
264 grep | [] [] [] [] [] [] |
265 gretl | |
266 gsasl | |
267 gss | |
268 gst-plugins | [] [] [] [] |
269 gst-plugins-base | [] [] [] |
270 gst-plugins-good | [] [] [] [] [] [] [] |
271 gstreamer | [] [] [] [] [] [] [] |
272 gtick | [] () |
273 gtkam | [] [] [] |
274 gtkorphan | [] [] |
275 gtkspell | [] [] [] [] |
276 gutenprint | [] |
277 hello | [] [] [] [] [] |
278 id-utils | [] [] |
279 impost | |
280 indent | [] [] [] |
281 iso_3166 | [] [] |
282 iso_3166_1 | [] [] [] [] [] |
283 iso_3166_2 | |
284 iso_3166_3 | [] |
285 iso_4217 | [] |
286 iso_639 | [] [] |
287 jpilot | [] |
288 jtag | |
289 jwhois | |
290 kbd | [] [] [] [] |
291 keytouch | |
292 keytouch-editor | |
293 keytouch-keyboa... | |
294 latrine | () |
295 ld | [] |
296 leafpad | [] [] [] [] [] |
297 libc | [] [] [] [] [] |
298 libexif | [] |
299 libextractor | [] |
300 libgpewidget | [] [] [] |
301 libgpg-error | [] |
302 libgphoto2 | [] [] |
303 libgphoto2_port | [] [] |
304 libgsasl | |
305 libiconv | |
306 libidn | [] [] |
307 lifelines | [] () |
308 lilypond | [] |
309 lingoteach | |
310 lynx | [] [] [] [] |
311 m4 | [] [] [] [] |
312 mailutils | [] |
313 make | [] [] |
314 man-db | [] () [] [] |
315 minicom | [] [] [] |
316 mysecretdiary | [] [] |
317 nano | [] [] () [] |
318 nano_1_0 | [] () [] [] |
319 opcodes | [] |
320 parted | |
321 pilot-qof | [] |
322 psmisc | [] |
323 pwdutils | |
324 python | |
325 qof | |
326 radius | [] |
327 recode | [] [] [] [] [] [] |
328 rpm | [] [] |
329 screem | |
330 scrollkeeper | [] [] [] [] [] [] [] [] |
331 sed | [] [] [] |
332 sh-utils | [] [] |
333 shared-mime-info | [] [] [] |
334 sharutils | [] [] [] [] [] [] |
335 shishi | |
336 silky | |
337 skencil | [] () |
338 sketch | [] () |
339 solfege | |
340 soundtracker | [] [] |
341 sp | [] |
342 stardict | [] |
343 system-tools-ba... | [] [] [] [] [] [] [] [] [] |
344 tar | |
345 texinfo | [] [] [] |
346 textutils | [] [] [] |
347 tin | () () |
348 tp-robot | [] |
349 tuxpaint | [] [] [] [] [] |
350 unicode-han-tra... | |
351 unicode-transla... | |
352 util-linux | [] [] [] [] |
353 vorbis-tools | [] [] [] [] |
354 wastesedge | () |
355 wdiff | [] [] [] [] |
356 wget | [] [] |
357 xchat | [] [] [] [] [] |
358 xkeyboard-config | |
359 xpad | [] [] |
360 +----------------------------------------------------+
361 af am ar az be bg bs ca cs cy da de el en en_GB eo
362 11 0 1 2 8 20 1 42 43 2 62 97 18 1 16 13
363
364 es et eu fa fi fr ga gl gu he hi hr hu id is it
365 +--------------------------------------------------+
366 GNUnet | |
367 a2ps | [] [] [] () |
368 aegis | |
369 ant-phone | [] |
370 anubis | [] |
371 ap-utils | [] [] |
372 aspell | [] [] [] |
373 bash | [] [] [] |
374 batchelor | [] [] |
375 bfd | [] |
376 bibshelf | [] [] [] |
377 binutils | [] [] [] |
378 bison | [] [] [] [] [] [] |
379 bison-runtime | [] [] [] [] [] |
380 bluez-pin | [] [] [] [] [] |
381 cflow | |
382 clisp | [] [] |
383 console-tools | |
384 coreutils | [] [] [] [] [] [] |
385 cpio | [] [] [] |
386 cpplib | [] [] |
387 cryptonit | [] |
388 darkstat | [] () [] [] [] |
389 dialog | [] [] [] [] [] [] [] [] |
390 diffutils | [] [] [] [] [] [] [] [] [] |
391 doodle | [] [] |
392 e2fsprogs | [] [] [] |
393 enscript | [] [] [] |
394 error | [] [] [] [] [] |
395 fetchmail | [] |
396 fileutils | [] [] [] [] [] [] |
397 findutils | [] [] [] [] |
398 flex | [] [] [] |
399 fslint | [] |
400 gas | [] [] |
401 gawk | [] [] [] [] |
402 gbiff | [] |
403 gcal | [] [] |
404 gcc | [] |
405 gettext-examples | [] [] [] [] [] |
406 gettext-runtime | [] [] [] [] [] [] |
407 gettext-tools | [] [] [] |
408 gimp-print | [] [] |
409 gip | [] [] [] |
410 gliv | () |
411 glunarclock | [] [] [] |
412 gmult | [] [] [] |
413 gnubiff | () () |
414 gnucash | () () () |
415 gnucash-glossary | [] [] |
416 gnuedu | [] |
417 gnulib | [] [] [] [] [] [] [] [] |
418 gnunet-gtk | |
419 gnutls | |
420 gpe-aerial | [] [] |
421 gpe-beam | [] [] |
422 gpe-calendar | [] [] [] [] |
423 gpe-clock | [] [] [] [] |
424 gpe-conf | [] |
425 gpe-contacts | [] [] |
426 gpe-edit | [] [] [] [] |
427 gpe-filemanager | [] |
428 gpe-go | [] [] [] |
429 gpe-login | [] [] [] |
430 gpe-ownerinfo | [] [] [] [] [] |
431 gpe-package | [] |
432 gpe-sketchbook | [] [] |
433 gpe-su | [] [] [] [] |
434 gpe-taskmanager | [] [] [] |
435 gpe-timesheet | [] [] [] [] |
436 gpe-today | [] [] [] [] |
437 gpe-todo | [] |
438 gphoto2 | [] [] [] [] [] |
439 gprof | [] [] [] [] |
440 gpsdrive | () () [] () |
441 gramadoir | [] [] |
442 grep | [] [] [] [] [] [] [] [] [] [] [] [] |
443 gretl | [] [] [] |
444 gsasl | [] |
445 gss | [] |
446 gst-plugins | [] [] [] |
447 gst-plugins-base | [] [] |
448 gst-plugins-good | [] [] [] |
449 gstreamer | [] [] [] |
450 gtick | [] [] [] [] [] |
451 gtkam | [] [] [] [] |
452 gtkorphan | [] [] |
453 gtkspell | [] [] [] [] [] [] |
454 gutenprint | [] |
455 hello | [] [] [] [] [] [] [] [] [] [] [] [] [] |
456 id-utils | [] [] [] [] [] |
457 impost | [] [] |
458 indent | [] [] [] [] [] [] [] [] [] [] |
459 iso_3166 | [] [] [] |
460 iso_3166_1 | [] [] [] [] [] [] [] |
461 iso_3166_2 | [] |
462 iso_3166_3 | [] |
463 iso_4217 | [] [] [] [] |
464 iso_639 | [] [] [] [] [] |
465 jpilot | [] [] |
466 jtag | [] |
467 jwhois | [] [] [] [] [] |
468 kbd | [] [] |
469 keytouch | [] |
470 keytouch-editor | [] |
471 keytouch-keyboa... | [] |
472 latrine | [] [] [] |
473 ld | [] [] |
474 leafpad | [] [] [] [] [] [] |
475 libc | [] [] [] [] [] |
476 libexif | [] |
477 libextractor | [] |
478 libgpewidget | [] [] [] [] [] |
479 libgpg-error | |
480 libgphoto2 | [] [] |
481 libgphoto2_port | [] [] |
482 libgsasl | [] [] |
483 libiconv | |
484 libidn | [] [] |
485 lifelines | () |
486 lilypond | [] |
487 lingoteach | [] [] [] |
488 lynx | [] [] [] |
489 m4 | [] [] [] [] |
490 mailutils | [] [] |
491 make | [] [] [] [] [] [] [] [] |
492 man-db | () |
493 minicom | [] [] [] [] |
494 mysecretdiary | [] [] [] |
495 nano | [] () [] [] [] [] |
496 nano_1_0 | [] [] [] [] [] |
497 opcodes | [] [] [] [] |
498 parted | [] [] [] |
499 pilot-qof | |
500 psmisc | [] [] [] |
501 pwdutils | |
502 python | |
503 qof | |
504 radius | [] [] |
505 recode | [] [] [] [] [] [] [] [] |
506 rpm | [] [] |
507 screem | |
508 scrollkeeper | [] [] [] |
509 sed | [] [] [] [] [] |
510 sh-utils | [] [] [] [] [] [] [] |
511 shared-mime-info | [] [] [] [] [] [] |
512 sharutils | [] [] [] [] [] [] [] [] |
513 shishi | |
514 silky | [] |
515 skencil | [] [] |
516 sketch | [] [] |
517 solfege | [] |
518 soundtracker | [] [] [] |
519 sp | [] |
520 stardict | [] |
521 system-tools-ba... | [] [] [] [] [] [] [] [] |
522 tar | [] [] [] [] [] |
523 texinfo | [] [] |
524 textutils | [] [] [] [] [] |
525 tin | [] () |
526 tp-robot | [] [] [] |
527 tuxpaint | [] [] |
528 unicode-han-tra... | |
529 unicode-transla... | [] [] |
530 util-linux | [] [] [] [] [] [] [] |
531 vorbis-tools | [] [] |
532 wastesedge | () |
533 wdiff | [] [] [] [] [] [] [] [] |
534 wget | [] [] [] [] [] [] [] [] |
535 xchat | [] [] [] [] [] [] [] [] |
536 xkeyboard-config | [] [] [] [] |
537 xpad | [] [] [] |
538 +--------------------------------------------------+
539 es et eu fa fi fr ga gl gu he hi hr hu id is it
540 89 21 16 2 41 118 59 14 1 8 1 6 60 30 0 52
541
542 ja ko ku ky lg lt lv mk mn ms mt nb ne nl nn no
543 +--------------------------------------------------+
544 GNUnet | |
545 a2ps | () [] [] () |
546 aegis | () |
547 ant-phone | [] |
548 anubis | [] [] [] |
549 ap-utils | [] |
550 aspell | [] [] |
551 bash | [] |
552 batchelor | [] [] |
553 bfd | |
554 bibshelf | [] |
555 binutils | |
556 bison | [] [] [] |
557 bison-runtime | [] [] [] |
558 bluez-pin | [] [] [] |
559 cflow | |
560 clisp | [] |
561 console-tools | |
562 coreutils | [] |
563 cpio | |
564 cpplib | [] |
565 cryptonit | [] |
566 darkstat | [] [] |
567 dialog | [] [] |
568 diffutils | [] [] [] |
569 doodle | |
570 e2fsprogs | [] |
571 enscript | [] |
572 error | [] |
573 fetchmail | [] [] |
574 fileutils | [] [] |
575 findutils | [] |
576 flex | [] [] |
577 fslint | [] [] |
578 gas | |
579 gawk | [] [] |
580 gbiff | [] |
581 gcal | |
582 gcc | |
583 gettext-examples | [] [] |
584 gettext-runtime | [] [] [] |
585 gettext-tools | [] [] |
586 gimp-print | [] [] |
587 gip | [] [] |
588 gliv | [] |
589 glunarclock | [] [] |
590 gmult | [] [] |
591 gnubiff | |
592 gnucash | () () |
593 gnucash-glossary | [] |
594 gnuedu | |
595 gnulib | [] [] [] [] |
596 gnunet-gtk | |
597 gnutls | |
598 gpe-aerial | [] |
599 gpe-beam | [] |
600 gpe-calendar | [] |
601 gpe-clock | [] [] |
602 gpe-conf | [] [] |
603 gpe-contacts | [] |
604 gpe-edit | [] [] |
605 gpe-filemanager | [] |
606 gpe-go | [] [] |
607 gpe-login | [] [] |
608 gpe-ownerinfo | [] |
609 gpe-package | [] |
610 gpe-sketchbook | [] [] |
611 gpe-su | [] [] |
612 gpe-taskmanager | [] [] [] |
613 gpe-timesheet | [] |
614 gpe-today | [] |
615 gpe-todo | |
616 gphoto2 | [] [] |
617 gprof | |
618 gpsdrive | () () () |
619 gramadoir | () |
620 grep | [] [] [] |
621 gretl | |
622 gsasl | [] |
623 gss | |
624 gst-plugins | [] |
625 gst-plugins-base | |
626 gst-plugins-good | [] |
627 gstreamer | [] |
628 gtick | [] |
629 gtkam | [] |
630 gtkorphan | [] |
631 gtkspell | [] [] |
632 gutenprint | |
633 hello | [] [] [] [] [] [] [] [] |
634 id-utils | [] |
635 impost | |
636 indent | [] [] |
637 iso_3166 | [] |
638 iso_3166_1 | [] [] |
639 iso_3166_2 | [] |
640 iso_3166_3 | [] |
641 iso_4217 | [] [] [] |
642 iso_639 | [] [] [] |
643 jpilot | () () () |
644 jtag | |
645 jwhois | [] |
646 kbd | [] |
647 keytouch | [] |
648 keytouch-editor | |
649 keytouch-keyboa... | [] |
650 latrine | [] |
651 ld | |
652 leafpad | [] [] |
653 libc | [] [] [] [] [] |
654 libexif | |
655 libextractor | |
656 libgpewidget | [] |
657 libgpg-error | |
658 libgphoto2 | [] |
659 libgphoto2_port | [] |
660 libgsasl | [] |
661 libiconv | |
662 libidn | [] [] |
663 lifelines | [] |
664 lilypond | |
665 lingoteach | [] |
666 lynx | [] [] |
667 m4 | [] [] |
668 mailutils | |
669 make | [] [] [] |
670 man-db | () |
671 minicom | [] |
672 mysecretdiary | [] |
673 nano | [] [] [] |
674 nano_1_0 | [] [] [] |
675 opcodes | [] |
676 parted | [] [] |
677 pilot-qof | |
678 psmisc | [] [] [] |
679 pwdutils | |
680 python | |
681 qof | |
682 radius | |
683 recode | [] |
684 rpm | [] [] |
685 screem | [] |
686 scrollkeeper | [] [] [] [] |
687 sed | [] [] |
688 sh-utils | [] [] |
689 shared-mime-info | [] [] [] [] [] |
690 sharutils | [] [] |
691 shishi | |
692 silky | [] |
693 skencil | |
694 sketch | |
695 solfege | |
696 soundtracker | |
697 sp | () |
698 stardict | [] [] |
699 system-tools-ba... | [] [] [] [] |
700 tar | [] [] [] |
701 texinfo | [] [] [] |
702 textutils | [] [] [] |
703 tin | |
704 tp-robot | [] |
705 tuxpaint | [] |
706 unicode-han-tra... | |
707 unicode-transla... | |
708 util-linux | [] [] |
709 vorbis-tools | [] |
710 wastesedge | [] |
711 wdiff | [] [] |
712 wget | [] [] |
713 xchat | [] [] [] [] |
714 xkeyboard-config | [] |
715 xpad | [] [] [] |
716 +--------------------------------------------------+
717 ja ko ku ky lg lt lv mk mn ms mt nb ne nl nn no
718 40 24 2 1 1 3 1 2 3 21 0 15 1 102 6 3
719
720 nso or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta
721 +------------------------------------------------------+
722 GNUnet | |
723 a2ps | () [] [] [] [] [] [] |
724 aegis | () () |
725 ant-phone | [] [] |
726 anubis | [] [] [] |
727 ap-utils | () |
728 aspell | [] [] |
729 bash | [] [] [] |
730 batchelor | [] [] |
731 bfd | |
732 bibshelf | [] |
733 binutils | [] [] |
734 bison | [] [] [] [] [] |
735 bison-runtime | [] [] [] [] |
736 bluez-pin | [] [] [] [] [] [] [] [] [] |
737 cflow | [] |
738 clisp | [] |
739 console-tools | [] |
740 coreutils | [] [] [] [] |
741 cpio | [] [] [] |
742 cpplib | [] |
743 cryptonit | [] [] |
744 darkstat | [] [] [] [] [] [] |
745 dialog | [] [] [] [] [] [] [] [] [] |
746 diffutils | [] [] [] [] [] [] |
747 doodle | [] [] |
748 e2fsprogs | [] [] |
749 enscript | [] [] [] [] [] |
750 error | [] [] [] [] |
751 fetchmail | [] [] [] |
752 fileutils | [] [] [] [] [] |
753 findutils | [] [] [] [] [] [] |
754 flex | [] [] [] [] [] |
755 fslint | [] [] [] [] |
756 gas | |
757 gawk | [] [] [] [] |
758 gbiff | [] |
759 gcal | [] |
760 gcc | |
761 gettext-examples | [] [] [] [] [] [] [] [] |
762 gettext-runtime | [] [] [] [] [] [] [] [] |
763 gettext-tools | [] [] [] [] [] [] [] |
764 gimp-print | [] [] |
765 gip | [] [] [] [] |
766 gliv | [] [] [] [] |
767 glunarclock | [] [] [] [] [] [] |
768 gmult | [] [] [] [] |
769 gnubiff | () |
770 gnucash | () [] |
771 gnucash-glossary | [] [] [] |
772 gnuedu | |
773 gnulib | [] [] [] [] [] |
774 gnunet-gtk | [] |
775 gnutls | [] [] |
776 gpe-aerial | [] [] [] [] [] [] [] |
777 gpe-beam | [] [] [] [] [] [] [] |
778 gpe-calendar | [] [] [] [] [] [] [] [] |
779 gpe-clock | [] [] [] [] [] [] [] [] |
780 gpe-conf | [] [] [] [] [] [] [] |
781 gpe-contacts | [] [] [] [] [] |
782 gpe-edit | [] [] [] [] [] [] [] [] |
783 gpe-filemanager | [] [] |
784 gpe-go | [] [] [] [] [] [] |
785 gpe-login | [] [] [] [] [] [] [] [] |
786 gpe-ownerinfo | [] [] [] [] [] [] [] [] |
787 gpe-package | [] [] |
788 gpe-sketchbook | [] [] [] [] [] [] [] [] |
789 gpe-su | [] [] [] [] [] [] [] [] |
790 gpe-taskmanager | [] [] [] [] [] [] [] [] |
791 gpe-timesheet | [] [] [] [] [] [] [] [] |
792 gpe-today | [] [] [] [] [] [] [] [] |
793 gpe-todo | [] [] [] [] |
794 gphoto2 | [] [] [] [] [] |
795 gprof | [] [] [] |
796 gpsdrive | [] [] [] |
797 gramadoir | [] [] |
798 grep | [] [] [] [] [] [] [] [] |
799 gretl | [] |
800 gsasl | [] [] |
801 gss | [] [] [] |
802 gst-plugins | [] [] [] [] |
803 gst-plugins-base | [] |
804 gst-plugins-good | [] [] [] [] |
805 gstreamer | [] [] [] |
806 gtick | [] [] [] |
807 gtkam | [] [] [] [] |
808 gtkorphan | [] |
809 gtkspell | [] [] [] [] [] [] [] [] |
810 gutenprint | [] |
811 hello | [] [] [] [] [] [] [] [] |
812 id-utils | [] [] [] [] |
813 impost | [] |
814 indent | [] [] [] [] [] [] |
815 iso_3166 | [] [] [] [] [] [] |
816 iso_3166_1 | [] [] [] [] |
817 iso_3166_2 | |
818 iso_3166_3 | [] [] [] [] |
819 iso_4217 | [] [] [] [] |
820 iso_639 | [] [] [] [] |
821 jpilot | |
822 jtag | [] |
823 jwhois | [] [] [] [] |
824 kbd | [] [] [] |
825 keytouch | [] |
826 keytouch-editor | [] |
827 keytouch-keyboa... | [] |
828 latrine | [] [] |
829 ld | [] |
830 leafpad | [] [] [] [] [] [] |
831 libc | [] [] [] [] [] |
832 libexif | [] |
833 libextractor | [] [] |
834 libgpewidget | [] [] [] [] [] [] [] |
835 libgpg-error | [] [] |
836 libgphoto2 | [] |
837 libgphoto2_port | [] [] |
838 libgsasl | [] [] [] [] |
839 libiconv | |
840 libidn | [] [] () |
841 lifelines | [] [] |
842 lilypond | |
843 lingoteach | [] |
844 lynx | [] [] [] |
845 m4 | [] [] [] [] [] |
846 mailutils | [] [] [] [] |
847 make | [] [] [] [] |
848 man-db | [] [] |
849 minicom | [] [] [] [] [] |
850 mysecretdiary | [] [] [] [] |
851 nano | [] [] |
852 nano_1_0 | [] [] [] [] |
853 opcodes | [] [] |
854 parted | [] |
855 pilot-qof | [] |
856 psmisc | [] [] |
857 pwdutils | [] [] |
858 python | |
859 qof | [] |
860 radius | [] [] |
861 recode | [] [] [] [] [] [] [] |
862 rpm | [] [] [] [] |
863 screem | |
864 scrollkeeper | [] [] [] [] [] [] [] |
865 sed | [] [] [] [] [] [] [] [] [] |
866 sh-utils | [] [] [] |
867 shared-mime-info | [] [] [] [] [] |
868 sharutils | [] [] [] [] |
869 shishi | [] |
870 silky | [] |
871 skencil | [] [] [] |
872 sketch | [] [] [] |
873 solfege | [] |
874 soundtracker | [] [] |
875 sp | |
876 stardict | [] [] [] |
877 system-tools-ba... | [] [] [] [] [] [] [] [] [] |
878 tar | [] [] [] [] [] |
879 texinfo | [] [] [] [] |
880 textutils | [] [] [] |
881 tin | () |
882 tp-robot | [] |
883 tuxpaint | [] [] [] [] [] |
884 unicode-han-tra... | |
885 unicode-transla... | |
886 util-linux | [] [] [] [] |
887 vorbis-tools | [] [] |
888 wastesedge | |
889 wdiff | [] [] [] [] [] [] |
890 wget | [] [] [] [] |
891 xchat | [] [] [] [] [] [] [] |
892 xkeyboard-config | [] [] |
893 xpad | [] [] [] |
894 +------------------------------------------------------+
895 nso or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta
896 0 2 3 58 31 53 5 76 72 5 42 48 12 51 128 2
897
898 tg th tk tr uk ven vi wa xh zh_CN zh_HK zh_TW zu
899 +---------------------------------------------------+
900 GNUnet | [] | 2
901 a2ps | [] [] [] | 19
902 aegis | | 0
903 ant-phone | [] [] | 6
904 anubis | [] [] [] | 11
905 ap-utils | () [] | 4
906 aspell | [] [] [] | 14
907 bash | [] | 11
908 batchelor | [] [] | 9
909 bfd | | 1
910 bibshelf | [] | 7
911 binutils | [] [] [] | 9
912 bison | [] [] [] | 19
913 bison-runtime | [] [] [] | 15
914 bluez-pin | [] [] [] [] [] [] | 28
915 cflow | [] [] | 4
916 clisp | | 6
917 console-tools | [] [] | 5
918 coreutils | [] [] | 17
919 cpio | [] [] [] | 9
920 cpplib | [] [] [] [] | 11
921 cryptonit | | 5
922 darkstat | [] () () | 15
923 dialog | [] [] [] [] [] | 30
924 diffutils | [] [] [] [] | 28
925 doodle | [] | 6
926 e2fsprogs | [] [] | 10
927 enscript | [] [] [] | 16
928 error | [] [] [] [] | 18
929 fetchmail | [] [] | 12
930 fileutils | [] [] [] | 18
931 findutils | [] [] [] | 17
932 flex | [] [] | 15
933 fslint | [] | 9
934 gas | [] | 3
935 gawk | [] [] | 15
936 gbiff | [] | 5
937 gcal | [] | 5
938 gcc | [] [] [] | 5
939 gettext-examples | [] [] [] [] [] | 24
940 gettext-runtime | [] [] [] [] [] | 26
941 gettext-tools | [] [] [] [] [] | 19
942 gimp-print | [] [] | 12
943 gip | [] [] | 12
944 gliv | [] [] | 8
945 glunarclock | [] [] [] | 15
946 gmult | [] [] [] [] | 15
947 gnubiff | [] | 1
948 gnucash | () | 2
949 gnucash-glossary | [] [] | 9
950 gnuedu | [] | 2
951 gnulib | [] [] [] [] [] | 28
952 gnunet-gtk | | 1
953 gnutls | | 2
954 gpe-aerial | [] [] | 14
955 gpe-beam | [] [] | 14
956 gpe-calendar | [] [] [] [] | 19
957 gpe-clock | [] [] [] [] | 20
958 gpe-conf | [] [] | 14
959 gpe-contacts | [] [] | 10
960 gpe-edit | [] [] [] [] | 19
961 gpe-filemanager | [] | 5
962 gpe-go | [] [] | 14
963 gpe-login | [] [] [] [] [] | 20
964 gpe-ownerinfo | [] [] [] [] | 20
965 gpe-package | [] | 5
966 gpe-sketchbook | [] [] | 16
967 gpe-su | [] [] [] | 19
968 gpe-taskmanager | [] [] [] | 19
969 gpe-timesheet | [] [] [] [] | 18
970 gpe-today | [] [] [] [] [] | 20
971 gpe-todo | [] | 6
972 gphoto2 | [] [] [] [] | 20
973 gprof | [] [] | 11
974 gpsdrive | | 4
975 gramadoir | [] | 7
976 grep | [] [] [] [] | 33
977 gretl | | 4
978 gsasl | [] [] | 6
979 gss | [] | 5
980 gst-plugins | [] [] [] | 15
981 gst-plugins-base | [] [] [] | 9
982 gst-plugins-good | [] [] [] | 18
983 gstreamer | [] [] [] | 17
984 gtick | [] | 11
985 gtkam | [] | 13
986 gtkorphan | [] | 7
987 gtkspell | [] [] [] [] [] [] | 26
988 gutenprint | | 3
989 hello | [] [] [] [] [] | 39
990 id-utils | [] [] | 14
991 impost | [] | 4
992 indent | [] [] [] [] | 25
993 iso_3166 | [] [] [] | 15
994 iso_3166_1 | [] [] | 20
995 iso_3166_2 | | 2
996 iso_3166_3 | [] [] | 9
997 iso_4217 | [] [] | 14
998 iso_639 | [] [] | 16
999 jpilot | [] [] [] [] | 7
1000 jtag | [] | 3
1001 jwhois | [] [] [] | 13
1002 kbd | [] [] | 12
1003 keytouch | [] | 4
1004 keytouch-editor | | 2
1005 keytouch-keyboa... | [] | 4
1006 latrine | [] [] | 8
1007 ld | [] [] [] | 7
1008 leafpad | [] [] [] [] | 23
1009 libc | [] [] [] | 23
1010 libexif | [] | 4
1011 libextractor | [] | 5
1012 libgpewidget | [] [] [] | 19
1013 libgpg-error | [] | 4
1014 libgphoto2 | [] | 7
1015 libgphoto2_port | [] [] [] | 10
1016 libgsasl | [] | 8
1017 libiconv | | 0
1018 libidn | [] [] | 10
1019 lifelines | | 4
1020 lilypond | | 2
1021 lingoteach | [] | 6
1022 lynx | [] [] [] | 15
1023 m4 | [] [] [] | 18
1024 mailutils | [] | 8
1025 make | [] [] [] | 20
1026 man-db | [] | 6
1027 minicom | [] | 14
1028 mysecretdiary | [] [] | 12
1029 nano | [] [] | 15
1030 nano_1_0 | [] [] [] | 18
1031 opcodes | [] [] | 10
1032 parted | [] [] [] | 9
1033 pilot-qof | [] | 3
1034 psmisc | [] | 10
1035 pwdutils | [] | 3
1036 python | | 0
1037 qof | [] | 2
1038 radius | [] | 6
1039 recode | [] [] [] | 25
1040 rpm | [] [] [] | 13
1041 screem | [] | 2
1042 scrollkeeper | [] [] [] [] | 26
1043 sed | [] [] [] | 22
1044 sh-utils | [] | 15
1045 shared-mime-info | [] [] [] [] | 23
1046 sharutils | [] [] [] | 23
1047 shishi | | 1
1048 silky | [] | 4
1049 skencil | [] | 7
1050 sketch | | 6
1051 solfege | | 2
1052 soundtracker | [] [] | 9
1053 sp | [] | 3
1054 stardict | [] [] [] [] | 11
1055 system-tools-ba... | [] [] [] [] [] [] [] | 37
1056 tar | [] [] [] [] | 17
1057 texinfo | [] [] [] | 15
1058 textutils | [] [] [] | 17
1059 tin | | 1
1060 tp-robot | [] [] [] | 9
1061 tuxpaint | [] [] [] | 16
1062 unicode-han-tra... | | 0
1063 unicode-transla... | | 2
1064 util-linux | [] [] [] | 20
1065 vorbis-tools | [] [] | 11
1066 wastesedge | | 1
1067 wdiff | [] [] | 22
1068 wget | [] [] [] | 19
1069 xchat | [] [] [] [] | 28
1070 xkeyboard-config | [] [] [] [] | 11
1071 xpad | [] [] [] | 14
1072 +---------------------------------------------------+
1073 77 teams tg th tk tr uk ven vi wa xh zh_CN zh_HK zh_TW zu
1074 172 domains 0 1 1 78 39 0 135 14 1 50 1 52 0 2040
1075
1076 Some counters in the preceding matrix are higher than the number of
1077 visible blocks let us expect. This is because a few extra PO files are
1078 used for implementing regional variants of languages, or language
1079 dialects.
1080
1081 For a PO file in the matrix above to be effective, the package to
1082 which it applies should also have been internationalized and
1083 distributed as such by its maintainer. There might be an observable
1084 lag between the mere existence a PO file and its wide availability in a
1085 distribution.
1086
1087 If June 2006 seems to be old, you may fetch a more recent copy of
1088 this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date
1089 matrix with full percentage details can be found at
1090 `http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.
1091
1092 1.6 Using `gettext' in new packages
1093 ===================================
1094
1095 If you are writing a freely available program and want to
1096 internationalize it you are welcome to use GNU `gettext' in your
1097 package. Of course you have to respect the GNU Library General Public
1098 License which covers the use of the GNU `gettext' library. This means
1099 in particular that even non-free programs can use `libintl' as a shared
1100 library, whereas only free software can use `libintl' as a static
1101 library or use modified versions of `libintl'.
1102
1103 Once the sources are changed appropriately and the setup can handle
1104 the use of `gettext' the only thing missing are the translations. The
1105 Free Translation Project is also available for packages which are not
1106 developed inside the GNU project. Therefore the information given above
1107 applies also for every other Free Software Project. Contact
1108 `translation@iro.umontreal.ca' to make the `.pot' files available to
1109 the translation teams.
1110
+0
-1
focus-blur/focusblur-3.2.6/AUTHORS less more
0 Kyoichiro Suda <das atmark dream dot japan>
+0
-340
focus-blur/focusblur-3.2.6/COPYING less more
0 GNU GENERAL PUBLIC LICENSE
1 Version 2, June 1991
2
3 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
4 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
5 Everyone is permitted to copy and distribute verbatim copies
6 of this license document, but changing it is not allowed.
7
8 Preamble
9
10 The licenses for most software are designed to take away your
11 freedom to share and change it. By contrast, the GNU General Public
12 License is intended to guarantee your freedom to share and change free
13 software--to make sure the software is free for all its users. This
14 General Public License applies to most of the Free Software
15 Foundation's software and to any other program whose authors commit to
16 using it. (Some other Free Software Foundation software is covered by
17 the GNU Library General Public License instead.) You can apply it to
18 your programs, too.
19
20 When we speak of free software, we are referring to freedom, not
21 price. Our General Public Licenses are designed to make sure that you
22 have the freedom to distribute copies of free software (and charge for
23 this service if you wish), that you receive source code or can get it
24 if you want it, that you can change the software or use pieces of it
25 in new free programs; and that you know you can do these things.
26
27 To protect your rights, we need to make restrictions that forbid
28 anyone to deny you these rights or to ask you to surrender the rights.
29 These restrictions translate to certain responsibilities for you if you
30 distribute copies of the software, or if you modify it.
31
32 For example, if you distribute copies of such a program, whether
33 gratis or for a fee, you must give the recipients all the rights that
34 you have. You must make sure that they, too, receive or can get the
35 source code. And you must show them these terms so they know their
36 rights.
37
38 We protect your rights with two steps: (1) copyright the software, and
39 (2) offer you this license which gives you legal permission to copy,
40 distribute and/or modify the software.
41
42 Also, for each author's protection and ours, we want to make certain
43 that everyone understands that there is no warranty for this free
44 software. If the software is modified by someone else and passed on, we
45 want its recipients to know that what they have is not the original, so
46 that any problems introduced by others will not reflect on the original
47 authors' reputations.
48
49 Finally, any free program is threatened constantly by software
50 patents. We wish to avoid the danger that redistributors of a free
51 program will individually obtain patent licenses, in effect making the
52 program proprietary. To prevent this, we have made it clear that any
53 patent must be licensed for everyone's free use or not licensed at all.
54
55 The precise terms and conditions for copying, distribution and
56 modification follow.
57
58 GNU GENERAL PUBLIC LICENSE
59 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
60
61 0. This License applies to any program or other work which contains
62 a notice placed by the copyright holder saying it may be distributed
63 under the terms of this General Public License. The "Program", below,
64 refers to any such program or work, and a "work based on the Program"
65 means either the Program or any derivative work under copyright law:
66 that is to say, a work containing the Program or a portion of it,
67 either verbatim or with modifications and/or translated into another
68 language. (Hereinafter, translation is included without limitation in
69 the term "modification".) Each licensee is addressed as "you".
70
71 Activities other than copying, distribution and modification are not
72 covered by this License; they are outside its scope. The act of
73 running the Program is not restricted, and the output from the Program
74 is covered only if its contents constitute a work based on the
75 Program (independent of having been made by running the Program).
76 Whether that is true depends on what the Program does.
77
78 1. You may copy and distribute verbatim copies of the Program's
79 source code as you receive it, in any medium, provided that you
80 conspicuously and appropriately publish on each copy an appropriate
81 copyright notice and disclaimer of warranty; keep intact all the
82 notices that refer to this License and to the absence of any warranty;
83 and give any other recipients of the Program a copy of this License
84 along with the Program.
85
86 You may charge a fee for the physical act of transferring a copy, and
87 you may at your option offer warranty protection in exchange for a fee.
88
89 2. You may modify your copy or copies of the Program or any portion
90 of it, thus forming a work based on the Program, and copy and
91 distribute such modifications or work under the terms of Section 1
92 above, provided that you also meet all of these conditions:
93
94 a) You must cause the modified files to carry prominent notices
95 stating that you changed the files and the date of any change.
96
97 b) You must cause any work that you distribute or publish, that in
98 whole or in part contains or is derived from the Program or any
99 part thereof, to be licensed as a whole at no charge to all third
100 parties under the terms of this License.
101
102 c) If the modified program normally reads commands interactively
103 when run, you must cause it, when started running for such
104 interactive use in the most ordinary way, to print or display an
105 announcement including an appropriate copyright notice and a
106 notice that there is no warranty (or else, saying that you provide
107 a warranty) and that users may redistribute the program under
108 these conditions, and telling the user how to view a copy of this
109 License. (Exception: if the Program itself is interactive but
110 does not normally print such an announcement, your work based on
111 the Program is not required to print an announcement.)
112
113 These requirements apply to the modified work as a whole. If
114 identifiable sections of that work are not derived from the Program,
115 and can be reasonably considered independent and separate works in
116 themselves, then this License, and its terms, do not apply to those
117 sections when you distribute them as separate works. But when you
118 distribute the same sections as part of a whole which is a work based
119 on the Program, the distribution of the whole must be on the terms of
120 this License, whose permissions for other licensees extend to the
121 entire whole, and thus to each and every part regardless of who wrote it.
122
123 Thus, it is not the intent of this section to claim rights or contest
124 your rights to work written entirely by you; rather, the intent is to
125 exercise the right to control the distribution of derivative or
126 collective works based on the Program.
127
128 In addition, mere aggregation of another work not based on the Program
129 with the Program (or with a work based on the Program) on a volume of
130 a storage or distribution medium does not bring the other work under
131 the scope of this License.
132
133 3. You may copy and distribute the Program (or a work based on it,
134 under Section 2) in object code or executable form under the terms of
135 Sections 1 and 2 above provided that you also do one of the following:
136
137 a) Accompany it with the complete corresponding machine-readable
138 source code, which must be distributed under the terms of Sections
139 1 and 2 above on a medium customarily used for software interchange; or,
140
141 b) Accompany it with a written offer, valid for at least three
142 years, to give any third party, for a charge no more than your
143 cost of physically performing source distribution, a complete
144 machine-readable copy of the corresponding source code, to be
145 distributed under the terms of Sections 1 and 2 above on a medium
146 customarily used for software interchange; or,
147
148 c) Accompany it with the information you received as to the offer
149 to distribute corresponding source code. (This alternative is
150 allowed only for noncommercial distribution and only if you
151 received the program in object code or executable form with such
152 an offer, in accord with Subsection b above.)
153
154 The source code for a work means the preferred form of the work for
155 making modifications to it. For an executable work, complete source
156 code means all the source code for all modules it contains, plus any
157 associated interface definition files, plus the scripts used to
158 control compilation and installation of the executable. However, as a
159 special exception, the source code distributed need not include
160 anything that is normally distributed (in either source or binary
161 form) with the major components (compiler, kernel, and so on) of the
162 operating system on which the executable runs, unless that component
163 itself accompanies the executable.
164
165 If distribution of executable or object code is made by offering
166 access to copy from a designated place, then offering equivalent
167 access to copy the source code from the same place counts as
168 distribution of the source code, even though third parties are not
169 compelled to copy the source along with the object code.
170
171 4. You may not copy, modify, sublicense, or distribute the Program
172 except as expressly provided under this License. Any attempt
173 otherwise to copy, modify, sublicense or distribute the Program is
174 void, and will automatically terminate your rights under this License.
175 However, parties who have received copies, or rights, from you under
176 this License will not have their licenses terminated so long as such
177 parties remain in full compliance.
178
179 5. You are not required to accept this License, since you have not
180 signed it. However, nothing else grants you permission to modify or
181 distribute the Program or its derivative works. These actions are
182 prohibited by law if you do not accept this License. Therefore, by
183 modifying or distributing the Program (or any work based on the
184 Program), you indicate your acceptance of this License to do so, and
185 all its terms and conditions for copying, distributing or modifying
186 the Program or works based on it.
187
188 6. Each time you redistribute the Program (or any work based on the
189 Program), the recipient automatically receives a license from the
190 original licensor to copy, distribute or modify the Program subject to
191 these terms and conditions. You may not impose any further
192 restrictions on the recipients' exercise of the rights granted herein.
193 You are not responsible for enforcing compliance by third parties to
194 this License.
195
196 7. If, as a consequence of a court judgment or allegation of patent
197 infringement or for any other reason (not limited to patent issues),
198 conditions are imposed on you (whether by court order, agreement or
199 otherwise) that contradict the conditions of this License, they do not
200 excuse you from the conditions of this License. If you cannot
201 distribute so as to satisfy simultaneously your obligations under this
202 License and any other pertinent obligations, then as a consequence you
203 may not distribute the Program at all. For example, if a patent
204 license would not permit royalty-free redistribution of the Program by
205 all those who receive copies directly or indirectly through you, then
206 the only way you could satisfy both it and this License would be to
207 refrain entirely from distribution of the Program.
208
209 If any portion of this section is held invalid or unenforceable under
210 any particular circumstance, the balance of the section is intended to
211 apply and the section as a whole is intended to apply in other
212 circumstances.
213
214 It is not the purpose of this section to induce you to infringe any
215 patents or other property right claims or to contest validity of any
216 such claims; this section has the sole purpose of protecting the
217 integrity of the free software distribution system, which is
218 implemented by public license practices. Many people have made
219 generous contributions to the wide range of software distributed
220 through that system in reliance on consistent application of that
221 system; it is up to the author/donor to decide if he or she is willing
222 to distribute software through any other system and a licensee cannot
223 impose that choice.
224
225 This section is intended to make thoroughly clear what is believed to
226 be a consequence of the rest of this License.
227
228 8. If the distribution and/or use of the Program is restricted in
229 certain countries either by patents or by copyrighted interfaces, the
230 original copyright holder who places the Program under this License
231 may add an explicit geographical distribution limitation excluding
232 those countries, so that distribution is permitted only in or among
233 countries not thus excluded. In such case, this License incorporates
234 the limitation as if written in the body of this License.
235
236 9. The Free Software Foundation may publish revised and/or new versions
237 of the General Public License from time to time. Such new versions will
238 be similar in spirit to the present version, but may differ in detail to
239 address new problems or concerns.
240
241 Each version is given a distinguishing version number. If the Program
242 specifies a version number of this License which applies to it and "any
243 later version", you have the option of following the terms and conditions
244 either of that version or of any later version published by the Free
245 Software Foundation. If the Program does not specify a version number of
246 this License, you may choose any version ever published by the Free Software
247 Foundation.
248
249 10. If you wish to incorporate parts of the Program into other free
250 programs whose distribution conditions are different, write to the author
251 to ask for permission. For software which is copyrighted by the Free
252 Software Foundation, write to the Free Software Foundation; we sometimes
253 make exceptions for this. Our decision will be guided by the two goals
254 of preserving the free status of all derivatives of our free software and
255 of promoting the sharing and reuse of software generally.
256
257 NO WARRANTY
258
259 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
260 FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
261 OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
262 PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
263 OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
264 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
265 TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
266 PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
267 REPAIR OR CORRECTION.
268
269 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
270 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
271 REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
272 INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
273 OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
274 TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
275 YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
276 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
277 POSSIBILITY OF SUCH DAMAGES.
278
279 END OF TERMS AND CONDITIONS
280
281 How to Apply These Terms to Your New Programs
282
283 If you develop a new program, and you want it to be of the greatest
284 possible use to the public, the best way to achieve this is to make it
285 free software which everyone can redistribute and change under these terms.
286
287 To do so, attach the following notices to the program. It is safest
288 to attach them to the start of each source file to most effectively
289 convey the exclusion of warranty; and each file should have at least
290 the "copyright" line and a pointer to where the full notice is found.
291
292 <one line to give the program's name and a brief idea of what it does.>
293 Copyright (C) <year> <name of author>
294
295 This program is free software; you can redistribute it and/or modify
296 it under the terms of the GNU General Public License as published by
297 the Free Software Foundation; either version 2 of the License, or
298 (at your option) any later version.
299
300 This program is distributed in the hope that it will be useful,
301 but WITHOUT ANY WARRANTY; without even the implied warranty of
302 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
303 GNU General Public License for more details.
304
305 You should have received a copy of the GNU General Public License
306 along with this program; if not, write to the Free Software
307 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
308
309
310 Also add information on how to contact you by electronic and paper mail.
311
312 If the program is interactive, make it output a short notice like this
313 when it starts in an interactive mode:
314
315 Gnomovision version 69, Copyright (C) year name of author
316 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
317 This is free software, and you are welcome to redistribute it
318 under certain conditions; type `show c' for details.
319
320 The hypothetical commands `show w' and `show c' should show the appropriate
321 parts of the General Public License. Of course, the commands you use may
322 be called something other than `show w' and `show c'; they could even be
323 mouse-clicks or menu items--whatever suits your program.
324
325 You should also get your employer (if you work as a programmer) or your
326 school, if any, to sign a "copyright disclaimer" for the program, if
327 necessary. Here is a sample; alter the names:
328
329 Yoyodyne, Inc., hereby disclaims all copyright interest in the program
330 `Gnomovision' (which makes passes at compilers) written by James Hacker.
331
332 <signature of Ty Coon>, 1 April 1989
333 Ty Coon, President of Vice
334
335 This General Public License does not permit incorporating your program into
336 proprietary programs. If your program is a subroutine library, you may
337 consider it more useful to permit linking proprietary applications with the
338 library. If this is what you want to do, use the GNU Library General
339 Public License instead of this License.
+0
-121
focus-blur/focusblur-3.2.6/ChangeLog less more
0 2010-06-22 Kyoichiro Suda <das atmark dream dot japan>
1
2 * configure.ac, po/Makefile.in.in: updated intltool.
3
4 * Made 3.2.6 release.
5
6 2010-05-23 Kyoichiro Suda <das atmark dream dot japan>
7
8 * pixmaps/Makefile.am: fixed bashisms. Reported by Bernd Zeimetz.
9
10 2009-07-31 Kyoichiro Suda <das atmark dream dot japan>
11
12 * src/diffusion.c (focusblur_diffusion_blur): fixed blurring brush
13 model.
14
15 * Made 3.2.5 release.
16
17 2008-10-20 Kyoichiro Suda <>
18
19 * Made 3.2.4 release.
20
21 2008-10-19 Kyoichiro Suda <>
22
23 * src/focusblurparam.h (FblurStoreParam)
24 * src/focusblurparam.c (fblur_init_param): added new parameter
25 enable_depth_aaa.
26
27 * src/interface.c (focusblur_dialog):
28 added new switch `Evade anti-alias'.
29
30 * src/render.c (focusblur_render_pixel): added implement for
31 rendering with depth map aaa.
32
33 * src/depthmap.[ch]
34 (focusblur_depth_map_has_aaa)
35 (focusblur_depth_map_get_aaa)
36 (focusblur_depth_map_make_aaa): added functions and buffer to
37 support aaa.
38
39 * src/Makefile.am, src/aaa.[ch]: new files detecting anti-aliased
40 pixels.
41
42 * src/2depthmap.[ch] (focusblur_depth_map_update)
43 * src/focusblurparam.c (focusblur_param_prepare)
44 * src/fftblurbuffer.c (focusblur_fft_buffer_update)
45 * src/render.c (focusblur_execute): pass rendering quality used as
46 level of aaa.
47
48 2008-10-09 Kyoichiro Suda <>
49
50 * fftblurbuffer.[hc]
51 (focusblur_fft_buffer_update_depth_division)
52 (focusblur_fft_buffer_update_depth_table):
53 make clear at just focused depth.
54
55 2008-09-06 Kyoichiro Suda <>
56
57 * configure.ac, pixmaps/Makefile.am: use AC_PATH_PROG, searching
58 for gdk-pixbuf-csource.
59
60 2008-05-25 Kyoichiro Suda <>
61
62 * po/ru.po: Russian translation is updated by Yury Aliaev.
63
64 * Made 3.2.3 release.
65
66 2008-04-03 Kyoichiro Suda <>
67
68 * src/interface.c (focusblur_dialog): use GtkMisc (parent of
69 GtkLabel) instead of GtkAlignment.
70
71 2008-03-09 Kyoichiro Suda <>
72
73 * Made 3.2.2 release.
74
75 2008-03-07 Kyoichiro Suda <>
76
77 * src/fftblurbuffer.c (focusblur_fft_buffer_draw): use selection
78 in preview.
79 Reported by Alexandre Prokoudine.
80
81 * src/fftblurproc.c (focusblur_fft_real_treat_outside): more
82 treatment for tiny area.
83
84 * src/render.c (focusblur_execute)
85 * src/fftblurbuffer.c (focusblur_fft_buffer_update)
86 (focusblur_fft_buffer_update_source): intersecting preview and
87 selection.
88
89 * src/focusblurenums.c: const values to static.
90 Reported by Yoshinori Yamakawa.
91
92 2008-02-23 Kyoichiro Suda <>
93
94 * src/focusblurrc.c (focusblur_rc_save_preferences):
95 retiring when failed to open rc-file.
96
97 * src/focusblurrc.c (focusblur_rc_load_preferences)
98 (focusblur_rc_save_preferences):
99 g_open() and g_fopen() are used instead of open() and fopen().
100
101 * fixed inline funcs.
102
103 * src/Makefile.am (uninstall-user): fixed typo
104
105 * src/fftblurbuffer.c (focusblur_fft_buffer_update): fixed
106 preview slowdown.
107
108 * Made 3.2.1 release.
109
110 2008-02-22 Kyoichiro Suda <>
111
112 * merge.patch: added
113
114 * released 3.2.0
115
116 2008-02-05 Kyoichiro Suda <>
117
118 * Brunched from 3.0.17.
119
120 * Applied many changes on version 3.1.x
+0
-268
focus-blur/focusblur-3.2.6/INSTALL less more
0 Focus Blur plug-in version 3.2.5, Jul 2009
1
2 Requirement
3 ===========
4
5 GIMP >= 2.4.0
6 http://www.gimp.org/
7
8 FFTW 3 (recommended); Compiled with single precision.
9 http://www.fftw.org/
10
11
12 Additional Usage
13 ================
14
15 `make install-user' and `make uninstall-user' for private installation.
16 Same as `install src/focusblur ~/.gimp-2.x/plug-ins'.
17 NLS won't work without to install a message catalog into system tree.
18
19 `--with-gimp-prefix'
20 If the gimp has been installed with non standard prefix, use
21 this option. For example `--with-gimp-prefix=~/test'.
22
23 `--without-fftw3'
24 Do not compile with FFTW3.
25
26 `--disable-mp'
27 disable to render with thread. if a machine doesn't have multiple
28 processors, thread support is not able to improve rendering speed.
29 configure script turns to enable when gthread is installed. if
30 you don't need it completely, type this option.
31
32
33 Installation Instructions
34 *************************
35
36 Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
37 Software Foundation, Inc.
38
39 This file is free documentation; the Free Software Foundation gives
40 unlimited permission to copy, distribute and modify it.
41
42 Basic Installation
43 ==================
44
45 These are generic installation instructions.
46
47 The `configure' shell script attempts to guess correct values for
48 various system-dependent variables used during compilation. It uses
49 those values to create a `Makefile' in each directory of the package.
50 It may also create one or more `.h' files containing system-dependent
51 definitions. Finally, it creates a shell script `config.status' that
52 you can run in the future to recreate the current configuration, and a
53 file `config.log' containing compiler output (useful mainly for
54 debugging `configure').
55
56 It can also use an optional file (typically called `config.cache'
57 and enabled with `--cache-file=config.cache' or simply `-C') that saves
58 the results of its tests to speed up reconfiguring. (Caching is
59 disabled by default to prevent problems with accidental use of stale
60 cache files.)
61
62 If you need to do unusual things to compile the package, please try
63 to figure out how `configure' could check whether to do them, and mail
64 diffs or instructions to the address given in the `README' so they can
65 be considered for the next release. If you are using the cache, and at
66 some point `config.cache' contains results you don't want to keep, you
67 may remove or edit it.
68
69 The file `configure.ac' (or `configure.in') is used to create
70 `configure' by a program called `autoconf'. You only need
71 `configure.ac' if you want to change it or regenerate `configure' using
72 a newer version of `autoconf'.
73
74 The simplest way to compile this package is:
75
76 1. `cd' to the directory containing the package's source code and type
77 `./configure' to configure the package for your system. If you're
78 using `csh' on an old version of System V, you might need to type
79 `sh ./configure' instead to prevent `csh' from trying to execute
80 `configure' itself.
81
82 Running `configure' takes awhile. While running, it prints some
83 messages telling which features it is checking for.
84
85 2. Type `make' to compile the package.
86
87 3. Optionally, type `make check' to run any self-tests that come with
88 the package.
89
90 4. Type `make install' to install the programs and any data files and
91 documentation.
92
93 5. You can remove the program binaries and object files from the
94 source code directory by typing `make clean'. To also remove the
95 files that `configure' created (so you can compile the package for
96 a different kind of computer), type `make distclean'. There is
97 also a `make maintainer-clean' target, but that is intended mainly
98 for the package's developers. If you use it, you may have to get
99 all sorts of other programs in order to regenerate files that came
100 with the distribution.
101
102 Compilers and Options
103 =====================
104
105 Some systems require unusual options for compilation or linking that the
106 `configure' script does not know about. Run `./configure --help' for
107 details on some of the pertinent environment variables.
108
109 You can give `configure' initial values for configuration parameters
110 by setting variables in the command line or in the environment. Here
111 is an example:
112
113 ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
114
115 *Note Defining Variables::, for more details.
116
117 Compiling For Multiple Architectures
118 ====================================
119
120 You can compile the package for more than one kind of computer at the
121 same time, by placing the object files for each architecture in their
122 own directory. To do this, you must use a version of `make' that
123 supports the `VPATH' variable, such as GNU `make'. `cd' to the
124 directory where you want the object files and executables to go and run
125 the `configure' script. `configure' automatically checks for the
126 source code in the directory that `configure' is in and in `..'.
127
128 If you have to use a `make' that does not support the `VPATH'
129 variable, you have to compile the package for one architecture at a
130 time in the source code directory. After you have installed the
131 package for one architecture, use `make distclean' before reconfiguring
132 for another architecture.
133
134 Installation Names
135 ==================
136
137 By default, `make install' installs the package's commands under
138 `/usr/local/bin', include files under `/usr/local/include', etc. You
139 can specify an installation prefix other than `/usr/local' by giving
140 `configure' the option `--prefix=PREFIX'.
141
142 You can specify separate installation prefixes for
143 architecture-specific files and architecture-independent files. If you
144 pass the option `--exec-prefix=PREFIX' to `configure', the package uses
145 PREFIX as the prefix for installing programs and libraries.
146 Documentation and other data files still use the regular prefix.
147
148 In addition, if you use an unusual directory layout you can give
149 options like `--bindir=DIR' to specify different values for particular
150 kinds of files. Run `configure --help' for a list of the directories
151 you can set and what kinds of files go in them.
152
153 If the package supports it, you can cause programs to be installed
154 with an extra prefix or suffix on their names by giving `configure' the
155 option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
156
157 Optional Features
158 =================
159
160 Some packages pay attention to `--enable-FEATURE' options to
161 `configure', where FEATURE indicates an optional part of the package.
162 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
163 is something like `gnu-as' or `x' (for the X Window System). The
164 `README' should mention any `--enable-' and `--with-' options that the
165 package recognizes.
166
167 For packages that use the X Window System, `configure' can usually
168 find the X include and library files automatically, but if it doesn't,
169 you can use the `configure' options `--x-includes=DIR' and
170 `--x-libraries=DIR' to specify their locations.
171
172 Specifying the System Type
173 ==========================
174
175 There may be some features `configure' cannot figure out automatically,
176 but needs to determine by the type of machine the package will run on.
177 Usually, assuming the package is built to be run on the _same_
178 architectures, `configure' can figure that out, but if it prints a
179 message saying it cannot guess the machine type, give it the
180 `--build=TYPE' option. TYPE can either be a short name for the system
181 type, such as `sun4', or a canonical name which has the form:
182
183 CPU-COMPANY-SYSTEM
184
185 where SYSTEM can have one of these forms:
186
187 OS KERNEL-OS
188
189 See the file `config.sub' for the possible values of each field. If
190 `config.sub' isn't included in this package, then this package doesn't
191 need to know the machine type.
192
193 If you are _building_ compiler tools for cross-compiling, you should
194 use the option `--target=TYPE' to select the type of system they will
195 produce code for.
196
197 If you want to _use_ a cross compiler, that generates code for a
198 platform different from the build platform, you should specify the
199 "host" platform (i.e., that on which the generated programs will
200 eventually be run) with `--host=TYPE'.
201
202 Sharing Defaults
203 ================
204
205 If you want to set default values for `configure' scripts to share, you
206 can create a site shell script called `config.site' that gives default
207 values for variables like `CC', `cache_file', and `prefix'.
208 `configure' looks for `PREFIX/share/config.site' if it exists, then
209 `PREFIX/etc/config.site' if it exists. Or, you can set the
210 `CONFIG_SITE' environment variable to the location of the site script.
211 A warning: not all `configure' scripts look for a site script.
212
213 Defining Variables
214 ==================
215
216 Variables not defined in a site shell script can be set in the
217 environment passed to `configure'. However, some packages may run
218 configure again during the build, and the customized values of these
219 variables may be lost. In order to avoid this problem, you should set
220 them in the `configure' command line, using `VAR=value'. For example:
221
222 ./configure CC=/usr/local2/bin/gcc
223
224 causes the specified `gcc' to be used as the C compiler (unless it is
225 overridden in the site shell script). Here is a another example:
226
227 /bin/bash ./configure CONFIG_SHELL=/bin/bash
228
229 Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
230 configuration-related scripts to be executed by `/bin/bash'.
231
232 `configure' Invocation
233 ======================
234
235 `configure' recognizes the following options to control how it operates.
236
237 `--help'
238 `-h'
239 Print a summary of the options to `configure', and exit.
240
241 `--version'
242 `-V'
243 Print the version of Autoconf used to generate the `configure'
244 script, and exit.
245
246 `--cache-file=FILE'
247 Enable the cache: use and save the results of the tests in FILE,
248 traditionally `config.cache'. FILE defaults to `/dev/null' to
249 disable caching.
250
251 `--config-cache'
252 `-C'
253 Alias for `--cache-file=config.cache'.
254
255 `--quiet'
256 `--silent'
257 `-q'
258 Do not print messages saying which checks are being made. To
259 suppress all normal output, redirect it to `/dev/null' (any error
260 messages will still be shown).
261
262 `--srcdir=DIR'
263 Look for the package's source code in directory DIR. Usually
264 `configure' can determine that directory automatically.
265
266 `configure' also accepts some other, not widely useful, options. Run
267 `configure --help' for more details.
+0
-10
focus-blur/focusblur-3.2.6/Makefile.am less more
0 SUBDIRS = po pixmaps src
1
2 install-user: all
3 (cd src && $(MAKE) $(AM_MAKEFLAGS) install-user)
4
5 uninstall-user:
6 (cd src && $(MAKE) $(AM_MAKEFLAGS) uninstall-user)
7
8 EXTRA_DIST = merge.patch mkinstalldirs \
9 libgimp/gettext.h libgimp/stdplugins-intl.h
+0
-721
focus-blur/focusblur-3.2.6/Makefile.in less more
0 # Makefile.in generated by automake 1.11.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
4 # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
5 # Inc.
6 # This Makefile.in is free software; the Free Software Foundation
7 # gives unlimited permission to copy and/or distribute it,
8 # with or without modifications, as long as this notice is preserved.
9
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
12 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
13 # PARTICULAR PURPOSE.
14
15 @SET_MAKE@
16 VPATH = @srcdir@
17 pkgdatadir = $(datadir)/@PACKAGE@
18 pkgincludedir = $(includedir)/@PACKAGE@
19 pkglibdir = $(libdir)/@PACKAGE@
20 pkglibexecdir = $(libexecdir)/@PACKAGE@
21 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
22 install_sh_DATA = $(install_sh) -c -m 644
23 install_sh_PROGRAM = $(install_sh) -c
24 install_sh_SCRIPT = $(install_sh) -c
25 INSTALL_HEADER = $(INSTALL_DATA)
26 transform = $(program_transform_name)
27 NORMAL_INSTALL = :
28 PRE_INSTALL = :
29 POST_INSTALL = :
30 NORMAL_UNINSTALL = :
31 PRE_UNINSTALL = :
32 POST_UNINSTALL = :
33 subdir = .
34 DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
35 $(srcdir)/Makefile.in $(srcdir)/config.h.in \
36 $(top_srcdir)/configure ABOUT-NLS AUTHORS COPYING ChangeLog \
37 INSTALL NEWS config.guess config.sub depcomp install-sh \
38 missing mkinstalldirs
39 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
40 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
41 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
42 $(ACLOCAL_M4)
43 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
44 configure.lineno config.status.lineno
45 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
46 CONFIG_HEADER = config.h
47 CONFIG_CLEAN_FILES =
48 CONFIG_CLEAN_VPATH_FILES =
49 SOURCES =
50 DIST_SOURCES =
51 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
52 html-recursive info-recursive install-data-recursive \
53 install-dvi-recursive install-exec-recursive \
54 install-html-recursive install-info-recursive \
55 install-pdf-recursive install-ps-recursive install-recursive \
56 installcheck-recursive installdirs-recursive pdf-recursive \
57 ps-recursive uninstall-recursive
58 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
59 distclean-recursive maintainer-clean-recursive
60 AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
61 $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
62 distdir dist dist-all distcheck
63 ETAGS = etags
64 CTAGS = ctags
65 DIST_SUBDIRS = $(SUBDIRS)
66 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
67 distdir = $(PACKAGE)-$(VERSION)
68 top_distdir = $(distdir)
69 am__remove_distdir = \
70 { test ! -d "$(distdir)" \
71 || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
72 && rm -fr "$(distdir)"; }; }
73 am__relativize = \
74 dir0=`pwd`; \
75 sed_first='s,^\([^/]*\)/.*$$,\1,'; \
76 sed_rest='s,^[^/]*/*,,'; \
77 sed_last='s,^.*/\([^/]*\)$$,\1,'; \
78 sed_butlast='s,/*[^/]*$$,,'; \
79 while test -n "$$dir1"; do \
80 first=`echo "$$dir1" | sed -e "$$sed_first"`; \
81 if test "$$first" != "."; then \
82 if test "$$first" = ".."; then \
83 dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
84 dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
85 else \
86 first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
87 if test "$$first2" = "$$first"; then \
88 dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
89 else \
90 dir2="../$$dir2"; \
91 fi; \
92 dir0="$$dir0"/"$$first"; \
93 fi; \
94 fi; \
95 dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
96 done; \
97 reldir="$$dir2"
98 GZIP_ENV = --best
99 DIST_ARCHIVES = $(distdir).tar.bz2 $(distdir).tar.xz
100 distuninstallcheck_listfiles = find . -type f -print
101 distcleancheck_listfiles = find . -type f -print
102 ACLOCAL = @ACLOCAL@
103 ALL_LINGUAS = @ALL_LINGUAS@
104 AMTAR = @AMTAR@
105 AUTOCONF = @AUTOCONF@
106 AUTOHEADER = @AUTOHEADER@
107 AUTOMAKE = @AUTOMAKE@
108 AWK = @AWK@
109 CATALOGS = @CATALOGS@
110 CATOBJEXT = @CATOBJEXT@
111 CC = @CC@
112 CCDEPMODE = @CCDEPMODE@
113 CFLAGS = @CFLAGS@
114 CPP = @CPP@
115 CPPFLAGS = @CPPFLAGS@
116 CYGPATH_W = @CYGPATH_W@
117 DATADIRNAME = @DATADIRNAME@
118 DEFS = @DEFS@
119 DEPDIR = @DEPDIR@
120 ECHO_C = @ECHO_C@
121 ECHO_N = @ECHO_N@
122 ECHO_T = @ECHO_T@
123 EGREP = @EGREP@
124 EXEEXT = @EXEEXT@
125 FFTW3_CFLAGS = @FFTW3_CFLAGS@
126 FFTW3_LIBS = @FFTW3_LIBS@
127 GDK_PIXBUF_CSOURCE = @GDK_PIXBUF_CSOURCE@
128 GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
129 GIMP_CFLAGS = @GIMP_CFLAGS@
130 GIMP_CFLAGS_NOUI = @GIMP_CFLAGS_NOUI@
131 GIMP_DATA_DIR = @GIMP_DATA_DIR@
132 GIMP_LIBS = @GIMP_LIBS@
133 GIMP_LIBS_NOUI = @GIMP_LIBS_NOUI@
134 GIMP_PLUGIN_DIR = @GIMP_PLUGIN_DIR@
135 GIMP_USER_PLUGIN_DIR = @GIMP_USER_PLUGIN_DIR@
136 GMOFILES = @GMOFILES@
137 GMSGFMT = @GMSGFMT@
138 GREP = @GREP@
139 GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
140 GTHREAD_LIBS = @GTHREAD_LIBS@
141 INSTALL = @INSTALL@
142 INSTALL_DATA = @INSTALL_DATA@
143 INSTALL_PROGRAM = @INSTALL_PROGRAM@
144 INSTALL_SCRIPT = @INSTALL_SCRIPT@
145 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
146 INSTOBJEXT = @INSTOBJEXT@
147 INTLLIBS = @INTLLIBS@
148 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
149 INTLTOOL_MERGE = @INTLTOOL_MERGE@
150 INTLTOOL_PERL = @INTLTOOL_PERL@
151 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
152 LDFLAGS = @LDFLAGS@
153 LIBOBJS = @LIBOBJS@
154 LIBS = @LIBS@
155 LTLIBOBJS = @LTLIBOBJS@
156 MAINT = @MAINT@
157 MAKEINFO = @MAKEINFO@
158 MKDIR_P = @MKDIR_P@
159 MKINSTALLDIRS = @MKINSTALLDIRS@
160 MSGFMT = @MSGFMT@
161 MSGFMT_OPTS = @MSGFMT_OPTS@
162 MSGMERGE = @MSGMERGE@
163 OBJEXT = @OBJEXT@
164 PACKAGE = @PACKAGE@
165 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
166 PACKAGE_NAME = @PACKAGE_NAME@
167 PACKAGE_STRING = @PACKAGE_STRING@
168 PACKAGE_TARNAME = @PACKAGE_TARNAME@
169 PACKAGE_VERSION = @PACKAGE_VERSION@
170 PATHSEP = @PATHSEP@
171 PATH_SEPARATOR = @PATH_SEPARATOR@
172 PKG_CONFIG = @PKG_CONFIG@
173 POFILES = @POFILES@
174 POSUB = @POSUB@
175 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
176 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
177 SET_MAKE = @SET_MAKE@
178 SHELL = @SHELL@
179 STRIP = @STRIP@
180 USE_NLS = @USE_NLS@
181 VERSION = @VERSION@
182 XGETTEXT = @XGETTEXT@
183 abs_builddir = @abs_builddir@
184 abs_srcdir = @abs_srcdir@
185 abs_top_builddir = @abs_top_builddir@
186 abs_top_srcdir = @abs_top_srcdir@
187 ac_ct_CC = @ac_ct_CC@
188 am__include = @am__include@
189 am__leading_dot = @am__leading_dot@
190 am__quote = @am__quote@
191 am__tar = @am__tar@
192 am__untar = @am__untar@
193 bindir = @bindir@
194 build_alias = @build_alias@
195 builddir = @builddir@
196 datadir = @datadir@
197 datarootdir = @datarootdir@
198 docdir = @docdir@
199 dvidir = @dvidir@
200 exec_prefix = @exec_prefix@
201 host_alias = @host_alias@
202 htmldir = @htmldir@
203 includedir = @includedir@
204 infodir = @infodir@
205 install_sh = @install_sh@
206 libdir = @libdir@
207 libexecdir = @libexecdir@
208 localedir = @localedir@
209 localstatedir = @localstatedir@
210 mandir = @mandir@
211 mkdir_p = @mkdir_p@
212 oldincludedir = @oldincludedir@
213 pdfdir = @pdfdir@
214 prefix = @prefix@
215 program_transform_name = @program_transform_name@
216 psdir = @psdir@
217 sbindir = @sbindir@
218 sharedstatedir = @sharedstatedir@
219 srcdir = @srcdir@
220 sysconfdir = @sysconfdir@
221 target_alias = @target_alias@
222 top_build_prefix = @top_build_prefix@
223 top_builddir = @top_builddir@
224 top_srcdir = @top_srcdir@
225 SUBDIRS = po pixmaps src
226 EXTRA_DIST = merge.patch mkinstalldirs \
227 libgimp/gettext.h libgimp/stdplugins-intl.h
228
229 all: config.h
230 $(MAKE) $(AM_MAKEFLAGS) all-recursive
231
232 .SUFFIXES:
233 am--refresh:
234 @:
235 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
236 @for dep in $?; do \
237 case '$(am__configure_deps)' in \
238 *$$dep*) \
239 echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
240 $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
241 && exit 0; \
242 exit 1;; \
243 esac; \
244 done; \
245 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
246 $(am__cd) $(top_srcdir) && \
247 $(AUTOMAKE) --gnu Makefile
248 .PRECIOUS: Makefile
249 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
250 @case '$?' in \
251 *config.status*) \
252 echo ' $(SHELL) ./config.status'; \
253 $(SHELL) ./config.status;; \
254 *) \
255 echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
256 cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
257 esac;
258
259 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
260 $(SHELL) ./config.status --recheck
261
262 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
263 $(am__cd) $(srcdir) && $(AUTOCONF)
264 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
265 $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
266 $(am__aclocal_m4_deps):
267
268 config.h: stamp-h1
269 @if test ! -f $@; then \
270 rm -f stamp-h1; \
271 $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
272 else :; fi
273
274 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
275 @rm -f stamp-h1
276 cd $(top_builddir) && $(SHELL) ./config.status config.h
277 $(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
278 ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
279 rm -f stamp-h1
280 touch $@
281
282 distclean-hdr:
283 -rm -f config.h stamp-h1
284
285 # This directory's subdirectories are mostly independent; you can cd
286 # into them and run `make' without going through this Makefile.
287 # To change the values of `make' variables: instead of editing Makefiles,
288 # (1) if the variable is set in `config.status', edit `config.status'
289 # (which will cause the Makefiles to be regenerated when you run `make');
290 # (2) otherwise, pass the desired values on the `make' command line.
291 $(RECURSIVE_TARGETS):
292 @fail= failcom='exit 1'; \
293 for f in x $$MAKEFLAGS; do \
294 case $$f in \
295 *=* | --[!k]*);; \
296 *k*) failcom='fail=yes';; \
297 esac; \
298 done; \
299 dot_seen=no; \
300 target=`echo $@ | sed s/-recursive//`; \
301 list='$(SUBDIRS)'; for subdir in $$list; do \
302 echo "Making $$target in $$subdir"; \
303 if test "$$subdir" = "."; then \
304 dot_seen=yes; \
305 local_target="$$target-am"; \
306 else \
307 local_target="$$target"; \
308 fi; \
309 ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
310 || eval $$failcom; \
311 done; \
312 if test "$$dot_seen" = "no"; then \
313 $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
314 fi; test -z "$$fail"
315
316 $(RECURSIVE_CLEAN_TARGETS):
317 @fail= failcom='exit 1'; \
318 for f in x $$MAKEFLAGS; do \
319 case $$f in \
320 *=* | --[!k]*);; \
321 *k*) failcom='fail=yes';; \
322 esac; \
323 done; \
324 dot_seen=no; \
325 case "$@" in \
326 distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
327 *) list='$(SUBDIRS)' ;; \
328 esac; \
329 rev=''; for subdir in $$list; do \
330 if test "$$subdir" = "."; then :; else \
331 rev="$$subdir $$rev"; \
332 fi; \
333 done; \
334 rev="$$rev ."; \
335 target=`echo $@ | sed s/-recursive//`; \
336 for subdir in $$rev; do \
337 echo "Making $$target in $$subdir"; \
338 if test "$$subdir" = "."; then \
339 local_target="$$target-am"; \
340 else \
341 local_target="$$target"; \
342 fi; \
343 ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
344 || eval $$failcom; \
345 done && test -z "$$fail"
346 tags-recursive:
347 list='$(SUBDIRS)'; for subdir in $$list; do \
348 test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
349 done
350 ctags-recursive:
351 list='$(SUBDIRS)'; for subdir in $$list; do \
352 test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
353 done
354
355 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
356 list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
357 unique=`for i in $$list; do \
358 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
359 done | \
360 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
361 END { if (nonempty) { for (i in files) print i; }; }'`; \
362 mkid -fID $$unique
363 tags: TAGS
364
365 TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
366 $(TAGS_FILES) $(LISP)
367 set x; \
368 here=`pwd`; \
369 if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
370 include_option=--etags-include; \
371 empty_fix=.; \
372 else \
373 include_option=--include; \
374 empty_fix=; \
375 fi; \
376 list='$(SUBDIRS)'; for subdir in $$list; do \
377 if test "$$subdir" = .; then :; else \
378 test ! -f $$subdir/TAGS || \
379 set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
380 fi; \
381 done; \
382 list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
383 unique=`for i in $$list; do \
384 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
385 done | \
386 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
387 END { if (nonempty) { for (i in files) print i; }; }'`; \
388 shift; \
389 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
390 test -n "$$unique" || unique=$$empty_fix; \
391 if test $$# -gt 0; then \
392 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
393 "$$@" $$unique; \
394 else \
395 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
396 $$unique; \
397 fi; \
398 fi
399 ctags: CTAGS
400 CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
401 $(TAGS_FILES) $(LISP)
402 list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
403 unique=`for i in $$list; do \
404 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
405 done | \
406 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
407 END { if (nonempty) { for (i in files) print i; }; }'`; \
408 test -z "$(CTAGS_ARGS)$$unique" \
409 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
410 $$unique
411
412 GTAGS:
413 here=`$(am__cd) $(top_builddir) && pwd` \
414 && $(am__cd) $(top_srcdir) \
415 && gtags -i $(GTAGS_ARGS) "$$here"
416
417 distclean-tags:
418 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
419
420 distdir: $(DISTFILES)
421 $(am__remove_distdir)
422 test -d "$(distdir)" || mkdir "$(distdir)"
423 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
424 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
425 list='$(DISTFILES)'; \
426 dist_files=`for file in $$list; do echo $$file; done | \
427 sed -e "s|^$$srcdirstrip/||;t" \
428 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
429 case $$dist_files in \
430 */*) $(MKDIR_P) `echo "$$dist_files" | \
431 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
432 sort -u` ;; \
433 esac; \
434 for file in $$dist_files; do \
435 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
436 if test -d $$d/$$file; then \
437 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
438 if test -d "$(distdir)/$$file"; then \
439 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
440 fi; \
441 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
442 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
443 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
444 fi; \
445 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
446 else \
447 test -f "$(distdir)/$$file" \
448 || cp -p $$d/$$file "$(distdir)/$$file" \
449 || exit 1; \
450 fi; \
451 done
452 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
453 if test "$$subdir" = .; then :; else \
454 test -d "$(distdir)/$$subdir" \
455 || $(MKDIR_P) "$(distdir)/$$subdir" \
456 || exit 1; \
457 fi; \
458 done
459 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
460 if test "$$subdir" = .; then :; else \
461 dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
462 $(am__relativize); \
463 new_distdir=$$reldir; \
464 dir1=$$subdir; dir2="$(top_distdir)"; \
465 $(am__relativize); \
466 new_top_distdir=$$reldir; \
467 echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
468 echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
469 ($(am__cd) $$subdir && \
470 $(MAKE) $(AM_MAKEFLAGS) \
471 top_distdir="$$new_top_distdir" \
472 distdir="$$new_distdir" \
473 am__remove_distdir=: \
474 am__skip_length_check=: \
475 am__skip_mode_fix=: \
476 distdir) \
477 || exit 1; \
478 fi; \
479 done
480 -test -n "$(am__skip_mode_fix)" \
481 || find "$(distdir)" -type d ! -perm -755 \
482 -exec chmod u+rwx,go+rx {} \; -o \
483 ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
484 ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
485 ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
486 || chmod -R a+r "$(distdir)"
487 dist-gzip: distdir
488 tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
489 $(am__remove_distdir)
490 dist-bzip2: distdir
491 tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
492 $(am__remove_distdir)
493
494 dist-lzma: distdir
495 tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
496 $(am__remove_distdir)
497 dist-xz: distdir
498 tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
499 $(am__remove_distdir)
500
501 dist-tarZ: distdir
502 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
503 $(am__remove_distdir)
504
505 dist-shar: distdir
506 shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
507 $(am__remove_distdir)
508
509 dist-zip: distdir
510 -rm -f $(distdir).zip
511 zip -rq $(distdir).zip $(distdir)
512 $(am__remove_distdir)
513
514 dist dist-all: distdir
515 tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
516 tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
517 $(am__remove_distdir)
518
519 # This target untars the dist file and tries a VPATH configuration. Then
520 # it guarantees that the distribution is self-contained by making another
521 # tarfile.
522 distcheck: dist
523 case '$(DIST_ARCHIVES)' in \
524 *.tar.gz*) \
525 GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
526 *.tar.bz2*) \
527 bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
528 *.tar.lzma*) \
529 lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
530 *.tar.xz*) \
531 xz -dc $(distdir).tar.xz | $(am__untar) ;;\
532 *.tar.Z*) \
533 uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
534 *.shar.gz*) \
535 GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
536 *.zip*) \
537 unzip $(distdir).zip ;;\
538 esac
539 chmod -R a-w $(distdir); chmod a+w $(distdir)
540 mkdir $(distdir)/_build
541 mkdir $(distdir)/_inst
542 chmod a-w $(distdir)
543 test -d $(distdir)/_build || exit 0; \
544 dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
545 && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
546 && am__cwd=`pwd` \
547 && $(am__cd) $(distdir)/_build \
548 && ../configure --srcdir=.. --prefix="$$dc_install_base" \
549 $(DISTCHECK_CONFIGURE_FLAGS) \
550 && $(MAKE) $(AM_MAKEFLAGS) \
551 && $(MAKE) $(AM_MAKEFLAGS) dvi \
552 && $(MAKE) $(AM_MAKEFLAGS) check \
553 && $(MAKE) $(AM_MAKEFLAGS) install \
554 && $(MAKE) $(AM_MAKEFLAGS) installcheck \
555 && $(MAKE) $(AM_MAKEFLAGS) uninstall \
556 && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
557 distuninstallcheck \
558 && chmod -R a-w "$$dc_install_base" \
559 && ({ \
560 (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
561 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
562 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
563 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
564 distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
565 } || { rm -rf "$$dc_destdir"; exit 1; }) \
566 && rm -rf "$$dc_destdir" \
567 && $(MAKE) $(AM_MAKEFLAGS) dist \
568 && rm -rf $(DIST_ARCHIVES) \
569 && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
570 && cd "$$am__cwd" \
571 || exit 1
572 $(am__remove_distdir)
573 @(echo "$(distdir) archives ready for distribution: "; \
574 list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
575 sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
576 distuninstallcheck:
577 @$(am__cd) '$(distuninstallcheck_dir)' \
578 && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
579 || { echo "ERROR: files left after uninstall:" ; \
580 if test -n "$(DESTDIR)"; then \
581 echo " (check DESTDIR support)"; \
582 fi ; \
583 $(distuninstallcheck_listfiles) ; \
584 exit 1; } >&2
585 distcleancheck: distclean
586 @if test '$(srcdir)' = . ; then \
587 echo "ERROR: distcleancheck can only run from a VPATH build" ; \
588 exit 1 ; \
589 fi
590 @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
591 || { echo "ERROR: files left in build directory after distclean:" ; \
592 $(distcleancheck_listfiles) ; \
593 exit 1; } >&2
594 check-am: all-am
595 check: check-recursive
596 all-am: Makefile config.h
597 installdirs: installdirs-recursive
598 installdirs-am:
599 install: install-recursive
600 install-exec: install-exec-recursive
601 install-data: install-data-recursive
602 uninstall: uninstall-recursive
603
604 install-am: all-am
605 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
606
607 installcheck: installcheck-recursive
608 install-strip:
609 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
610 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
611 `test -z '$(STRIP)' || \
612 echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
613 mostlyclean-generic:
614
615 clean-generic:
616
617 distclean-generic:
618 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
619 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
620
621 maintainer-clean-generic:
622 @echo "This command is intended for maintainers to use"
623 @echo "it deletes files that may require special tools to rebuild."
624 clean: clean-recursive
625
626 clean-am: clean-generic mostlyclean-am
627
628 distclean: distclean-recursive
629 -rm -f $(am__CONFIG_DISTCLEAN_FILES)
630 -rm -f Makefile
631 distclean-am: clean-am distclean-generic distclean-hdr distclean-tags
632
633 dvi: dvi-recursive
634
635 dvi-am:
636
637 html: html-recursive
638
639 html-am:
640
641 info: info-recursive
642
643 info-am:
644
645 install-data-am:
646
647 install-dvi: install-dvi-recursive
648
649 install-dvi-am:
650
651 install-exec-am:
652
653 install-html: install-html-recursive
654
655 install-html-am:
656
657 install-info: install-info-recursive
658
659 install-info-am:
660
661 install-man:
662
663 install-pdf: install-pdf-recursive
664
665 install-pdf-am:
666
667 install-ps: install-ps-recursive
668
669 install-ps-am:
670
671 installcheck-am:
672
673 maintainer-clean: maintainer-clean-recursive
674 -rm -f $(am__CONFIG_DISTCLEAN_FILES)
675 -rm -rf $(top_srcdir)/autom4te.cache
676 -rm -f Makefile
677 maintainer-clean-am: distclean-am maintainer-clean-generic
678
679 mostlyclean: mostlyclean-recursive
680
681 mostlyclean-am: mostlyclean-generic
682
683 pdf: pdf-recursive
684
685 pdf-am:
686
687 ps: ps-recursive
688
689 ps-am:
690
691 uninstall-am:
692
693 .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
694 ctags-recursive install-am install-strip tags-recursive
695
696 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
697 all all-am am--refresh check check-am clean clean-generic \
698 ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
699 dist-lzma dist-shar dist-tarZ dist-xz dist-zip distcheck \
700 distclean distclean-generic distclean-hdr distclean-tags \
701 distcleancheck distdir distuninstallcheck dvi dvi-am html \
702 html-am info info-am install install-am install-data \
703 install-data-am install-dvi install-dvi-am install-exec \
704 install-exec-am install-html install-html-am install-info \
705 install-info-am install-man install-pdf install-pdf-am \
706 install-ps install-ps-am install-strip installcheck \
707 installcheck-am installdirs installdirs-am maintainer-clean \
708 maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
709 pdf-am ps ps-am tags tags-recursive uninstall uninstall-am
710
711
712 install-user: all
713 (cd src && $(MAKE) $(AM_MAKEFLAGS) install-user)
714
715 uninstall-user:
716 (cd src && $(MAKE) $(AM_MAKEFLAGS) uninstall-user)
717
718 # Tell versions [3.59,3.63) of GNU make to not export all variables.
719 # Otherwise a system limit (for SysV at least) may be exceeded.
720 .NOEXPORT:
+0
-0
focus-blur/focusblur-3.2.6/NEWS less more
(Empty file)
+0
-20
focus-blur/focusblur-3.2.6/README less more
0 Focus Blur plug-in version 3.2.6, Jun 2010
1 ----------------------------------------------------------------
2
3 Description
4 ===========
5
6 Focus Blur plug-in is blurring effect, a kind of called DoF.
7 This software makes a out of focus with luminosity and depth,
8 like a sight or lenses.
9 It can be used with depth map, depth fakes and shine effect.
10 Also it can work as simple and applicable blur.
11
12 License
13 =======
14
15 This package is distributed under the GPL. see also COPYING.
16
17
18 ----------------------------------------------------------------
19 Kyoichiro Suda <das atmark dream dot japan>
+0
-1987
focus-blur/focusblur-3.2.6/aclocal.m4 less more
0 # generated automatically by aclocal 1.11.1 -*- Autoconf -*-
1
2 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
3 # 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
4 # This file is free software; the Free Software Foundation
5 # gives unlimited permission to copy and/or distribute it,
6 # with or without modifications, as long as this notice is preserved.
7
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
10 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
11 # PARTICULAR PURPOSE.
12
13 m4_ifndef([AC_AUTOCONF_VERSION],
14 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
15 m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.63],,
16 [m4_warning([this file was generated for autoconf 2.63.
17 You have another version of autoconf. It may work, but is not guaranteed to.
18 If you have problems, you may need to regenerate the build system entirely.
19 To do so, use the procedure documented by the package, typically `autoreconf'.])])
20
21 # Configure paths for GIMP-2.0
22 # Manish Singh, Sven Neumann
23 # Large parts shamelessly stolen from Owen Taylor
24
25 dnl AM_PATH_GIMP_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
26 dnl Test for GIMP, and define GIMP_CFLAGS and GIMP_LIBS
27 dnl
28 AC_DEFUN([AM_PATH_GIMP_2_0],
29 [dnl
30 dnl Get the cflags and libraries from pkg-config
31 dnl
32
33 AC_ARG_ENABLE(gimptest, [ --disable-gimptest do not try to compile and run a test GIMP program],, enable_gimptest=yes)
34
35 pkg_name=gimp-2.0
36 pkg_config_args="$pkg_name gimpui-2.0"
37
38 no_gimp=""
39
40 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
41
42 if test x$PKG_CONFIG != xno ; then
43 if pkg-config --atleast-pkgconfig-version 0.7 ; then
44 :
45 else
46 echo *** pkg-config too old; version 0.7 or better required.
47 no_gimp=yes
48 PKG_CONFIG=no
49 fi
50 else
51 no_gimp=yes
52 fi
53
54 min_gimp_version=ifelse([$1], ,2.0.0,$1)
55 AC_MSG_CHECKING(for GIMP - version >= $min_gimp_version)
56
57 if test x$PKG_CONFIG != xno ; then
58 ## don't try to run the test against uninstalled libtool libs
59 if $PKG_CONFIG --uninstalled $pkg_config_args; then
60 echo "Will use uninstalled version of GIMP found in PKG_CONFIG_PATH"
61 enable_gimptest=no
62 fi
63
64 if $PKG_CONFIG --atleast-version $min_gimp_version $pkg_config_args; then
65 :
66 else
67 no_gimp=yes
68 fi
69 fi
70
71 if test x"$no_gimp" = x ; then
72 GIMP_CFLAGS=`$PKG_CONFIG $pkg_config_args --cflags`
73 GIMP_LIBS=`$PKG_CONFIG $pkg_config_args --libs`
74 GIMP_CFLAGS_NOUI=`$PKG_CONFIG $pkg_name --cflags`
75 GIMP_LIBS_NOUI=`$PKG_CONFIG $pkg_name --libs`
76 GIMP_DATA_DIR=`$PKG_CONFIG $pkg_name --variable=gimpdatadir`
77 GIMP_PLUGIN_DIR=`$PKG_CONFIG $pkg_name --variable=gimplibdir`
78
79 gimp_pkg_major_version=`$PKG_CONFIG --modversion $pkg_name | \
80 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
81 gimp_pkg_minor_version=`$PKG_CONFIG --modversion $pkg_name | \
82 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
83 gimp_pkg_micro_version=`$PKG_CONFIG --modversion $pkg_name | \
84 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
85 if test "x$enable_gimptest" = "xyes" ; then
86 ac_save_CFLAGS="$CFLAGS"
87 ac_save_LIBS="$LIBS"
88 CFLAGS="$CFLAGS $GIMP_CFLAGS"
89 LIBS="$GIMP_LIBS $LIBS"
90
91 dnl
92 dnl Now check if the installed GIMP is sufficiently new. (Also sanity
93 dnl checks the results of pkg-config to some extent
94 dnl
95 rm -f conf.gimptest
96 AC_TRY_RUN([
97 #include <stdio.h>
98 #include <stdlib.h>
99
100 #include <libgimp/gimp.h>
101
102 GimpPlugInInfo PLUG_IN_INFO =
103 {
104 NULL, /* init_proc */
105 NULL, /* quit_proc */
106 NULL, /* query_proc */
107 NULL /* run_proc */
108 };
109
110 int main ()
111 {
112 int major, minor, micro;
113 char *tmp_version;
114
115 system ("touch conf.gimptest");
116
117 /* HP/UX 9 (%@#!) writes to sscanf strings */
118 tmp_version = g_strdup("$min_gimp_version");
119 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
120 printf("%s, bad version string\n", "$min_gimp_version");
121 exit(1);
122 }
123
124 if (($gimp_pkg_major_version > major) ||
125 (($gimp_pkg_major_version == major) && ($gimp_pkg_minor_version > minor)) ||
126 (($gimp_pkg_major_version == major) && ($gimp_pkg_minor_version == minor) && ($gimp_pkg_micro_version >= micro)))
127 {
128 return 0;
129 }
130 else
131 {
132 printf("\n*** 'pkg-config --modversion %s' returned %d.%d.%d, but the minimum version\n", "$pkg_name", $gimp_pkg_major_version, $gimp_pkg_minor_version, $gimp_pkg_micro_version);
133 printf("*** of GIMP required is %d.%d.%d. If pkg-config is correct, then it is\n", major, minor, micro);
134 printf("*** best to upgrade to the required version.\n");
135 printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n");
136 printf("*** to point to the correct the correct configuration files\n");
137 return 1;
138 }
139 }
140
141 ],, no_gimp=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
142 CFLAGS="$ac_save_CFLAGS"
143 LIBS="$ac_save_LIBS"
144 fi
145 fi
146 if test "x$no_gimp" = x ; then
147 AC_MSG_RESULT(yes (version $gimp_pkg_major_version.$gimp_pkg_minor_version.$gimp_pkg_micro_version))
148 ifelse([$2], , :, [$2])
149 else
150 if test "$PKG_CONFIG" = "no" ; then
151 echo "*** A new enough version of pkg-config was not found."
152 echo "*** See http://www.freedesktop.org/software/pkgconfig/"
153 else
154 if test -f conf.gimptest ; then
155 :
156 else
157 echo "*** Could not run GIMP test program, checking why..."
158 CFLAGS="$CFLAGS $GIMP_CFLAGS"
159 LIBS="$LIBS $GIMP_LIBS"
160 AC_TRY_LINK([
161 #include <stdio.h>
162 #include <libgimp/gimp.h>
163
164 GimpPlugInInfo PLUG_IN_INFO =
165 {
166 NULL, /* init_proc */
167 NULL, /* quit_proc */
168 NULL, /* query_proc */
169 NULL /* run_proc */
170 };
171 ], [ return 0; ],
172 [ echo "*** The test program compiled, but did not run. This usually means"
173 echo "*** that the run-time linker is not finding GIMP or finding the wrong"
174 echo "*** version of GIMP. If it is not finding GIMP, you'll need to set your"
175 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
176 echo "*** to the installed location Also, make sure you have run ldconfig if that"
177 echo "*** is required on your system"
178 echo "***"
179 echo "*** If you have an old version installed, it is best to remove it, although"
180 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
181 [ echo "*** The test program failed to compile or link. See the file config.log for the"
182 echo "*** exact error that occurred. This usually means GIMP is incorrectly installed."])
183 CFLAGS="$ac_save_CFLAGS"
184 LIBS="$ac_save_LIBS"
185 fi
186 fi
187 GIMP_CFLAGS=""
188 GIMP_LIBS=""
189 GIMP_CFLAGS_NOUI=""
190 GIMP_LIBS_NOUI=""
191 ifelse([$3], , :, [$3])
192 fi
193 AC_SUBST(GIMP_CFLAGS)
194 AC_SUBST(GIMP_LIBS)
195 AC_SUBST(GIMP_CFLAGS_NOUI)
196 AC_SUBST(GIMP_LIBS_NOUI)
197 AC_SUBST(GIMP_DATA_DIR)
198 AC_SUBST(GIMP_PLUGIN_DIR)
199 rm -f conf.gimptest
200 ])
201
202 # Copyright (C) 1995-2002 Free Software Foundation, Inc.
203 # Copyright (C) 2001-2003,2004 Red Hat, Inc.
204 #
205 # This file is free software, distributed under the terms of the GNU
206 # General Public License. As a special exception to the GNU General
207 # Public License, this file may be distributed as part of a program
208 # that contains a configuration script generated by Autoconf, under
209 # the same distribution terms as the rest of that program.
210 #
211 # This file can be copied and used freely without restrictions. It can
212 # be used in projects which are not available under the GNU Public License
213 # but which still want to provide support for the GNU gettext functionality.
214 #
215 # Macro to add for using GNU gettext.
216 # Ulrich Drepper <drepper@cygnus.com>, 1995, 1996
217 #
218 # Modified to never use included libintl.
219 # Owen Taylor <otaylor@redhat.com>, 12/15/1998
220 #
221 # Major rework to remove unused code
222 # Owen Taylor <otaylor@redhat.com>, 12/11/2002
223 #
224 # Added better handling of ALL_LINGUAS from GNU gettext version
225 # written by Bruno Haible, Owen Taylor <otaylor.redhat.com> 5/30/3002
226 #
227 # Modified to require ngettext
228 # Matthias Clasen <mclasen@redhat.com> 08/06/2004
229 #
230 # We need this here as well, since someone might use autoconf-2.5x
231 # to configure GLib then an older version to configure a package
232 # using AM_GLIB_GNU_GETTEXT
233 AC_PREREQ(2.53)
234
235 dnl
236 dnl We go to great lengths to make sure that aclocal won't
237 dnl try to pull in the installed version of these macros
238 dnl when running aclocal in the glib directory.
239 dnl
240 m4_copy([AC_DEFUN],[glib_DEFUN])
241 m4_copy([AC_REQUIRE],[glib_REQUIRE])
242 dnl
243 dnl At the end, if we're not within glib, we'll define the public
244 dnl definitions in terms of our private definitions.
245 dnl
246
247 # GLIB_LC_MESSAGES
248 #--------------------
249 glib_DEFUN([GLIB_LC_MESSAGES],
250 [AC_CHECK_HEADERS([locale.h])
251 if test $ac_cv_header_locale_h = yes; then
252 AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
253 [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
254 am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
255 if test $am_cv_val_LC_MESSAGES = yes; then
256 AC_DEFINE(HAVE_LC_MESSAGES, 1,
257 [Define if your <locale.h> file defines LC_MESSAGES.])
258 fi
259 fi])
260
261 # GLIB_PATH_PROG_WITH_TEST
262 #----------------------------
263 dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
264 dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
265 glib_DEFUN([GLIB_PATH_PROG_WITH_TEST],
266 [# Extract the first word of "$2", so it can be a program name with args.
267 set dummy $2; ac_word=[$]2
268 AC_MSG_CHECKING([for $ac_word])
269 AC_CACHE_VAL(ac_cv_path_$1,
270 [case "[$]$1" in
271 /*)
272 ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
273 ;;
274 *)
275 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
276 for ac_dir in ifelse([$5], , $PATH, [$5]); do
277 test -z "$ac_dir" && ac_dir=.
278 if test -f $ac_dir/$ac_word; then
279 if [$3]; then
280 ac_cv_path_$1="$ac_dir/$ac_word"
281 break
282 fi
283 fi
284 done
285 IFS="$ac_save_ifs"
286 dnl If no 4th arg is given, leave the cache variable unset,
287 dnl so AC_PATH_PROGS will keep looking.
288 ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
289 ])dnl
290 ;;
291 esac])dnl
292 $1="$ac_cv_path_$1"
293 if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
294 AC_MSG_RESULT([$]$1)
295 else
296 AC_MSG_RESULT(no)
297 fi
298 AC_SUBST($1)dnl
299 ])
300
301 # GLIB_WITH_NLS
302 #-----------------
303 glib_DEFUN([GLIB_WITH_NLS],
304 dnl NLS is obligatory
305 [USE_NLS=yes
306 AC_SUBST(USE_NLS)
307
308 gt_cv_have_gettext=no
309
310 CATOBJEXT=NONE
311 XGETTEXT=:
312 INTLLIBS=
313
314 AC_CHECK_HEADER(libintl.h,
315 [gt_cv_func_dgettext_libintl="no"
316 libintl_extra_libs=""
317
318 #
319 # First check in libc
320 #
321 AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc,
322 [AC_TRY_LINK([
323 #include <libintl.h>
324 ],
325 [return !ngettext ("","", 1)],
326 gt_cv_func_ngettext_libc=yes,
327 gt_cv_func_ngettext_libc=no)
328 ])
329
330 if test "$gt_cv_func_ngettext_libc" = "yes" ; then
331 AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
332 [AC_TRY_LINK([
333 #include <libintl.h>
334 ],
335 [return !dgettext ("","")],
336 gt_cv_func_dgettext_libc=yes,
337 gt_cv_func_dgettext_libc=no)
338 ])
339 fi
340
341 if test "$gt_cv_func_ngettext_libc" = "yes" ; then
342 AC_CHECK_FUNCS(bind_textdomain_codeset)
343 fi
344
345 #
346 # If we don't have everything we want, check in libintl
347 #
348 if test "$gt_cv_func_dgettext_libc" != "yes" \
349 || test "$gt_cv_func_ngettext_libc" != "yes" \
350 || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
351
352 AC_CHECK_LIB(intl, bindtextdomain,
353 [AC_CHECK_LIB(intl, ngettext,
354 [AC_CHECK_LIB(intl, dgettext,
355 gt_cv_func_dgettext_libintl=yes)])])
356
357 if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
358 AC_MSG_CHECKING([if -liconv is needed to use gettext])
359 AC_MSG_RESULT([])
360 AC_CHECK_LIB(intl, ngettext,
361 [AC_CHECK_LIB(intl, dcgettext,
362 [gt_cv_func_dgettext_libintl=yes
363 libintl_extra_libs=-liconv],
364 :,-liconv)],
365 :,-liconv)
366 fi
367
368 #
369 # If we found libintl, then check in it for bind_textdomain_codeset();
370 # we'll prefer libc if neither have bind_textdomain_codeset(),
371 # and both have dgettext and ngettext
372 #
373 if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
374 glib_save_LIBS="$LIBS"
375 LIBS="$LIBS -lintl $libintl_extra_libs"
376 unset ac_cv_func_bind_textdomain_codeset
377 AC_CHECK_FUNCS(bind_textdomain_codeset)
378 LIBS="$glib_save_LIBS"
379
380 if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
381 gt_cv_func_dgettext_libc=no
382 else
383 if test "$gt_cv_func_dgettext_libc" = "yes" \
384 && test "$gt_cv_func_ngettext_libc" = "yes"; then
385 gt_cv_func_dgettext_libintl=no
386 fi
387 fi
388 fi
389 fi
390
391 if test "$gt_cv_func_dgettext_libc" = "yes" \
392 || test "$gt_cv_func_dgettext_libintl" = "yes"; then
393 gt_cv_have_gettext=yes
394 fi
395
396 if test "$gt_cv_func_dgettext_libintl" = "yes"; then
397 INTLLIBS="-lintl $libintl_extra_libs"
398 fi
399
400 if test "$gt_cv_have_gettext" = "yes"; then
401 AC_DEFINE(HAVE_GETTEXT,1,
402 [Define if the GNU gettext() function is already present or preinstalled.])
403 GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
404 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
405 if test "$MSGFMT" != "no"; then
406 glib_save_LIBS="$LIBS"
407 LIBS="$LIBS $INTLLIBS"
408 AC_CHECK_FUNCS(dcgettext)
409 MSGFMT_OPTS=
410 AC_MSG_CHECKING([if msgfmt accepts -c])
411 GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[
412 msgid ""
413 msgstr ""
414 "Content-Type: text/plain; charset=UTF-8\n"
415 "Project-Id-Version: test 1.0\n"
416 "PO-Revision-Date: 2007-02-15 12:01+0100\n"
417 "Last-Translator: test <foo@bar.xx>\n"
418 "Language-Team: C <LL@li.org>\n"
419 "MIME-Version: 1.0\n"
420 "Content-Transfer-Encoding: 8bit\n"
421 ], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])])
422 AC_SUBST(MSGFMT_OPTS)
423 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
424 GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
425 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
426 AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
427 return _nl_msg_cat_cntr],
428 [CATOBJEXT=.gmo
429 DATADIRNAME=share],
430 [case $host in
431 *-*-solaris*)
432 dnl On Solaris, if bind_textdomain_codeset is in libc,
433 dnl GNU format message catalog is always supported,
434 dnl since both are added to the libc all together.
435 dnl Hence, we'd like to go with DATADIRNAME=share and
436 dnl and CATOBJEXT=.gmo in this case.
437 AC_CHECK_FUNC(bind_textdomain_codeset,
438 [CATOBJEXT=.gmo
439 DATADIRNAME=share],
440 [CATOBJEXT=.mo
441 DATADIRNAME=lib])
442 ;;
443 *)
444 CATOBJEXT=.mo
445 DATADIRNAME=lib
446 ;;
447 esac])
448 LIBS="$glib_save_LIBS"
449 INSTOBJEXT=.mo
450 else
451 gt_cv_have_gettext=no
452 fi
453 fi
454 ])
455
456 if test "$gt_cv_have_gettext" = "yes" ; then
457 AC_DEFINE(ENABLE_NLS, 1,
458 [always defined to indicate that i18n is enabled])
459 fi
460
461 dnl Test whether we really found GNU xgettext.
462 if test "$XGETTEXT" != ":"; then
463 dnl If it is not GNU xgettext we define it as : so that the
464 dnl Makefiles still can work.
465 if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
466 : ;
467 else
468 AC_MSG_RESULT(
469 [found xgettext program is not GNU xgettext; ignore it])
470 XGETTEXT=":"
471 fi
472 fi
473
474 # We need to process the po/ directory.
475 POSUB=po
476
477 AC_OUTPUT_COMMANDS(
478 [case "$CONFIG_FILES" in *po/Makefile.in*)
479 sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
480 esac])
481
482 dnl These rules are solely for the distribution goal. While doing this
483 dnl we only have to keep exactly one list of the available catalogs
484 dnl in configure.in.
485 for lang in $ALL_LINGUAS; do
486 GMOFILES="$GMOFILES $lang.gmo"
487 POFILES="$POFILES $lang.po"
488 done
489
490 dnl Make all variables we use known to autoconf.
491 AC_SUBST(CATALOGS)
492 AC_SUBST(CATOBJEXT)
493 AC_SUBST(DATADIRNAME)
494 AC_SUBST(GMOFILES)
495 AC_SUBST(INSTOBJEXT)
496 AC_SUBST(INTLLIBS)
497 AC_SUBST(PO_IN_DATADIR_TRUE)
498 AC_SUBST(PO_IN_DATADIR_FALSE)
499 AC_SUBST(POFILES)
500 AC_SUBST(POSUB)
501 ])
502
503 # AM_GLIB_GNU_GETTEXT
504 # -------------------
505 # Do checks necessary for use of gettext. If a suitable implementation
506 # of gettext is found in either in libintl or in the C library,
507 # it will set INTLLIBS to the libraries needed for use of gettext
508 # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable
509 # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST()
510 # on various variables needed by the Makefile.in.in installed by
511 # glib-gettextize.
512 dnl
513 glib_DEFUN([GLIB_GNU_GETTEXT],
514 [AC_REQUIRE([AC_PROG_CC])dnl
515 AC_REQUIRE([AC_HEADER_STDC])dnl
516
517 GLIB_LC_MESSAGES
518 GLIB_WITH_NLS
519
520 if test "$gt_cv_have_gettext" = "yes"; then
521 if test "x$ALL_LINGUAS" = "x"; then
522 LINGUAS=
523 else
524 AC_MSG_CHECKING(for catalogs to be installed)
525 NEW_LINGUAS=
526 for presentlang in $ALL_LINGUAS; do
527 useit=no
528 if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
529 desiredlanguages="$LINGUAS"
530 else
531 desiredlanguages="$ALL_LINGUAS"
532 fi
533 for desiredlang in $desiredlanguages; do
534 # Use the presentlang catalog if desiredlang is
535 # a. equal to presentlang, or
536 # b. a variant of presentlang (because in this case,
537 # presentlang can be used as a fallback for messages
538 # which are not translated in the desiredlang catalog).
539 case "$desiredlang" in
540 "$presentlang"*) useit=yes;;
541 esac
542 done
543 if test $useit = yes; then
544 NEW_LINGUAS="$NEW_LINGUAS $presentlang"
545 fi
546 done
547 LINGUAS=$NEW_LINGUAS
548 AC_MSG_RESULT($LINGUAS)
549 fi
550
551 dnl Construct list of names of catalog files to be constructed.
552 if test -n "$LINGUAS"; then
553 for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
554 fi
555 fi
556
557 dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
558 dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
559 dnl Try to locate is.
560 MKINSTALLDIRS=
561 if test -n "$ac_aux_dir"; then
562 MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
563 fi
564 if test -z "$MKINSTALLDIRS"; then
565 MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
566 fi
567 AC_SUBST(MKINSTALLDIRS)
568
569 dnl Generate list of files to be processed by xgettext which will
570 dnl be included in po/Makefile.
571 test -d po || mkdir po
572 if test "x$srcdir" != "x."; then
573 if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
574 posrcprefix="$srcdir/"
575 else
576 posrcprefix="../$srcdir/"
577 fi
578 else
579 posrcprefix="../"
580 fi
581 rm -f po/POTFILES
582 sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
583 < $srcdir/po/POTFILES.in > po/POTFILES
584 ])
585
586 # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE)
587 # -------------------------------
588 # Define VARIABLE to the location where catalog files will
589 # be installed by po/Makefile.
590 glib_DEFUN([GLIB_DEFINE_LOCALEDIR],
591 [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl
592 glib_save_prefix="$prefix"
593 glib_save_exec_prefix="$exec_prefix"
594 glib_save_datarootdir="$datarootdir"
595 test "x$prefix" = xNONE && prefix=$ac_default_prefix
596 test "x$exec_prefix" = xNONE && exec_prefix=$prefix
597 datarootdir=`eval echo "${datarootdir}"`
598 if test "x$CATOBJEXT" = "x.mo" ; then
599 localedir=`eval echo "${libdir}/locale"`
600 else
601 localedir=`eval echo "${datadir}/locale"`
602 fi
603 prefix="$glib_save_prefix"
604 exec_prefix="$glib_save_exec_prefix"
605 datarootdir="$glib_save_datarootdir"
606 AC_DEFINE_UNQUOTED($1, "$localedir",
607 [Define the location where the catalogs will be installed])
608 ])
609
610 dnl
611 dnl Now the definitions that aclocal will find
612 dnl
613 ifdef(glib_configure_in,[],[
614 AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)])
615 AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)])
616 ])dnl
617
618 # GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL])
619 #
620 # Create a temporary file with TEST-FILE as its contents and pass the
621 # file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with
622 # 0 and perform ACTION-IF-FAIL for any other exit status.
623 AC_DEFUN([GLIB_RUN_PROG],
624 [cat >conftest.foo <<_ACEOF
625 $2
626 _ACEOF
627 if AC_RUN_LOG([$1 conftest.foo]); then
628 m4_ifval([$3], [$3], [:])
629 m4_ifvaln([$4], [else $4])dnl
630 echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD
631 sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD
632 fi])
633
634
635
636 dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml])
637 # serial 40 IT_PROG_INTLTOOL
638 AC_DEFUN([IT_PROG_INTLTOOL], [
639 AC_PREREQ([2.50])dnl
640 AC_REQUIRE([AM_NLS])dnl
641
642 case "$am__api_version" in
643 1.[01234])
644 AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool])
645 ;;
646 *)
647 ;;
648 esac
649
650 if test -n "$1"; then
651 AC_MSG_CHECKING([for intltool >= $1])
652
653 INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
654 INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3`
655 [INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
656 ]
657 AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found])
658 test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" ||
659 AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.])
660 fi
661
662 AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update])
663 AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge])
664 AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract])
665 if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then
666 AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.])
667 fi
668
669 INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
670 INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
671 INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
672 INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
673 INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@'
674 INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
675 INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
676 INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
677 INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
678 INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
679 INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
680 INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@'
681 INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
682 INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
683 INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
684 INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
685 INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
686 INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
687 INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
688
689 _IT_SUBST(INTLTOOL_DESKTOP_RULE)
690 _IT_SUBST(INTLTOOL_DIRECTORY_RULE)
691 _IT_SUBST(INTLTOOL_KEYS_RULE)
692 _IT_SUBST(INTLTOOL_PROP_RULE)
693 _IT_SUBST(INTLTOOL_OAF_RULE)
694 _IT_SUBST(INTLTOOL_PONG_RULE)
695 _IT_SUBST(INTLTOOL_SERVER_RULE)
696 _IT_SUBST(INTLTOOL_SHEET_RULE)
697 _IT_SUBST(INTLTOOL_SOUNDLIST_RULE)
698 _IT_SUBST(INTLTOOL_UI_RULE)
699 _IT_SUBST(INTLTOOL_XAM_RULE)
700 _IT_SUBST(INTLTOOL_KBD_RULE)
701 _IT_SUBST(INTLTOOL_XML_RULE)
702 _IT_SUBST(INTLTOOL_XML_NOMERGE_RULE)
703 _IT_SUBST(INTLTOOL_CAVES_RULE)
704 _IT_SUBST(INTLTOOL_SCHEMAS_RULE)
705 _IT_SUBST(INTLTOOL_THEME_RULE)
706 _IT_SUBST(INTLTOOL_SERVICE_RULE)
707 _IT_SUBST(INTLTOOL_POLICY_RULE)
708
709 # Check the gettext tools to make sure they are GNU
710 AC_PATH_PROG(XGETTEXT, xgettext)
711 AC_PATH_PROG(MSGMERGE, msgmerge)
712 AC_PATH_PROG(MSGFMT, msgfmt)
713 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
714 if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then
715 AC_MSG_ERROR([GNU gettext tools not found; required for intltool])
716 fi
717 xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`"
718 mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`"
719 mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`"
720 if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then
721 AC_MSG_ERROR([GNU gettext tools not found; required for intltool])
722 fi
723
724 AC_PATH_PROG(INTLTOOL_PERL, perl)
725 if test -z "$INTLTOOL_PERL"; then
726 AC_MSG_ERROR([perl not found])
727 fi
728 AC_MSG_CHECKING([for perl >= 5.8.1])
729 $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1
730 if test $? -ne 0; then
731 AC_MSG_ERROR([perl 5.8.1 is required for intltool])
732 else
733 IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`"
734 AC_MSG_RESULT([$IT_PERL_VERSION])
735 fi
736 if test "x$2" != "xno-xml"; then
737 AC_MSG_CHECKING([for XML::Parser])
738 if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then
739 AC_MSG_RESULT([ok])
740 else
741 AC_MSG_ERROR([XML::Parser perl module is required for intltool])
742 fi
743 fi
744
745 # Substitute ALL_LINGUAS so we can use it in po/Makefile
746 AC_SUBST(ALL_LINGUAS)
747
748 # Set DATADIRNAME correctly if it is not set yet
749 # (copied from glib-gettext.m4)
750 if test -z "$DATADIRNAME"; then
751 AC_LINK_IFELSE(
752 [AC_LANG_PROGRAM([[]],
753 [[extern int _nl_msg_cat_cntr;
754 return _nl_msg_cat_cntr]])],
755 [DATADIRNAME=share],
756 [case $host in
757 *-*-solaris*)
758 dnl On Solaris, if bind_textdomain_codeset is in libc,
759 dnl GNU format message catalog is always supported,
760 dnl since both are added to the libc all together.
761 dnl Hence, we'd like to go with DATADIRNAME=share
762 dnl in this case.
763 AC_CHECK_FUNC(bind_textdomain_codeset,
764 [DATADIRNAME=share], [DATADIRNAME=lib])
765 ;;
766 *)
767 [DATADIRNAME=lib]
768 ;;
769 esac])
770 fi
771 AC_SUBST(DATADIRNAME)
772
773 IT_PO_SUBDIR([po])
774
775 ])
776
777
778 # IT_PO_SUBDIR(DIRNAME)
779 # ---------------------
780 # All po subdirs have to be declared with this macro; the subdir "po" is
781 # declared by IT_PROG_INTLTOOL.
782 #
783 AC_DEFUN([IT_PO_SUBDIR],
784 [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS.
785 dnl
786 dnl The following CONFIG_COMMANDS should be exetuted at the very end
787 dnl of config.status.
788 AC_CONFIG_COMMANDS_PRE([
789 AC_CONFIG_COMMANDS([$1/stamp-it], [
790 if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then
791 AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.])
792 fi
793 rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp"
794 >"$1/stamp-it.tmp"
795 [sed '/^#/d
796 s/^[[].*] *//
797 /^[ ]*$/d
798 '"s|^| $ac_top_srcdir/|" \
799 "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES"
800 ]
801 [sed '/^POTFILES =/,/[^\\]$/ {
802 /^POTFILES =/!d
803 r $1/POTFILES
804 }
805 ' "$1/Makefile.in" >"$1/Makefile"]
806 rm -f "$1/Makefile.tmp"
807 mv "$1/stamp-it.tmp" "$1/stamp-it"
808 ])
809 ])dnl
810 ])
811
812 # _IT_SUBST(VARIABLE)
813 # -------------------
814 # Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST
815 #
816 AC_DEFUN([_IT_SUBST],
817 [
818 AC_SUBST([$1])
819 m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])])
820 ]
821 )
822
823 # deprecated macros
824 AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL])
825 # A hint is needed for aclocal from Automake <= 1.9.4:
826 # AC_DEFUN([AC_PROG_INTLTOOL], ...)
827
828
829 # nls.m4 serial 3 (gettext-0.15)
830 dnl Copyright (C) 1995-2003, 2005-2006 Free Software Foundation, Inc.
831 dnl This file is free software; the Free Software Foundation
832 dnl gives unlimited permission to copy and/or distribute it,
833 dnl with or without modifications, as long as this notice is preserved.
834 dnl
835 dnl This file can can be used in projects which are not available under
836 dnl the GNU General Public License or the GNU Library General Public
837 dnl License but which still want to provide support for the GNU gettext
838 dnl functionality.
839 dnl Please note that the actual code of the GNU gettext library is covered
840 dnl by the GNU Library General Public License, and the rest of the GNU
841 dnl gettext package package is covered by the GNU General Public License.
842 dnl They are *not* in the public domain.
843
844 dnl Authors:
845 dnl Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
846 dnl Bruno Haible <haible@clisp.cons.org>, 2000-2003.
847
848 AC_PREREQ(2.50)
849
850 AC_DEFUN([AM_NLS],
851 [
852 AC_MSG_CHECKING([whether NLS is requested])
853 dnl Default is enabled NLS
854 AC_ARG_ENABLE(nls,
855 [ --disable-nls do not use Native Language Support],
856 USE_NLS=$enableval, USE_NLS=yes)
857 AC_MSG_RESULT($USE_NLS)
858 AC_SUBST(USE_NLS)
859 ])
860
861 # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
862 #
863 # Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
864 #
865 # This program is free software; you can redistribute it and/or modify
866 # it under the terms of the GNU General Public License as published by
867 # the Free Software Foundation; either version 2 of the License, or
868 # (at your option) any later version.
869 #
870 # This program is distributed in the hope that it will be useful, but
871 # WITHOUT ANY WARRANTY; without even the implied warranty of
872 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
873 # General Public License for more details.
874 #
875 # You should have received a copy of the GNU General Public License
876 # along with this program; if not, write to the Free Software
877 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
878 #
879 # As a special exception to the GNU General Public License, if you
880 # distribute this file as part of a program that contains a
881 # configuration script generated by Autoconf, you may include it under
882 # the same distribution terms that you use for the rest of that program.
883
884 # PKG_PROG_PKG_CONFIG([MIN-VERSION])
885 # ----------------------------------
886 AC_DEFUN([PKG_PROG_PKG_CONFIG],
887 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
888 m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
889 AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
890 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
891 AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
892 fi
893 if test -n "$PKG_CONFIG"; then
894 _pkg_min_version=m4_default([$1], [0.9.0])
895 AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
896 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
897 AC_MSG_RESULT([yes])
898 else
899 AC_MSG_RESULT([no])
900 PKG_CONFIG=""
901 fi
902
903 fi[]dnl
904 ])# PKG_PROG_PKG_CONFIG
905
906 # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
907 #
908 # Check to see whether a particular set of modules exists. Similar
909 # to PKG_CHECK_MODULES(), but does not set variables or print errors.
910 #
911 #
912 # Similar to PKG_CHECK_MODULES, make sure that the first instance of
913 # this or PKG_CHECK_MODULES is called, or make sure to call
914 # PKG_CHECK_EXISTS manually
915 # --------------------------------------------------------------
916 AC_DEFUN([PKG_CHECK_EXISTS],
917 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
918 if test -n "$PKG_CONFIG" && \
919 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
920 m4_ifval([$2], [$2], [:])
921 m4_ifvaln([$3], [else
922 $3])dnl
923 fi])
924
925
926 # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
927 # ---------------------------------------------
928 m4_define([_PKG_CONFIG],
929 [if test -n "$$1"; then
930 pkg_cv_[]$1="$$1"
931 elif test -n "$PKG_CONFIG"; then
932 PKG_CHECK_EXISTS([$3],
933 [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
934 [pkg_failed=yes])
935 else
936 pkg_failed=untried
937 fi[]dnl
938 ])# _PKG_CONFIG
939
940 # _PKG_SHORT_ERRORS_SUPPORTED
941 # -----------------------------
942 AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
943 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
944 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
945 _pkg_short_errors_supported=yes
946 else
947 _pkg_short_errors_supported=no
948 fi[]dnl
949 ])# _PKG_SHORT_ERRORS_SUPPORTED
950
951
952 # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
953 # [ACTION-IF-NOT-FOUND])
954 #
955 #
956 # Note that if there is a possibility the first call to
957 # PKG_CHECK_MODULES might not happen, you should be sure to include an
958 # explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
959 #
960 #
961 # --------------------------------------------------------------
962 AC_DEFUN([PKG_CHECK_MODULES],
963 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
964 AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
965 AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
966
967 pkg_failed=no
968 AC_MSG_CHECKING([for $1])
969
970 _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
971 _PKG_CONFIG([$1][_LIBS], [libs], [$2])
972
973 m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
974 and $1[]_LIBS to avoid the need to call pkg-config.
975 See the pkg-config man page for more details.])
976
977 if test $pkg_failed = yes; then
978 _PKG_SHORT_ERRORS_SUPPORTED
979 if test $_pkg_short_errors_supported = yes; then
980 $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
981 else
982 $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1`
983 fi
984 # Put the nasty error message in config.log where it belongs
985 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
986
987 ifelse([$4], , [AC_MSG_ERROR(dnl
988 [Package requirements ($2) were not met:
989
990 $$1_PKG_ERRORS
991
992 Consider adjusting the PKG_CONFIG_PATH environment variable if you
993 installed software in a non-standard prefix.
994
995 _PKG_TEXT
996 ])],
997 [AC_MSG_RESULT([no])
998 $4])
999 elif test $pkg_failed = untried; then
1000 ifelse([$4], , [AC_MSG_FAILURE(dnl
1001 [The pkg-config script could not be found or is too old. Make sure it
1002 is in your PATH or set the PKG_CONFIG environment variable to the full
1003 path to pkg-config.
1004
1005 _PKG_TEXT
1006
1007 To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
1008 [$4])
1009 else
1010 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
1011 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
1012 AC_MSG_RESULT([yes])
1013 ifelse([$3], , :, [$3])
1014 fi[]dnl
1015 ])# PKG_CHECK_MODULES
1016
1017 # Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
1018 #
1019 # This file is free software; the Free Software Foundation
1020 # gives unlimited permission to copy and/or distribute it,
1021 # with or without modifications, as long as this notice is preserved.
1022
1023 # AM_AUTOMAKE_VERSION(VERSION)
1024 # ----------------------------
1025 # Automake X.Y traces this macro to ensure aclocal.m4 has been
1026 # generated from the m4 files accompanying Automake X.Y.
1027 # (This private macro should not be called outside this file.)
1028 AC_DEFUN([AM_AUTOMAKE_VERSION],
1029 [am__api_version='1.11'
1030 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
1031 dnl require some minimum version. Point them to the right macro.
1032 m4_if([$1], [1.11.1], [],
1033 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
1034 ])
1035
1036 # _AM_AUTOCONF_VERSION(VERSION)
1037 # -----------------------------
1038 # aclocal traces this macro to find the Autoconf version.
1039 # This is a private macro too. Using m4_define simplifies
1040 # the logic in aclocal, which can simply ignore this definition.
1041 m4_define([_AM_AUTOCONF_VERSION], [])
1042
1043 # AM_SET_CURRENT_AUTOMAKE_VERSION
1044 # -------------------------------
1045 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
1046 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
1047 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
1048 [AM_AUTOMAKE_VERSION([1.11.1])dnl
1049 m4_ifndef([AC_AUTOCONF_VERSION],
1050 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
1051 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
1052
1053 # AM_AUX_DIR_EXPAND -*- Autoconf -*-
1054
1055 # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
1056 #
1057 # This file is free software; the Free Software Foundation
1058 # gives unlimited permission to copy and/or distribute it,
1059 # with or without modifications, as long as this notice is preserved.
1060
1061 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
1062 # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
1063 # `$srcdir', `$srcdir/..', or `$srcdir/../..'.
1064 #
1065 # Of course, Automake must honor this variable whenever it calls a
1066 # tool from the auxiliary directory. The problem is that $srcdir (and
1067 # therefore $ac_aux_dir as well) can be either absolute or relative,
1068 # depending on how configure is run. This is pretty annoying, since
1069 # it makes $ac_aux_dir quite unusable in subdirectories: in the top
1070 # source directory, any form will work fine, but in subdirectories a
1071 # relative path needs to be adjusted first.
1072 #
1073 # $ac_aux_dir/missing
1074 # fails when called from a subdirectory if $ac_aux_dir is relative
1075 # $top_srcdir/$ac_aux_dir/missing
1076 # fails if $ac_aux_dir is absolute,
1077 # fails when called from a subdirectory in a VPATH build with
1078 # a relative $ac_aux_dir
1079 #
1080 # The reason of the latter failure is that $top_srcdir and $ac_aux_dir
1081 # are both prefixed by $srcdir. In an in-source build this is usually
1082 # harmless because $srcdir is `.', but things will broke when you
1083 # start a VPATH build or use an absolute $srcdir.
1084 #
1085 # So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
1086 # iff we strip the leading $srcdir from $ac_aux_dir. That would be:
1087 # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
1088 # and then we would define $MISSING as
1089 # MISSING="\${SHELL} $am_aux_dir/missing"
1090 # This will work as long as MISSING is not called from configure, because
1091 # unfortunately $(top_srcdir) has no meaning in configure.
1092 # However there are other variables, like CC, which are often used in
1093 # configure, and could therefore not use this "fixed" $ac_aux_dir.
1094 #
1095 # Another solution, used here, is to always expand $ac_aux_dir to an
1096 # absolute PATH. The drawback is that using absolute paths prevent a
1097 # configured tree to be moved without reconfiguration.
1098
1099 AC_DEFUN([AM_AUX_DIR_EXPAND],
1100 [dnl Rely on autoconf to set up CDPATH properly.
1101 AC_PREREQ([2.50])dnl
1102 # expand $ac_aux_dir to an absolute path
1103 am_aux_dir=`cd $ac_aux_dir && pwd`
1104 ])
1105
1106 # AM_CONDITIONAL -*- Autoconf -*-
1107
1108 # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
1109 # Free Software Foundation, Inc.
1110 #
1111 # This file is free software; the Free Software Foundation
1112 # gives unlimited permission to copy and/or distribute it,
1113 # with or without modifications, as long as this notice is preserved.
1114
1115 # serial 9
1116
1117 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
1118 # -------------------------------------
1119 # Define a conditional.
1120 AC_DEFUN([AM_CONDITIONAL],
1121 [AC_PREREQ(2.52)dnl
1122 ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
1123 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
1124 AC_SUBST([$1_TRUE])dnl
1125 AC_SUBST([$1_FALSE])dnl
1126 _AM_SUBST_NOTMAKE([$1_TRUE])dnl
1127 _AM_SUBST_NOTMAKE([$1_FALSE])dnl
1128 m4_define([_AM_COND_VALUE_$1], [$2])dnl
1129 if $2; then
1130 $1_TRUE=
1131 $1_FALSE='#'
1132 else
1133 $1_TRUE='#'
1134 $1_FALSE=
1135 fi
1136 AC_CONFIG_COMMANDS_PRE(
1137 [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
1138 AC_MSG_ERROR([[conditional "$1" was never defined.
1139 Usually this means the macro was only invoked conditionally.]])
1140 fi])])
1141
1142 # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
1143 # Free Software Foundation, Inc.
1144 #
1145 # This file is free software; the Free Software Foundation
1146 # gives unlimited permission to copy and/or distribute it,
1147 # with or without modifications, as long as this notice is preserved.
1148
1149 # serial 10
1150
1151 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
1152 # written in clear, in which case automake, when reading aclocal.m4,
1153 # will think it sees a *use*, and therefore will trigger all it's
1154 # C support machinery. Also note that it means that autoscan, seeing
1155 # CC etc. in the Makefile, will ask for an AC_PROG_CC use...
1156
1157
1158 # _AM_DEPENDENCIES(NAME)
1159 # ----------------------
1160 # See how the compiler implements dependency checking.
1161 # NAME is "CC", "CXX", "GCJ", or "OBJC".
1162 # We try a few techniques and use that to set a single cache variable.
1163 #
1164 # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
1165 # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
1166 # dependency, and given that the user is not expected to run this macro,
1167 # just rely on AC_PROG_CC.
1168 AC_DEFUN([_AM_DEPENDENCIES],
1169 [AC_REQUIRE([AM_SET_DEPDIR])dnl
1170 AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
1171 AC_REQUIRE([AM_MAKE_INCLUDE])dnl
1172 AC_REQUIRE([AM_DEP_TRACK])dnl
1173
1174 ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
1175 [$1], CXX, [depcc="$CXX" am_compiler_list=],
1176 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
1177 [$1], UPC, [depcc="$UPC" am_compiler_list=],
1178 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
1179 [depcc="$$1" am_compiler_list=])
1180
1181 AC_CACHE_CHECK([dependency style of $depcc],
1182 [am_cv_$1_dependencies_compiler_type],
1183 [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
1184 # We make a subdir and do the tests there. Otherwise we can end up
1185 # making bogus files that we don't know about and never remove. For
1186 # instance it was reported that on HP-UX the gcc test will end up
1187 # making a dummy file named `D' -- because `-MD' means `put the output
1188 # in D'.
1189 mkdir conftest.dir
1190 # Copy depcomp to subdir because otherwise we won't find it if we're
1191 # using a relative directory.
1192 cp "$am_depcomp" conftest.dir
1193 cd conftest.dir
1194 # We will build objects and dependencies in a subdirectory because
1195 # it helps to detect inapplicable dependency modes. For instance
1196 # both Tru64's cc and ICC support -MD to output dependencies as a
1197 # side effect of compilation, but ICC will put the dependencies in
1198 # the current directory while Tru64 will put them in the object
1199 # directory.
1200 mkdir sub
1201
1202 am_cv_$1_dependencies_compiler_type=none
1203 if test "$am_compiler_list" = ""; then
1204 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
1205 fi
1206 am__universal=false
1207 m4_case([$1], [CC],
1208 [case " $depcc " in #(
1209 *\ -arch\ *\ -arch\ *) am__universal=true ;;
1210 esac],
1211 [CXX],
1212 [case " $depcc " in #(
1213 *\ -arch\ *\ -arch\ *) am__universal=true ;;
1214 esac])
1215
1216 for depmode in $am_compiler_list; do
1217 # Setup a source with many dependencies, because some compilers
1218 # like to wrap large dependency lists on column 80 (with \), and
1219 # we should not choose a depcomp mode which is confused by this.
1220 #
1221 # We need to recreate these files for each test, as the compiler may
1222 # overwrite some of them when testing with obscure command lines.
1223 # This happens at least with the AIX C compiler.
1224 : > sub/conftest.c
1225 for i in 1 2 3 4 5 6; do
1226 echo '#include "conftst'$i'.h"' >> sub/conftest.c
1227 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
1228 # Solaris 8's {/usr,}/bin/sh.
1229 touch sub/conftst$i.h
1230 done
1231 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
1232
1233 # We check with `-c' and `-o' for the sake of the "dashmstdout"
1234 # mode. It turns out that the SunPro C++ compiler does not properly
1235 # handle `-M -o', and we need to detect this. Also, some Intel
1236 # versions had trouble with output in subdirs
1237 am__obj=sub/conftest.${OBJEXT-o}
1238 am__minus_obj="-o $am__obj"
1239 case $depmode in
1240 gcc)
1241 # This depmode causes a compiler race in universal mode.
1242 test "$am__universal" = false || continue
1243 ;;
1244 nosideeffect)
1245 # after this tag, mechanisms are not by side-effect, so they'll
1246 # only be used when explicitly requested
1247 if test "x$enable_dependency_tracking" = xyes; then
1248 continue
1249 else
1250 break
1251 fi
1252 ;;
1253 msvisualcpp | msvcmsys)
1254 # This compiler won't grok `-c -o', but also, the minuso test has
1255 # not run yet. These depmodes are late enough in the game, and
1256 # so weak that their functioning should not be impacted.
1257 am__obj=conftest.${OBJEXT-o}
1258 am__minus_obj=
1259 ;;
1260 none) break ;;
1261 esac
1262 if depmode=$depmode \
1263 source=sub/conftest.c object=$am__obj \
1264 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
1265 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
1266 >/dev/null 2>conftest.err &&
1267 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
1268 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
1269 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
1270 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
1271 # icc doesn't choke on unknown options, it will just issue warnings
1272 # or remarks (even with -Werror). So we grep stderr for any message
1273 # that says an option was ignored or not supported.
1274 # When given -MP, icc 7.0 and 7.1 complain thusly:
1275 # icc: Command line warning: ignoring option '-M'; no argument required
1276 # The diagnosis changed in icc 8.0:
1277 # icc: Command line remark: option '-MP' not supported
1278 if (grep 'ignoring option' conftest.err ||
1279 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
1280 am_cv_$1_dependencies_compiler_type=$depmode
1281 break
1282 fi
1283 fi
1284 done
1285
1286 cd ..
1287 rm -rf conftest.dir
1288 else
1289 am_cv_$1_dependencies_compiler_type=none
1290 fi
1291 ])
1292 AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
1293 AM_CONDITIONAL([am__fastdep$1], [
1294 test "x$enable_dependency_tracking" != xno \
1295 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
1296 ])
1297
1298
1299 # AM_SET_DEPDIR
1300 # -------------
1301 # Choose a directory name for dependency files.
1302 # This macro is AC_REQUIREd in _AM_DEPENDENCIES
1303 AC_DEFUN([AM_SET_DEPDIR],
1304 [AC_REQUIRE([AM_SET_LEADING_DOT])dnl
1305 AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
1306 ])
1307
1308
1309 # AM_DEP_TRACK
1310 # ------------
1311 AC_DEFUN([AM_DEP_TRACK],
1312 [AC_ARG_ENABLE(dependency-tracking,
1313 [ --disable-dependency-tracking speeds up one-time build
1314 --enable-dependency-tracking do not reject slow dependency extractors])
1315 if test "x$enable_dependency_tracking" != xno; then
1316 am_depcomp="$ac_aux_dir/depcomp"
1317 AMDEPBACKSLASH='\'
1318 fi
1319 AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
1320 AC_SUBST([AMDEPBACKSLASH])dnl
1321 _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
1322 ])
1323
1324 # Generate code to set up dependency tracking. -*- Autoconf -*-
1325
1326 # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
1327 # Free Software Foundation, Inc.
1328 #
1329 # This file is free software; the Free Software Foundation
1330 # gives unlimited permission to copy and/or distribute it,
1331 # with or without modifications, as long as this notice is preserved.
1332
1333 #serial 5
1334
1335 # _AM_OUTPUT_DEPENDENCY_COMMANDS
1336 # ------------------------------
1337 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
1338 [{
1339 # Autoconf 2.62 quotes --file arguments for eval, but not when files
1340 # are listed without --file. Let's play safe and only enable the eval
1341 # if we detect the quoting.
1342 case $CONFIG_FILES in
1343 *\'*) eval set x "$CONFIG_FILES" ;;
1344 *) set x $CONFIG_FILES ;;
1345 esac
1346 shift
1347 for mf
1348 do
1349 # Strip MF so we end up with the name of the file.
1350 mf=`echo "$mf" | sed -e 's/:.*$//'`
1351 # Check whether this is an Automake generated Makefile or not.
1352 # We used to match only the files named `Makefile.in', but
1353 # some people rename them; so instead we look at the file content.
1354 # Grep'ing the first line is not enough: some people post-process
1355 # each Makefile.in and add a new line on top of each file to say so.
1356 # Grep'ing the whole file is not good either: AIX grep has a line
1357 # limit of 2048, but all sed's we know have understand at least 4000.
1358 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
1359 dirpart=`AS_DIRNAME("$mf")`
1360 else
1361 continue
1362 fi
1363 # Extract the definition of DEPDIR, am__include, and am__quote
1364 # from the Makefile without running `make'.
1365 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
1366 test -z "$DEPDIR" && continue
1367 am__include=`sed -n 's/^am__include = //p' < "$mf"`
1368 test -z "am__include" && continue
1369 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
1370 # When using ansi2knr, U may be empty or an underscore; expand it
1371 U=`sed -n 's/^U = //p' < "$mf"`
1372 # Find all dependency output files, they are included files with
1373 # $(DEPDIR) in their names. We invoke sed twice because it is the
1374 # simplest approach to changing $(DEPDIR) to its actual value in the
1375 # expansion.
1376 for file in `sed -n "
1377 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
1378 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
1379 # Make sure the directory exists.
1380 test -f "$dirpart/$file" && continue
1381 fdir=`AS_DIRNAME(["$file"])`
1382 AS_MKDIR_P([$dirpart/$fdir])
1383 # echo "creating $dirpart/$file"
1384 echo '# dummy' > "$dirpart/$file"
1385 done
1386 done
1387 }
1388 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
1389
1390
1391 # AM_OUTPUT_DEPENDENCY_COMMANDS
1392 # -----------------------------
1393 # This macro should only be invoked once -- use via AC_REQUIRE.
1394 #
1395 # This code is only required when automatic dependency tracking
1396 # is enabled. FIXME. This creates each `.P' file that we will
1397 # need in order to bootstrap the dependency handling code.
1398 AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
1399 [AC_CONFIG_COMMANDS([depfiles],
1400 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
1401 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
1402 ])
1403
1404 # Do all the work for Automake. -*- Autoconf -*-
1405
1406 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
1407 # 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
1408 #
1409 # This file is free software; the Free Software Foundation
1410 # gives unlimited permission to copy and/or distribute it,
1411 # with or without modifications, as long as this notice is preserved.
1412
1413 # serial 16
1414
1415 # This macro actually does too much. Some checks are only needed if
1416 # your package does certain things. But this isn't really a big deal.
1417
1418 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
1419 # AM_INIT_AUTOMAKE([OPTIONS])
1420 # -----------------------------------------------
1421 # The call with PACKAGE and VERSION arguments is the old style
1422 # call (pre autoconf-2.50), which is being phased out. PACKAGE
1423 # and VERSION should now be passed to AC_INIT and removed from
1424 # the call to AM_INIT_AUTOMAKE.
1425 # We support both call styles for the transition. After
1426 # the next Automake release, Autoconf can make the AC_INIT
1427 # arguments mandatory, and then we can depend on a new Autoconf
1428 # release and drop the old call support.
1429 AC_DEFUN([AM_INIT_AUTOMAKE],
1430 [AC_PREREQ([2.62])dnl
1431 dnl Autoconf wants to disallow AM_ names. We explicitly allow
1432 dnl the ones we care about.
1433 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
1434 AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
1435 AC_REQUIRE([AC_PROG_INSTALL])dnl
1436 if test "`cd $srcdir && pwd`" != "`pwd`"; then
1437 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
1438 # is not polluted with repeated "-I."
1439 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
1440 # test to see if srcdir already configured
1441 if test -f $srcdir/config.status; then
1442 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
1443 fi
1444 fi
1445
1446 # test whether we have cygpath
1447 if test -z "$CYGPATH_W"; then
1448 if (cygpath --version) >/dev/null 2>/dev/null; then
1449 CYGPATH_W='cygpath -w'
1450 else
1451 CYGPATH_W=echo
1452 fi
1453 fi
1454 AC_SUBST([CYGPATH_W])
1455
1456 # Define the identity of the package.
1457 dnl Distinguish between old-style and new-style calls.
1458 m4_ifval([$2],
1459 [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
1460 AC_SUBST([PACKAGE], [$1])dnl
1461 AC_SUBST([VERSION], [$2])],
1462 [_AM_SET_OPTIONS([$1])dnl
1463 dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
1464 m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
1465 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
1466 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
1467 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
1468
1469 _AM_IF_OPTION([no-define],,
1470 [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
1471 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
1472
1473 # Some tools Automake needs.
1474 AC_REQUIRE([AM_SANITY_CHECK])dnl
1475 AC_REQUIRE([AC_ARG_PROGRAM])dnl
1476 AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
1477 AM_MISSING_PROG(AUTOCONF, autoconf)
1478 AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
1479 AM_MISSING_PROG(AUTOHEADER, autoheader)
1480 AM_MISSING_PROG(MAKEINFO, makeinfo)
1481 AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
1482 AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
1483 AC_REQUIRE([AM_PROG_MKDIR_P])dnl
1484 # We need awk for the "check" target. The system "awk" is bad on
1485 # some platforms.
1486 AC_REQUIRE([AC_PROG_AWK])dnl
1487 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
1488 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
1489 _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
1490 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
1491 [_AM_PROG_TAR([v7])])])
1492 _AM_IF_OPTION([no-dependencies],,
1493 [AC_PROVIDE_IFELSE([AC_PROG_CC],
1494 [_AM_DEPENDENCIES(CC)],
1495 [define([AC_PROG_CC],
1496 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
1497 AC_PROVIDE_IFELSE([AC_PROG_CXX],
1498 [_AM_DEPENDENCIES(CXX)],
1499 [define([AC_PROG_CXX],
1500 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
1501 AC_PROVIDE_IFELSE([AC_PROG_OBJC],
1502 [_AM_DEPENDENCIES(OBJC)],
1503 [define([AC_PROG_OBJC],
1504 defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
1505 ])
1506 _AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
1507 dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
1508 dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
1509 dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
1510 AC_CONFIG_COMMANDS_PRE(dnl
1511 [m4_provide_if([_AM_COMPILER_EXEEXT],
1512 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
1513 ])
1514
1515 dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
1516 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
1517 dnl mangled by Autoconf and run in a shell conditional statement.
1518 m4_define([_AC_COMPILER_EXEEXT],
1519 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
1520
1521
1522 # When config.status generates a header, we must update the stamp-h file.
1523 # This file resides in the same directory as the config header
1524 # that is generated. The stamp files are numbered to have different names.
1525
1526 # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
1527 # loop where config.status creates the headers, so we can generate
1528 # our stamp files there.
1529 AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
1530 [# Compute $1's index in $config_headers.
1531 _am_arg=$1
1532 _am_stamp_count=1
1533 for _am_header in $config_headers :; do
1534 case $_am_header in
1535 $_am_arg | $_am_arg:* )
1536 break ;;
1537 * )
1538 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
1539 esac
1540 done
1541 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
1542
1543 # Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc.
1544 #
1545 # This file is free software; the Free Software Foundation
1546 # gives unlimited permission to copy and/or distribute it,
1547 # with or without modifications, as long as this notice is preserved.
1548
1549 # AM_PROG_INSTALL_SH
1550 # ------------------
1551 # Define $install_sh.
1552 AC_DEFUN([AM_PROG_INSTALL_SH],
1553 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
1554 if test x"${install_sh}" != xset; then
1555 case $am_aux_dir in
1556 *\ * | *\ *)
1557 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
1558 *)
1559 install_sh="\${SHELL} $am_aux_dir/install-sh"
1560 esac
1561 fi
1562 AC_SUBST(install_sh)])
1563
1564 # Copyright (C) 2003, 2005 Free Software Foundation, Inc.
1565 #
1566 # This file is free software; the Free Software Foundation
1567 # gives unlimited permission to copy and/or distribute it,
1568 # with or without modifications, as long as this notice is preserved.
1569
1570 # serial 2
1571
1572 # Check whether the underlying file-system supports filenames
1573 # with a leading dot. For instance MS-DOS doesn't.
1574 AC_DEFUN([AM_SET_LEADING_DOT],
1575 [rm -rf .tst 2>/dev/null
1576 mkdir .tst 2>/dev/null
1577 if test -d .tst; then
1578 am__leading_dot=.
1579 else
1580 am__leading_dot=_
1581 fi
1582 rmdir .tst 2>/dev/null
1583 AC_SUBST([am__leading_dot])])
1584
1585 # Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
1586 # From Jim Meyering
1587
1588 # Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
1589 # Free Software Foundation, Inc.
1590 #
1591 # This file is free software; the Free Software Foundation
1592 # gives unlimited permission to copy and/or distribute it,
1593 # with or without modifications, as long as this notice is preserved.
1594
1595 # serial 5
1596
1597 # AM_MAINTAINER_MODE([DEFAULT-MODE])
1598 # ----------------------------------
1599 # Control maintainer-specific portions of Makefiles.
1600 # Default is to disable them, unless `enable' is passed literally.
1601 # For symmetry, `disable' may be passed as well. Anyway, the user
1602 # can override the default with the --enable/--disable switch.
1603 AC_DEFUN([AM_MAINTAINER_MODE],
1604 [m4_case(m4_default([$1], [disable]),
1605 [enable], [m4_define([am_maintainer_other], [disable])],
1606 [disable], [m4_define([am_maintainer_other], [enable])],
1607 [m4_define([am_maintainer_other], [enable])
1608 m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
1609 AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
1610 dnl maintainer-mode's default is 'disable' unless 'enable' is passed
1611 AC_ARG_ENABLE([maintainer-mode],
1612 [ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful
1613 (and sometimes confusing) to the casual installer],
1614 [USE_MAINTAINER_MODE=$enableval],
1615 [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
1616 AC_MSG_RESULT([$USE_MAINTAINER_MODE])
1617 AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
1618 MAINT=$MAINTAINER_MODE_TRUE
1619 AC_SUBST([MAINT])dnl
1620 ]
1621 )
1622
1623 AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
1624
1625 # Check to see how 'make' treats includes. -*- Autoconf -*-
1626
1627 # Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
1628 #
1629 # This file is free software; the Free Software Foundation
1630 # gives unlimited permission to copy and/or distribute it,
1631 # with or without modifications, as long as this notice is preserved.
1632
1633 # serial 4
1634
1635 # AM_MAKE_INCLUDE()
1636 # -----------------
1637 # Check to see how make treats includes.
1638 AC_DEFUN([AM_MAKE_INCLUDE],
1639 [am_make=${MAKE-make}
1640 cat > confinc << 'END'
1641 am__doit:
1642 @echo this is the am__doit target
1643 .PHONY: am__doit
1644 END
1645 # If we don't find an include directive, just comment out the code.
1646 AC_MSG_CHECKING([for style of include used by $am_make])
1647 am__include="#"
1648 am__quote=
1649 _am_result=none
1650 # First try GNU make style include.
1651 echo "include confinc" > confmf
1652 # Ignore all kinds of additional output from `make'.
1653 case `$am_make -s -f confmf 2> /dev/null` in #(
1654 *the\ am__doit\ target*)
1655 am__include=include
1656 am__quote=
1657 _am_result=GNU
1658 ;;
1659 esac
1660 # Now try BSD make style include.
1661 if test "$am__include" = "#"; then
1662 echo '.include "confinc"' > confmf
1663 case `$am_make -s -f confmf 2> /dev/null` in #(
1664 *the\ am__doit\ target*)
1665 am__include=.include
1666 am__quote="\""
1667 _am_result=BSD
1668 ;;
1669 esac
1670 fi
1671 AC_SUBST([am__include])
1672 AC_SUBST([am__quote])
1673 AC_MSG_RESULT([$_am_result])
1674 rm -f confinc confmf
1675 ])
1676
1677 # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
1678
1679 # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
1680 # Free Software Foundation, Inc.
1681 #
1682 # This file is free software; the Free Software Foundation
1683 # gives unlimited permission to copy and/or distribute it,
1684 # with or without modifications, as long as this notice is preserved.
1685
1686 # serial 6
1687
1688 # AM_MISSING_PROG(NAME, PROGRAM)
1689 # ------------------------------
1690 AC_DEFUN([AM_MISSING_PROG],
1691 [AC_REQUIRE([AM_MISSING_HAS_RUN])
1692 $1=${$1-"${am_missing_run}$2"}
1693 AC_SUBST($1)])
1694
1695
1696 # AM_MISSING_HAS_RUN
1697 # ------------------
1698 # Define MISSING if not defined so far and test if it supports --run.
1699 # If it does, set am_missing_run to use it, otherwise, to nothing.
1700 AC_DEFUN([AM_MISSING_HAS_RUN],
1701 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
1702 AC_REQUIRE_AUX_FILE([missing])dnl
1703 if test x"${MISSING+set}" != xset; then
1704 case $am_aux_dir in
1705 *\ * | *\ *)
1706 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
1707 *)
1708 MISSING="\${SHELL} $am_aux_dir/missing" ;;
1709 esac
1710 fi
1711 # Use eval to expand $SHELL
1712 if eval "$MISSING --run true"; then
1713 am_missing_run="$MISSING --run "
1714 else
1715 am_missing_run=
1716 AC_MSG_WARN([`missing' script is too old or missing])
1717 fi
1718 ])
1719
1720 # Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
1721 #
1722 # This file is free software; the Free Software Foundation
1723 # gives unlimited permission to copy and/or distribute it,
1724 # with or without modifications, as long as this notice is preserved.
1725
1726 # AM_PROG_MKDIR_P
1727 # ---------------
1728 # Check for `mkdir -p'.
1729 AC_DEFUN([AM_PROG_MKDIR_P],
1730 [AC_PREREQ([2.60])dnl
1731 AC_REQUIRE([AC_PROG_MKDIR_P])dnl
1732 dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
1733 dnl while keeping a definition of mkdir_p for backward compatibility.
1734 dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
1735 dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
1736 dnl Makefile.ins that do not define MKDIR_P, so we do our own
1737 dnl adjustment using top_builddir (which is defined more often than
1738 dnl MKDIR_P).
1739 AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
1740 case $mkdir_p in
1741 [[\\/$]]* | ?:[[\\/]]*) ;;
1742 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
1743 esac
1744 ])
1745
1746 # Helper functions for option handling. -*- Autoconf -*-
1747
1748 # Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc.
1749 #
1750 # This file is free software; the Free Software Foundation
1751 # gives unlimited permission to copy and/or distribute it,
1752 # with or without modifications, as long as this notice is preserved.
1753
1754 # serial 4
1755
1756 # _AM_MANGLE_OPTION(NAME)
1757 # -----------------------
1758 AC_DEFUN([_AM_MANGLE_OPTION],
1759 [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
1760
1761 # _AM_SET_OPTION(NAME)
1762 # ------------------------------
1763 # Set option NAME. Presently that only means defining a flag for this option.
1764 AC_DEFUN([_AM_SET_OPTION],
1765 [m4_define(_AM_MANGLE_OPTION([$1]), 1)])
1766
1767 # _AM_SET_OPTIONS(OPTIONS)
1768 # ----------------------------------
1769 # OPTIONS is a space-separated list of Automake options.
1770 AC_DEFUN([_AM_SET_OPTIONS],
1771 [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
1772
1773 # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
1774 # -------------------------------------------
1775 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
1776 AC_DEFUN([_AM_IF_OPTION],
1777 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
1778
1779 # Check to make sure that the build environment is sane. -*- Autoconf -*-
1780
1781 # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
1782 # Free Software Foundation, Inc.
1783 #
1784 # This file is free software; the Free Software Foundation
1785 # gives unlimited permission to copy and/or distribute it,
1786 # with or without modifications, as long as this notice is preserved.
1787
1788 # serial 5
1789
1790 # AM_SANITY_CHECK
1791 # ---------------
1792 AC_DEFUN([AM_SANITY_CHECK],
1793 [AC_MSG_CHECKING([whether build environment is sane])
1794 # Just in case
1795 sleep 1
1796 echo timestamp > conftest.file
1797 # Reject unsafe characters in $srcdir or the absolute working directory
1798 # name. Accept space and tab only in the latter.
1799 am_lf='
1800 '
1801 case `pwd` in
1802 *[[\\\"\#\$\&\'\`$am_lf]]*)
1803 AC_MSG_ERROR([unsafe absolute working directory name]);;
1804 esac
1805 case $srcdir in
1806 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
1807 AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
1808 esac
1809
1810 # Do `set' in a subshell so we don't clobber the current shell's
1811 # arguments. Must try -L first in case configure is actually a
1812 # symlink; some systems play weird games with the mod time of symlinks
1813 # (eg FreeBSD returns the mod time of the symlink's containing
1814 # directory).
1815 if (
1816 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
1817 if test "$[*]" = "X"; then
1818 # -L didn't work.
1819 set X `ls -t "$srcdir/configure" conftest.file`
1820 fi
1821 rm -f conftest.file
1822 if test "$[*]" != "X $srcdir/configure conftest.file" \
1823 && test "$[*]" != "X conftest.file $srcdir/configure"; then
1824
1825 # If neither matched, then we have a broken ls. This can happen
1826 # if, for instance, CONFIG_SHELL is bash and it inherits a
1827 # broken ls alias from the environment. This has actually
1828 # happened. Such a system could not be considered "sane".
1829 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
1830 alias in your environment])
1831 fi
1832
1833 test "$[2]" = conftest.file
1834 )
1835 then
1836 # Ok.
1837 :
1838 else
1839 AC_MSG_ERROR([newly created file is older than distributed files!
1840 Check your system clock])
1841 fi
1842 AC_MSG_RESULT(yes)])
1843
1844 # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
1845 #
1846 # This file is free software; the Free Software Foundation
1847 # gives unlimited permission to copy and/or distribute it,
1848 # with or without modifications, as long as this notice is preserved.
1849
1850 # AM_PROG_INSTALL_STRIP
1851 # ---------------------
1852 # One issue with vendor `install' (even GNU) is that you can't
1853 # specify the program used to strip binaries. This is especially
1854 # annoying in cross-compiling environments, where the build's strip
1855 # is unlikely to handle the host's binaries.
1856 # Fortunately install-sh will honor a STRIPPROG variable, so we
1857 # always use install-sh in `make install-strip', and initialize
1858 # STRIPPROG with the value of the STRIP variable (set by the user).
1859 AC_DEFUN([AM_PROG_INSTALL_STRIP],
1860 [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
1861 # Installed binaries are usually stripped using `strip' when the user
1862 # run `make install-strip'. However `strip' might not be the right
1863 # tool to use in cross-compilation environments, therefore Automake
1864 # will honor the `STRIP' environment variable to overrule this program.
1865 dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
1866 if test "$cross_compiling" != no; then
1867 AC_CHECK_TOOL([STRIP], [strip], :)
1868 fi
1869 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
1870 AC_SUBST([INSTALL_STRIP_PROGRAM])])
1871
1872 # Copyright (C) 2006, 2008 Free Software Foundation, Inc.
1873 #
1874 # This file is free software; the Free Software Foundation
1875 # gives unlimited permission to copy and/or distribute it,
1876 # with or without modifications, as long as this notice is preserved.
1877
1878 # serial 2
1879
1880 # _AM_SUBST_NOTMAKE(VARIABLE)
1881 # ---------------------------
1882 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
1883 # This macro is traced by Automake.
1884 AC_DEFUN([_AM_SUBST_NOTMAKE])
1885
1886 # AM_SUBST_NOTMAKE(VARIABLE)
1887 # ---------------------------
1888 # Public sister of _AM_SUBST_NOTMAKE.
1889 AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
1890
1891 # Check how to create a tarball. -*- Autoconf -*-
1892
1893 # Copyright (C) 2004, 2005 Free Software Foundation, Inc.
1894 #
1895 # This file is free software; the Free Software Foundation
1896 # gives unlimited permission to copy and/or distribute it,
1897 # with or without modifications, as long as this notice is preserved.
1898
1899 # serial 2
1900
1901 # _AM_PROG_TAR(FORMAT)
1902 # --------------------
1903 # Check how to create a tarball in format FORMAT.
1904 # FORMAT should be one of `v7', `ustar', or `pax'.
1905 #
1906 # Substitute a variable $(am__tar) that is a command
1907 # writing to stdout a FORMAT-tarball containing the directory
1908 # $tardir.
1909 # tardir=directory && $(am__tar) > result.tar
1910 #
1911 # Substitute a variable $(am__untar) that extract such
1912 # a tarball read from stdin.
1913 # $(am__untar) < result.tar
1914 AC_DEFUN([_AM_PROG_TAR],
1915 [# Always define AMTAR for backward compatibility.
1916 AM_MISSING_PROG([AMTAR], [tar])
1917 m4_if([$1], [v7],
1918 [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
1919 [m4_case([$1], [ustar],, [pax],,
1920 [m4_fatal([Unknown tar format])])
1921 AC_MSG_CHECKING([how to create a $1 tar archive])
1922 # Loop over all known methods to create a tar archive until one works.
1923 _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
1924 _am_tools=${am_cv_prog_tar_$1-$_am_tools}
1925 # Do not fold the above two line into one, because Tru64 sh and
1926 # Solaris sh will not grok spaces in the rhs of `-'.
1927 for _am_tool in $_am_tools
1928 do
1929 case $_am_tool in
1930 gnutar)
1931 for _am_tar in tar gnutar gtar;
1932 do
1933 AM_RUN_LOG([$_am_tar --version]) && break
1934 done
1935 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
1936 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
1937 am__untar="$_am_tar -xf -"
1938 ;;
1939 plaintar)
1940 # Must skip GNU tar: if it does not support --format= it doesn't create
1941 # ustar tarball either.
1942 (tar --version) >/dev/null 2>&1 && continue
1943 am__tar='tar chf - "$$tardir"'
1944 am__tar_='tar chf - "$tardir"'
1945 am__untar='tar xf -'
1946 ;;
1947 pax)
1948 am__tar='pax -L -x $1 -w "$$tardir"'
1949 am__tar_='pax -L -x $1 -w "$tardir"'
1950 am__untar='pax -r'
1951 ;;
1952 cpio)
1953 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
1954 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
1955 am__untar='cpio -i -H $1 -d'
1956 ;;
1957 none)
1958 am__tar=false
1959 am__tar_=false
1960 am__untar=false
1961 ;;
1962 esac
1963
1964 # If the value was cached, stop now. We just wanted to have am__tar
1965 # and am__untar set.
1966 test -n "${am_cv_prog_tar_$1}" && break
1967
1968 # tar/untar a dummy directory, and stop if the command works
1969 rm -rf conftest.dir
1970 mkdir conftest.dir
1971 echo GrepMe > conftest.dir/file
1972 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
1973 rm -rf conftest.dir
1974 if test -s conftest.tar; then
1975 AM_RUN_LOG([$am__untar <conftest.tar])
1976 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
1977 fi
1978 done
1979 rm -rf conftest.dir
1980
1981 AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
1982 AC_MSG_RESULT([$am_cv_prog_tar_$1])])
1983 AC_SUBST([am__tar])
1984 AC_SUBST([am__untar])
1985 ]) # _AM_PROG_TAR
1986
+0
-1463
focus-blur/focusblur-3.2.6/config.guess less more
0 #! /bin/sh
1 # Attempt to guess a canonical system name.
2 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
3 # 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4
5 timestamp='2005-07-08'
6
7 # This file is free software; you can redistribute it and/or modify it
8 # under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2 of the License, or
10 # (at your option) any later version.
11 #
12 # This program is distributed in the hope that it will be useful, but
13 # WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 # General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, write to the Free Software
19 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
20 # 02110-1301, USA.
21 #
22 # As a special exception to the GNU General Public License, if you
23 # distribute this file as part of a program that contains a
24 # configuration script generated by Autoconf, you may include it under
25 # the same distribution terms that you use for the rest of that program.
26
27
28 # Originally written by Per Bothner <per@bothner.com>.
29 # Please send patches to <config-patches@gnu.org>. Submit a context
30 # diff and a properly formatted ChangeLog entry.
31 #
32 # This script attempts to guess a canonical system name similar to
33 # config.sub. If it succeeds, it prints the system name on stdout, and
34 # exits with 0. Otherwise, it exits with 1.
35 #
36 # The plan is that this can be called by configure scripts if you
37 # don't specify an explicit build system type.
38
39 me=`echo "$0" | sed -e 's,.*/,,'`
40
41 usage="\
42 Usage: $0 [OPTION]
43
44 Output the configuration name of the system \`$me' is run on.
45
46 Operation modes:
47 -h, --help print this help, then exit
48 -t, --time-stamp print date of last modification, then exit
49 -v, --version print version number, then exit
50
51 Report bugs and patches to <config-patches@gnu.org>."
52
53 version="\
54 GNU config.guess ($timestamp)
55
56 Originally written by Per Bothner.
57 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
58 Free Software Foundation, Inc.
59
60 This is free software; see the source for copying conditions. There is NO
61 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
62
63 help="
64 Try \`$me --help' for more information."
65
66 # Parse command line
67 while test $# -gt 0 ; do
68 case $1 in
69 --time-stamp | --time* | -t )
70 echo "$timestamp" ; exit ;;
71 --version | -v )
72 echo "$version" ; exit ;;
73 --help | --h* | -h )
74 echo "$usage"; exit ;;
75 -- ) # Stop option processing
76 shift; break ;;
77 - ) # Use stdin as input.
78 break ;;
79 -* )
80 echo "$me: invalid option $1$help" >&2
81 exit 1 ;;
82 * )
83 break ;;
84 esac
85 done
86
87 if test $# != 0; then
88 echo "$me: too many arguments$help" >&2
89 exit 1
90 fi
91
92 trap 'exit 1' 1 2 15
93
94 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
95 # compiler to aid in system detection is discouraged as it requires
96 # temporary files to be created and, as you can see below, it is a
97 # headache to deal with in a portable fashion.
98
99 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
100 # use `HOST_CC' if defined, but it is deprecated.
101
102 # Portable tmp directory creation inspired by the Autoconf team.
103
104 set_cc_for_build='
105 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
106 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
107 : ${TMPDIR=/tmp} ;
108 { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
109 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
110 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
111 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
112 dummy=$tmp/dummy ;
113 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
114 case $CC_FOR_BUILD,$HOST_CC,$CC in
115 ,,) echo "int x;" > $dummy.c ;
116 for c in cc gcc c89 c99 ; do
117 if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
118 CC_FOR_BUILD="$c"; break ;
119 fi ;
120 done ;
121 if test x"$CC_FOR_BUILD" = x ; then
122 CC_FOR_BUILD=no_compiler_found ;
123 fi
124 ;;
125 ,,*) CC_FOR_BUILD=$CC ;;
126 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
127 esac ; set_cc_for_build= ;'
128
129 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
130 # (ghazi@noc.rutgers.edu 1994-08-24)
131 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
132 PATH=$PATH:/.attbin ; export PATH
133 fi
134
135 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
136 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
137 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
138 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
139
140 # Note: order is significant - the case branches are not exclusive.
141
142 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
143 *:NetBSD:*:*)
144 # NetBSD (nbsd) targets should (where applicable) match one or
145 # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
146 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
147 # switched to ELF, *-*-netbsd* would select the old
148 # object file format. This provides both forward
149 # compatibility and a consistent mechanism for selecting the
150 # object file format.
151 #
152 # Note: NetBSD doesn't particularly care about the vendor
153 # portion of the name. We always set it to "unknown".
154 sysctl="sysctl -n hw.machine_arch"
155 UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
156 /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
157 case "${UNAME_MACHINE_ARCH}" in
158 armeb) machine=armeb-unknown ;;
159 arm*) machine=arm-unknown ;;
160 sh3el) machine=shl-unknown ;;
161 sh3eb) machine=sh-unknown ;;
162 *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
163 esac
164 # The Operating System including object format, if it has switched
165 # to ELF recently, or will in the future.
166 case "${UNAME_MACHINE_ARCH}" in
167 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
168 eval $set_cc_for_build
169 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
170 | grep __ELF__ >/dev/null
171 then
172 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
173 # Return netbsd for either. FIX?
174 os=netbsd
175 else
176 os=netbsdelf
177 fi
178 ;;
179 *)
180 os=netbsd
181 ;;
182 esac
183 # The OS release
184 # Debian GNU/NetBSD machines have a different userland, and
185 # thus, need a distinct triplet. However, they do not need
186 # kernel version information, so it can be replaced with a
187 # suitable tag, in the style of linux-gnu.
188 case "${UNAME_VERSION}" in
189 Debian*)
190 release='-gnu'
191 ;;
192 *)
193 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
194 ;;
195 esac
196 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
197 # contains redundant information, the shorter form:
198 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
199 echo "${machine}-${os}${release}"
200 exit ;;
201 *:OpenBSD:*:*)
202 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
203 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
204 exit ;;
205 *:ekkoBSD:*:*)
206 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
207 exit ;;
208 macppc:MirBSD:*:*)
209 echo powerppc-unknown-mirbsd${UNAME_RELEASE}
210 exit ;;
211 *:MirBSD:*:*)
212 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
213 exit ;;
214 alpha:OSF1:*:*)
215 case $UNAME_RELEASE in
216 *4.0)
217 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
218 ;;
219 *5.*)
220 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
221 ;;
222 esac
223 # According to Compaq, /usr/sbin/psrinfo has been available on
224 # OSF/1 and Tru64 systems produced since 1995. I hope that
225 # covers most systems running today. This code pipes the CPU
226 # types through head -n 1, so we only detect the type of CPU 0.
227 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
228 case "$ALPHA_CPU_TYPE" in
229 "EV4 (21064)")
230 UNAME_MACHINE="alpha" ;;
231 "EV4.5 (21064)")
232 UNAME_MACHINE="alpha" ;;
233 "LCA4 (21066/21068)")
234 UNAME_MACHINE="alpha" ;;
235 "EV5 (21164)")
236 UNAME_MACHINE="alphaev5" ;;
237 "EV5.6 (21164A)")
238 UNAME_MACHINE="alphaev56" ;;
239 "EV5.6 (21164PC)")
240 UNAME_MACHINE="alphapca56" ;;
241 "EV5.7 (21164PC)")
242 UNAME_MACHINE="alphapca57" ;;
243 "EV6 (21264)")
244 UNAME_MACHINE="alphaev6" ;;
245 "EV6.7 (21264A)")
246 UNAME_MACHINE="alphaev67" ;;
247 "EV6.8CB (21264C)")
248 UNAME_MACHINE="alphaev68" ;;
249 "EV6.8AL (21264B)")
250 UNAME_MACHINE="alphaev68" ;;
251 "EV6.8CX (21264D)")
252 UNAME_MACHINE="alphaev68" ;;
253 "EV6.9A (21264/EV69A)")
254 UNAME_MACHINE="alphaev69" ;;
255 "EV7 (21364)")
256 UNAME_MACHINE="alphaev7" ;;
257 "EV7.9 (21364A)")
258 UNAME_MACHINE="alphaev79" ;;
259 esac
260 # A Pn.n version is a patched version.
261 # A Vn.n version is a released version.
262 # A Tn.n version is a released field test version.
263 # A Xn.n version is an unreleased experimental baselevel.
264 # 1.2 uses "1.2" for uname -r.
265 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
266 exit ;;
267 Alpha\ *:Windows_NT*:*)
268 # How do we know it's Interix rather than the generic POSIX subsystem?
269 # Should we change UNAME_MACHINE based on the output of uname instead
270 # of the specific Alpha model?
271 echo alpha-pc-interix
272 exit ;;
273 21064:Windows_NT:50:3)
274 echo alpha-dec-winnt3.5
275 exit ;;
276 Amiga*:UNIX_System_V:4.0:*)
277 echo m68k-unknown-sysv4
278 exit ;;
279 *:[Aa]miga[Oo][Ss]:*:*)
280 echo ${UNAME_MACHINE}-unknown-amigaos
281 exit ;;
282 *:[Mm]orph[Oo][Ss]:*:*)
283 echo ${UNAME_MACHINE}-unknown-morphos
284 exit ;;
285 *:OS/390:*:*)
286 echo i370-ibm-openedition
287 exit ;;
288 *:z/VM:*:*)
289 echo s390-ibm-zvmoe
290 exit ;;
291 *:OS400:*:*)
292 echo powerpc-ibm-os400
293 exit ;;
294 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
295 echo arm-acorn-riscix${UNAME_RELEASE}
296 exit ;;
297 arm:riscos:*:*|arm:RISCOS:*:*)
298 echo arm-unknown-riscos
299 exit ;;
300 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
301 echo hppa1.1-hitachi-hiuxmpp
302 exit ;;
303 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
304 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
305 if test "`(/bin/universe) 2>/dev/null`" = att ; then
306 echo pyramid-pyramid-sysv3
307 else
308 echo pyramid-pyramid-bsd
309 fi
310 exit ;;
311 NILE*:*:*:dcosx)
312 echo pyramid-pyramid-svr4
313 exit ;;
314 DRS?6000:unix:4.0:6*)
315 echo sparc-icl-nx6
316 exit ;;
317 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
318 case `/usr/bin/uname -p` in
319 sparc) echo sparc-icl-nx7; exit ;;
320 esac ;;
321 sun4H:SunOS:5.*:*)
322 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
323 exit ;;
324 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
325 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
326 exit ;;
327 i86pc:SunOS:5.*:*)
328 echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
329 exit ;;
330 sun4*:SunOS:6*:*)
331 # According to config.sub, this is the proper way to canonicalize
332 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
333 # it's likely to be more like Solaris than SunOS4.
334 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
335 exit ;;
336 sun4*:SunOS:*:*)
337 case "`/usr/bin/arch -k`" in
338 Series*|S4*)
339 UNAME_RELEASE=`uname -v`
340 ;;
341 esac
342 # Japanese Language versions have a version number like `4.1.3-JL'.
343 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
344 exit ;;
345 sun3*:SunOS:*:*)
346 echo m68k-sun-sunos${UNAME_RELEASE}
347 exit ;;
348 sun*:*:4.2BSD:*)
349 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
350 test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
351 case "`/bin/arch`" in
352 sun3)
353 echo m68k-sun-sunos${UNAME_RELEASE}
354 ;;
355 sun4)
356 echo sparc-sun-sunos${UNAME_RELEASE}
357 ;;
358 esac
359 exit ;;
360 aushp:SunOS:*:*)
361 echo sparc-auspex-sunos${UNAME_RELEASE}
362 exit ;;
363 # The situation for MiNT is a little confusing. The machine name
364 # can be virtually everything (everything which is not
365 # "atarist" or "atariste" at least should have a processor
366 # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
367 # to the lowercase version "mint" (or "freemint"). Finally
368 # the system name "TOS" denotes a system which is actually not
369 # MiNT. But MiNT is downward compatible to TOS, so this should
370 # be no problem.
371 atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
372 echo m68k-atari-mint${UNAME_RELEASE}
373 exit ;;
374 atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
375 echo m68k-atari-mint${UNAME_RELEASE}
376 exit ;;
377 *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
378 echo m68k-atari-mint${UNAME_RELEASE}
379 exit ;;
380 milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
381 echo m68k-milan-mint${UNAME_RELEASE}
382 exit ;;
383 hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
384 echo m68k-hades-mint${UNAME_RELEASE}
385 exit ;;
386 *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
387 echo m68k-unknown-mint${UNAME_RELEASE}
388 exit ;;
389 m68k:machten:*:*)
390 echo m68k-apple-machten${UNAME_RELEASE}
391 exit ;;
392 powerpc:machten:*:*)
393 echo powerpc-apple-machten${UNAME_RELEASE}
394 exit ;;
395 RISC*:Mach:*:*)
396 echo mips-dec-mach_bsd4.3
397 exit ;;
398 RISC*:ULTRIX:*:*)
399 echo mips-dec-ultrix${UNAME_RELEASE}
400 exit ;;
401 VAX*:ULTRIX*:*:*)
402 echo vax-dec-ultrix${UNAME_RELEASE}
403 exit ;;
404 2020:CLIX:*:* | 2430:CLIX:*:*)
405 echo clipper-intergraph-clix${UNAME_RELEASE}
406 exit ;;
407 mips:*:*:UMIPS | mips:*:*:RISCos)
408 eval $set_cc_for_build
409 sed 's/^ //' << EOF >$dummy.c
410 #ifdef __cplusplus
411 #include <stdio.h> /* for printf() prototype */
412 int main (int argc, char *argv[]) {
413 #else
414 int main (argc, argv) int argc; char *argv[]; {
415 #endif
416 #if defined (host_mips) && defined (MIPSEB)
417 #if defined (SYSTYPE_SYSV)
418 printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
419 #endif
420 #if defined (SYSTYPE_SVR4)
421 printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
422 #endif
423 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
424 printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
425 #endif
426 #endif
427 exit (-1);
428 }
429 EOF
430 $CC_FOR_BUILD -o $dummy $dummy.c &&
431 dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
432 SYSTEM_NAME=`$dummy $dummyarg` &&
433 { echo "$SYSTEM_NAME"; exit; }
434 echo mips-mips-riscos${UNAME_RELEASE}
435 exit ;;
436 Motorola:PowerMAX_OS:*:*)
437 echo powerpc-motorola-powermax
438 exit ;;
439 Motorola:*:4.3:PL8-*)
440 echo powerpc-harris-powermax
441 exit ;;
442 Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
443 echo powerpc-harris-powermax
444 exit ;;
445 Night_Hawk:Power_UNIX:*:*)
446 echo powerpc-harris-powerunix
447 exit ;;
448 m88k:CX/UX:7*:*)
449 echo m88k-harris-cxux7
450 exit ;;
451 m88k:*:4*:R4*)
452 echo m88k-motorola-sysv4
453 exit ;;
454 m88k:*:3*:R3*)
455 echo m88k-motorola-sysv3
456 exit ;;
457 AViiON:dgux:*:*)
458 # DG/UX returns AViiON for all architectures
459 UNAME_PROCESSOR=`/usr/bin/uname -p`
460 if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
461 then
462 if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
463 [ ${TARGET_BINARY_INTERFACE}x = x ]
464 then
465 echo m88k-dg-dgux${UNAME_RELEASE}
466 else
467 echo m88k-dg-dguxbcs${UNAME_RELEASE}
468 fi
469 else
470 echo i586-dg-dgux${UNAME_RELEASE}
471 fi
472 exit ;;
473 M88*:DolphinOS:*:*) # DolphinOS (SVR3)
474 echo m88k-dolphin-sysv3
475 exit ;;
476 M88*:*:R3*:*)
477 # Delta 88k system running SVR3
478 echo m88k-motorola-sysv3
479 exit ;;
480 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
481 echo m88k-tektronix-sysv3
482 exit ;;
483 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
484 echo m68k-tektronix-bsd
485 exit ;;
486 *:IRIX*:*:*)
487 echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
488 exit ;;
489 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
490 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
491 exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
492 i*86:AIX:*:*)
493 echo i386-ibm-aix
494 exit ;;
495 ia64:AIX:*:*)
496 if [ -x /usr/bin/oslevel ] ; then
497 IBM_REV=`/usr/bin/oslevel`
498 else
499 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
500 fi
501 echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
502 exit ;;
503 *:AIX:2:3)
504 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
505 eval $set_cc_for_build
506 sed 's/^ //' << EOF >$dummy.c
507 #include <sys/systemcfg.h>
508
509 main()
510 {
511 if (!__power_pc())
512 exit(1);
513 puts("powerpc-ibm-aix3.2.5");
514 exit(0);
515 }
516 EOF
517 if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
518 then
519 echo "$SYSTEM_NAME"
520 else
521 echo rs6000-ibm-aix3.2.5
522 fi
523 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
524 echo rs6000-ibm-aix3.2.4
525 else
526 echo rs6000-ibm-aix3.2
527 fi
528 exit ;;
529 *:AIX:*:[45])
530 IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
531 if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
532 IBM_ARCH=rs6000
533 else
534 IBM_ARCH=powerpc
535 fi
536 if [ -x /usr/bin/oslevel ] ; then
537 IBM_REV=`/usr/bin/oslevel`
538 else
539 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
540 fi
541 echo ${IBM_ARCH}-ibm-aix${IBM_REV}
542 exit ;;
543 *:AIX:*:*)
544 echo rs6000-ibm-aix
545 exit ;;
546 ibmrt:4.4BSD:*|romp-ibm:BSD:*)
547 echo romp-ibm-bsd4.4
548 exit ;;
549 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
550 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
551 exit ;; # report: romp-ibm BSD 4.3
552 *:BOSX:*:*)
553 echo rs6000-bull-bosx
554 exit ;;
555 DPX/2?00:B.O.S.:*:*)
556 echo m68k-bull-sysv3
557 exit ;;
558 9000/[34]??:4.3bsd:1.*:*)
559 echo m68k-hp-bsd
560 exit ;;
561 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
562 echo m68k-hp-bsd4.4
563 exit ;;
564 9000/[34678]??:HP-UX:*:*)
565 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
566 case "${UNAME_MACHINE}" in
567 9000/31? ) HP_ARCH=m68000 ;;
568 9000/[34]?? ) HP_ARCH=m68k ;;
569 9000/[678][0-9][0-9])
570 if [ -x /usr/bin/getconf ]; then
571 sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
572 sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
573 case "${sc_cpu_version}" in
574 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
575 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
576 532) # CPU_PA_RISC2_0
577 case "${sc_kernel_bits}" in
578 32) HP_ARCH="hppa2.0n" ;;
579 64) HP_ARCH="hppa2.0w" ;;
580 '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
581 esac ;;
582 esac
583 fi
584 if [ "${HP_ARCH}" = "" ]; then
585 eval $set_cc_for_build
586 sed 's/^ //' << EOF >$dummy.c
587
588 #define _HPUX_SOURCE
589 #include <stdlib.h>
590 #include <unistd.h>
591
592 int main ()
593 {
594 #if defined(_SC_KERNEL_BITS)
595 long bits = sysconf(_SC_KERNEL_BITS);
596 #endif
597 long cpu = sysconf (_SC_CPU_VERSION);
598
599 switch (cpu)
600 {
601 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
602 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
603 case CPU_PA_RISC2_0:
604 #if defined(_SC_KERNEL_BITS)
605 switch (bits)
606 {
607 case 64: puts ("hppa2.0w"); break;
608 case 32: puts ("hppa2.0n"); break;
609 default: puts ("hppa2.0"); break;
610 } break;
611 #else /* !defined(_SC_KERNEL_BITS) */
612 puts ("hppa2.0"); break;
613 #endif
614 default: puts ("hppa1.0"); break;
615 }
616 exit (0);
617 }
618 EOF
619 (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
620 test -z "$HP_ARCH" && HP_ARCH=hppa
621 fi ;;
622 esac
623 if [ ${HP_ARCH} = "hppa2.0w" ]
624 then
625 eval $set_cc_for_build
626
627 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
628 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
629 # generating 64-bit code. GNU and HP use different nomenclature:
630 #
631 # $ CC_FOR_BUILD=cc ./config.guess
632 # => hppa2.0w-hp-hpux11.23
633 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
634 # => hppa64-hp-hpux11.23
635
636 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
637 grep __LP64__ >/dev/null
638 then
639 HP_ARCH="hppa2.0w"
640 else
641 HP_ARCH="hppa64"
642 fi
643 fi
644 echo ${HP_ARCH}-hp-hpux${HPUX_REV}
645 exit ;;
646 ia64:HP-UX:*:*)
647 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
648 echo ia64-hp-hpux${HPUX_REV}
649 exit ;;
650 3050*:HI-UX:*:*)
651 eval $set_cc_for_build
652 sed 's/^ //' << EOF >$dummy.c
653 #include <unistd.h>
654 int
655 main ()
656 {
657 long cpu = sysconf (_SC_CPU_VERSION);
658 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
659 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
660 results, however. */
661 if (CPU_IS_PA_RISC (cpu))
662 {
663 switch (cpu)
664 {
665 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
666 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
667 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
668 default: puts ("hppa-hitachi-hiuxwe2"); break;
669 }
670 }
671 else if (CPU_IS_HP_MC68K (cpu))
672 puts ("m68k-hitachi-hiuxwe2");
673 else puts ("unknown-hitachi-hiuxwe2");
674 exit (0);
675 }
676 EOF
677 $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
678 { echo "$SYSTEM_NAME"; exit; }
679 echo unknown-hitachi-hiuxwe2
680 exit ;;
681 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
682 echo hppa1.1-hp-bsd
683 exit ;;
684 9000/8??:4.3bsd:*:*)
685 echo hppa1.0-hp-bsd
686 exit ;;
687 *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
688 echo hppa1.0-hp-mpeix
689 exit ;;
690 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
691 echo hppa1.1-hp-osf
692 exit ;;
693 hp8??:OSF1:*:*)
694 echo hppa1.0-hp-osf
695 exit ;;
696 i*86:OSF1:*:*)
697 if [ -x /usr/sbin/sysversion ] ; then
698 echo ${UNAME_MACHINE}-unknown-osf1mk
699 else
700 echo ${UNAME_MACHINE}-unknown-osf1
701 fi
702 exit ;;
703 parisc*:Lites*:*:*)
704 echo hppa1.1-hp-lites
705 exit ;;
706 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
707 echo c1-convex-bsd
708 exit ;;
709 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
710 if getsysinfo -f scalar_acc
711 then echo c32-convex-bsd
712 else echo c2-convex-bsd
713 fi
714 exit ;;
715 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
716 echo c34-convex-bsd
717 exit ;;
718 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
719 echo c38-convex-bsd
720 exit ;;
721 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
722 echo c4-convex-bsd
723 exit ;;
724 CRAY*Y-MP:*:*:*)
725 echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
726 exit ;;
727 CRAY*[A-Z]90:*:*:*)
728 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
729 | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
730 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
731 -e 's/\.[^.]*$/.X/'
732 exit ;;
733 CRAY*TS:*:*:*)
734 echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
735 exit ;;
736 CRAY*T3E:*:*:*)
737 echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
738 exit ;;
739 CRAY*SV1:*:*:*)
740 echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
741 exit ;;
742 *:UNICOS/mp:*:*)
743 echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
744 exit ;;
745 F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
746 FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
747 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
748 FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
749 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
750 exit ;;
751 5000:UNIX_System_V:4.*:*)
752 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
753 FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
754 echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
755 exit ;;
756 i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
757 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
758 exit ;;
759 sparc*:BSD/OS:*:*)
760 echo sparc-unknown-bsdi${UNAME_RELEASE}
761 exit ;;
762 *:BSD/OS:*:*)
763 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
764 exit ;;
765 *:FreeBSD:*:*)
766 echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
767 exit ;;
768 i*:CYGWIN*:*)
769 echo ${UNAME_MACHINE}-pc-cygwin
770 exit ;;
771 i*:MINGW*:*)
772 echo ${UNAME_MACHINE}-pc-mingw32
773 exit ;;
774 i*:windows32*:*)
775 # uname -m includes "-pc" on this system.
776 echo ${UNAME_MACHINE}-mingw32
777 exit ;;
778 i*:PW*:*)
779 echo ${UNAME_MACHINE}-pc-pw32
780 exit ;;
781 x86:Interix*:[34]*)
782 echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
783 exit ;;
784 [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
785 echo i${UNAME_MACHINE}-pc-mks
786 exit ;;
787 i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
788 # How do we know it's Interix rather than the generic POSIX subsystem?
789 # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
790 # UNAME_MACHINE based on the output of uname instead of i386?
791 echo i586-pc-interix
792 exit ;;
793 i*:UWIN*:*)
794 echo ${UNAME_MACHINE}-pc-uwin
795 exit ;;
796 amd64:CYGWIN*:*:*)
797 echo x86_64-unknown-cygwin
798 exit ;;
799 p*:CYGWIN*:*)
800 echo powerpcle-unknown-cygwin
801 exit ;;
802 prep*:SunOS:5.*:*)
803 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
804 exit ;;
805 *:GNU:*:*)
806 # the GNU system
807 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
808 exit ;;
809 *:GNU/*:*:*)
810 # other systems with GNU libc and userland
811 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
812 exit ;;
813 i*86:Minix:*:*)
814 echo ${UNAME_MACHINE}-pc-minix
815 exit ;;
816 arm*:Linux:*:*)
817 echo ${UNAME_MACHINE}-unknown-linux-gnu
818 exit ;;
819 cris:Linux:*:*)
820 echo cris-axis-linux-gnu
821 exit ;;
822 crisv32:Linux:*:*)
823 echo crisv32-axis-linux-gnu
824 exit ;;
825 frv:Linux:*:*)
826 echo frv-unknown-linux-gnu
827 exit ;;
828 ia64:Linux:*:*)
829 echo ${UNAME_MACHINE}-unknown-linux-gnu
830 exit ;;
831 m32r*:Linux:*:*)
832 echo ${UNAME_MACHINE}-unknown-linux-gnu
833 exit ;;
834 m68*:Linux:*:*)
835 echo ${UNAME_MACHINE}-unknown-linux-gnu
836 exit ;;
837 mips:Linux:*:*)
838 eval $set_cc_for_build
839 sed 's/^ //' << EOF >$dummy.c
840 #undef CPU
841 #undef mips
842 #undef mipsel
843 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
844 CPU=mipsel
845 #else
846 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
847 CPU=mips
848 #else
849 CPU=
850 #endif
851 #endif
852 EOF
853 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
854 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
855 ;;
856 mips64:Linux:*:*)
857 eval $set_cc_for_build
858 sed 's/^ //' << EOF >$dummy.c
859 #undef CPU
860 #undef mips64
861 #undef mips64el
862 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
863 CPU=mips64el
864 #else
865 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
866 CPU=mips64
867 #else
868 CPU=
869 #endif
870 #endif
871 EOF
872 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
873 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
874 ;;
875 ppc:Linux:*:*)
876 echo powerpc-unknown-linux-gnu
877 exit ;;
878 ppc64:Linux:*:*)
879 echo powerpc64-unknown-linux-gnu
880 exit ;;
881 alpha:Linux:*:*)
882 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
883 EV5) UNAME_MACHINE=alphaev5 ;;
884 EV56) UNAME_MACHINE=alphaev56 ;;
885 PCA56) UNAME_MACHINE=alphapca56 ;;
886 PCA57) UNAME_MACHINE=alphapca56 ;;
887 EV6) UNAME_MACHINE=alphaev6 ;;
888 EV67) UNAME_MACHINE=alphaev67 ;;
889 EV68*) UNAME_MACHINE=alphaev68 ;;
890 esac
891 objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
892 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
893 echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
894 exit ;;
895 parisc:Linux:*:* | hppa:Linux:*:*)
896 # Look for CPU level
897 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
898 PA7*) echo hppa1.1-unknown-linux-gnu ;;
899 PA8*) echo hppa2.0-unknown-linux-gnu ;;
900 *) echo hppa-unknown-linux-gnu ;;
901 esac
902 exit ;;
903 parisc64:Linux:*:* | hppa64:Linux:*:*)
904 echo hppa64-unknown-linux-gnu
905 exit ;;
906 s390:Linux:*:* | s390x:Linux:*:*)
907 echo ${UNAME_MACHINE}-ibm-linux
908 exit ;;
909 sh64*:Linux:*:*)
910 echo ${UNAME_MACHINE}-unknown-linux-gnu
911 exit ;;
912 sh*:Linux:*:*)
913 echo ${UNAME_MACHINE}-unknown-linux-gnu
914 exit ;;
915 sparc:Linux:*:* | sparc64:Linux:*:*)
916 echo ${UNAME_MACHINE}-unknown-linux-gnu
917 exit ;;
918 x86_64:Linux:*:*)
919 echo x86_64-unknown-linux-gnu
920 exit ;;
921 i*86:Linux:*:*)
922 # The BFD linker knows what the default object file format is, so
923 # first see if it will tell us. cd to the root directory to prevent
924 # problems with other programs or directories called `ld' in the path.
925 # Set LC_ALL=C to ensure ld outputs messages in English.
926 ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
927 | sed -ne '/supported targets:/!d
928 s/[ ][ ]*/ /g
929 s/.*supported targets: *//
930 s/ .*//
931 p'`
932 case "$ld_supported_targets" in
933 elf32-i386)
934 TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
935 ;;
936 a.out-i386-linux)
937 echo "${UNAME_MACHINE}-pc-linux-gnuaout"
938 exit ;;
939 coff-i386)
940 echo "${UNAME_MACHINE}-pc-linux-gnucoff"
941 exit ;;
942 "")
943 # Either a pre-BFD a.out linker (linux-gnuoldld) or
944 # one that does not give us useful --help.
945 echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
946 exit ;;
947 esac
948 # Determine whether the default compiler is a.out or elf
949 eval $set_cc_for_build
950 sed 's/^ //' << EOF >$dummy.c
951 #include <features.h>
952 #ifdef __ELF__
953 # ifdef __GLIBC__
954 # if __GLIBC__ >= 2
955 LIBC=gnu
956 # else
957 LIBC=gnulibc1
958 # endif
959 # else
960 LIBC=gnulibc1
961 # endif
962 #else
963 #ifdef __INTEL_COMPILER
964 LIBC=gnu
965 #else
966 LIBC=gnuaout
967 #endif
968 #endif
969 #ifdef __dietlibc__
970 LIBC=dietlibc
971 #endif
972 EOF
973 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
974 test x"${LIBC}" != x && {
975 echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
976 exit
977 }
978 test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
979 ;;
980 i*86:DYNIX/ptx:4*:*)
981 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
982 # earlier versions are messed up and put the nodename in both
983 # sysname and nodename.
984 echo i386-sequent-sysv4
985 exit ;;
986 i*86:UNIX_SV:4.2MP:2.*)
987 # Unixware is an offshoot of SVR4, but it has its own version
988 # number series starting with 2...
989 # I am not positive that other SVR4 systems won't match this,
990 # I just have to hope. -- rms.
991 # Use sysv4.2uw... so that sysv4* matches it.
992 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
993 exit ;;
994 i*86:OS/2:*:*)
995 # If we were able to find `uname', then EMX Unix compatibility
996 # is probably installed.
997 echo ${UNAME_MACHINE}-pc-os2-emx
998 exit ;;
999 i*86:XTS-300:*:STOP)
1000 echo ${UNAME_MACHINE}-unknown-stop
1001 exit ;;
1002 i*86:atheos:*:*)
1003 echo ${UNAME_MACHINE}-unknown-atheos
1004 exit ;;
1005 i*86:syllable:*:*)
1006 echo ${UNAME_MACHINE}-pc-syllable
1007 exit ;;
1008 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1009 echo i386-unknown-lynxos${UNAME_RELEASE}
1010 exit ;;
1011 i*86:*DOS:*:*)
1012 echo ${UNAME_MACHINE}-pc-msdosdjgpp
1013 exit ;;
1014 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1015 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1016 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1017 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1018 else
1019 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1020 fi
1021 exit ;;
1022 i*86:*:5:[678]*)
1023 # UnixWare 7.x, OpenUNIX and OpenServer 6.
1024 case `/bin/uname -X | grep "^Machine"` in
1025 *486*) UNAME_MACHINE=i486 ;;
1026 *Pentium) UNAME_MACHINE=i586 ;;
1027 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1028 esac
1029 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1030 exit ;;
1031 i*86:*:3.2:*)
1032 if test -f /usr/options/cb.name; then
1033 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1034 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1035 elif /bin/uname -X 2>/dev/null >/dev/null ; then
1036 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1037 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1038 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1039 && UNAME_MACHINE=i586
1040 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1041 && UNAME_MACHINE=i686
1042 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1043 && UNAME_MACHINE=i686
1044 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1045 else
1046 echo ${UNAME_MACHINE}-pc-sysv32
1047 fi
1048 exit ;;
1049 pc:*:*:*)
1050 # Left here for compatibility:
1051 # uname -m prints for DJGPP always 'pc', but it prints nothing about
1052 # the processor, so we play safe by assuming i386.
1053 echo i386-pc-msdosdjgpp
1054 exit ;;
1055 Intel:Mach:3*:*)
1056 echo i386-pc-mach3
1057 exit ;;
1058 paragon:*:*:*)
1059 echo i860-intel-osf1
1060 exit ;;
1061 i860:*:4.*:*) # i860-SVR4
1062 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1063 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1064 else # Add other i860-SVR4 vendors below as they are discovered.
1065 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1066 fi
1067 exit ;;
1068 mini*:CTIX:SYS*5:*)
1069 # "miniframe"
1070 echo m68010-convergent-sysv
1071 exit ;;
1072 mc68k:UNIX:SYSTEM5:3.51m)
1073 echo m68k-convergent-sysv
1074 exit ;;
1075 M680?0:D-NIX:5.3:*)
1076 echo m68k-diab-dnix
1077 exit ;;
1078 M68*:*:R3V[5678]*:*)
1079 test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1080 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
1081 OS_REL=''
1082 test -r /etc/.relid \
1083 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1084 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1085 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1086 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1087 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1088 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1089 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1090 && { echo i486-ncr-sysv4; exit; } ;;
1091 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1092 echo m68k-unknown-lynxos${UNAME_RELEASE}
1093 exit ;;
1094 mc68030:UNIX_System_V:4.*:*)
1095 echo m68k-atari-sysv4
1096 exit ;;
1097 TSUNAMI:LynxOS:2.*:*)
1098 echo sparc-unknown-lynxos${UNAME_RELEASE}
1099 exit ;;
1100 rs6000:LynxOS:2.*:*)
1101 echo rs6000-unknown-lynxos${UNAME_RELEASE}
1102 exit ;;
1103 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1104 echo powerpc-unknown-lynxos${UNAME_RELEASE}
1105 exit ;;
1106 SM[BE]S:UNIX_SV:*:*)
1107 echo mips-dde-sysv${UNAME_RELEASE}
1108 exit ;;
1109 RM*:ReliantUNIX-*:*:*)
1110 echo mips-sni-sysv4
1111 exit ;;
1112 RM*:SINIX-*:*:*)
1113 echo mips-sni-sysv4
1114 exit ;;
1115 *:SINIX-*:*:*)
1116 if uname -p 2>/dev/null >/dev/null ; then
1117 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1118 echo ${UNAME_MACHINE}-sni-sysv4
1119 else
1120 echo ns32k-sni-sysv
1121 fi
1122 exit ;;
1123 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1124 # says <Richard.M.Bartel@ccMail.Census.GOV>
1125 echo i586-unisys-sysv4
1126 exit ;;
1127 *:UNIX_System_V:4*:FTX*)
1128 # From Gerald Hewes <hewes@openmarket.com>.
1129 # How about differentiating between stratus architectures? -djm
1130 echo hppa1.1-stratus-sysv4
1131 exit ;;
1132 *:*:*:FTX*)
1133 # From seanf@swdc.stratus.com.
1134 echo i860-stratus-sysv4
1135 exit ;;
1136 i*86:VOS:*:*)
1137 # From Paul.Green@stratus.com.
1138 echo ${UNAME_MACHINE}-stratus-vos
1139 exit ;;
1140 *:VOS:*:*)
1141 # From Paul.Green@stratus.com.
1142 echo hppa1.1-stratus-vos
1143 exit ;;
1144 mc68*:A/UX:*:*)
1145 echo m68k-apple-aux${UNAME_RELEASE}
1146 exit ;;
1147 news*:NEWS-OS:6*:*)
1148 echo mips-sony-newsos6
1149 exit ;;
1150 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1151 if [ -d /usr/nec ]; then
1152 echo mips-nec-sysv${UNAME_RELEASE}
1153 else
1154 echo mips-unknown-sysv${UNAME_RELEASE}
1155 fi
1156 exit ;;
1157 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1158 echo powerpc-be-beos
1159 exit ;;
1160 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1161 echo powerpc-apple-beos
1162 exit ;;
1163 BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1164 echo i586-pc-beos
1165 exit ;;
1166 SX-4:SUPER-UX:*:*)
1167 echo sx4-nec-superux${UNAME_RELEASE}
1168 exit ;;
1169 SX-5:SUPER-UX:*:*)
1170 echo sx5-nec-superux${UNAME_RELEASE}
1171 exit ;;
1172 SX-6:SUPER-UX:*:*)
1173 echo sx6-nec-superux${UNAME_RELEASE}
1174 exit ;;
1175 Power*:Rhapsody:*:*)
1176 echo powerpc-apple-rhapsody${UNAME_RELEASE}
1177 exit ;;
1178 *:Rhapsody:*:*)
1179 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1180 exit ;;
1181 *:Darwin:*:*)
1182 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1183 case $UNAME_PROCESSOR in
1184 *86) UNAME_PROCESSOR=i686 ;;
1185 unknown) UNAME_PROCESSOR=powerpc ;;
1186 esac
1187 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1188 exit ;;
1189 *:procnto*:*:* | *:QNX:[0123456789]*:*)
1190 UNAME_PROCESSOR=`uname -p`
1191 if test "$UNAME_PROCESSOR" = "x86"; then
1192 UNAME_PROCESSOR=i386
1193 UNAME_MACHINE=pc
1194 fi
1195 echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1196 exit ;;
1197 *:QNX:*:4*)
1198 echo i386-pc-qnx
1199 exit ;;
1200 NSE-?:NONSTOP_KERNEL:*:*)
1201 echo nse-tandem-nsk${UNAME_RELEASE}
1202 exit ;;
1203 NSR-?:NONSTOP_KERNEL:*:*)
1204 echo nsr-tandem-nsk${UNAME_RELEASE}
1205 exit ;;
1206 *:NonStop-UX:*:*)
1207 echo mips-compaq-nonstopux
1208 exit ;;
1209 BS2000:POSIX*:*:*)
1210 echo bs2000-siemens-sysv
1211 exit ;;
1212 DS/*:UNIX_System_V:*:*)
1213 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1214 exit ;;
1215 *:Plan9:*:*)
1216 # "uname -m" is not consistent, so use $cputype instead. 386
1217 # is converted to i386 for consistency with other x86
1218 # operating systems.
1219 if test "$cputype" = "386"; then
1220 UNAME_MACHINE=i386
1221 else
1222 UNAME_MACHINE="$cputype"
1223 fi
1224 echo ${UNAME_MACHINE}-unknown-plan9
1225 exit ;;
1226 *:TOPS-10:*:*)
1227 echo pdp10-unknown-tops10
1228 exit ;;
1229 *:TENEX:*:*)
1230 echo pdp10-unknown-tenex
1231 exit ;;
1232 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1233 echo pdp10-dec-tops20
1234 exit ;;
1235 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1236 echo pdp10-xkl-tops20
1237 exit ;;
1238 *:TOPS-20:*:*)
1239 echo pdp10-unknown-tops20
1240 exit ;;
1241 *:ITS:*:*)
1242 echo pdp10-unknown-its
1243 exit ;;
1244 SEI:*:*:SEIUX)
1245 echo mips-sei-seiux${UNAME_RELEASE}
1246 exit ;;
1247 *:DragonFly:*:*)
1248 echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1249 exit ;;
1250 *:*VMS:*:*)
1251 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1252 case "${UNAME_MACHINE}" in
1253 A*) echo alpha-dec-vms ; exit ;;
1254 I*) echo ia64-dec-vms ; exit ;;
1255 V*) echo vax-dec-vms ; exit ;;
1256 esac ;;
1257 *:XENIX:*:SysV)
1258 echo i386-pc-xenix
1259 exit ;;
1260 i*86:skyos:*:*)
1261 echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1262 exit ;;
1263 esac
1264
1265 #echo '(No uname command or uname output not recognized.)' 1>&2
1266 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1267
1268 eval $set_cc_for_build
1269 cat >$dummy.c <<EOF
1270 #ifdef _SEQUENT_
1271 # include <sys/types.h>
1272 # include <sys/utsname.h>
1273 #endif
1274 main ()
1275 {
1276 #if defined (sony)
1277 #if defined (MIPSEB)
1278 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1279 I don't know.... */
1280 printf ("mips-sony-bsd\n"); exit (0);
1281 #else
1282 #include <sys/param.h>
1283 printf ("m68k-sony-newsos%s\n",
1284 #ifdef NEWSOS4
1285 "4"
1286 #else
1287 ""
1288 #endif
1289 ); exit (0);
1290 #endif
1291 #endif
1292
1293 #if defined (__arm) && defined (__acorn) && defined (__unix)
1294 printf ("arm-acorn-riscix\n"); exit (0);
1295 #endif
1296
1297 #if defined (hp300) && !defined (hpux)
1298 printf ("m68k-hp-bsd\n"); exit (0);
1299 #endif
1300
1301 #if defined (NeXT)
1302 #if !defined (__ARCHITECTURE__)
1303 #define __ARCHITECTURE__ "m68k"
1304 #endif
1305 int version;
1306 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1307 if (version < 4)
1308 printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1309 else
1310 printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1311 exit (0);
1312 #endif
1313
1314 #if defined (MULTIMAX) || defined (n16)
1315 #if defined (UMAXV)
1316 printf ("ns32k-encore-sysv\n"); exit (0);
1317 #else
1318 #if defined (CMU)
1319 printf ("ns32k-encore-mach\n"); exit (0);
1320 #else
1321 printf ("ns32k-encore-bsd\n"); exit (0);
1322 #endif
1323 #endif
1324 #endif
1325
1326 #if defined (__386BSD__)
1327 printf ("i386-pc-bsd\n"); exit (0);
1328 #endif
1329
1330 #if defined (sequent)
1331 #if defined (i386)
1332 printf ("i386-sequent-dynix\n"); exit (0);
1333 #endif
1334 #if defined (ns32000)
1335 printf ("ns32k-sequent-dynix\n"); exit (0);
1336 #endif
1337 #endif
1338
1339 #if defined (_SEQUENT_)
1340 struct utsname un;
1341
1342 uname(&un);
1343
1344 if (strncmp(un.version, "V2", 2) == 0) {
1345 printf ("i386-sequent-ptx2\n"); exit (0);
1346 }
1347 if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1348 printf ("i386-sequent-ptx1\n"); exit (0);
1349 }
1350 printf ("i386-sequent-ptx\n"); exit (0);
1351
1352 #endif
1353
1354 #if defined (vax)
1355 # if !defined (ultrix)
1356 # include <sys/param.h>
1357 # if defined (BSD)
1358 # if BSD == 43
1359 printf ("vax-dec-bsd4.3\n"); exit (0);
1360 # else
1361 # if BSD == 199006
1362 printf ("vax-dec-bsd4.3reno\n"); exit (0);
1363 # else
1364 printf ("vax-dec-bsd\n"); exit (0);
1365 # endif
1366 # endif
1367 # else
1368 printf ("vax-dec-bsd\n"); exit (0);
1369 # endif
1370 # else
1371 printf ("vax-dec-ultrix\n"); exit (0);
1372 # endif
1373 #endif
1374
1375 #if defined (alliant) && defined (i860)
1376 printf ("i860-alliant-bsd\n"); exit (0);
1377 #endif
1378
1379 exit (1);
1380 }
1381 EOF
1382
1383 $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1384 { echo "$SYSTEM_NAME"; exit; }
1385
1386 # Apollos put the system type in the environment.
1387
1388 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1389
1390 # Convex versions that predate uname can use getsysinfo(1)
1391
1392 if [ -x /usr/convex/getsysinfo ]
1393 then
1394 case `getsysinfo -f cpu_type` in
1395 c1*)
1396 echo c1-convex-bsd
1397 exit ;;
1398 c2*)
1399 if getsysinfo -f scalar_acc
1400 then echo c32-convex-bsd
1401 else echo c2-convex-bsd
1402 fi
1403 exit ;;
1404 c34*)
1405 echo c34-convex-bsd
1406 exit ;;
1407 c38*)
1408 echo c38-convex-bsd
1409 exit ;;
1410 c4*)
1411 echo c4-convex-bsd
1412 exit ;;
1413 esac
1414 fi
1415
1416 cat >&2 <<EOF
1417 $0: unable to guess system type
1418
1419 This script, last modified $timestamp, has failed to recognize
1420 the operating system you are using. It is advised that you
1421 download the most up to date version of the config scripts from
1422
1423 http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
1424 and
1425 http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
1426
1427 If the version you run ($0) is already up to date, please
1428 send the following data and any information you think might be
1429 pertinent to <config-patches@gnu.org> in order to provide the needed
1430 information to handle your system.
1431
1432 config.guess timestamp = $timestamp
1433
1434 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1435 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1436 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1437 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1438
1439 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1440 /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1441
1442 hostinfo = `(hostinfo) 2>/dev/null`
1443 /bin/universe = `(/bin/universe) 2>/dev/null`
1444 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1445 /bin/arch = `(/bin/arch) 2>/dev/null`
1446 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1447 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1448
1449 UNAME_MACHINE = ${UNAME_MACHINE}
1450 UNAME_RELEASE = ${UNAME_RELEASE}
1451 UNAME_SYSTEM = ${UNAME_SYSTEM}
1452 UNAME_VERSION = ${UNAME_VERSION}
1453 EOF
1454
1455 exit 1
1456
1457 # Local variables:
1458 # eval: (add-hook 'write-file-hooks 'time-stamp)
1459 # time-stamp-start: "timestamp='"
1460 # time-stamp-format: "%:y-%02m-%02d"
1461 # time-stamp-end: "'"
1462 # End:
+0
-296
focus-blur/focusblur-3.2.6/config.h.in less more
0 /* config.h.in. Generated from configure.ac by autoheader. */
1
2 /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
3 systems. This function is required for `alloca.c' support on those systems.
4 */
5 #undef CRAY_STACKSEG_END
6
7 /* Define to 1 if using `alloca.c'. */
8 #undef C_ALLOCA
9
10 /* Define to 1 to enable support for multi-thread. */
11 #undef ENABLE_MP
12
13 /* Define to 1 if translation of program messages to the user's native
14 language is requested. */
15 #undef ENABLE_NLS
16
17 /* The gettext translation domain. */
18 #undef GETTEXT_PACKAGE
19
20 /* Define to 1 if you have `alloca', as a function or macro. */
21 #undef HAVE_ALLOCA
22
23 /* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
24 */
25 #undef HAVE_ALLOCA_H
26
27 /* Define to 1 if you have the <argz.h> header file. */
28 #undef HAVE_ARGZ_H
29
30 /* Define to 1 if you have the `asprintf' function. */
31 #undef HAVE_ASPRINTF
32
33 /* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
34 CoreFoundation framework. */
35 #undef HAVE_CFLOCALECOPYCURRENT
36
37 /* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in
38 the CoreFoundation framework. */
39 #undef HAVE_CFPREFERENCESCOPYAPPVALUE
40
41 /* Define to 1 if you have the <complex.h> header file. */
42 #undef HAVE_COMPLEX_H
43
44 /* Define if the GNU dcgettext() function is already present or preinstalled.
45 */
46 #undef HAVE_DCGETTEXT
47
48 /* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you
49 don't. */
50 #undef HAVE_DECL_FEOF_UNLOCKED
51
52 /* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if
53 you don't. */
54 #undef HAVE_DECL_FGETS_UNLOCKED
55
56 /* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
57 don't. */
58 #undef HAVE_DECL_GETC_UNLOCKED
59
60 /* Define to 1 if you have the declaration of `_snprintf', and to 0 if you
61 don't. */
62 #undef HAVE_DECL__SNPRINTF
63
64 /* Define to 1 if you have the declaration of `_snwprintf', and to 0 if you
65 don't. */
66 #undef HAVE_DECL__SNWPRINTF
67
68 /* Define to 1 if FFTW3 is available */
69 #undef HAVE_FFTW3
70
71 /* Define to 1 if you have the `fwprintf' function. */
72 #undef HAVE_FWPRINTF
73
74 /* Define to 1 if you have the `getcwd' function. */
75 #undef HAVE_GETCWD
76
77 /* Define to 1 if you have the `getegid' function. */
78 #undef HAVE_GETEGID
79
80 /* Define to 1 if you have the `geteuid' function. */
81 #undef HAVE_GETEUID
82
83 /* Define to 1 if you have the `getgid' function. */
84 #undef HAVE_GETGID
85
86 /* Define to 1 if you have the `getpagesize' function. */
87 #undef HAVE_GETPAGESIZE
88
89 /* Define if the GNU gettext() function is already present or preinstalled. */
90 #undef HAVE_GETTEXT
91
92 /* Define to 1 if you have the `getuid' function. */
93 #undef HAVE_GETUID
94
95 /* Define if you have the iconv() function. */
96 #undef HAVE_ICONV
97
98 /* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
99 #undef HAVE_INTMAX_T
100
101 /* Define if <inttypes.h> exists and doesn't clash with <sys/types.h>. */
102 #undef HAVE_INTTYPES_H
103
104 /* Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, and
105 declares uintmax_t. */
106 #undef HAVE_INTTYPES_H_WITH_UINTMAX
107
108 /* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
109 #undef HAVE_LANGINFO_CODESET
110
111 /* Define if your <locale.h> file defines LC_MESSAGES. */
112 #undef HAVE_LC_MESSAGES
113
114 /* Define to 1 if you have the <limits.h> header file. */
115 #undef HAVE_LIMITS_H
116
117 /* Define to 1 if you have the <locale.h> header file. */
118 #undef HAVE_LOCALE_H
119
120 /* Define if you have the 'long double' type. */
121 #undef HAVE_LONG_DOUBLE
122
123 /* Define if you have the 'long long' type. */
124 #undef HAVE_LONG_LONG
125
126 /* Define to 1 if you have the <malloc.h> header file. */
127 #undef HAVE_MALLOC_H
128
129 /* Define to 1 if you have the <memory.h> header file. */
130 #undef HAVE_MEMORY_H
131
132 /* Define to 1 if you have the `mempcpy' function. */
133 #undef HAVE_MEMPCPY
134
135 /* Define to 1 if you have a working `mmap' system call. */
136 #undef HAVE_MMAP
137
138 /* Define to 1 if you have the `munmap' function. */
139 #undef HAVE_MUNMAP
140
141 /* Define to 1 if you have the <nl_types.h> header file. */
142 #undef HAVE_NL_TYPES_H
143
144 /* Define if your printf() function supports format strings with positions. */
145 #undef HAVE_POSIX_PRINTF
146
147 /* Define to 1 if you have the `putenv' function. */
148 #undef HAVE_PUTENV
149
150 /* Define to 1 if you have the `setenv' function. */
151 #undef HAVE_SETENV
152
153 /* Define to 1 if you have the `setlocale' function. */
154 #undef HAVE_SETLOCALE
155
156 /* Define to 1 if you have the `snprintf' function. */
157 #undef HAVE_SNPRINTF
158
159 /* Define to 1 if you have the <stddef.h> header file. */
160 #undef HAVE_STDDEF_H
161
162 /* Define to 1 if you have the <stdint.h> header file. */
163 #undef HAVE_STDINT_H
164
165 /* Define if <stdint.h> exists, doesn't clash with <sys/types.h>, and declares
166 uintmax_t. */
167 #undef HAVE_STDINT_H_WITH_UINTMAX
168
169 /* Define to 1 if you have the <stdlib.h> header file. */
170 #undef HAVE_STDLIB_H
171
172 /* Define to 1 if you have the `stpcpy' function. */
173 #undef HAVE_STPCPY
174
175 /* Define to 1 if you have the `strcasecmp' function. */
176 #undef HAVE_STRCASECMP
177
178 /* Define to 1 if you have the `strdup' function. */
179 #undef HAVE_STRDUP
180
181 /* Define to 1 if you have the <strings.h> header file. */
182 #undef HAVE_STRINGS_H
183
184 /* Define to 1 if you have the <string.h> header file. */
185 #undef HAVE_STRING_H
186
187 /* Define to 1 if you have the `strtoul' function. */
188 #undef HAVE_STRTOUL
189
190 /* Define to 1 if you have the <sys/param.h> header file. */
191 #undef HAVE_SYS_PARAM_H
192
193 /* Define to 1 if you have the <sys/stat.h> header file. */
194 #undef HAVE_SYS_STAT_H
195
196 /* Define to 1 if you have the <sys/types.h> header file. */
197 #undef HAVE_SYS_TYPES_H
198
199 /* Define to 1 if you have the `tsearch' function. */
200 #undef HAVE_TSEARCH
201
202 /* Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>. */
203 #undef HAVE_UINTMAX_T
204
205 /* Define to 1 if you have the <unistd.h> header file. */
206 #undef HAVE_UNISTD_H
207
208 /* Define if you have the 'unsigned long long' type. */
209 #undef HAVE_UNSIGNED_LONG_LONG
210
211 /* Define if you have the 'wchar_t' type. */
212 #undef HAVE_WCHAR_T
213
214 /* Define to 1 if you have the `wcslen' function. */
215 #undef HAVE_WCSLEN
216
217 /* Define if you have the 'wint_t' type. */
218 #undef HAVE_WINT_T
219
220 /* Define to 1 if you have the `__argz_count' function. */
221 #undef HAVE___ARGZ_COUNT
222
223 /* Define to 1 if you have the `__argz_next' function. */
224 #undef HAVE___ARGZ_NEXT
225
226 /* Define to 1 if you have the `__argz_stringify' function. */
227 #undef HAVE___ARGZ_STRINGIFY
228
229 /* Define to 1 if you have the `__fsetlocking' function. */
230 #undef HAVE___FSETLOCKING
231
232 /* Define as const if the declaration of iconv() needs const. */
233 #undef ICONV_CONST
234
235 /* Define if integer division by zero raises signal SIGFPE. */
236 #undef INTDIV0_RAISES_SIGFPE
237
238 /* Define to the address where bug reports for this package should be sent. */
239 #undef PACKAGE_BUGREPORT
240
241 /* Define to the full name of this package. */
242 #undef PACKAGE_NAME
243
244 /* Define to the full name and version of this package. */
245 #undef PACKAGE_STRING
246
247 /* Define to the one symbol short name of this package. */
248 #undef PACKAGE_TARNAME
249
250 /* Define to the version of this package. */
251 #undef PACKAGE_VERSION
252
253 /* Define if <inttypes.h> exists and defines unusable PRI* macros. */
254 #undef PRI_MACROS_BROKEN
255
256 /* Define as the maximum value of type 'size_t', if the system doesn't define
257 it. */
258 #undef SIZE_MAX
259
260 /* If using the C implementation of alloca, define if you know the
261 direction of stack growth for your system; otherwise it will be
262 automatically deduced at runtime.
263 STACK_DIRECTION > 0 => grows toward higher addresses
264 STACK_DIRECTION < 0 => grows toward lower addresses
265 STACK_DIRECTION = 0 => direction of growth unknown */
266 #undef STACK_DIRECTION
267
268 /* Define to 1 if you have the ANSI C header files. */
269 #undef STDC_HEADERS
270
271 /* Define to empty if `const' does not conform to ANSI C. */
272 #undef const
273
274 /* Define to `__inline__' or `__inline' if that's what the C compiler
275 calls it, or to nothing if 'inline' is not supported under any name. */
276 #ifndef __cplusplus
277 #undef inline
278 #endif
279
280 /* Define to `long int' if <sys/types.h> does not define. */
281 #undef off_t
282
283 /* Define as the type of the result of subtracting two pointers, if the system
284 doesn't define it. */
285 #undef ptrdiff_t
286
287 /* Define to empty if the C compiler doesn't support this keyword. */
288 #undef signed
289
290 /* Define to `unsigned int' if <sys/types.h> does not define. */
291 #undef size_t
292
293 /* Define to unsigned long or unsigned long long if <stdint.h> and
294 <inttypes.h> don't define. */
295 #undef uintmax_t
+0
-1579
focus-blur/focusblur-3.2.6/config.sub less more
0 #! /bin/sh
1 # Configuration validation subroutine script.
2 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
3 # 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4
5 timestamp='2005-07-08'
6
7 # This file is (in principle) common to ALL GNU software.
8 # The presence of a machine in this file suggests that SOME GNU software
9 # can handle that machine. It does not imply ALL GNU software can.
10 #
11 # This file is free software; you can redistribute it and/or modify
12 # it under the terms of the GNU General Public License as published by
13 # the Free Software Foundation; either version 2 of the License, or
14 # (at your option) any later version.
15 #
16 # This program is distributed in the hope that it will be useful,
17 # but WITHOUT ANY WARRANTY; without even the implied warranty of
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 # GNU General Public License for more details.
20 #
21 # You should have received a copy of the GNU General Public License
22 # along with this program; if not, write to the Free Software
23 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
24 # 02110-1301, USA.
25 #
26 # As a special exception to the GNU General Public License, if you
27 # distribute this file as part of a program that contains a
28 # configuration script generated by Autoconf, you may include it under
29 # the same distribution terms that you use for the rest of that program.
30
31
32 # Please send patches to <config-patches@gnu.org>. Submit a context
33 # diff and a properly formatted ChangeLog entry.
34 #
35 # Configuration subroutine to validate and canonicalize a configuration type.
36 # Supply the specified configuration type as an argument.
37 # If it is invalid, we print an error message on stderr and exit with code 1.
38 # Otherwise, we print the canonical config type on stdout and succeed.
39
40 # This file is supposed to be the same for all GNU packages
41 # and recognize all the CPU types, system types and aliases
42 # that are meaningful with *any* GNU software.
43 # Each package is responsible for reporting which valid configurations
44 # it does not support. The user should be able to distinguish
45 # a failure to support a valid configuration from a meaningless
46 # configuration.
47
48 # The goal of this file is to map all the various variations of a given
49 # machine specification into a single specification in the form:
50 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
51 # or in some cases, the newer four-part form:
52 # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
53 # It is wrong to echo any other type of specification.
54
55 me=`echo "$0" | sed -e 's,.*/,,'`
56
57 usage="\
58 Usage: $0 [OPTION] CPU-MFR-OPSYS
59 $0 [OPTION] ALIAS
60
61 Canonicalize a configuration name.
62
63 Operation modes:
64 -h, --help print this help, then exit
65 -t, --time-stamp print date of last modification, then exit
66 -v, --version print version number, then exit
67
68 Report bugs and patches to <config-patches@gnu.org>."
69
70 version="\
71 GNU config.sub ($timestamp)
72
73 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
74 Free Software Foundation, Inc.
75
76 This is free software; see the source for copying conditions. There is NO
77 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
78
79 help="
80 Try \`$me --help' for more information."
81
82 # Parse command line
83 while test $# -gt 0 ; do
84 case $1 in
85 --time-stamp | --time* | -t )
86 echo "$timestamp" ; exit ;;
87 --version | -v )
88 echo "$version" ; exit ;;
89 --help | --h* | -h )
90 echo "$usage"; exit ;;
91 -- ) # Stop option processing
92 shift; break ;;
93 - ) # Use stdin as input.
94 break ;;
95 -* )
96 echo "$me: invalid option $1$help"
97 exit 1 ;;
98
99 *local*)
100 # First pass through any local machine types.
101 echo $1
102 exit ;;
103
104 * )
105 break ;;
106 esac
107 done
108
109 case $# in
110 0) echo "$me: missing argument$help" >&2
111 exit 1;;
112 1) ;;
113 *) echo "$me: too many arguments$help" >&2
114 exit 1;;
115 esac
116
117 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
118 # Here we must recognize all the valid KERNEL-OS combinations.
119 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
120 case $maybe_os in
121 nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
122 kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
123 os=-$maybe_os
124 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
125 ;;
126 *)
127 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
128 if [ $basic_machine != $1 ]
129 then os=`echo $1 | sed 's/.*-/-/'`
130 else os=; fi
131 ;;
132 esac
133
134 ### Let's recognize common machines as not being operating systems so
135 ### that things like config.sub decstation-3100 work. We also
136 ### recognize some manufacturers as not being operating systems, so we
137 ### can provide default operating systems below.
138 case $os in
139 -sun*os*)
140 # Prevent following clause from handling this invalid input.
141 ;;
142 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
143 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
144 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
145 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
146 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
147 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
148 -apple | -axis | -knuth | -cray)
149 os=
150 basic_machine=$1
151 ;;
152 -sim | -cisco | -oki | -wec | -winbond)
153 os=
154 basic_machine=$1
155 ;;
156 -scout)
157 ;;
158 -wrs)
159 os=-vxworks
160 basic_machine=$1
161 ;;
162 -chorusos*)
163 os=-chorusos
164 basic_machine=$1
165 ;;
166 -chorusrdb)
167 os=-chorusrdb
168 basic_machine=$1
169 ;;
170 -hiux*)
171 os=-hiuxwe2
172 ;;
173 -sco5)
174 os=-sco3.2v5
175 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
176 ;;
177 -sco4)
178 os=-sco3.2v4
179 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
180 ;;
181 -sco3.2.[4-9]*)
182 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
183 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
184 ;;
185 -sco3.2v[4-9]*)
186 # Don't forget version if it is 3.2v4 or newer.
187 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
188 ;;
189 -sco*)
190 os=-sco3.2v2
191 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
192 ;;
193 -udk*)
194 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
195 ;;
196 -isc)
197 os=-isc2.2
198 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
199 ;;
200 -clix*)
201 basic_machine=clipper-intergraph
202 ;;
203 -isc*)
204 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
205 ;;
206 -lynx*)
207 os=-lynxos
208 ;;
209 -ptx*)
210 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
211 ;;
212 -windowsnt*)
213 os=`echo $os | sed -e 's/windowsnt/winnt/'`
214 ;;
215 -psos*)
216 os=-psos
217 ;;
218 -mint | -mint[0-9]*)
219 basic_machine=m68k-atari
220 os=-mint
221 ;;
222 esac
223
224 # Decode aliases for certain CPU-COMPANY combinations.
225 case $basic_machine in
226 # Recognize the basic CPU types without company name.
227 # Some are omitted here because they have special meanings below.
228 1750a | 580 \
229 | a29k \
230 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
231 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
232 | am33_2.0 \
233 | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
234 | bfin \
235 | c4x | clipper \
236 | d10v | d30v | dlx | dsp16xx \
237 | fr30 | frv \
238 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
239 | i370 | i860 | i960 | ia64 \
240 | ip2k | iq2000 \
241 | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
242 | mips | mipsbe | mipseb | mipsel | mipsle \
243 | mips16 \
244 | mips64 | mips64el \
245 | mips64vr | mips64vrel \
246 | mips64orion | mips64orionel \
247 | mips64vr4100 | mips64vr4100el \
248 | mips64vr4300 | mips64vr4300el \
249 | mips64vr5000 | mips64vr5000el \
250 | mips64vr5900 | mips64vr5900el \
251 | mipsisa32 | mipsisa32el \
252 | mipsisa32r2 | mipsisa32r2el \
253 | mipsisa64 | mipsisa64el \
254 | mipsisa64r2 | mipsisa64r2el \
255 | mipsisa64sb1 | mipsisa64sb1el \
256 | mipsisa64sr71k | mipsisa64sr71kel \
257 | mipstx39 | mipstx39el \
258 | mn10200 | mn10300 \
259 | ms1 \
260 | msp430 \
261 | ns16k | ns32k \
262 | or32 \
263 | pdp10 | pdp11 | pj | pjl \
264 | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
265 | pyramid \
266 | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
267 | sh64 | sh64le \
268 | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
269 | sparcv8 | sparcv9 | sparcv9b \
270 | strongarm \
271 | tahoe | thumb | tic4x | tic80 | tron \
272 | v850 | v850e \
273 | we32k \
274 | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
275 | z8k)
276 basic_machine=$basic_machine-unknown
277 ;;
278 m32c)
279 basic_machine=$basic_machine-unknown
280 ;;
281 m6811 | m68hc11 | m6812 | m68hc12)
282 # Motorola 68HC11/12.
283 basic_machine=$basic_machine-unknown
284 os=-none
285 ;;
286 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
287 ;;
288
289 # We use `pc' rather than `unknown'
290 # because (1) that's what they normally are, and
291 # (2) the word "unknown" tends to confuse beginning users.
292 i*86 | x86_64)
293 basic_machine=$basic_machine-pc
294 ;;
295 # Object if more than one company name word.
296 *-*-*)
297 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
298 exit 1
299 ;;
300 # Recognize the basic CPU types with company name.
301 580-* \
302 | a29k-* \
303 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
304 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
305 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
306 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
307 | avr-* \
308 | bfin-* | bs2000-* \
309 | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
310 | clipper-* | craynv-* | cydra-* \
311 | d10v-* | d30v-* | dlx-* \
312 | elxsi-* \
313 | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
314 | h8300-* | h8500-* \
315 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
316 | i*86-* | i860-* | i960-* | ia64-* \
317 | ip2k-* | iq2000-* \
318 | m32r-* | m32rle-* \
319 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
320 | m88110-* | m88k-* | maxq-* | mcore-* \
321 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
322 | mips16-* \
323 | mips64-* | mips64el-* \
324 | mips64vr-* | mips64vrel-* \
325 | mips64orion-* | mips64orionel-* \
326 | mips64vr4100-* | mips64vr4100el-* \
327 | mips64vr4300-* | mips64vr4300el-* \
328 | mips64vr5000-* | mips64vr5000el-* \
329 | mips64vr5900-* | mips64vr5900el-* \
330 | mipsisa32-* | mipsisa32el-* \
331 | mipsisa32r2-* | mipsisa32r2el-* \
332 | mipsisa64-* | mipsisa64el-* \
333 | mipsisa64r2-* | mipsisa64r2el-* \
334 | mipsisa64sb1-* | mipsisa64sb1el-* \
335 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
336 | mipstx39-* | mipstx39el-* \
337 | mmix-* \
338 | ms1-* \
339 | msp430-* \
340 | none-* | np1-* | ns16k-* | ns32k-* \
341 | orion-* \
342 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
343 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
344 | pyramid-* \
345 | romp-* | rs6000-* \
346 | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
347 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
348 | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
349 | sparclite-* \
350 | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
351 | tahoe-* | thumb-* \
352 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
353 | tron-* \
354 | v850-* | v850e-* | vax-* \
355 | we32k-* \
356 | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
357 | xstormy16-* | xtensa-* \
358 | ymp-* \
359 | z8k-*)
360 ;;
361 m32c-*)
362 ;;
363 # Recognize the various machine names and aliases which stand
364 # for a CPU type and a company and sometimes even an OS.
365 386bsd)
366 basic_machine=i386-unknown
367 os=-bsd
368 ;;
369 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
370 basic_machine=m68000-att
371 ;;
372 3b*)
373 basic_machine=we32k-att
374 ;;
375 a29khif)
376 basic_machine=a29k-amd
377 os=-udi
378 ;;
379 abacus)
380 basic_machine=abacus-unknown
381 ;;
382 adobe68k)
383 basic_machine=m68010-adobe
384 os=-scout
385 ;;
386 alliant | fx80)
387 basic_machine=fx80-alliant
388 ;;
389 altos | altos3068)
390 basic_machine=m68k-altos
391 ;;
392 am29k)
393 basic_machine=a29k-none
394 os=-bsd
395 ;;
396 amd64)
397 basic_machine=x86_64-pc
398 ;;
399 amd64-*)
400 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
401 ;;
402 amdahl)
403 basic_machine=580-amdahl
404 os=-sysv
405 ;;
406 amiga | amiga-*)
407 basic_machine=m68k-unknown
408 ;;
409 amigaos | amigados)
410 basic_machine=m68k-unknown
411 os=-amigaos
412 ;;
413 amigaunix | amix)
414 basic_machine=m68k-unknown
415 os=-sysv4
416 ;;
417 apollo68)
418 basic_machine=m68k-apollo
419 os=-sysv
420 ;;
421 apollo68bsd)
422 basic_machine=m68k-apollo
423 os=-bsd
424 ;;
425 aux)
426 basic_machine=m68k-apple
427 os=-aux
428 ;;
429 balance)
430 basic_machine=ns32k-sequent
431 os=-dynix
432 ;;
433 c90)
434 basic_machine=c90-cray
435 os=-unicos
436 ;;
437 convex-c1)
438 basic_machine=c1-convex
439 os=-bsd
440 ;;
441 convex-c2)
442 basic_machine=c2-convex
443 os=-bsd
444 ;;
445 convex-c32)
446 basic_machine=c32-convex
447 os=-bsd
448 ;;
449 convex-c34)
450 basic_machine=c34-convex
451 os=-bsd
452 ;;
453 convex-c38)
454 basic_machine=c38-convex
455 os=-bsd
456 ;;
457 cray | j90)
458 basic_machine=j90-cray
459 os=-unicos
460 ;;
461 craynv)
462 basic_machine=craynv-cray
463 os=-unicosmp
464 ;;
465 cr16c)
466 basic_machine=cr16c-unknown
467 os=-elf
468 ;;
469 crds | unos)
470 basic_machine=m68k-crds
471 ;;
472 crisv32 | crisv32-* | etraxfs*)
473 basic_machine=crisv32-axis
474 ;;
475 cris | cris-* | etrax*)
476 basic_machine=cris-axis
477 ;;
478 crx)
479 basic_machine=crx-unknown
480 os=-elf
481 ;;
482 da30 | da30-*)
483 basic_machine=m68k-da30
484 ;;
485 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
486 basic_machine=mips-dec
487 ;;
488 decsystem10* | dec10*)
489 basic_machine=pdp10-dec
490 os=-tops10
491 ;;
492 decsystem20* | dec20*)
493 basic_machine=pdp10-dec
494 os=-tops20
495 ;;
496 delta | 3300 | motorola-3300 | motorola-delta \
497 | 3300-motorola | delta-motorola)
498 basic_machine=m68k-motorola
499 ;;
500 delta88)
501 basic_machine=m88k-motorola
502 os=-sysv3
503 ;;
504 djgpp)
505 basic_machine=i586-pc
506 os=-msdosdjgpp
507 ;;
508 dpx20 | dpx20-*)
509 basic_machine=rs6000-bull
510 os=-bosx
511 ;;
512 dpx2* | dpx2*-bull)
513 basic_machine=m68k-bull
514 os=-sysv3
515 ;;
516 ebmon29k)
517 basic_machine=a29k-amd
518 os=-ebmon
519 ;;
520 elxsi)
521 basic_machine=elxsi-elxsi
522 os=-bsd
523 ;;
524 encore | umax | mmax)
525 basic_machine=ns32k-encore
526 ;;
527 es1800 | OSE68k | ose68k | ose | OSE)
528 basic_machine=m68k-ericsson
529 os=-ose
530 ;;
531 fx2800)
532 basic_machine=i860-alliant
533 ;;
534 genix)
535 basic_machine=ns32k-ns
536 ;;
537 gmicro)
538 basic_machine=tron-gmicro
539 os=-sysv
540 ;;
541 go32)
542 basic_machine=i386-pc
543 os=-go32
544 ;;
545 h3050r* | hiux*)
546 basic_machine=hppa1.1-hitachi
547 os=-hiuxwe2
548 ;;
549 h8300hms)
550 basic_machine=h8300-hitachi
551 os=-hms
552 ;;
553 h8300xray)
554 basic_machine=h8300-hitachi
555 os=-xray
556 ;;
557 h8500hms)
558 basic_machine=h8500-hitachi
559 os=-hms
560 ;;
561 harris)
562 basic_machine=m88k-harris
563 os=-sysv3
564 ;;
565 hp300-*)
566 basic_machine=m68k-hp
567 ;;
568 hp300bsd)
569 basic_machine=m68k-hp
570 os=-bsd
571 ;;
572 hp300hpux)
573 basic_machine=m68k-hp
574 os=-hpux
575 ;;
576 hp3k9[0-9][0-9] | hp9[0-9][0-9])
577 basic_machine=hppa1.0-hp
578 ;;
579 hp9k2[0-9][0-9] | hp9k31[0-9])
580 basic_machine=m68000-hp
581 ;;
582 hp9k3[2-9][0-9])
583 basic_machine=m68k-hp
584 ;;
585 hp9k6[0-9][0-9] | hp6[0-9][0-9])
586 basic_machine=hppa1.0-hp
587 ;;
588 hp9k7[0-79][0-9] | hp7[0-79][0-9])
589 basic_machine=hppa1.1-hp
590 ;;
591 hp9k78[0-9] | hp78[0-9])
592 # FIXME: really hppa2.0-hp
593 basic_machine=hppa1.1-hp
594 ;;
595 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
596 # FIXME: really hppa2.0-hp
597 basic_machine=hppa1.1-hp
598 ;;
599 hp9k8[0-9][13679] | hp8[0-9][13679])
600 basic_machine=hppa1.1-hp
601 ;;
602 hp9k8[0-9][0-9] | hp8[0-9][0-9])
603 basic_machine=hppa1.0-hp
604 ;;
605 hppa-next)
606 os=-nextstep3
607 ;;
608 hppaosf)
609 basic_machine=hppa1.1-hp
610 os=-osf
611 ;;
612 hppro)
613 basic_machine=hppa1.1-hp
614 os=-proelf
615 ;;
616 i370-ibm* | ibm*)
617 basic_machine=i370-ibm
618 ;;
619 # I'm not sure what "Sysv32" means. Should this be sysv3.2?
620 i*86v32)
621 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
622 os=-sysv32
623 ;;
624 i*86v4*)
625 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
626 os=-sysv4
627 ;;
628 i*86v)
629 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
630 os=-sysv
631 ;;
632 i*86sol2)
633 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
634 os=-solaris2
635 ;;
636 i386mach)
637 basic_machine=i386-mach
638 os=-mach
639 ;;
640 i386-vsta | vsta)
641 basic_machine=i386-unknown
642 os=-vsta
643 ;;
644 iris | iris4d)
645 basic_machine=mips-sgi
646 case $os in
647 -irix*)
648 ;;
649 *)
650 os=-irix4
651 ;;
652 esac
653 ;;
654 isi68 | isi)
655 basic_machine=m68k-isi
656 os=-sysv
657 ;;
658 m88k-omron*)
659 basic_machine=m88k-omron
660 ;;
661 magnum | m3230)
662 basic_machine=mips-mips
663 os=-sysv
664 ;;
665 merlin)
666 basic_machine=ns32k-utek
667 os=-sysv
668 ;;
669 mingw32)
670 basic_machine=i386-pc
671 os=-mingw32
672 ;;
673 miniframe)
674 basic_machine=m68000-convergent
675 ;;
676 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
677 basic_machine=m68k-atari
678 os=-mint
679 ;;
680 mips3*-*)
681 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
682 ;;
683 mips3*)
684 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
685 ;;
686 monitor)
687 basic_machine=m68k-rom68k
688 os=-coff
689 ;;
690 morphos)
691 basic_machine=powerpc-unknown
692 os=-morphos
693 ;;
694 msdos)
695 basic_machine=i386-pc
696 os=-msdos
697 ;;
698 mvs)
699 basic_machine=i370-ibm
700 os=-mvs
701 ;;
702 ncr3000)
703 basic_machine=i486-ncr
704 os=-sysv4
705 ;;
706 netbsd386)
707 basic_machine=i386-unknown
708 os=-netbsd
709 ;;
710 netwinder)
711 basic_machine=armv4l-rebel
712 os=-linux
713 ;;
714 news | news700 | news800 | news900)
715 basic_machine=m68k-sony
716 os=-newsos
717 ;;
718 news1000)
719 basic_machine=m68030-sony
720 os=-newsos
721 ;;
722 news-3600 | risc-news)
723 basic_machine=mips-sony
724 os=-newsos
725 ;;
726 necv70)
727 basic_machine=v70-nec
728 os=-sysv
729 ;;
730 next | m*-next )
731 basic_machine=m68k-next
732 case $os in
733 -nextstep* )
734 ;;
735 -ns2*)
736 os=-nextstep2
737 ;;
738 *)
739 os=-nextstep3
740 ;;
741 esac
742 ;;
743 nh3000)
744 basic_machine=m68k-harris
745 os=-cxux
746 ;;
747 nh[45]000)
748 basic_machine=m88k-harris
749 os=-cxux
750 ;;
751 nindy960)
752 basic_machine=i960-intel
753 os=-nindy
754 ;;
755 mon960)
756 basic_machine=i960-intel
757 os=-mon960
758 ;;
759 nonstopux)
760 basic_machine=mips-compaq
761 os=-nonstopux
762 ;;
763 np1)
764 basic_machine=np1-gould
765 ;;
766 nsr-tandem)
767 basic_machine=nsr-tandem
768 ;;
769 op50n-* | op60c-*)
770 basic_machine=hppa1.1-oki
771 os=-proelf
772 ;;
773 openrisc | openrisc-*)
774 basic_machine=or32-unknown
775 ;;
776 os400)
777 basic_machine=powerpc-ibm
778 os=-os400
779 ;;
780 OSE68000 | ose68000)
781 basic_machine=m68000-ericsson
782 os=-ose
783 ;;
784 os68k)
785 basic_machine=m68k-none
786 os=-os68k
787 ;;
788 pa-hitachi)
789 basic_machine=hppa1.1-hitachi
790 os=-hiuxwe2
791 ;;
792 paragon)
793 basic_machine=i860-intel
794 os=-osf
795 ;;
796 pbd)
797 basic_machine=sparc-tti
798 ;;
799 pbb)
800 basic_machine=m68k-tti
801 ;;
802 pc532 | pc532-*)
803 basic_machine=ns32k-pc532
804 ;;
805 pentium | p5 | k5 | k6 | nexgen | viac3)
806 basic_machine=i586-pc
807 ;;
808 pentiumpro | p6 | 6x86 | athlon | athlon_*)
809 basic_machine=i686-pc
810 ;;
811 pentiumii | pentium2 | pentiumiii | pentium3)
812 basic_machine=i686-pc
813 ;;
814 pentium4)
815 basic_machine=i786-pc
816 ;;
817 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
818 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
819 ;;
820 pentiumpro-* | p6-* | 6x86-* | athlon-*)
821 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
822 ;;
823 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
824 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
825 ;;
826 pentium4-*)
827 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
828 ;;
829 pn)
830 basic_machine=pn-gould
831 ;;
832 power) basic_machine=power-ibm
833 ;;
834 ppc) basic_machine=powerpc-unknown
835 ;;
836 ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
837 ;;
838 ppcle | powerpclittle | ppc-le | powerpc-little)
839 basic_machine=powerpcle-unknown
840 ;;
841 ppcle-* | powerpclittle-*)
842 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
843 ;;
844 ppc64) basic_machine=powerpc64-unknown
845 ;;
846 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
847 ;;
848 ppc64le | powerpc64little | ppc64-le | powerpc64-little)
849 basic_machine=powerpc64le-unknown
850 ;;
851 ppc64le-* | powerpc64little-*)
852 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
853 ;;
854 ps2)
855 basic_machine=i386-ibm
856 ;;
857 pw32)
858 basic_machine=i586-unknown
859 os=-pw32
860 ;;
861 rom68k)
862 basic_machine=m68k-rom68k
863 os=-coff
864 ;;
865 rm[46]00)
866 basic_machine=mips-siemens
867 ;;
868 rtpc | rtpc-*)
869 basic_machine=romp-ibm
870 ;;
871 s390 | s390-*)
872 basic_machine=s390-ibm
873 ;;
874 s390x | s390x-*)
875 basic_machine=s390x-ibm
876 ;;
877 sa29200)
878 basic_machine=a29k-amd
879 os=-udi
880 ;;
881 sb1)
882 basic_machine=mipsisa64sb1-unknown
883 ;;
884 sb1el)
885 basic_machine=mipsisa64sb1el-unknown
886 ;;
887 sei)
888 basic_machine=mips-sei
889 os=-seiux
890 ;;
891 sequent)
892 basic_machine=i386-sequent
893 ;;
894 sh)
895 basic_machine=sh-hitachi
896 os=-hms
897 ;;
898 sh64)
899 basic_machine=sh64-unknown
900 ;;
901 sparclite-wrs | simso-wrs)
902 basic_machine=sparclite-wrs
903 os=-vxworks
904 ;;
905 sps7)
906 basic_machine=m68k-bull
907 os=-sysv2
908 ;;
909 spur)
910 basic_machine=spur-unknown
911 ;;
912 st2000)
913 basic_machine=m68k-tandem
914 ;;
915 stratus)
916 basic_machine=i860-stratus
917 os=-sysv4
918 ;;
919 sun2)
920 basic_machine=m68000-sun
921 ;;
922 sun2os3)
923 basic_machine=m68000-sun
924 os=-sunos3
925 ;;
926 sun2os4)
927 basic_machine=m68000-sun
928 os=-sunos4
929 ;;
930 sun3os3)
931 basic_machine=m68k-sun
932 os=-sunos3
933 ;;
934 sun3os4)
935 basic_machine=m68k-sun
936 os=-sunos4
937 ;;
938 sun4os3)
939 basic_machine=sparc-sun
940 os=-sunos3
941 ;;
942 sun4os4)
943 basic_machine=sparc-sun
944 os=-sunos4
945 ;;
946 sun4sol2)
947 basic_machine=sparc-sun
948 os=-solaris2
949 ;;
950 sun3 | sun3-*)
951 basic_machine=m68k-sun
952 ;;
953 sun4)
954 basic_machine=sparc-sun
955 ;;
956 sun386 | sun386i | roadrunner)
957 basic_machine=i386-sun
958 ;;
959 sv1)
960 basic_machine=sv1-cray
961 os=-unicos
962 ;;
963 symmetry)
964 basic_machine=i386-sequent
965 os=-dynix
966 ;;
967 t3e)
968 basic_machine=alphaev5-cray
969 os=-unicos
970 ;;
971 t90)
972 basic_machine=t90-cray
973 os=-unicos
974 ;;
975 tic54x | c54x*)
976 basic_machine=tic54x-unknown
977 os=-coff
978 ;;
979 tic55x | c55x*)
980 basic_machine=tic55x-unknown
981 os=-coff
982 ;;
983 tic6x | c6x*)
984 basic_machine=tic6x-unknown
985 os=-coff
986 ;;
987 tx39)
988 basic_machine=mipstx39-unknown
989 ;;
990 tx39el)
991 basic_machine=mipstx39el-unknown
992 ;;
993 toad1)
994 basic_machine=pdp10-xkl
995 os=-tops20
996 ;;
997 tower | tower-32)
998 basic_machine=m68k-ncr
999 ;;
1000 tpf)
1001 basic_machine=s390x-ibm
1002 os=-tpf
1003 ;;
1004 udi29k)
1005 basic_machine=a29k-amd
1006 os=-udi
1007 ;;
1008 ultra3)
1009 basic_machine=a29k-nyu
1010 os=-sym1
1011 ;;
1012 v810 | necv810)
1013 basic_machine=v810-nec
1014 os=-none
1015 ;;
1016 vaxv)
1017 basic_machine=vax-dec
1018 os=-sysv
1019 ;;
1020 vms)
1021 basic_machine=vax-dec
1022 os=-vms
1023 ;;
1024 vpp*|vx|vx-*)
1025 basic_machine=f301-fujitsu
1026 ;;
1027 vxworks960)
1028 basic_machine=i960-wrs
1029 os=-vxworks
1030 ;;
1031 vxworks68)
1032 basic_machine=m68k-wrs
1033 os=-vxworks
1034 ;;
1035 vxworks29k)
1036 basic_machine=a29k-wrs
1037 os=-vxworks
1038 ;;
1039 w65*)
1040 basic_machine=w65-wdc
1041 os=-none
1042 ;;
1043 w89k-*)
1044 basic_machine=hppa1.1-winbond
1045 os=-proelf
1046 ;;
1047 xbox)
1048 basic_machine=i686-pc
1049 os=-mingw32
1050 ;;
1051 xps | xps100)
1052 basic_machine=xps100-honeywell
1053 ;;
1054 ymp)
1055 basic_machine=ymp-cray
1056 os=-unicos
1057 ;;
1058 z8k-*-coff)
1059 basic_machine=z8k-unknown
1060 os=-sim
1061 ;;
1062 none)
1063 basic_machine=none-none
1064 os=-none
1065 ;;
1066
1067 # Here we handle the default manufacturer of certain CPU types. It is in
1068 # some cases the only manufacturer, in others, it is the most popular.
1069 w89k)
1070 basic_machine=hppa1.1-winbond
1071 ;;
1072 op50n)
1073 basic_machine=hppa1.1-oki
1074 ;;
1075 op60c)
1076 basic_machine=hppa1.1-oki
1077 ;;
1078 romp)
1079 basic_machine=romp-ibm
1080 ;;
1081 mmix)
1082 basic_machine=mmix-knuth
1083 ;;
1084 rs6000)
1085 basic_machine=rs6000-ibm
1086 ;;
1087 vax)
1088 basic_machine=vax-dec
1089 ;;
1090 pdp10)
1091 # there are many clones, so DEC is not a safe bet
1092 basic_machine=pdp10-unknown
1093 ;;
1094 pdp11)
1095 basic_machine=pdp11-dec
1096 ;;
1097 we32k)
1098 basic_machine=we32k-att
1099 ;;
1100 sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
1101 basic_machine=sh-unknown
1102 ;;
1103 sparc | sparcv8 | sparcv9 | sparcv9b)
1104 basic_machine=sparc-sun
1105 ;;
1106 cydra)
1107 basic_machine=cydra-cydrome
1108 ;;
1109 orion)
1110 basic_machine=orion-highlevel
1111 ;;
1112 orion105)
1113 basic_machine=clipper-highlevel
1114 ;;
1115 mac | mpw | mac-mpw)
1116 basic_machine=m68k-apple
1117 ;;
1118 pmac | pmac-mpw)
1119 basic_machine=powerpc-apple
1120 ;;
1121 *-unknown)
1122 # Make sure to match an already-canonicalized machine name.
1123 ;;
1124 *)
1125 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1126 exit 1
1127 ;;
1128 esac
1129
1130 # Here we canonicalize certain aliases for manufacturers.
1131 case $basic_machine in
1132 *-digital*)
1133 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1134 ;;
1135 *-commodore*)
1136 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1137 ;;
1138 *)
1139 ;;
1140 esac
1141
1142 # Decode manufacturer-specific aliases for certain operating systems.
1143
1144 if [ x"$os" != x"" ]
1145 then
1146 case $os in
1147 # First match some system type aliases
1148 # that might get confused with valid system types.
1149 # -solaris* is a basic system type, with this one exception.
1150 -solaris1 | -solaris1.*)
1151 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1152 ;;
1153 -solaris)
1154 os=-solaris2
1155 ;;
1156 -svr4*)
1157 os=-sysv4
1158 ;;
1159 -unixware*)
1160 os=-sysv4.2uw
1161 ;;
1162 -gnu/linux*)
1163 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1164 ;;
1165 # First accept the basic system types.
1166 # The portable systems comes first.
1167 # Each alternative MUST END IN A *, to match a version number.
1168 # -sysv* is not here because it comes later, after sysvr4.
1169 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1170 | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
1171 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
1172 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1173 | -aos* \
1174 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1175 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1176 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
1177 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1178 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1179 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1180 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1181 | -chorusos* | -chorusrdb* \
1182 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1183 | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
1184 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1185 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1186 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1187 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1188 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1189 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1190 | -skyos* | -haiku*)
1191 # Remember, each alternative MUST END IN *, to match a version number.
1192 ;;
1193 -qnx*)
1194 case $basic_machine in
1195 x86-* | i*86-*)
1196 ;;
1197 *)
1198 os=-nto$os
1199 ;;
1200 esac
1201 ;;
1202 -nto-qnx*)
1203 ;;
1204 -nto*)
1205 os=`echo $os | sed -e 's|nto|nto-qnx|'`
1206 ;;
1207 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1208 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1209 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1210 ;;
1211 -mac*)
1212 os=`echo $os | sed -e 's|mac|macos|'`
1213 ;;
1214 -linux-dietlibc)
1215 os=-linux-dietlibc
1216 ;;
1217 -linux*)
1218 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1219 ;;
1220 -sunos5*)
1221 os=`echo $os | sed -e 's|sunos5|solaris2|'`
1222 ;;
1223 -sunos6*)
1224 os=`echo $os | sed -e 's|sunos6|solaris3|'`
1225 ;;
1226 -opened*)
1227 os=-openedition
1228 ;;
1229 -os400*)
1230 os=-os400
1231 ;;
1232 -wince*)
1233 os=-wince
1234 ;;
1235 -osfrose*)
1236 os=-osfrose
1237 ;;
1238 -osf*)
1239 os=-osf
1240 ;;
1241 -utek*)
1242 os=-bsd
1243 ;;
1244 -dynix*)
1245 os=-bsd
1246 ;;
1247 -acis*)
1248 os=-aos
1249 ;;
1250 -atheos*)
1251 os=-atheos
1252 ;;
1253 -syllable*)
1254 os=-syllable
1255 ;;
1256 -386bsd)
1257 os=-bsd
1258 ;;
1259 -ctix* | -uts*)
1260 os=-sysv
1261 ;;
1262 -nova*)
1263 os=-rtmk-nova
1264 ;;
1265 -ns2 )
1266 os=-nextstep2
1267 ;;
1268 -nsk*)
1269 os=-nsk
1270 ;;
1271 # Preserve the version number of sinix5.
1272 -sinix5.*)
1273 os=`echo $os | sed -e 's|sinix|sysv|'`
1274 ;;
1275 -sinix*)
1276 os=-sysv4
1277 ;;
1278 -tpf*)
1279 os=-tpf
1280 ;;
1281 -triton*)
1282 os=-sysv3
1283 ;;
1284 -oss*)
1285 os=-sysv3
1286 ;;
1287 -svr4)
1288 os=-sysv4
1289 ;;
1290 -svr3)
1291 os=-sysv3
1292 ;;
1293 -sysvr4)
1294 os=-sysv4
1295 ;;
1296 # This must come after -sysvr4.
1297 -sysv*)
1298 ;;
1299 -ose*)
1300 os=-ose
1301 ;;
1302 -es1800*)
1303 os=-ose
1304 ;;
1305 -xenix)
1306 os=-xenix
1307 ;;
1308 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1309 os=-mint
1310 ;;
1311 -aros*)
1312 os=-aros
1313 ;;
1314 -kaos*)
1315 os=-kaos
1316 ;;
1317 -zvmoe)
1318 os=-zvmoe
1319 ;;
1320 -none)
1321 ;;
1322 *)
1323 # Get rid of the `-' at the beginning of $os.
1324 os=`echo $os | sed 's/[^-]*-//'`
1325 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1326 exit 1
1327 ;;
1328 esac
1329 else
1330
1331 # Here we handle the default operating systems that come with various machines.
1332 # The value should be what the vendor currently ships out the door with their
1333 # machine or put another way, the most popular os provided with the machine.
1334
1335 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1336 # "-sun"), then you have to tell the case statement up towards the top
1337 # that MANUFACTURER isn't an operating system. Otherwise, code above
1338 # will signal an error saying that MANUFACTURER isn't an operating
1339 # system, and we'll never get to this point.
1340
1341 case $basic_machine in
1342 *-acorn)
1343 os=-riscix1.2
1344 ;;
1345 arm*-rebel)
1346 os=-linux
1347 ;;
1348 arm*-semi)
1349 os=-aout
1350 ;;
1351 c4x-* | tic4x-*)
1352 os=-coff
1353 ;;
1354 # This must come before the *-dec entry.
1355 pdp10-*)
1356 os=-tops20
1357 ;;
1358 pdp11-*)
1359 os=-none
1360 ;;
1361 *-dec | vax-*)
1362 os=-ultrix4.2
1363 ;;
1364 m68*-apollo)
1365 os=-domain
1366 ;;
1367 i386-sun)
1368 os=-sunos4.0.2
1369 ;;
1370 m68000-sun)
1371 os=-sunos3
1372 # This also exists in the configure program, but was not the
1373 # default.
1374 # os=-sunos4
1375 ;;
1376 m68*-cisco)
1377 os=-aout
1378 ;;
1379 mips*-cisco)
1380 os=-elf
1381 ;;
1382 mips*-*)
1383 os=-elf
1384 ;;
1385 or32-*)
1386 os=-coff
1387 ;;
1388 *-tti) # must be before sparc entry or we get the wrong os.
1389 os=-sysv3
1390 ;;
1391 sparc-* | *-sun)
1392 os=-sunos4.1.1
1393 ;;
1394 *-be)
1395 os=-beos
1396 ;;
1397 *-haiku)
1398 os=-haiku
1399 ;;
1400 *-ibm)
1401 os=-aix
1402 ;;
1403 *-knuth)
1404 os=-mmixware
1405 ;;
1406 *-wec)
1407 os=-proelf
1408 ;;
1409 *-winbond)
1410 os=-proelf
1411 ;;
1412 *-oki)
1413 os=-proelf
1414 ;;
1415 *-hp)
1416 os=-hpux
1417 ;;
1418 *-hitachi)
1419 os=-hiux
1420 ;;
1421 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1422 os=-sysv
1423 ;;
1424 *-cbm)
1425 os=-amigaos
1426 ;;
1427 *-dg)
1428 os=-dgux
1429 ;;
1430 *-dolphin)
1431 os=-sysv3
1432 ;;
1433 m68k-ccur)
1434 os=-rtu
1435 ;;
1436 m88k-omron*)
1437 os=-luna
1438 ;;
1439 *-next )
1440 os=-nextstep
1441 ;;
1442 *-sequent)
1443 os=-ptx
1444 ;;
1445 *-crds)
1446 os=-unos
1447 ;;
1448 *-ns)
1449 os=-genix
1450 ;;
1451 i370-*)
1452 os=-mvs
1453 ;;
1454 *-next)
1455 os=-nextstep3
1456 ;;
1457 *-gould)
1458 os=-sysv
1459 ;;
1460 *-highlevel)
1461 os=-bsd
1462 ;;
1463 *-encore)
1464 os=-bsd
1465 ;;
1466 *-sgi)
1467 os=-irix
1468 ;;
1469 *-siemens)
1470 os=-sysv4
1471 ;;
1472 *-masscomp)
1473 os=-rtu
1474 ;;
1475 f30[01]-fujitsu | f700-fujitsu)
1476 os=-uxpv
1477 ;;
1478 *-rom68k)
1479 os=-coff
1480 ;;
1481 *-*bug)
1482 os=-coff
1483 ;;
1484 *-apple)
1485 os=-macos
1486 ;;
1487 *-atari*)
1488 os=-mint
1489 ;;
1490 *)
1491 os=-none
1492 ;;
1493 esac
1494 fi
1495
1496 # Here we handle the case where we know the os, and the CPU type, but not the
1497 # manufacturer. We pick the logical manufacturer.
1498 vendor=unknown
1499 case $basic_machine in
1500 *-unknown)
1501 case $os in
1502 -riscix*)
1503 vendor=acorn
1504 ;;
1505 -sunos*)
1506 vendor=sun
1507 ;;
1508 -aix*)
1509 vendor=ibm
1510 ;;
1511 -beos*)
1512 vendor=be
1513 ;;
1514 -hpux*)
1515 vendor=hp
1516 ;;
1517 -mpeix*)
1518 vendor=hp
1519 ;;
1520 -hiux*)
1521 vendor=hitachi
1522 ;;
1523 -unos*)
1524 vendor=crds
1525 ;;
1526 -dgux*)
1527 vendor=dg
1528 ;;
1529 -luna*)
1530 vendor=omron
1531 ;;
1532 -genix*)
1533 vendor=ns
1534 ;;
1535 -mvs* | -opened*)
1536 vendor=ibm
1537 ;;
1538 -os400*)
1539 vendor=ibm
1540 ;;
1541 -ptx*)
1542 vendor=sequent
1543 ;;
1544 -tpf*)
1545 vendor=ibm
1546 ;;
1547 -vxsim* | -vxworks* | -windiss*)
1548 vendor=wrs
1549 ;;
1550 -aux*)
1551 vendor=apple
1552 ;;
1553 -hms*)
1554 vendor=hitachi
1555 ;;
1556 -mpw* | -macos*)
1557 vendor=apple
1558 ;;
1559 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1560 vendor=atari
1561 ;;
1562 -vos*)
1563 vendor=stratus
1564 ;;
1565 esac
1566 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1567 ;;
1568 esac
1569
1570 echo $basic_machine$os
1571 exit
1572
1573 # Local variables:
1574 # eval: (add-hook 'write-file-hooks 'time-stamp)
1575 # time-stamp-start: "timestamp='"
1576 # time-stamp-format: "%:y-%02m-%02d"
1577 # time-stamp-end: "'"
1578 # End:
+0
-9194
focus-blur/focusblur-3.2.6/configure less more
0 #! /bin/sh
1 # Guess values for system-dependent variables and create Makefiles.
2 # Generated by GNU Autoconf 2.63 for Focus Blur 3.2.6.
3 #
4 # Report bugs to <das atmark dream dot japan>.
5 #
6 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
7 # 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
8 # This configure script is free software; the Free Software Foundation
9 # gives unlimited permission to copy, distribute and modify it.
10 ## --------------------- ##
11 ## M4sh Initialization. ##
12 ## --------------------- ##
13
14 # Be more Bourne compatible
15 DUALCASE=1; export DUALCASE # for MKS sh
16 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
17 emulate sh
18 NULLCMD=:
19 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
20 # is contrary to our usage. Disable this feature.
21 alias -g '${1+"$@"}'='"$@"'
22 setopt NO_GLOB_SUBST
23 else
24 case `(set -o) 2>/dev/null` in
25 *posix*) set -o posix ;;
26 esac
27
28 fi
29
30
31
32
33 # PATH needs CR
34 # Avoid depending upon Character Ranges.
35 as_cr_letters='abcdefghijklmnopqrstuvwxyz'
36 as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
37 as_cr_Letters=$as_cr_letters$as_cr_LETTERS
38 as_cr_digits='0123456789'
39 as_cr_alnum=$as_cr_Letters$as_cr_digits
40
41 as_nl='
42 '
43 export as_nl
44 # Printing a long string crashes Solaris 7 /usr/bin/printf.
45 as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
46 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
47 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
48 if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
49 as_echo='printf %s\n'
50 as_echo_n='printf %s'
51 else
52 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
53 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
54 as_echo_n='/usr/ucb/echo -n'
55 else
56 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
57 as_echo_n_body='eval
58 arg=$1;
59 case $arg in
60 *"$as_nl"*)
61 expr "X$arg" : "X\\(.*\\)$as_nl";
62 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
63 esac;
64 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
65 '
66 export as_echo_n_body
67 as_echo_n='sh -c $as_echo_n_body as_echo'
68 fi
69 export as_echo_body
70 as_echo='sh -c $as_echo_body as_echo'
71 fi
72
73 # The user is always right.
74 if test "${PATH_SEPARATOR+set}" != set; then
75 PATH_SEPARATOR=:
76 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
77 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
78 PATH_SEPARATOR=';'
79 }
80 fi
81
82 # Support unset when possible.
83 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
84 as_unset=unset
85 else
86 as_unset=false
87 fi
88
89
90 # IFS
91 # We need space, tab and new line, in precisely that order. Quoting is
92 # there to prevent editors from complaining about space-tab.
93 # (If _AS_PATH_WALK were called with IFS unset, it would disable word
94 # splitting by setting IFS to empty value.)
95 IFS=" "" $as_nl"
96
97 # Find who we are. Look in the path if we contain no directory separator.
98 case $0 in
99 *[\\/]* ) as_myself=$0 ;;
100 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
101 for as_dir in $PATH
102 do
103 IFS=$as_save_IFS
104 test -z "$as_dir" && as_dir=.
105 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
106 done
107 IFS=$as_save_IFS
108
109 ;;
110 esac
111 # We did not find ourselves, most probably we were run as `sh COMMAND'
112 # in which case we are not to be found in the path.
113 if test "x$as_myself" = x; then
114 as_myself=$0
115 fi
116 if test ! -f "$as_myself"; then
117 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
118 { (exit 1); exit 1; }
119 fi
120
121 # Work around bugs in pre-3.0 UWIN ksh.
122 for as_var in ENV MAIL MAILPATH
123 do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
124 done
125 PS1='$ '
126 PS2='> '
127 PS4='+ '
128
129 # NLS nuisances.
130 LC_ALL=C
131 export LC_ALL
132 LANGUAGE=C
133 export LANGUAGE
134
135 # Required to use basename.
136 if expr a : '\(a\)' >/dev/null 2>&1 &&
137 test "X`expr 00001 : '.*\(...\)'`" = X001; then
138 as_expr=expr
139 else
140 as_expr=false
141 fi
142
143 if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
144 as_basename=basename
145 else
146 as_basename=false
147 fi
148
149
150 # Name of the executable.
151 as_me=`$as_basename -- "$0" ||
152 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
153 X"$0" : 'X\(//\)$' \| \
154 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
155 $as_echo X/"$0" |
156 sed '/^.*\/\([^/][^/]*\)\/*$/{
157 s//\1/
158 q
159 }
160 /^X\/\(\/\/\)$/{
161 s//\1/
162 q
163 }
164 /^X\/\(\/\).*/{
165 s//\1/
166 q
167 }
168 s/.*/./; q'`
169
170 # CDPATH.
171 $as_unset CDPATH
172
173
174 if test "x$CONFIG_SHELL" = x; then
175 if (eval ":") 2>/dev/null; then
176 as_have_required=yes
177 else
178 as_have_required=no
179 fi
180
181 if test $as_have_required = yes && (eval ":
182 (as_func_return () {
183 (exit \$1)
184 }
185 as_func_success () {
186 as_func_return 0
187 }
188 as_func_failure () {
189 as_func_return 1
190 }
191 as_func_ret_success () {
192 return 0
193 }
194 as_func_ret_failure () {
195 return 1
196 }
197
198 exitcode=0
199 if as_func_success; then
200 :
201 else
202 exitcode=1
203 echo as_func_success failed.
204 fi
205
206 if as_func_failure; then
207 exitcode=1
208 echo as_func_failure succeeded.
209 fi
210
211 if as_func_ret_success; then
212 :
213 else
214 exitcode=1
215 echo as_func_ret_success failed.
216 fi
217
218 if as_func_ret_failure; then
219 exitcode=1
220 echo as_func_ret_failure succeeded.
221 fi
222
223 if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
224 :
225 else
226 exitcode=1
227 echo positional parameters were not saved.
228 fi
229
230 test \$exitcode = 0) || { (exit 1); exit 1; }
231
232 (
233 as_lineno_1=\$LINENO
234 as_lineno_2=\$LINENO
235 test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
236 test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
237 ") 2> /dev/null; then
238 :
239 else
240 as_candidate_shells=
241 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
242 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
243 do
244 IFS=$as_save_IFS
245 test -z "$as_dir" && as_dir=.
246 case $as_dir in
247 /*)
248 for as_base in sh bash ksh sh5; do
249 as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
250 done;;
251 esac
252 done
253 IFS=$as_save_IFS
254
255
256 for as_shell in $as_candidate_shells $SHELL; do
257 # Try only shells that exist, to save several forks.
258 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
259 { ("$as_shell") 2> /dev/null <<\_ASEOF
260 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
261 emulate sh
262 NULLCMD=:
263 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
264 # is contrary to our usage. Disable this feature.
265 alias -g '${1+"$@"}'='"$@"'
266 setopt NO_GLOB_SUBST
267 else
268 case `(set -o) 2>/dev/null` in
269 *posix*) set -o posix ;;
270 esac
271
272 fi
273
274
275 :
276 _ASEOF
277 }; then
278 CONFIG_SHELL=$as_shell
279 as_have_required=yes
280 if { "$as_shell" 2> /dev/null <<\_ASEOF
281 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
282 emulate sh
283 NULLCMD=:
284 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
285 # is contrary to our usage. Disable this feature.
286 alias -g '${1+"$@"}'='"$@"'
287 setopt NO_GLOB_SUBST
288 else
289 case `(set -o) 2>/dev/null` in
290 *posix*) set -o posix ;;
291 esac
292
293 fi
294
295
296 :
297 (as_func_return () {
298 (exit $1)
299 }
300 as_func_success () {
301 as_func_return 0
302 }
303 as_func_failure () {
304 as_func_return 1
305 }
306 as_func_ret_success () {
307 return 0
308 }
309 as_func_ret_failure () {
310 return 1
311 }
312
313 exitcode=0
314 if as_func_success; then
315 :
316 else
317 exitcode=1
318 echo as_func_success failed.
319 fi
320
321 if as_func_failure; then
322 exitcode=1
323 echo as_func_failure succeeded.
324 fi
325
326 if as_func_ret_success; then
327 :
328 else
329 exitcode=1
330 echo as_func_ret_success failed.
331 fi
332
333 if as_func_ret_failure; then
334 exitcode=1
335 echo as_func_ret_failure succeeded.
336 fi
337
338 if ( set x; as_func_ret_success y && test x = "$1" ); then
339 :
340 else
341 exitcode=1
342 echo positional parameters were not saved.
343 fi
344
345 test $exitcode = 0) || { (exit 1); exit 1; }
346
347 (
348 as_lineno_1=$LINENO
349 as_lineno_2=$LINENO
350 test "x$as_lineno_1" != "x$as_lineno_2" &&
351 test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
352
353 _ASEOF
354 }; then
355 break
356 fi
357
358 fi
359
360 done
361
362 if test "x$CONFIG_SHELL" != x; then
363 for as_var in BASH_ENV ENV
364 do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
365 done
366 export CONFIG_SHELL
367 exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
368 fi
369
370
371 if test $as_have_required = no; then
372 echo This script requires a shell more modern than all the
373 echo shells that I found on your system. Please install a
374 echo modern shell, or manually run the script under such a
375 echo shell if you do have one.
376 { (exit 1); exit 1; }
377 fi
378
379
380 fi
381
382 fi
383
384
385
386 (eval "as_func_return () {
387 (exit \$1)
388 }
389 as_func_success () {
390 as_func_return 0
391 }
392 as_func_failure () {
393 as_func_return 1
394 }
395 as_func_ret_success () {
396 return 0
397 }
398 as_func_ret_failure () {
399 return 1
400 }
401
402 exitcode=0
403 if as_func_success; then
404 :
405 else
406 exitcode=1
407 echo as_func_success failed.
408 fi
409
410 if as_func_failure; then
411 exitcode=1
412 echo as_func_failure succeeded.
413 fi
414
415 if as_func_ret_success; then
416 :
417 else
418 exitcode=1
419 echo as_func_ret_success failed.
420 fi
421
422 if as_func_ret_failure; then
423 exitcode=1
424 echo as_func_ret_failure succeeded.
425 fi
426
427 if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
428 :
429 else
430 exitcode=1
431 echo positional parameters were not saved.
432 fi
433
434 test \$exitcode = 0") || {
435 echo No shell found that supports shell functions.
436 echo Please tell bug-autoconf@gnu.org about your system,
437 echo including any error possibly output before this message.
438 echo This can help us improve future autoconf versions.
439 echo Configuration will now proceed without shell functions.
440 }
441
442
443
444 as_lineno_1=$LINENO
445 as_lineno_2=$LINENO
446 test "x$as_lineno_1" != "x$as_lineno_2" &&
447 test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
448
449 # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
450 # uniformly replaced by the line number. The first 'sed' inserts a
451 # line-number line after each line using $LINENO; the second 'sed'
452 # does the real work. The second script uses 'N' to pair each
453 # line-number line with the line containing $LINENO, and appends
454 # trailing '-' during substitution so that $LINENO is not a special
455 # case at line end.
456 # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
457 # scripts with optimization help from Paolo Bonzini. Blame Lee
458 # E. McMahon (1931-1989) for sed's syntax. :-)
459 sed -n '
460 p
461 /[$]LINENO/=
462 ' <$as_myself |
463 sed '
464 s/[$]LINENO.*/&-/
465 t lineno
466 b
467 :lineno
468 N
469 :loop
470 s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
471 t loop
472 s/-\n.*//
473 ' >$as_me.lineno &&
474 chmod +x "$as_me.lineno" ||
475 { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
476 { (exit 1); exit 1; }; }
477
478 # Don't try to exec as it changes $[0], causing all sort of problems
479 # (the dirname of $[0] is not the place where we might find the
480 # original and so on. Autoconf is especially sensitive to this).
481 . "./$as_me.lineno"
482 # Exit status is that of the last command.
483 exit
484 }
485
486
487 if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
488 as_dirname=dirname
489 else
490 as_dirname=false
491 fi
492
493 ECHO_C= ECHO_N= ECHO_T=
494 case `echo -n x` in
495 -n*)
496 case `echo 'x\c'` in
497 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
498 *) ECHO_C='\c';;
499 esac;;
500 *)
501 ECHO_N='-n';;
502 esac
503 if expr a : '\(a\)' >/dev/null 2>&1 &&
504 test "X`expr 00001 : '.*\(...\)'`" = X001; then
505 as_expr=expr
506 else
507 as_expr=false
508 fi
509
510 rm -f conf$$ conf$$.exe conf$$.file
511 if test -d conf$$.dir; then
512 rm -f conf$$.dir/conf$$.file
513 else
514 rm -f conf$$.dir
515 mkdir conf$$.dir 2>/dev/null
516 fi
517 if (echo >conf$$.file) 2>/dev/null; then
518 if ln -s conf$$.file conf$$ 2>/dev/null; then
519 as_ln_s='ln -s'
520 # ... but there are two gotchas:
521 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
522 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
523 # In both cases, we have to default to `cp -p'.
524 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
525 as_ln_s='cp -p'
526 elif ln conf$$.file conf$$ 2>/dev/null; then
527 as_ln_s=ln
528 else
529 as_ln_s='cp -p'
530 fi
531 else
532 as_ln_s='cp -p'
533 fi
534 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
535 rmdir conf$$.dir 2>/dev/null
536
537 if mkdir -p . 2>/dev/null; then
538 as_mkdir_p=:
539 else
540 test -d ./-p && rmdir ./-p
541 as_mkdir_p=false
542 fi
543
544 if test -x / >/dev/null 2>&1; then
545 as_test_x='test -x'
546 else
547 if ls -dL / >/dev/null 2>&1; then
548 as_ls_L_option=L
549 else
550 as_ls_L_option=
551 fi
552 as_test_x='
553 eval sh -c '\''
554 if test -d "$1"; then
555 test -d "$1/.";
556 else
557 case $1 in
558 -*)set "./$1";;
559 esac;
560 case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
561 ???[sx]*):;;*)false;;esac;fi
562 '\'' sh
563 '
564 fi
565 as_executable_p=$as_test_x
566
567 # Sed expression to map a string onto a valid CPP name.
568 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
569
570 # Sed expression to map a string onto a valid variable name.
571 as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
572
573
574
575 exec 7<&0 </dev/null 6>&1
576
577 # Name of the host.
578 # hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
579 # so uname gets run too.
580 ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
581
582 #
583 # Initializations.
584 #
585 ac_default_prefix=/usr/local
586 ac_clean_files=
587 ac_config_libobj_dir=.
588 LIBOBJS=
589 cross_compiling=no
590 subdirs=
591 MFLAGS=
592 MAKEFLAGS=
593 SHELL=${CONFIG_SHELL-/bin/sh}
594
595 # Identity of this package.
596 PACKAGE_NAME='Focus Blur'
597 PACKAGE_TARNAME='focusblur'
598 PACKAGE_VERSION='3.2.6'
599 PACKAGE_STRING='Focus Blur 3.2.6'
600 PACKAGE_BUGREPORT='das atmark dream dot japan'
601
602 ac_unique_file="src/gimpplugin.c"
603 ac_default_prefix=NONE
604 # Factoring default headers for most tests.
605 ac_includes_default="\
606 #include <stdio.h>
607 #ifdef HAVE_SYS_TYPES_H
608 # include <sys/types.h>
609 #endif
610 #ifdef HAVE_SYS_STAT_H
611 # include <sys/stat.h>
612 #endif
613 #ifdef STDC_HEADERS
614 # include <stdlib.h>
615 # include <stddef.h>
616 #else
617 # ifdef HAVE_STDLIB_H
618 # include <stdlib.h>
619 # endif
620 #endif
621 #ifdef HAVE_STRING_H
622 # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
623 # include <memory.h>
624 # endif
625 # include <string.h>
626 #endif
627 #ifdef HAVE_STRINGS_H
628 # include <strings.h>
629 #endif
630 #ifdef HAVE_INTTYPES_H
631 # include <inttypes.h>
632 #endif
633 #ifdef HAVE_STDINT_H
634 # include <stdint.h>
635 #endif
636 #ifdef HAVE_UNISTD_H
637 # include <unistd.h>
638 #endif"
639
640 ac_subst_vars='am__EXEEXT_FALSE
641 am__EXEEXT_TRUE
642 LTLIBOBJS
643 LIBOBJS
644 MKINSTALLDIRS
645 POSUB
646 POFILES
647 PO_IN_DATADIR_FALSE
648 PO_IN_DATADIR_TRUE
649 INTLLIBS
650 INSTOBJEXT
651 GMOFILES
652 CATOBJEXT
653 CATALOGS
654 MSGFMT_OPTS
655 DATADIRNAME
656 ALL_LINGUAS
657 INTLTOOL_PERL
658 GMSGFMT
659 MSGFMT
660 MSGMERGE
661 XGETTEXT
662 INTLTOOL_POLICY_RULE
663 INTLTOOL_SERVICE_RULE
664 INTLTOOL_THEME_RULE
665 INTLTOOL_SCHEMAS_RULE
666 INTLTOOL_CAVES_RULE
667 INTLTOOL_XML_NOMERGE_RULE
668 INTLTOOL_XML_RULE
669 INTLTOOL_KBD_RULE
670 INTLTOOL_XAM_RULE
671 INTLTOOL_UI_RULE
672 INTLTOOL_SOUNDLIST_RULE
673 INTLTOOL_SHEET_RULE
674 INTLTOOL_SERVER_RULE
675 INTLTOOL_PONG_RULE
676 INTLTOOL_OAF_RULE
677 INTLTOOL_PROP_RULE
678 INTLTOOL_KEYS_RULE
679 INTLTOOL_DIRECTORY_RULE
680 INTLTOOL_DESKTOP_RULE
681 INTLTOOL_EXTRACT
682 INTLTOOL_MERGE
683 INTLTOOL_UPDATE
684 USE_NLS
685 GETTEXT_PACKAGE
686 HAVE_FFTW3_FALSE
687 HAVE_FFTW3_TRUE
688 FFTW3_LIBS
689 FFTW3_CFLAGS
690 EGREP
691 GREP
692 CPP
693 GTHREAD_LIBS
694 GTHREAD_CFLAGS
695 GIMP_USER_PLUGIN_DIR
696 GIMP_PLUGIN_DIR
697 GIMP_DATA_DIR
698 GIMP_LIBS_NOUI
699 GIMP_CFLAGS_NOUI
700 GIMP_LIBS
701 GIMP_CFLAGS
702 PKG_CONFIG
703 GDK_PIXBUF_CSOURCE
704 PLATFORM_UNIX_FALSE
705 PLATFORM_UNIX_TRUE
706 PLATFORM_WIN32_FALSE
707 PLATFORM_WIN32_TRUE
708 PATHSEP
709 MAINT
710 MAINTAINER_MODE_FALSE
711 MAINTAINER_MODE_TRUE
712 am__fastdepCC_FALSE
713 am__fastdepCC_TRUE
714 CCDEPMODE
715 AMDEPBACKSLASH
716 AMDEP_FALSE
717 AMDEP_TRUE
718 am__quote
719 am__include
720 DEPDIR
721 OBJEXT
722 EXEEXT
723 ac_ct_CC
724 CPPFLAGS
725 LDFLAGS
726 CFLAGS
727 CC
728 am__untar
729 am__tar
730 AMTAR
731 am__leading_dot
732 SET_MAKE
733 AWK
734 mkdir_p
735 MKDIR_P
736 INSTALL_STRIP_PROGRAM
737 STRIP
738 install_sh
739 MAKEINFO
740 AUTOHEADER
741 AUTOMAKE
742 AUTOCONF
743 ACLOCAL
744 VERSION
745 PACKAGE
746 CYGPATH_W
747 am__isrc
748 INSTALL_DATA
749 INSTALL_SCRIPT
750 INSTALL_PROGRAM
751 target_alias
752 host_alias
753 build_alias
754 LIBS
755 ECHO_T
756 ECHO_N
757 ECHO_C
758 DEFS
759 mandir
760 localedir
761 libdir
762 psdir
763 pdfdir
764 dvidir
765 htmldir
766 infodir
767 docdir
768 oldincludedir
769 includedir
770 localstatedir
771 sharedstatedir
772 sysconfdir
773 datadir
774 datarootdir
775 libexecdir
776 sbindir
777 bindir
778 program_transform_name
779 prefix
780 exec_prefix
781 PACKAGE_BUGREPORT
782 PACKAGE_STRING
783 PACKAGE_VERSION
784 PACKAGE_TARNAME
785 PACKAGE_NAME
786 PATH_SEPARATOR
787 SHELL'
788 ac_subst_files=''
789 ac_user_opts='
790 enable_option_checking
791 enable_dependency_tracking
792 enable_maintainer_mode
793 with_gimp_prefix
794 enable_gimptest
795 enable_mp
796 with_fftw3
797 enable_nls
798 '
799 ac_precious_vars='build_alias
800 host_alias
801 target_alias
802 CC
803 CFLAGS
804 LDFLAGS
805 LIBS
806 CPPFLAGS
807 PKG_CONFIG
808 GTHREAD_CFLAGS
809 GTHREAD_LIBS
810 CPP
811 FFTW3_CFLAGS
812 FFTW3_LIBS'
813
814
815 # Initialize some variables set by options.
816 ac_init_help=
817 ac_init_version=false
818 ac_unrecognized_opts=
819 ac_unrecognized_sep=
820 # The variables have the same names as the options, with
821 # dashes changed to underlines.
822 cache_file=/dev/null
823 exec_prefix=NONE
824 no_create=
825 no_recursion=
826 prefix=NONE
827 program_prefix=NONE
828 program_suffix=NONE
829 program_transform_name=s,x,x,
830 silent=
831 site=
832 srcdir=
833 verbose=
834 x_includes=NONE
835 x_libraries=NONE
836
837 # Installation directory options.
838 # These are left unexpanded so users can "make install exec_prefix=/foo"
839 # and all the variables that are supposed to be based on exec_prefix
840 # by default will actually change.
841 # Use braces instead of parens because sh, perl, etc. also accept them.
842 # (The list follows the same order as the GNU Coding Standards.)
843 bindir='${exec_prefix}/bin'
844 sbindir='${exec_prefix}/sbin'
845 libexecdir='${exec_prefix}/libexec'
846 datarootdir='${prefix}/share'
847 datadir='${datarootdir}'
848 sysconfdir='${prefix}/etc'
849 sharedstatedir='${prefix}/com'
850 localstatedir='${prefix}/var'
851 includedir='${prefix}/include'
852 oldincludedir='/usr/include'
853 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
854 infodir='${datarootdir}/info'
855 htmldir='${docdir}'
856 dvidir='${docdir}'
857 pdfdir='${docdir}'
858 psdir='${docdir}'
859 libdir='${exec_prefix}/lib'
860 localedir='${datarootdir}/locale'
861 mandir='${datarootdir}/man'
862
863 ac_prev=
864 ac_dashdash=
865 for ac_option
866 do
867 # If the previous option needs an argument, assign it.
868 if test -n "$ac_prev"; then
869 eval $ac_prev=\$ac_option
870 ac_prev=
871 continue
872 fi
873
874 case $ac_option in
875 *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
876 *) ac_optarg=yes ;;
877 esac
878
879 # Accept the important Cygnus configure options, so we can diagnose typos.
880
881 case $ac_dashdash$ac_option in
882 --)
883 ac_dashdash=yes ;;
884
885 -bindir | --bindir | --bindi | --bind | --bin | --bi)
886 ac_prev=bindir ;;
887 -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
888 bindir=$ac_optarg ;;
889
890 -build | --build | --buil | --bui | --bu)
891 ac_prev=build_alias ;;
892 -build=* | --build=* | --buil=* | --bui=* | --bu=*)
893 build_alias=$ac_optarg ;;
894
895 -cache-file | --cache-file | --cache-fil | --cache-fi \
896 | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
897 ac_prev=cache_file ;;
898 -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
899 | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
900 cache_file=$ac_optarg ;;
901
902 --config-cache | -C)
903 cache_file=config.cache ;;
904
905 -datadir | --datadir | --datadi | --datad)
906 ac_prev=datadir ;;
907 -datadir=* | --datadir=* | --datadi=* | --datad=*)
908 datadir=$ac_optarg ;;
909
910 -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
911 | --dataroo | --dataro | --datar)
912 ac_prev=datarootdir ;;
913 -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
914 | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
915 datarootdir=$ac_optarg ;;
916
917 -disable-* | --disable-*)
918 ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
919 # Reject names that are not valid shell variable names.
920 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
921 { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
922 { (exit 1); exit 1; }; }
923 ac_useropt_orig=$ac_useropt
924 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
925 case $ac_user_opts in
926 *"
927 "enable_$ac_useropt"
928 "*) ;;
929 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
930 ac_unrecognized_sep=', ';;
931 esac
932 eval enable_$ac_useropt=no ;;
933
934 -docdir | --docdir | --docdi | --doc | --do)
935 ac_prev=docdir ;;
936 -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
937 docdir=$ac_optarg ;;
938
939 -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
940 ac_prev=dvidir ;;
941 -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
942 dvidir=$ac_optarg ;;
943
944 -enable-* | --enable-*)
945 ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
946 # Reject names that are not valid shell variable names.
947 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
948 { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
949 { (exit 1); exit 1; }; }
950 ac_useropt_orig=$ac_useropt
951 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
952 case $ac_user_opts in
953 *"
954 "enable_$ac_useropt"
955 "*) ;;
956 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
957 ac_unrecognized_sep=', ';;
958 esac
959 eval enable_$ac_useropt=\$ac_optarg ;;
960
961 -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
962 | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
963 | --exec | --exe | --ex)
964 ac_prev=exec_prefix ;;
965 -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
966 | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
967 | --exec=* | --exe=* | --ex=*)
968 exec_prefix=$ac_optarg ;;
969
970 -gas | --gas | --ga | --g)
971 # Obsolete; use --with-gas.
972 with_gas=yes ;;
973
974 -help | --help | --hel | --he | -h)
975 ac_init_help=long ;;
976 -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
977 ac_init_help=recursive ;;
978 -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
979 ac_init_help=short ;;
980
981 -host | --host | --hos | --ho)
982 ac_prev=host_alias ;;
983 -host=* | --host=* | --hos=* | --ho=*)
984 host_alias=$ac_optarg ;;
985
986 -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
987 ac_prev=htmldir ;;
988 -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
989 | --ht=*)
990 htmldir=$ac_optarg ;;
991
992 -includedir | --includedir | --includedi | --included | --include \
993 | --includ | --inclu | --incl | --inc)
994 ac_prev=includedir ;;
995 -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
996 | --includ=* | --inclu=* | --incl=* | --inc=*)
997 includedir=$ac_optarg ;;
998
999 -infodir | --infodir | --infodi | --infod | --info | --inf)
1000 ac_prev=infodir ;;
1001 -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
1002 infodir=$ac_optarg ;;
1003
1004 -libdir | --libdir | --libdi | --libd)
1005 ac_prev=libdir ;;
1006 -libdir=* | --libdir=* | --libdi=* | --libd=*)
1007 libdir=$ac_optarg ;;
1008
1009 -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
1010 | --libexe | --libex | --libe)
1011 ac_prev=libexecdir ;;
1012 -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
1013 | --libexe=* | --libex=* | --libe=*)
1014 libexecdir=$ac_optarg ;;
1015
1016 -localedir | --localedir | --localedi | --localed | --locale)
1017 ac_prev=localedir ;;
1018 -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
1019 localedir=$ac_optarg ;;
1020
1021 -localstatedir | --localstatedir | --localstatedi | --localstated \
1022 | --localstate | --localstat | --localsta | --localst | --locals)
1023 ac_prev=localstatedir ;;
1024 -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
1025 | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
1026 localstatedir=$ac_optarg ;;
1027
1028 -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
1029 ac_prev=mandir ;;
1030 -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
1031 mandir=$ac_optarg ;;
1032
1033 -nfp | --nfp | --nf)
1034 # Obsolete; use --without-fp.
1035 with_fp=no ;;
1036
1037 -no-create | --no-create | --no-creat | --no-crea | --no-cre \
1038 | --no-cr | --no-c | -n)
1039 no_create=yes ;;
1040
1041 -no-recursion | --no-recursion | --no-recursio | --no-recursi \
1042 | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
1043 no_recursion=yes ;;
1044
1045 -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
1046 | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
1047 | --oldin | --oldi | --old | --ol | --o)
1048 ac_prev=oldincludedir ;;
1049 -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
1050 | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
1051 | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
1052 oldincludedir=$ac_optarg ;;
1053
1054 -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
1055 ac_prev=prefix ;;
1056 -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
1057 prefix=$ac_optarg ;;
1058
1059 -program-prefix | --program-prefix | --program-prefi | --program-pref \
1060 | --program-pre | --program-pr | --program-p)
1061 ac_prev=program_prefix ;;
1062 -program-prefix=* | --program-prefix=* | --program-prefi=* \
1063 | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
1064 program_prefix=$ac_optarg ;;
1065
1066 -program-suffix | --program-suffix | --program-suffi | --program-suff \
1067 | --program-suf | --program-su | --program-s)
1068 ac_prev=program_suffix ;;
1069 -program-suffix=* | --program-suffix=* | --program-suffi=* \
1070 | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
1071 program_suffix=$ac_optarg ;;
1072
1073 -program-transform-name | --program-transform-name \
1074 | --program-transform-nam | --program-transform-na \
1075 | --program-transform-n | --program-transform- \
1076 | --program-transform | --program-transfor \
1077 | --program-transfo | --program-transf \
1078 | --program-trans | --program-tran \
1079 | --progr-tra | --program-tr | --program-t)
1080 ac_prev=program_transform_name ;;
1081 -program-transform-name=* | --program-transform-name=* \
1082 | --program-transform-nam=* | --program-transform-na=* \
1083 | --program-transform-n=* | --program-transform-=* \
1084 | --program-transform=* | --program-transfor=* \
1085 | --program-transfo=* | --program-transf=* \
1086 | --program-trans=* | --program-tran=* \
1087 | --progr-tra=* | --program-tr=* | --program-t=*)
1088 program_transform_name=$ac_optarg ;;
1089
1090 -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
1091 ac_prev=pdfdir ;;
1092 -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
1093 pdfdir=$ac_optarg ;;
1094
1095 -psdir | --psdir | --psdi | --psd | --ps)
1096 ac_prev=psdir ;;
1097 -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
1098 psdir=$ac_optarg ;;
1099
1100 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
1101 | -silent | --silent | --silen | --sile | --sil)
1102 silent=yes ;;
1103
1104 -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
1105 ac_prev=sbindir ;;
1106 -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
1107 | --sbi=* | --sb=*)
1108 sbindir=$ac_optarg ;;
1109
1110 -sharedstatedir | --sharedstatedir | --sharedstatedi \
1111 | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
1112 | --sharedst | --shareds | --shared | --share | --shar \
1113 | --sha | --sh)
1114 ac_prev=sharedstatedir ;;
1115 -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
1116 | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
1117 | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
1118 | --sha=* | --sh=*)
1119 sharedstatedir=$ac_optarg ;;
1120
1121 -site | --site | --sit)
1122 ac_prev=site ;;
1123 -site=* | --site=* | --sit=*)
1124 site=$ac_optarg ;;
1125
1126 -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
1127 ac_prev=srcdir ;;
1128 -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
1129 srcdir=$ac_optarg ;;
1130
1131 -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
1132 | --syscon | --sysco | --sysc | --sys | --sy)
1133 ac_prev=sysconfdir ;;
1134 -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
1135 | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
1136 sysconfdir=$ac_optarg ;;
1137
1138 -target | --target | --targe | --targ | --tar | --ta | --t)
1139 ac_prev=target_alias ;;
1140 -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
1141 target_alias=$ac_optarg ;;
1142
1143 -v | -verbose | --verbose | --verbos | --verbo | --verb)
1144 verbose=yes ;;
1145
1146 -version | --version | --versio | --versi | --vers | -V)
1147 ac_init_version=: ;;
1148
1149 -with-* | --with-*)
1150 ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
1151 # Reject names that are not valid shell variable names.
1152 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
1153 { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
1154 { (exit 1); exit 1; }; }
1155 ac_useropt_orig=$ac_useropt
1156 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
1157 case $ac_user_opts in
1158 *"
1159 "with_$ac_useropt"
1160 "*) ;;
1161 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
1162 ac_unrecognized_sep=', ';;
1163 esac
1164 eval with_$ac_useropt=\$ac_optarg ;;
1165
1166 -without-* | --without-*)
1167 ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
1168 # Reject names that are not valid shell variable names.
1169 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
1170 { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
1171 { (exit 1); exit 1; }; }
1172 ac_useropt_orig=$ac_useropt
1173 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
1174 case $ac_user_opts in
1175 *"
1176 "with_$ac_useropt"
1177 "*) ;;
1178 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
1179 ac_unrecognized_sep=', ';;
1180 esac
1181 eval with_$ac_useropt=no ;;
1182
1183 --x)
1184 # Obsolete; use --with-x.
1185 with_x=yes ;;
1186
1187 -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
1188 | --x-incl | --x-inc | --x-in | --x-i)
1189 ac_prev=x_includes ;;
1190 -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
1191 | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
1192 x_includes=$ac_optarg ;;
1193
1194 -x-libraries | --x-libraries | --x-librarie | --x-librari \
1195 | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
1196 ac_prev=x_libraries ;;
1197 -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
1198 | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
1199 x_libraries=$ac_optarg ;;
1200
1201 -*) { $as_echo "$as_me: error: unrecognized option: $ac_option
1202 Try \`$0 --help' for more information." >&2
1203 { (exit 1); exit 1; }; }
1204 ;;
1205
1206 *=*)
1207 ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
1208 # Reject names that are not valid shell variable names.
1209 expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
1210 { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2
1211 { (exit 1); exit 1; }; }
1212 eval $ac_envvar=\$ac_optarg
1213 export $ac_envvar ;;
1214
1215 *)
1216 # FIXME: should be removed in autoconf 3.0.
1217 $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
1218 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
1219 $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
1220 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
1221 ;;
1222
1223 esac
1224 done
1225
1226 if test -n "$ac_prev"; then
1227 ac_option=--`echo $ac_prev | sed 's/_/-/g'`
1228 { $as_echo "$as_me: error: missing argument to $ac_option" >&2
1229 { (exit 1); exit 1; }; }
1230 fi
1231
1232 if test -n "$ac_unrecognized_opts"; then
1233 case $enable_option_checking in
1234 no) ;;
1235 fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2
1236 { (exit 1); exit 1; }; } ;;
1237 *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
1238 esac
1239 fi
1240
1241 # Check all directory arguments for consistency.
1242 for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
1243 datadir sysconfdir sharedstatedir localstatedir includedir \
1244 oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
1245 libdir localedir mandir
1246 do
1247 eval ac_val=\$$ac_var
1248 # Remove trailing slashes.
1249 case $ac_val in
1250 */ )
1251 ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
1252 eval $ac_var=\$ac_val;;
1253 esac
1254 # Be sure to have absolute directory names.
1255 case $ac_val in
1256 [\\/$]* | ?:[\\/]* ) continue;;
1257 NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
1258 esac
1259 { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
1260 { (exit 1); exit 1; }; }
1261 done
1262
1263 # There might be people who depend on the old broken behavior: `$host'
1264 # used to hold the argument of --host etc.
1265 # FIXME: To remove some day.
1266 build=$build_alias
1267 host=$host_alias
1268 target=$target_alias
1269
1270 # FIXME: To remove some day.
1271 if test "x$host_alias" != x; then
1272 if test "x$build_alias" = x; then
1273 cross_compiling=maybe
1274 $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
1275 If a cross compiler is detected then cross compile mode will be used." >&2
1276 elif test "x$build_alias" != "x$host_alias"; then
1277 cross_compiling=yes
1278 fi
1279 fi
1280
1281 ac_tool_prefix=
1282 test -n "$host_alias" && ac_tool_prefix=$host_alias-
1283
1284 test "$silent" = yes && exec 6>/dev/null
1285
1286
1287 ac_pwd=`pwd` && test -n "$ac_pwd" &&
1288 ac_ls_di=`ls -di .` &&
1289 ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
1290 { $as_echo "$as_me: error: working directory cannot be determined" >&2
1291 { (exit 1); exit 1; }; }
1292 test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
1293 { $as_echo "$as_me: error: pwd does not report name of working directory" >&2
1294 { (exit 1); exit 1; }; }
1295
1296
1297 # Find the source files, if location was not specified.
1298 if test -z "$srcdir"; then
1299 ac_srcdir_defaulted=yes
1300 # Try the directory containing this script, then the parent directory.
1301 ac_confdir=`$as_dirname -- "$as_myself" ||
1302 $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
1303 X"$as_myself" : 'X\(//\)[^/]' \| \
1304 X"$as_myself" : 'X\(//\)$' \| \
1305 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
1306 $as_echo X"$as_myself" |
1307 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
1308 s//\1/
1309 q
1310 }
1311 /^X\(\/\/\)[^/].*/{
1312 s//\1/
1313 q
1314 }
1315 /^X\(\/\/\)$/{
1316 s//\1/
1317 q
1318 }
1319 /^X\(\/\).*/{
1320 s//\1/
1321 q
1322 }
1323 s/.*/./; q'`
1324 srcdir=$ac_confdir
1325 if test ! -r "$srcdir/$ac_unique_file"; then
1326 srcdir=..
1327 fi
1328 else
1329 ac_srcdir_defaulted=no
1330 fi
1331 if test ! -r "$srcdir/$ac_unique_file"; then
1332 test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
1333 { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
1334 { (exit 1); exit 1; }; }
1335 fi
1336 ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
1337 ac_abs_confdir=`(
1338 cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2
1339 { (exit 1); exit 1; }; }
1340 pwd)`
1341 # When building in place, set srcdir=.
1342 if test "$ac_abs_confdir" = "$ac_pwd"; then
1343 srcdir=.
1344 fi
1345 # Remove unnecessary trailing slashes from srcdir.
1346 # Double slashes in file names in object file debugging info
1347 # mess up M-x gdb in Emacs.
1348 case $srcdir in
1349 */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
1350 esac
1351 for ac_var in $ac_precious_vars; do
1352 eval ac_env_${ac_var}_set=\${${ac_var}+set}
1353 eval ac_env_${ac_var}_value=\$${ac_var}
1354 eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
1355 eval ac_cv_env_${ac_var}_value=\$${ac_var}
1356 done
1357
1358 #
1359 # Report the --help message.
1360 #
1361 if test "$ac_init_help" = "long"; then
1362 # Omit some internal or obsolete options to make the list less imposing.
1363 # This message is too long to be a string in the A/UX 3.1 sh.
1364 cat <<_ACEOF
1365 \`configure' configures Focus Blur 3.2.6 to adapt to many kinds of systems.
1366
1367 Usage: $0 [OPTION]... [VAR=VALUE]...
1368
1369 To assign environment variables (e.g., CC, CFLAGS...), specify them as
1370 VAR=VALUE. See below for descriptions of some of the useful variables.
1371
1372 Defaults for the options are specified in brackets.
1373
1374 Configuration:
1375 -h, --help display this help and exit
1376 --help=short display options specific to this package
1377 --help=recursive display the short help of all the included packages
1378 -V, --version display version information and exit
1379 -q, --quiet, --silent do not print \`checking...' messages
1380 --cache-file=FILE cache test results in FILE [disabled]
1381 -C, --config-cache alias for \`--cache-file=config.cache'
1382 -n, --no-create do not create output files
1383 --srcdir=DIR find the sources in DIR [configure dir or \`..']
1384
1385 Installation directories:
1386 --prefix=PREFIX install architecture-independent files in PREFIX
1387 [$ac_default_prefix]
1388 --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
1389 [PREFIX]
1390
1391 By default, \`make install' will install all the files in
1392 \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
1393 an installation prefix other than \`$ac_default_prefix' using \`--prefix',
1394 for instance \`--prefix=\$HOME'.
1395
1396 For better control, use the options below.
1397
1398 Fine tuning of the installation directories:
1399 --bindir=DIR user executables [EPREFIX/bin]
1400 --sbindir=DIR system admin executables [EPREFIX/sbin]
1401 --libexecdir=DIR program executables [EPREFIX/libexec]
1402 --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
1403 --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
1404 --localstatedir=DIR modifiable single-machine data [PREFIX/var]
1405 --libdir=DIR object code libraries [EPREFIX/lib]
1406 --includedir=DIR C header files [PREFIX/include]
1407 --oldincludedir=DIR C header files for non-gcc [/usr/include]
1408 --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
1409 --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
1410 --infodir=DIR info documentation [DATAROOTDIR/info]
1411 --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
1412 --mandir=DIR man documentation [DATAROOTDIR/man]
1413 --docdir=DIR documentation root [DATAROOTDIR/doc/focusblur]
1414 --htmldir=DIR html documentation [DOCDIR]
1415 --dvidir=DIR dvi documentation [DOCDIR]
1416 --pdfdir=DIR pdf documentation [DOCDIR]
1417 --psdir=DIR ps documentation [DOCDIR]
1418 _ACEOF
1419
1420 cat <<\_ACEOF
1421
1422 Program names:
1423 --program-prefix=PREFIX prepend PREFIX to installed program names
1424 --program-suffix=SUFFIX append SUFFIX to installed program names
1425 --program-transform-name=PROGRAM run sed PROGRAM on installed program names
1426 _ACEOF
1427 fi
1428
1429 if test -n "$ac_init_help"; then
1430 case $ac_init_help in
1431 short | recursive ) echo "Configuration of Focus Blur 3.2.6:";;
1432 esac
1433 cat <<\_ACEOF
1434
1435 Optional Features:
1436 --disable-option-checking ignore unrecognized --enable/--with options
1437 --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
1438 --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
1439 --disable-dependency-tracking speeds up one-time build
1440 --enable-dependency-tracking do not reject slow dependency extractors
1441 --enable-maintainer-mode enable make rules and dependencies not useful
1442 (and sometimes confusing) to the casual installer
1443 --disable-gimptest do not try to compile and run a test GIMP program
1444 --disable-mp disable support for multiple processors
1445 --disable-nls do not use Native Language Support
1446
1447 Optional Packages:
1448 --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
1449 --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
1450 --with-gimp-prefix=DIR search for installed gimp-2.0.pc
1451 --without-fftw3 build without FFTW3 support
1452
1453 Some influential environment variables:
1454 CC C compiler command
1455 CFLAGS C compiler flags
1456 LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
1457 nonstandard directory <lib dir>
1458 LIBS libraries to pass to the linker, e.g. -l<library>
1459 CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
1460 you have headers in a nonstandard directory <include dir>
1461 PKG_CONFIG path to pkg-config utility
1462 GTHREAD_CFLAGS
1463 C compiler flags for GTHREAD, overriding pkg-config
1464 GTHREAD_LIBS
1465 linker flags for GTHREAD, overriding pkg-config
1466 CPP C preprocessor
1467 FFTW3_CFLAGS
1468 C compiler flags for FFTW3, overriding pkg-config
1469 FFTW3_LIBS linker flags for FFTW3, overriding pkg-config
1470
1471 Use these variables to override the choices made by `configure' or to help
1472 it to find libraries and programs with nonstandard names/locations.
1473
1474 Report bugs to <das atmark dream dot japan>.
1475 _ACEOF
1476 ac_status=$?
1477 fi
1478
1479 if test "$ac_init_help" = "recursive"; then
1480 # If there are subdirs, report their specific --help.
1481 for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
1482 test -d "$ac_dir" ||
1483 { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
1484 continue
1485 ac_builddir=.
1486
1487 case "$ac_dir" in
1488 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
1489 *)
1490 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
1491 # A ".." for each directory in $ac_dir_suffix.
1492 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
1493 case $ac_top_builddir_sub in
1494 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
1495 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
1496 esac ;;
1497 esac
1498 ac_abs_top_builddir=$ac_pwd
1499 ac_abs_builddir=$ac_pwd$ac_dir_suffix
1500 # for backward compatibility:
1501 ac_top_builddir=$ac_top_build_prefix
1502
1503 case $srcdir in
1504 .) # We are building in place.
1505 ac_srcdir=.
1506 ac_top_srcdir=$ac_top_builddir_sub
1507 ac_abs_top_srcdir=$ac_pwd ;;
1508 [\\/]* | ?:[\\/]* ) # Absolute name.
1509 ac_srcdir=$srcdir$ac_dir_suffix;
1510 ac_top_srcdir=$srcdir
1511 ac_abs_top_srcdir=$srcdir ;;
1512 *) # Relative name.
1513 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
1514 ac_top_srcdir=$ac_top_build_prefix$srcdir
1515 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
1516 esac
1517 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
1518
1519 cd "$ac_dir" || { ac_status=$?; continue; }
1520 # Check for guested configure.
1521 if test -f "$ac_srcdir/configure.gnu"; then
1522 echo &&
1523 $SHELL "$ac_srcdir/configure.gnu" --help=recursive
1524 elif test -f "$ac_srcdir/configure"; then
1525 echo &&
1526 $SHELL "$ac_srcdir/configure" --help=recursive
1527 else
1528 $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
1529 fi || ac_status=$?
1530 cd "$ac_pwd" || { ac_status=$?; break; }
1531 done
1532 fi
1533
1534 test -n "$ac_init_help" && exit $ac_status
1535 if $ac_init_version; then
1536 cat <<\_ACEOF
1537 Focus Blur configure 3.2.6
1538 generated by GNU Autoconf 2.63
1539
1540 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
1541 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
1542 This configure script is free software; the Free Software Foundation
1543 gives unlimited permission to copy, distribute and modify it.
1544 _ACEOF
1545 exit
1546 fi
1547 cat >config.log <<_ACEOF
1548 This file contains any messages produced by compilers while
1549 running configure, to aid debugging if configure makes a mistake.
1550
1551 It was created by Focus Blur $as_me 3.2.6, which was
1552 generated by GNU Autoconf 2.63. Invocation command line was
1553
1554 $ $0 $@
1555
1556 _ACEOF
1557 exec 5>>config.log
1558 {
1559 cat <<_ASUNAME
1560 ## --------- ##
1561 ## Platform. ##
1562 ## --------- ##
1563
1564 hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
1565 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1566 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1567 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1568 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1569
1570 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
1571 /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
1572
1573 /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
1574 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
1575 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
1576 /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
1577 /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
1578 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
1579 /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
1580
1581 _ASUNAME
1582
1583 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
1584 for as_dir in $PATH
1585 do
1586 IFS=$as_save_IFS
1587 test -z "$as_dir" && as_dir=.
1588 $as_echo "PATH: $as_dir"
1589 done
1590 IFS=$as_save_IFS
1591
1592 } >&5
1593
1594 cat >&5 <<_ACEOF
1595
1596
1597 ## ----------- ##
1598 ## Core tests. ##
1599 ## ----------- ##
1600
1601 _ACEOF
1602
1603
1604 # Keep a trace of the command line.
1605 # Strip out --no-create and --no-recursion so they do not pile up.
1606 # Strip out --silent because we don't want to record it for future runs.
1607 # Also quote any args containing shell meta-characters.
1608 # Make two passes to allow for proper duplicate-argument suppression.
1609 ac_configure_args=
1610 ac_configure_args0=
1611 ac_configure_args1=
1612 ac_must_keep_next=false
1613 for ac_pass in 1 2
1614 do
1615 for ac_arg
1616 do
1617 case $ac_arg in
1618 -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
1619 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
1620 | -silent | --silent | --silen | --sile | --sil)
1621 continue ;;
1622 *\'*)
1623 ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
1624 esac
1625 case $ac_pass in
1626 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
1627 2)
1628 ac_configure_args1="$ac_configure_args1 '$ac_arg'"
1629 if test $ac_must_keep_next = true; then
1630 ac_must_keep_next=false # Got value, back to normal.
1631 else
1632 case $ac_arg in
1633 *=* | --config-cache | -C | -disable-* | --disable-* \
1634 | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
1635 | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
1636 | -with-* | --with-* | -without-* | --without-* | --x)
1637 case "$ac_configure_args0 " in
1638 "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
1639 esac
1640 ;;
1641 -* ) ac_must_keep_next=true ;;
1642 esac
1643 fi
1644 ac_configure_args="$ac_configure_args '$ac_arg'"
1645 ;;
1646 esac
1647 done
1648 done
1649 $as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
1650 $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
1651
1652 # When interrupted or exit'd, cleanup temporary files, and complete
1653 # config.log. We remove comments because anyway the quotes in there
1654 # would cause problems or look ugly.
1655 # WARNING: Use '\'' to represent an apostrophe within the trap.
1656 # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
1657 trap 'exit_status=$?
1658 # Save into config.log some information that might help in debugging.
1659 {
1660 echo
1661
1662 cat <<\_ASBOX
1663 ## ---------------- ##
1664 ## Cache variables. ##
1665 ## ---------------- ##
1666 _ASBOX
1667 echo
1668 # The following way of writing the cache mishandles newlines in values,
1669 (
1670 for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
1671 eval ac_val=\$$ac_var
1672 case $ac_val in #(
1673 *${as_nl}*)
1674 case $ac_var in #(
1675 *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
1676 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
1677 esac
1678 case $ac_var in #(
1679 _ | IFS | as_nl) ;; #(
1680 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
1681 *) $as_unset $ac_var ;;
1682 esac ;;
1683 esac
1684 done
1685 (set) 2>&1 |
1686 case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
1687 *${as_nl}ac_space=\ *)
1688 sed -n \
1689 "s/'\''/'\''\\\\'\'''\''/g;
1690 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
1691 ;; #(
1692 *)
1693 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
1694 ;;
1695 esac |
1696 sort
1697 )
1698 echo
1699
1700 cat <<\_ASBOX
1701 ## ----------------- ##
1702 ## Output variables. ##
1703 ## ----------------- ##
1704 _ASBOX
1705 echo
1706 for ac_var in $ac_subst_vars
1707 do
1708 eval ac_val=\$$ac_var
1709 case $ac_val in
1710 *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
1711 esac
1712 $as_echo "$ac_var='\''$ac_val'\''"
1713 done | sort
1714 echo
1715
1716 if test -n "$ac_subst_files"; then
1717 cat <<\_ASBOX
1718 ## ------------------- ##
1719 ## File substitutions. ##
1720 ## ------------------- ##
1721 _ASBOX
1722 echo
1723 for ac_var in $ac_subst_files
1724 do
1725 eval ac_val=\$$ac_var
1726 case $ac_val in
1727 *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
1728 esac
1729 $as_echo "$ac_var='\''$ac_val'\''"
1730 done | sort
1731 echo
1732 fi
1733
1734 if test -s confdefs.h; then
1735 cat <<\_ASBOX
1736 ## ----------- ##
1737 ## confdefs.h. ##
1738 ## ----------- ##
1739 _ASBOX
1740 echo
1741 cat confdefs.h
1742 echo
1743 fi
1744 test "$ac_signal" != 0 &&
1745 $as_echo "$as_me: caught signal $ac_signal"
1746 $as_echo "$as_me: exit $exit_status"
1747 } >&5
1748 rm -f core *.core core.conftest.* &&
1749 rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
1750 exit $exit_status
1751 ' 0
1752 for ac_signal in 1 2 13 15; do
1753 trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
1754 done
1755 ac_signal=0
1756
1757 # confdefs.h avoids OS command line length limits that DEFS can exceed.
1758 rm -f -r conftest* confdefs.h
1759
1760 # Predefined preprocessor variables.
1761
1762 cat >>confdefs.h <<_ACEOF
1763 #define PACKAGE_NAME "$PACKAGE_NAME"
1764 _ACEOF
1765
1766
1767 cat >>confdefs.h <<_ACEOF
1768 #define PACKAGE_TARNAME "$PACKAGE_TARNAME"
1769 _ACEOF
1770
1771
1772 cat >>confdefs.h <<_ACEOF
1773 #define PACKAGE_VERSION "$PACKAGE_VERSION"
1774 _ACEOF
1775
1776
1777 cat >>confdefs.h <<_ACEOF
1778 #define PACKAGE_STRING "$PACKAGE_STRING"
1779 _ACEOF
1780
1781
1782 cat >>confdefs.h <<_ACEOF
1783 #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
1784 _ACEOF
1785
1786
1787 # Let the site file select an alternate cache file if it wants to.
1788 # Prefer an explicitly selected file to automatically selected ones.
1789 ac_site_file1=NONE
1790 ac_site_file2=NONE
1791 if test -n "$CONFIG_SITE"; then
1792 ac_site_file1=$CONFIG_SITE
1793 elif test "x$prefix" != xNONE; then
1794 ac_site_file1=$prefix/share/config.site
1795 ac_site_file2=$prefix/etc/config.site
1796 else
1797 ac_site_file1=$ac_default_prefix/share/config.site
1798 ac_site_file2=$ac_default_prefix/etc/config.site
1799 fi
1800 for ac_site_file in "$ac_site_file1" "$ac_site_file2"
1801 do
1802 test "x$ac_site_file" = xNONE && continue
1803 if test -r "$ac_site_file"; then
1804 { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
1805 $as_echo "$as_me: loading site script $ac_site_file" >&6;}
1806 sed 's/^/| /' "$ac_site_file" >&5
1807 . "$ac_site_file"
1808 fi
1809 done
1810
1811 if test -r "$cache_file"; then
1812 # Some versions of bash will fail to source /dev/null (special
1813 # files actually), so we avoid doing that.
1814 if test -f "$cache_file"; then
1815 { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5
1816 $as_echo "$as_me: loading cache $cache_file" >&6;}
1817 case $cache_file in
1818 [\\/]* | ?:[\\/]* ) . "$cache_file";;
1819 *) . "./$cache_file";;
1820 esac
1821 fi
1822 else
1823 { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5
1824 $as_echo "$as_me: creating cache $cache_file" >&6;}
1825 >$cache_file
1826 fi
1827
1828 # Check that the precious variables saved in the cache have kept the same
1829 # value.
1830 ac_cache_corrupted=false
1831 for ac_var in $ac_precious_vars; do
1832 eval ac_old_set=\$ac_cv_env_${ac_var}_set
1833 eval ac_new_set=\$ac_env_${ac_var}_set
1834 eval ac_old_val=\$ac_cv_env_${ac_var}_value
1835 eval ac_new_val=\$ac_env_${ac_var}_value
1836 case $ac_old_set,$ac_new_set in
1837 set,)
1838 { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
1839 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
1840 ac_cache_corrupted=: ;;
1841 ,set)
1842 { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
1843 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
1844 ac_cache_corrupted=: ;;
1845 ,);;
1846 *)
1847 if test "x$ac_old_val" != "x$ac_new_val"; then
1848 # differences in whitespace do not lead to failure.
1849 ac_old_val_w=`echo x $ac_old_val`
1850 ac_new_val_w=`echo x $ac_new_val`
1851 if test "$ac_old_val_w" != "$ac_new_val_w"; then
1852 { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
1853 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
1854 ac_cache_corrupted=:
1855 else
1856 { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
1857 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
1858 eval $ac_var=\$ac_old_val
1859 fi
1860 { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5
1861 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
1862 { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5
1863 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
1864 fi;;
1865 esac
1866 # Pass precious variables to config.status.
1867 if test "$ac_new_set" = set; then
1868 case $ac_new_val in
1869 *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
1870 *) ac_arg=$ac_var=$ac_new_val ;;
1871 esac
1872 case " $ac_configure_args " in
1873 *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
1874 *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
1875 esac
1876 fi
1877 done
1878 if $ac_cache_corrupted; then
1879 { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
1880 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
1881 { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
1882 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
1883 { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
1884 $as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
1885 { (exit 1); exit 1; }; }
1886 fi
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912 ac_ext=c
1913 ac_cpp='$CPP $CPPFLAGS'
1914 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
1915 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
1916 ac_compiler_gnu=$ac_cv_c_compiler_gnu
1917
1918
1919
1920 ac_config_headers="$ac_config_headers config.h"
1921
1922 am__api_version='1.11'
1923
1924 ac_aux_dir=
1925 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
1926 if test -f "$ac_dir/install-sh"; then
1927 ac_aux_dir=$ac_dir
1928 ac_install_sh="$ac_aux_dir/install-sh -c"
1929 break
1930 elif test -f "$ac_dir/install.sh"; then
1931 ac_aux_dir=$ac_dir
1932 ac_install_sh="$ac_aux_dir/install.sh -c"
1933 break
1934 elif test -f "$ac_dir/shtool"; then
1935 ac_aux_dir=$ac_dir
1936 ac_install_sh="$ac_aux_dir/shtool install -c"
1937 break
1938 fi
1939 done
1940 if test -z "$ac_aux_dir"; then
1941 { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
1942 $as_echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
1943 { (exit 1); exit 1; }; }
1944 fi
1945
1946 # These three variables are undocumented and unsupported,
1947 # and are intended to be withdrawn in a future Autoconf release.
1948 # They can cause serious problems if a builder's source tree is in a directory
1949 # whose full name contains unusual characters.
1950 ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
1951 ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
1952 ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
1953
1954
1955 # Find a good install program. We prefer a C program (faster),
1956 # so one script is as good as another. But avoid the broken or
1957 # incompatible versions:
1958 # SysV /etc/install, /usr/sbin/install
1959 # SunOS /usr/etc/install
1960 # IRIX /sbin/install
1961 # AIX /bin/install
1962 # AmigaOS /C/install, which installs bootblocks on floppy discs
1963 # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
1964 # AFS /usr/afsws/bin/install, which mishandles nonexistent args
1965 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
1966 # OS/2's system install, which has a completely different semantic
1967 # ./install, which can be erroneously created by make from ./install.sh.
1968 # Reject install programs that cannot install multiple files.
1969 { $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
1970 $as_echo_n "checking for a BSD-compatible install... " >&6; }
1971 if test -z "$INSTALL"; then
1972 if test "${ac_cv_path_install+set}" = set; then
1973 $as_echo_n "(cached) " >&6
1974 else
1975 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
1976 for as_dir in $PATH
1977 do
1978 IFS=$as_save_IFS
1979 test -z "$as_dir" && as_dir=.
1980 # Account for people who put trailing slashes in PATH elements.
1981 case $as_dir/ in
1982 ./ | .// | /cC/* | \
1983 /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
1984 ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
1985 /usr/ucb/* ) ;;
1986 *)
1987 # OSF1 and SCO ODT 3.0 have their own names for install.
1988 # Don't use installbsd from OSF since it installs stuff as root
1989 # by default.
1990 for ac_prog in ginstall scoinst install; do
1991 for ac_exec_ext in '' $ac_executable_extensions; do
1992 if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
1993 if test $ac_prog = install &&
1994 grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
1995 # AIX install. It has an incompatible calling convention.
1996 :
1997 elif test $ac_prog = install &&
1998 grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
1999 # program-specific install script used by HP pwplus--don't use.
2000 :
2001 else
2002 rm -rf conftest.one conftest.two conftest.dir
2003 echo one > conftest.one
2004 echo two > conftest.two
2005 mkdir conftest.dir
2006 if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
2007 test -s conftest.one && test -s conftest.two &&
2008 test -s conftest.dir/conftest.one &&
2009 test -s conftest.dir/conftest.two
2010 then
2011 ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
2012 break 3
2013 fi
2014 fi
2015 fi
2016 done
2017 done
2018 ;;
2019 esac
2020
2021 done
2022 IFS=$as_save_IFS
2023
2024 rm -rf conftest.one conftest.two conftest.dir
2025
2026 fi
2027 if test "${ac_cv_path_install+set}" = set; then
2028 INSTALL=$ac_cv_path_install
2029 else
2030 # As a last resort, use the slow shell script. Don't cache a
2031 # value for INSTALL within a source directory, because that will
2032 # break other packages using the cache if that directory is
2033 # removed, or if the value is a relative name.
2034 INSTALL=$ac_install_sh
2035 fi
2036 fi
2037 { $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
2038 $as_echo "$INSTALL" >&6; }
2039
2040 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
2041 # It thinks the first close brace ends the variable substitution.
2042 test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
2043
2044 test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
2045
2046 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
2047
2048 { $as_echo "$as_me:$LINENO: checking whether build environment is sane" >&5
2049 $as_echo_n "checking whether build environment is sane... " >&6; }
2050 # Just in case
2051 sleep 1
2052 echo timestamp > conftest.file
2053 # Reject unsafe characters in $srcdir or the absolute working directory
2054 # name. Accept space and tab only in the latter.
2055 am_lf='
2056 '
2057 case `pwd` in
2058 *[\\\"\#\$\&\'\`$am_lf]*)
2059 { { $as_echo "$as_me:$LINENO: error: unsafe absolute working directory name" >&5
2060 $as_echo "$as_me: error: unsafe absolute working directory name" >&2;}
2061 { (exit 1); exit 1; }; };;
2062 esac
2063 case $srcdir in
2064 *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
2065 { { $as_echo "$as_me:$LINENO: error: unsafe srcdir value: \`$srcdir'" >&5
2066 $as_echo "$as_me: error: unsafe srcdir value: \`$srcdir'" >&2;}
2067 { (exit 1); exit 1; }; };;
2068 esac
2069
2070 # Do `set' in a subshell so we don't clobber the current shell's
2071 # arguments. Must try -L first in case configure is actually a
2072 # symlink; some systems play weird games with the mod time of symlinks
2073 # (eg FreeBSD returns the mod time of the symlink's containing
2074 # directory).
2075 if (
2076 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
2077 if test "$*" = "X"; then
2078 # -L didn't work.
2079 set X `ls -t "$srcdir/configure" conftest.file`
2080 fi
2081 rm -f conftest.file
2082 if test "$*" != "X $srcdir/configure conftest.file" \
2083 && test "$*" != "X conftest.file $srcdir/configure"; then
2084
2085 # If neither matched, then we have a broken ls. This can happen
2086 # if, for instance, CONFIG_SHELL is bash and it inherits a
2087 # broken ls alias from the environment. This has actually
2088 # happened. Such a system could not be considered "sane".
2089 { { $as_echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken
2090 alias in your environment" >&5
2091 $as_echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken
2092 alias in your environment" >&2;}
2093 { (exit 1); exit 1; }; }
2094 fi
2095
2096 test "$2" = conftest.file
2097 )
2098 then
2099 # Ok.
2100 :
2101 else
2102 { { $as_echo "$as_me:$LINENO: error: newly created file is older than distributed files!
2103 Check your system clock" >&5
2104 $as_echo "$as_me: error: newly created file is older than distributed files!
2105 Check your system clock" >&2;}
2106 { (exit 1); exit 1; }; }
2107 fi
2108 { $as_echo "$as_me:$LINENO: result: yes" >&5
2109 $as_echo "yes" >&6; }
2110 test "$program_prefix" != NONE &&
2111 program_transform_name="s&^&$program_prefix&;$program_transform_name"
2112 # Use a double $ so make ignores it.
2113 test "$program_suffix" != NONE &&
2114 program_transform_name="s&\$&$program_suffix&;$program_transform_name"
2115 # Double any \ or $.
2116 # By default was `s,x,x', remove it if useless.
2117 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
2118 program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
2119
2120 # expand $ac_aux_dir to an absolute path
2121 am_aux_dir=`cd $ac_aux_dir && pwd`
2122
2123 if test x"${MISSING+set}" != xset; then
2124 case $am_aux_dir in
2125 *\ * | *\ *)
2126 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
2127 *)
2128 MISSING="\${SHELL} $am_aux_dir/missing" ;;
2129 esac
2130 fi
2131 # Use eval to expand $SHELL
2132 if eval "$MISSING --run true"; then
2133 am_missing_run="$MISSING --run "
2134 else
2135 am_missing_run=
2136 { $as_echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
2137 $as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
2138 fi
2139
2140 if test x"${install_sh}" != xset; then
2141 case $am_aux_dir in
2142 *\ * | *\ *)
2143 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
2144 *)
2145 install_sh="\${SHELL} $am_aux_dir/install-sh"
2146 esac
2147 fi
2148
2149 # Installed binaries are usually stripped using `strip' when the user
2150 # run `make install-strip'. However `strip' might not be the right
2151 # tool to use in cross-compilation environments, therefore Automake
2152 # will honor the `STRIP' environment variable to overrule this program.
2153 if test "$cross_compiling" != no; then
2154 if test -n "$ac_tool_prefix"; then
2155 # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
2156 set dummy ${ac_tool_prefix}strip; ac_word=$2
2157 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2158 $as_echo_n "checking for $ac_word... " >&6; }
2159 if test "${ac_cv_prog_STRIP+set}" = set; then
2160 $as_echo_n "(cached) " >&6
2161 else
2162 if test -n "$STRIP"; then
2163 ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
2164 else
2165 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2166 for as_dir in $PATH
2167 do
2168 IFS=$as_save_IFS
2169 test -z "$as_dir" && as_dir=.
2170 for ac_exec_ext in '' $ac_executable_extensions; do
2171 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2172 ac_cv_prog_STRIP="${ac_tool_prefix}strip"
2173 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2174 break 2
2175 fi
2176 done
2177 done
2178 IFS=$as_save_IFS
2179
2180 fi
2181 fi
2182 STRIP=$ac_cv_prog_STRIP
2183 if test -n "$STRIP"; then
2184 { $as_echo "$as_me:$LINENO: result: $STRIP" >&5
2185 $as_echo "$STRIP" >&6; }
2186 else
2187 { $as_echo "$as_me:$LINENO: result: no" >&5
2188 $as_echo "no" >&6; }
2189 fi
2190
2191
2192 fi
2193 if test -z "$ac_cv_prog_STRIP"; then
2194 ac_ct_STRIP=$STRIP
2195 # Extract the first word of "strip", so it can be a program name with args.
2196 set dummy strip; ac_word=$2
2197 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2198 $as_echo_n "checking for $ac_word... " >&6; }
2199 if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
2200 $as_echo_n "(cached) " >&6
2201 else
2202 if test -n "$ac_ct_STRIP"; then
2203 ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
2204 else
2205 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2206 for as_dir in $PATH
2207 do
2208 IFS=$as_save_IFS
2209 test -z "$as_dir" && as_dir=.
2210 for ac_exec_ext in '' $ac_executable_extensions; do
2211 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2212 ac_cv_prog_ac_ct_STRIP="strip"
2213 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2214 break 2
2215 fi
2216 done
2217 done
2218 IFS=$as_save_IFS
2219
2220 fi
2221 fi
2222 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
2223 if test -n "$ac_ct_STRIP"; then
2224 { $as_echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
2225 $as_echo "$ac_ct_STRIP" >&6; }
2226 else
2227 { $as_echo "$as_me:$LINENO: result: no" >&5
2228 $as_echo "no" >&6; }
2229 fi
2230
2231 if test "x$ac_ct_STRIP" = x; then
2232 STRIP=":"
2233 else
2234 case $cross_compiling:$ac_tool_warned in
2235 yes:)
2236 { $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
2237 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
2238 ac_tool_warned=yes ;;
2239 esac
2240 STRIP=$ac_ct_STRIP
2241 fi
2242 else
2243 STRIP="$ac_cv_prog_STRIP"
2244 fi
2245
2246 fi
2247 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
2248
2249 { $as_echo "$as_me:$LINENO: checking for a thread-safe mkdir -p" >&5
2250 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
2251 if test -z "$MKDIR_P"; then
2252 if test "${ac_cv_path_mkdir+set}" = set; then
2253 $as_echo_n "(cached) " >&6
2254 else
2255 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2256 for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
2257 do
2258 IFS=$as_save_IFS
2259 test -z "$as_dir" && as_dir=.
2260 for ac_prog in mkdir gmkdir; do
2261 for ac_exec_ext in '' $ac_executable_extensions; do
2262 { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
2263 case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
2264 'mkdir (GNU coreutils) '* | \
2265 'mkdir (coreutils) '* | \
2266 'mkdir (fileutils) '4.1*)
2267 ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
2268 break 3;;
2269 esac
2270 done
2271 done
2272 done
2273 IFS=$as_save_IFS
2274
2275 fi
2276
2277 if test "${ac_cv_path_mkdir+set}" = set; then
2278 MKDIR_P="$ac_cv_path_mkdir -p"
2279 else
2280 # As a last resort, use the slow shell script. Don't cache a
2281 # value for MKDIR_P within a source directory, because that will
2282 # break other packages using the cache if that directory is
2283 # removed, or if the value is a relative name.
2284 test -d ./--version && rmdir ./--version
2285 MKDIR_P="$ac_install_sh -d"
2286 fi
2287 fi
2288 { $as_echo "$as_me:$LINENO: result: $MKDIR_P" >&5
2289 $as_echo "$MKDIR_P" >&6; }
2290
2291 mkdir_p="$MKDIR_P"
2292 case $mkdir_p in
2293 [\\/$]* | ?:[\\/]*) ;;
2294 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
2295 esac
2296
2297 for ac_prog in gawk mawk nawk awk
2298 do
2299 # Extract the first word of "$ac_prog", so it can be a program name with args.
2300 set dummy $ac_prog; ac_word=$2
2301 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2302 $as_echo_n "checking for $ac_word... " >&6; }
2303 if test "${ac_cv_prog_AWK+set}" = set; then
2304 $as_echo_n "(cached) " >&6
2305 else
2306 if test -n "$AWK"; then
2307 ac_cv_prog_AWK="$AWK" # Let the user override the test.
2308 else
2309 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2310 for as_dir in $PATH
2311 do
2312 IFS=$as_save_IFS
2313 test -z "$as_dir" && as_dir=.
2314 for ac_exec_ext in '' $ac_executable_extensions; do
2315 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2316 ac_cv_prog_AWK="$ac_prog"
2317 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2318 break 2
2319 fi
2320 done
2321 done
2322 IFS=$as_save_IFS
2323
2324 fi
2325 fi
2326 AWK=$ac_cv_prog_AWK
2327 if test -n "$AWK"; then
2328 { $as_echo "$as_me:$LINENO: result: $AWK" >&5
2329 $as_echo "$AWK" >&6; }
2330 else
2331 { $as_echo "$as_me:$LINENO: result: no" >&5
2332 $as_echo "no" >&6; }
2333 fi
2334
2335
2336 test -n "$AWK" && break
2337 done
2338
2339 { $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
2340 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
2341 set x ${MAKE-make}
2342 ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
2343 if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
2344 $as_echo_n "(cached) " >&6
2345 else
2346 cat >conftest.make <<\_ACEOF
2347 SHELL = /bin/sh
2348 all:
2349 @echo '@@@%%%=$(MAKE)=@@@%%%'
2350 _ACEOF
2351 # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
2352 case `${MAKE-make} -f conftest.make 2>/dev/null` in
2353 *@@@%%%=?*=@@@%%%*)
2354 eval ac_cv_prog_make_${ac_make}_set=yes;;
2355 *)
2356 eval ac_cv_prog_make_${ac_make}_set=no;;
2357 esac
2358 rm -f conftest.make
2359 fi
2360 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
2361 { $as_echo "$as_me:$LINENO: result: yes" >&5
2362 $as_echo "yes" >&6; }
2363 SET_MAKE=
2364 else
2365 { $as_echo "$as_me:$LINENO: result: no" >&5
2366 $as_echo "no" >&6; }
2367 SET_MAKE="MAKE=${MAKE-make}"
2368 fi
2369
2370 rm -rf .tst 2>/dev/null
2371 mkdir .tst 2>/dev/null
2372 if test -d .tst; then
2373 am__leading_dot=.
2374 else
2375 am__leading_dot=_
2376 fi
2377 rmdir .tst 2>/dev/null
2378
2379 if test "`cd $srcdir && pwd`" != "`pwd`"; then
2380 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
2381 # is not polluted with repeated "-I."
2382 am__isrc=' -I$(srcdir)'
2383 # test to see if srcdir already configured
2384 if test -f $srcdir/config.status; then
2385 { { $as_echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
2386 $as_echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
2387 { (exit 1); exit 1; }; }
2388 fi
2389 fi
2390
2391 # test whether we have cygpath
2392 if test -z "$CYGPATH_W"; then
2393 if (cygpath --version) >/dev/null 2>/dev/null; then
2394 CYGPATH_W='cygpath -w'
2395 else
2396 CYGPATH_W=echo
2397 fi
2398 fi
2399
2400
2401 # Define the identity of the package.
2402 PACKAGE='focusblur'
2403 VERSION='3.2.6'
2404
2405
2406 # Some tools Automake needs.
2407
2408 ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
2409
2410
2411 AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
2412
2413
2414 AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
2415
2416
2417 AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
2418
2419
2420 MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
2421
2422 # We need awk for the "check" target. The system "awk" is bad on
2423 # some platforms.
2424 # Always define AMTAR for backward compatibility.
2425
2426 AMTAR=${AMTAR-"${am_missing_run}tar"}
2427
2428 am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
2429
2430
2431
2432
2433
2434
2435 # Checks for programs.
2436 ac_ext=c
2437 ac_cpp='$CPP $CPPFLAGS'
2438 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2439 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2440 ac_compiler_gnu=$ac_cv_c_compiler_gnu
2441 if test -n "$ac_tool_prefix"; then
2442 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
2443 set dummy ${ac_tool_prefix}gcc; ac_word=$2
2444 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2445 $as_echo_n "checking for $ac_word... " >&6; }
2446 if test "${ac_cv_prog_CC+set}" = set; then
2447 $as_echo_n "(cached) " >&6
2448 else
2449 if test -n "$CC"; then
2450 ac_cv_prog_CC="$CC" # Let the user override the test.
2451 else
2452 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2453 for as_dir in $PATH
2454 do
2455 IFS=$as_save_IFS
2456 test -z "$as_dir" && as_dir=.
2457 for ac_exec_ext in '' $ac_executable_extensions; do
2458 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2459 ac_cv_prog_CC="${ac_tool_prefix}gcc"
2460 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2461 break 2
2462 fi
2463 done
2464 done
2465 IFS=$as_save_IFS
2466
2467 fi
2468 fi
2469 CC=$ac_cv_prog_CC
2470 if test -n "$CC"; then
2471 { $as_echo "$as_me:$LINENO: result: $CC" >&5
2472 $as_echo "$CC" >&6; }
2473 else
2474 { $as_echo "$as_me:$LINENO: result: no" >&5
2475 $as_echo "no" >&6; }
2476 fi
2477
2478
2479 fi
2480 if test -z "$ac_cv_prog_CC"; then
2481 ac_ct_CC=$CC
2482 # Extract the first word of "gcc", so it can be a program name with args.
2483 set dummy gcc; ac_word=$2
2484 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2485 $as_echo_n "checking for $ac_word... " >&6; }
2486 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
2487 $as_echo_n "(cached) " >&6
2488 else
2489 if test -n "$ac_ct_CC"; then
2490 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
2491 else
2492 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2493 for as_dir in $PATH
2494 do
2495 IFS=$as_save_IFS
2496 test -z "$as_dir" && as_dir=.
2497 for ac_exec_ext in '' $ac_executable_extensions; do
2498 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2499 ac_cv_prog_ac_ct_CC="gcc"
2500 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2501 break 2
2502 fi
2503 done
2504 done
2505 IFS=$as_save_IFS
2506
2507 fi
2508 fi
2509 ac_ct_CC=$ac_cv_prog_ac_ct_CC
2510 if test -n "$ac_ct_CC"; then
2511 { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
2512 $as_echo "$ac_ct_CC" >&6; }
2513 else
2514 { $as_echo "$as_me:$LINENO: result: no" >&5
2515 $as_echo "no" >&6; }
2516 fi
2517
2518 if test "x$ac_ct_CC" = x; then
2519 CC=""
2520 else
2521 case $cross_compiling:$ac_tool_warned in
2522 yes:)
2523 { $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
2524 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
2525 ac_tool_warned=yes ;;
2526 esac
2527 CC=$ac_ct_CC
2528 fi
2529 else
2530 CC="$ac_cv_prog_CC"
2531 fi
2532
2533 if test -z "$CC"; then
2534 if test -n "$ac_tool_prefix"; then
2535 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
2536 set dummy ${ac_tool_prefix}cc; ac_word=$2
2537 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2538 $as_echo_n "checking for $ac_word... " >&6; }
2539 if test "${ac_cv_prog_CC+set}" = set; then
2540 $as_echo_n "(cached) " >&6
2541 else
2542 if test -n "$CC"; then
2543 ac_cv_prog_CC="$CC" # Let the user override the test.
2544 else
2545 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2546 for as_dir in $PATH
2547 do
2548 IFS=$as_save_IFS
2549 test -z "$as_dir" && as_dir=.
2550 for ac_exec_ext in '' $ac_executable_extensions; do
2551 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2552 ac_cv_prog_CC="${ac_tool_prefix}cc"
2553 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2554 break 2
2555 fi
2556 done
2557 done
2558 IFS=$as_save_IFS
2559
2560 fi
2561 fi
2562 CC=$ac_cv_prog_CC
2563 if test -n "$CC"; then
2564 { $as_echo "$as_me:$LINENO: result: $CC" >&5
2565 $as_echo "$CC" >&6; }
2566 else
2567 { $as_echo "$as_me:$LINENO: result: no" >&5
2568 $as_echo "no" >&6; }
2569 fi
2570
2571
2572 fi
2573 fi
2574 if test -z "$CC"; then
2575 # Extract the first word of "cc", so it can be a program name with args.
2576 set dummy cc; ac_word=$2
2577 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2578 $as_echo_n "checking for $ac_word... " >&6; }
2579 if test "${ac_cv_prog_CC+set}" = set; then
2580 $as_echo_n "(cached) " >&6
2581 else
2582 if test -n "$CC"; then
2583 ac_cv_prog_CC="$CC" # Let the user override the test.
2584 else
2585 ac_prog_rejected=no
2586 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2587 for as_dir in $PATH
2588 do
2589 IFS=$as_save_IFS
2590 test -z "$as_dir" && as_dir=.
2591 for ac_exec_ext in '' $ac_executable_extensions; do
2592 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2593 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
2594 ac_prog_rejected=yes
2595 continue
2596 fi
2597 ac_cv_prog_CC="cc"
2598 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2599 break 2
2600 fi
2601 done
2602 done
2603 IFS=$as_save_IFS
2604
2605 if test $ac_prog_rejected = yes; then
2606 # We found a bogon in the path, so make sure we never use it.
2607 set dummy $ac_cv_prog_CC
2608 shift
2609 if test $# != 0; then
2610 # We chose a different compiler from the bogus one.
2611 # However, it has the same basename, so the bogon will be chosen
2612 # first if we set CC to just the basename; use the full file name.
2613 shift
2614 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
2615 fi
2616 fi
2617 fi
2618 fi
2619 CC=$ac_cv_prog_CC
2620 if test -n "$CC"; then
2621 { $as_echo "$as_me:$LINENO: result: $CC" >&5
2622 $as_echo "$CC" >&6; }
2623 else
2624 { $as_echo "$as_me:$LINENO: result: no" >&5
2625 $as_echo "no" >&6; }
2626 fi
2627
2628
2629 fi
2630 if test -z "$CC"; then
2631 if test -n "$ac_tool_prefix"; then
2632 for ac_prog in cl.exe
2633 do
2634 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
2635 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
2636 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2637 $as_echo_n "checking for $ac_word... " >&6; }
2638 if test "${ac_cv_prog_CC+set}" = set; then
2639 $as_echo_n "(cached) " >&6
2640 else
2641 if test -n "$CC"; then
2642 ac_cv_prog_CC="$CC" # Let the user override the test.
2643 else
2644 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2645 for as_dir in $PATH
2646 do
2647 IFS=$as_save_IFS
2648 test -z "$as_dir" && as_dir=.
2649 for ac_exec_ext in '' $ac_executable_extensions; do
2650 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2651 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
2652 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2653 break 2
2654 fi
2655 done
2656 done
2657 IFS=$as_save_IFS
2658
2659 fi
2660 fi
2661 CC=$ac_cv_prog_CC
2662 if test -n "$CC"; then
2663 { $as_echo "$as_me:$LINENO: result: $CC" >&5
2664 $as_echo "$CC" >&6; }
2665 else
2666 { $as_echo "$as_me:$LINENO: result: no" >&5
2667 $as_echo "no" >&6; }
2668 fi
2669
2670
2671 test -n "$CC" && break
2672 done
2673 fi
2674 if test -z "$CC"; then
2675 ac_ct_CC=$CC
2676 for ac_prog in cl.exe
2677 do
2678 # Extract the first word of "$ac_prog", so it can be a program name with args.
2679 set dummy $ac_prog; ac_word=$2
2680 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2681 $as_echo_n "checking for $ac_word... " >&6; }
2682 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
2683 $as_echo_n "(cached) " >&6
2684 else
2685 if test -n "$ac_ct_CC"; then
2686 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
2687 else
2688 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2689 for as_dir in $PATH
2690 do
2691 IFS=$as_save_IFS
2692 test -z "$as_dir" && as_dir=.
2693 for ac_exec_ext in '' $ac_executable_extensions; do
2694 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
2695 ac_cv_prog_ac_ct_CC="$ac_prog"
2696 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
2697 break 2
2698 fi
2699 done
2700 done
2701 IFS=$as_save_IFS
2702
2703 fi
2704 fi
2705 ac_ct_CC=$ac_cv_prog_ac_ct_CC
2706 if test -n "$ac_ct_CC"; then
2707 { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
2708 $as_echo "$ac_ct_CC" >&6; }
2709 else
2710 { $as_echo "$as_me:$LINENO: result: no" >&5
2711 $as_echo "no" >&6; }
2712 fi
2713
2714
2715 test -n "$ac_ct_CC" && break
2716 done
2717
2718 if test "x$ac_ct_CC" = x; then
2719 CC=""
2720 else
2721 case $cross_compiling:$ac_tool_warned in
2722 yes:)
2723 { $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
2724 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
2725 ac_tool_warned=yes ;;
2726 esac
2727 CC=$ac_ct_CC
2728 fi
2729 fi
2730
2731 fi
2732
2733
2734 test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
2735 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2736 { { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
2737 See \`config.log' for more details." >&5
2738 $as_echo "$as_me: error: no acceptable C compiler found in \$PATH
2739 See \`config.log' for more details." >&2;}
2740 { (exit 1); exit 1; }; }; }
2741
2742 # Provide some information about the compiler.
2743 $as_echo "$as_me:$LINENO: checking for C compiler version" >&5
2744 set X $ac_compile
2745 ac_compiler=$2
2746 { (ac_try="$ac_compiler --version >&5"
2747 case "(($ac_try" in
2748 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2749 *) ac_try_echo=$ac_try;;
2750 esac
2751 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
2752 $as_echo "$ac_try_echo") >&5
2753 (eval "$ac_compiler --version >&5") 2>&5
2754 ac_status=$?
2755 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
2756 (exit $ac_status); }
2757 { (ac_try="$ac_compiler -v >&5"
2758 case "(($ac_try" in
2759 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2760 *) ac_try_echo=$ac_try;;
2761 esac
2762 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
2763 $as_echo "$ac_try_echo") >&5
2764 (eval "$ac_compiler -v >&5") 2>&5
2765 ac_status=$?
2766 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
2767 (exit $ac_status); }
2768 { (ac_try="$ac_compiler -V >&5"
2769 case "(($ac_try" in
2770 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2771 *) ac_try_echo=$ac_try;;
2772 esac
2773 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
2774 $as_echo "$ac_try_echo") >&5
2775 (eval "$ac_compiler -V >&5") 2>&5
2776 ac_status=$?
2777 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
2778 (exit $ac_status); }
2779
2780 cat >conftest.$ac_ext <<_ACEOF
2781 /* confdefs.h. */
2782 _ACEOF
2783 cat confdefs.h >>conftest.$ac_ext
2784 cat >>conftest.$ac_ext <<_ACEOF
2785 /* end confdefs.h. */
2786
2787 int
2788 main ()
2789 {
2790
2791 ;
2792 return 0;
2793 }
2794 _ACEOF
2795 ac_clean_files_save=$ac_clean_files
2796 ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
2797 # Try to create an executable without -o first, disregard a.out.
2798 # It will help us diagnose broken compilers, and finding out an intuition
2799 # of exeext.
2800 { $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
2801 $as_echo_n "checking for C compiler default output file name... " >&6; }
2802 ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
2803
2804 # The possible output files:
2805 ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
2806
2807 ac_rmfiles=
2808 for ac_file in $ac_files
2809 do
2810 case $ac_file in
2811 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
2812 * ) ac_rmfiles="$ac_rmfiles $ac_file";;
2813 esac
2814 done
2815 rm -f $ac_rmfiles
2816
2817 if { (ac_try="$ac_link_default"
2818 case "(($ac_try" in
2819 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2820 *) ac_try_echo=$ac_try;;
2821 esac
2822 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
2823 $as_echo "$ac_try_echo") >&5
2824 (eval "$ac_link_default") 2>&5
2825 ac_status=$?
2826 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
2827 (exit $ac_status); }; then
2828 # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
2829 # So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
2830 # in a Makefile. We should not override ac_cv_exeext if it was cached,
2831 # so that the user can short-circuit this test for compilers unknown to
2832 # Autoconf.
2833 for ac_file in $ac_files ''
2834 do
2835 test -f "$ac_file" || continue
2836 case $ac_file in
2837 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
2838 ;;
2839 [ab].out )
2840 # We found the default executable, but exeext='' is most
2841 # certainly right.
2842 break;;
2843 *.* )
2844 if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
2845 then :; else
2846 ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
2847 fi
2848 # We set ac_cv_exeext here because the later test for it is not
2849 # safe: cross compilers may not add the suffix if given an `-o'
2850 # argument, so we may need to know it at that point already.
2851 # Even if this section looks crufty: it has the advantage of
2852 # actually working.
2853 break;;
2854 * )
2855 break;;
2856 esac
2857 done
2858 test "$ac_cv_exeext" = no && ac_cv_exeext=
2859
2860 else
2861 ac_file=''
2862 fi
2863
2864 { $as_echo "$as_me:$LINENO: result: $ac_file" >&5
2865 $as_echo "$ac_file" >&6; }
2866 if test -z "$ac_file"; then
2867 $as_echo "$as_me: failed program was:" >&5
2868 sed 's/^/| /' conftest.$ac_ext >&5
2869
2870 { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
2871 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2872 { { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables
2873 See \`config.log' for more details." >&5
2874 $as_echo "$as_me: error: C compiler cannot create executables
2875 See \`config.log' for more details." >&2;}
2876 { (exit 77); exit 77; }; }; }
2877 fi
2878
2879 ac_exeext=$ac_cv_exeext
2880
2881 # Check that the compiler produces executables we can run. If not, either
2882 # the compiler is broken, or we cross compile.
2883 { $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5
2884 $as_echo_n "checking whether the C compiler works... " >&6; }
2885 # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
2886 # If not cross compiling, check that we can run a simple program.
2887 if test "$cross_compiling" != yes; then
2888 if { ac_try='./$ac_file'
2889 { (case "(($ac_try" in
2890 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2891 *) ac_try_echo=$ac_try;;
2892 esac
2893 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
2894 $as_echo "$ac_try_echo") >&5
2895 (eval "$ac_try") 2>&5
2896 ac_status=$?
2897 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
2898 (exit $ac_status); }; }; then
2899 cross_compiling=no
2900 else
2901 if test "$cross_compiling" = maybe; then
2902 cross_compiling=yes
2903 else
2904 { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
2905 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2906 { { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs.
2907 If you meant to cross compile, use \`--host'.
2908 See \`config.log' for more details." >&5
2909 $as_echo "$as_me: error: cannot run C compiled programs.
2910 If you meant to cross compile, use \`--host'.
2911 See \`config.log' for more details." >&2;}
2912 { (exit 1); exit 1; }; }; }
2913 fi
2914 fi
2915 fi
2916 { $as_echo "$as_me:$LINENO: result: yes" >&5
2917 $as_echo "yes" >&6; }
2918
2919 rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
2920 ac_clean_files=$ac_clean_files_save
2921 # Check that the compiler produces executables we can run. If not, either
2922 # the compiler is broken, or we cross compile.
2923 { $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
2924 $as_echo_n "checking whether we are cross compiling... " >&6; }
2925 { $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5
2926 $as_echo "$cross_compiling" >&6; }
2927
2928 { $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5
2929 $as_echo_n "checking for suffix of executables... " >&6; }
2930 if { (ac_try="$ac_link"
2931 case "(($ac_try" in
2932 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2933 *) ac_try_echo=$ac_try;;
2934 esac
2935 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
2936 $as_echo "$ac_try_echo") >&5
2937 (eval "$ac_link") 2>&5
2938 ac_status=$?
2939 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
2940 (exit $ac_status); }; then
2941 # If both `conftest.exe' and `conftest' are `present' (well, observable)
2942 # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
2943 # work properly (i.e., refer to `conftest.exe'), while it won't with
2944 # `rm'.
2945 for ac_file in conftest.exe conftest conftest.*; do
2946 test -f "$ac_file" || continue
2947 case $ac_file in
2948 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
2949 *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
2950 break;;
2951 * ) break;;
2952 esac
2953 done
2954 else
2955 { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
2956 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2957 { { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
2958 See \`config.log' for more details." >&5
2959 $as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
2960 See \`config.log' for more details." >&2;}
2961 { (exit 1); exit 1; }; }; }
2962 fi
2963
2964 rm -f conftest$ac_cv_exeext
2965 { $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
2966 $as_echo "$ac_cv_exeext" >&6; }
2967
2968 rm -f conftest.$ac_ext
2969 EXEEXT=$ac_cv_exeext
2970 ac_exeext=$EXEEXT
2971 { $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5
2972 $as_echo_n "checking for suffix of object files... " >&6; }
2973 if test "${ac_cv_objext+set}" = set; then
2974 $as_echo_n "(cached) " >&6
2975 else
2976 cat >conftest.$ac_ext <<_ACEOF
2977 /* confdefs.h. */
2978 _ACEOF
2979 cat confdefs.h >>conftest.$ac_ext
2980 cat >>conftest.$ac_ext <<_ACEOF
2981 /* end confdefs.h. */
2982
2983 int
2984 main ()
2985 {
2986
2987 ;
2988 return 0;
2989 }
2990 _ACEOF
2991 rm -f conftest.o conftest.obj
2992 if { (ac_try="$ac_compile"
2993 case "(($ac_try" in
2994 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2995 *) ac_try_echo=$ac_try;;
2996 esac
2997 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
2998 $as_echo "$ac_try_echo") >&5
2999 (eval "$ac_compile") 2>&5
3000 ac_status=$?
3001 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
3002 (exit $ac_status); }; then
3003 for ac_file in conftest.o conftest.obj conftest.*; do
3004 test -f "$ac_file" || continue;
3005 case $ac_file in
3006 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
3007 *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
3008 break;;
3009 esac
3010 done
3011 else
3012 $as_echo "$as_me: failed program was:" >&5
3013 sed 's/^/| /' conftest.$ac_ext >&5
3014
3015 { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
3016 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3017 { { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
3018 See \`config.log' for more details." >&5
3019 $as_echo "$as_me: error: cannot compute suffix of object files: cannot compile
3020 See \`config.log' for more details." >&2;}
3021 { (exit 1); exit 1; }; }; }
3022 fi
3023
3024 rm -f conftest.$ac_cv_objext conftest.$ac_ext
3025 fi
3026 { $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
3027 $as_echo "$ac_cv_objext" >&6; }
3028 OBJEXT=$ac_cv_objext
3029 ac_objext=$OBJEXT
3030 { $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
3031 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
3032 if test "${ac_cv_c_compiler_gnu+set}" = set; then
3033 $as_echo_n "(cached) " >&6
3034 else
3035 cat >conftest.$ac_ext <<_ACEOF
3036 /* confdefs.h. */
3037 _ACEOF
3038 cat confdefs.h >>conftest.$ac_ext
3039 cat >>conftest.$ac_ext <<_ACEOF
3040 /* end confdefs.h. */
3041
3042 int
3043 main ()
3044 {
3045 #ifndef __GNUC__
3046 choke me
3047 #endif
3048
3049 ;
3050 return 0;
3051 }
3052 _ACEOF
3053 rm -f conftest.$ac_objext
3054 if { (ac_try="$ac_compile"
3055 case "(($ac_try" in
3056 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3057 *) ac_try_echo=$ac_try;;
3058 esac
3059 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
3060 $as_echo "$ac_try_echo") >&5
3061 (eval "$ac_compile") 2>conftest.er1
3062 ac_status=$?
3063 grep -v '^ *+' conftest.er1 >conftest.err
3064 rm -f conftest.er1
3065 cat conftest.err >&5
3066 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
3067 (exit $ac_status); } && {
3068 test -z "$ac_c_werror_flag" ||
3069 test ! -s conftest.err
3070 } && test -s conftest.$ac_objext; then
3071 ac_compiler_gnu=yes
3072 else
3073 $as_echo "$as_me: failed program was:" >&5
3074 sed 's/^/| /' conftest.$ac_ext >&5
3075
3076 ac_compiler_gnu=no
3077 fi
3078
3079 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3080 ac_cv_c_compiler_gnu=$ac_compiler_gnu
3081
3082 fi
3083 { $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
3084 $as_echo "$ac_cv_c_compiler_gnu" >&6; }
3085 if test $ac_compiler_gnu = yes; then
3086 GCC=yes
3087 else
3088 GCC=
3089 fi
3090 ac_test_CFLAGS=${CFLAGS+set}
3091 ac_save_CFLAGS=$CFLAGS
3092 { $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
3093 $as_echo_n "checking whether $CC accepts -g... " >&6; }
3094 if test "${ac_cv_prog_cc_g+set}" = set; then
3095 $as_echo_n "(cached) " >&6
3096 else
3097 ac_save_c_werror_flag=$ac_c_werror_flag
3098 ac_c_werror_flag=yes
3099 ac_cv_prog_cc_g=no
3100 CFLAGS="-g"
3101 cat >conftest.$ac_ext <<_ACEOF
3102 /* confdefs.h. */
3103 _ACEOF
3104 cat confdefs.h >>conftest.$ac_ext
3105 cat >>conftest.$ac_ext <<_ACEOF
3106 /* end confdefs.h. */
3107
3108 int
3109 main ()
3110 {
3111
3112 ;
3113 return 0;
3114 }
3115 _ACEOF
3116 rm -f conftest.$ac_objext
3117 if { (ac_try="$ac_compile"
3118 case "(($ac_try" in
3119 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3120 *) ac_try_echo=$ac_try;;
3121 esac
3122 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
3123 $as_echo "$ac_try_echo") >&5
3124 (eval "$ac_compile") 2>conftest.er1
3125 ac_status=$?
3126 grep -v '^ *+' conftest.er1 >conftest.err
3127 rm -f conftest.er1
3128 cat conftest.err >&5
3129 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
3130 (exit $ac_status); } && {
3131 test -z "$ac_c_werror_flag" ||
3132 test ! -s conftest.err
3133 } && test -s conftest.$ac_objext; then
3134 ac_cv_prog_cc_g=yes
3135 else
3136 $as_echo "$as_me: failed program was:" >&5
3137 sed 's/^/| /' conftest.$ac_ext >&5
3138
3139 CFLAGS=""
3140 cat >conftest.$ac_ext <<_ACEOF
3141 /* confdefs.h. */
3142 _ACEOF
3143 cat confdefs.h >>conftest.$ac_ext
3144 cat >>conftest.$ac_ext <<_ACEOF
3145 /* end confdefs.h. */
3146
3147 int
3148 main ()
3149 {
3150
3151 ;
3152 return 0;
3153 }
3154 _ACEOF
3155 rm -f conftest.$ac_objext
3156 if { (ac_try="$ac_compile"
3157 case "(($ac_try" in
3158 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3159 *) ac_try_echo=$ac_try;;
3160 esac
3161 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
3162 $as_echo "$ac_try_echo") >&5
3163 (eval "$ac_compile") 2>conftest.er1
3164 ac_status=$?
3165 grep -v '^ *+' conftest.er1 >conftest.err
3166 rm -f conftest.er1
3167 cat conftest.err >&5
3168 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
3169 (exit $ac_status); } && {
3170 test -z "$ac_c_werror_flag" ||
3171 test ! -s conftest.err
3172 } && test -s conftest.$ac_objext; then
3173 :
3174 else
3175 $as_echo "$as_me: failed program was:" >&5
3176 sed 's/^/| /' conftest.$ac_ext >&5
3177
3178 ac_c_werror_flag=$ac_save_c_werror_flag
3179 CFLAGS="-g"
3180 cat >conftest.$ac_ext <<_ACEOF
3181 /* confdefs.h. */
3182 _ACEOF
3183 cat confdefs.h >>conftest.$ac_ext
3184 cat >>conftest.$ac_ext <<_ACEOF
3185 /* end confdefs.h. */
3186
3187 int
3188 main ()
3189 {
3190
3191 ;
3192 return 0;
3193 }
3194 _ACEOF
3195 rm -f conftest.$ac_objext
3196 if { (ac_try="$ac_compile"
3197 case "(($ac_try" in
3198 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3199 *) ac_try_echo=$ac_try;;
3200 esac
3201 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
3202 $as_echo "$ac_try_echo") >&5
3203 (eval "$ac_compile") 2>conftest.er1
3204 ac_status=$?
3205 grep -v '^ *+' conftest.er1 >conftest.err
3206 rm -f conftest.er1
3207 cat conftest.err >&5
3208 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
3209 (exit $ac_status); } && {
3210 test -z "$ac_c_werror_flag" ||
3211 test ! -s conftest.err
3212 } && test -s conftest.$ac_objext; then
3213 ac_cv_prog_cc_g=yes
3214 else
3215 $as_echo "$as_me: failed program was:" >&5
3216 sed 's/^/| /' conftest.$ac_ext >&5
3217
3218
3219 fi
3220
3221 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3222 fi
3223
3224 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3225 fi
3226
3227 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3228 ac_c_werror_flag=$ac_save_c_werror_flag
3229 fi
3230 { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
3231 $as_echo "$ac_cv_prog_cc_g" >&6; }
3232 if test "$ac_test_CFLAGS" = set; then
3233 CFLAGS=$ac_save_CFLAGS
3234 elif test $ac_cv_prog_cc_g = yes; then
3235 if test "$GCC" = yes; then
3236 CFLAGS="-g -O2"
3237 else
3238 CFLAGS="-g"
3239 fi
3240 else
3241 if test "$GCC" = yes; then
3242 CFLAGS="-O2"
3243 else
3244 CFLAGS=
3245 fi
3246 fi
3247 { $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
3248 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
3249 if test "${ac_cv_prog_cc_c89+set}" = set; then
3250 $as_echo_n "(cached) " >&6
3251 else
3252 ac_cv_prog_cc_c89=no
3253 ac_save_CC=$CC
3254 cat >conftest.$ac_ext <<_ACEOF
3255 /* confdefs.h. */
3256 _ACEOF
3257 cat confdefs.h >>conftest.$ac_ext
3258 cat >>conftest.$ac_ext <<_ACEOF
3259 /* end confdefs.h. */
3260 #include <stdarg.h>
3261 #include <stdio.h>
3262 #include <sys/types.h>
3263 #include <sys/stat.h>
3264 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
3265 struct buf { int x; };
3266 FILE * (*rcsopen) (struct buf *, struct stat *, int);
3267 static char *e (p, i)
3268 char **p;
3269 int i;
3270 {
3271 return p[i];
3272 }
3273 static char *f (char * (*g) (char **, int), char **p, ...)
3274 {
3275 char *s;
3276 va_list v;
3277 va_start (v,p);
3278 s = g (p, va_arg (v,int));
3279 va_end (v);
3280 return s;
3281 }
3282
3283 /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
3284 function prototypes and stuff, but not '\xHH' hex character constants.
3285 These don't provoke an error unfortunately, instead are silently treated
3286 as 'x'. The following induces an error, until -std is added to get
3287 proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
3288 array size at least. It's necessary to write '\x00'==0 to get something
3289 that's true only with -std. */
3290 int osf4_cc_array ['\x00' == 0 ? 1 : -1];
3291
3292 /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
3293 inside strings and character constants. */
3294 #define FOO(x) 'x'
3295 int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
3296
3297 int test (int i, double x);
3298 struct s1 {int (*f) (int a);};
3299 struct s2 {int (*f) (double a);};
3300 int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
3301 int argc;
3302 char **argv;
3303 int
3304 main ()
3305 {
3306 return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
3307 ;
3308 return 0;
3309 }
3310 _ACEOF
3311 for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
3312 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
3313 do
3314 CC="$ac_save_CC $ac_arg"
3315 rm -f conftest.$ac_objext
3316 if { (ac_try="$ac_compile"
3317 case "(($ac_try" in
3318 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3319 *) ac_try_echo=$ac_try;;
3320 esac
3321 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
3322 $as_echo "$ac_try_echo") >&5
3323 (eval "$ac_compile") 2>conftest.er1
3324 ac_status=$?
3325 grep -v '^ *+' conftest.er1 >conftest.err
3326 rm -f conftest.er1
3327 cat conftest.err >&5
3328 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
3329 (exit $ac_status); } && {
3330 test -z "$ac_c_werror_flag" ||
3331 test ! -s conftest.err
3332 } && test -s conftest.$ac_objext; then
3333 ac_cv_prog_cc_c89=$ac_arg
3334 else
3335 $as_echo "$as_me: failed program was:" >&5
3336 sed 's/^/| /' conftest.$ac_ext >&5
3337
3338
3339 fi
3340
3341 rm -f core conftest.err conftest.$ac_objext
3342 test "x$ac_cv_prog_cc_c89" != "xno" && break
3343 done
3344 rm -f conftest.$ac_ext
3345 CC=$ac_save_CC
3346
3347 fi
3348 # AC_CACHE_VAL
3349 case "x$ac_cv_prog_cc_c89" in
3350 x)
3351 { $as_echo "$as_me:$LINENO: result: none needed" >&5
3352 $as_echo "none needed" >&6; } ;;
3353 xno)
3354 { $as_echo "$as_me:$LINENO: result: unsupported" >&5
3355 $as_echo "unsupported" >&6; } ;;
3356 *)
3357 CC="$CC $ac_cv_prog_cc_c89"
3358 { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
3359 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
3360 esac
3361
3362
3363 ac_ext=c
3364 ac_cpp='$CPP $CPPFLAGS'
3365 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3366 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3367 ac_compiler_gnu=$ac_cv_c_compiler_gnu
3368 DEPDIR="${am__leading_dot}deps"
3369
3370 ac_config_commands="$ac_config_commands depfiles"
3371
3372
3373 am_make=${MAKE-make}
3374 cat > confinc << 'END'
3375 am__doit:
3376 @echo this is the am__doit target
3377 .PHONY: am__doit
3378 END
3379 # If we don't find an include directive, just comment out the code.
3380 { $as_echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
3381 $as_echo_n "checking for style of include used by $am_make... " >&6; }
3382 am__include="#"
3383 am__quote=
3384 _am_result=none
3385 # First try GNU make style include.
3386 echo "include confinc" > confmf
3387 # Ignore all kinds of additional output from `make'.
3388 case `$am_make -s -f confmf 2> /dev/null` in #(
3389 *the\ am__doit\ target*)
3390 am__include=include
3391 am__quote=
3392 _am_result=GNU
3393 ;;
3394 esac
3395 # Now try BSD make style include.
3396 if test "$am__include" = "#"; then
3397 echo '.include "confinc"' > confmf
3398 case `$am_make -s -f confmf 2> /dev/null` in #(
3399 *the\ am__doit\ target*)
3400 am__include=.include
3401 am__quote="\""
3402 _am_result=BSD
3403 ;;
3404 esac
3405 fi
3406
3407
3408 { $as_echo "$as_me:$LINENO: result: $_am_result" >&5
3409 $as_echo "$_am_result" >&6; }
3410 rm -f confinc confmf
3411
3412 # Check whether --enable-dependency-tracking was given.
3413 if test "${enable_dependency_tracking+set}" = set; then
3414 enableval=$enable_dependency_tracking;
3415 fi
3416
3417 if test "x$enable_dependency_tracking" != xno; then
3418 am_depcomp="$ac_aux_dir/depcomp"
3419 AMDEPBACKSLASH='\'
3420 fi
3421 if test "x$enable_dependency_tracking" != xno; then
3422 AMDEP_TRUE=
3423 AMDEP_FALSE='#'
3424 else
3425 AMDEP_TRUE='#'
3426 AMDEP_FALSE=
3427 fi
3428
3429
3430
3431 depcc="$CC" am_compiler_list=
3432
3433 { $as_echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
3434 $as_echo_n "checking dependency style of $depcc... " >&6; }
3435 if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
3436 $as_echo_n "(cached) " >&6
3437 else
3438 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
3439 # We make a subdir and do the tests there. Otherwise we can end up
3440 # making bogus files that we don't know about and never remove. For
3441 # instance it was reported that on HP-UX the gcc test will end up
3442 # making a dummy file named `D' -- because `-MD' means `put the output
3443 # in D'.
3444 mkdir conftest.dir
3445 # Copy depcomp to subdir because otherwise we won't find it if we're
3446 # using a relative directory.
3447 cp "$am_depcomp" conftest.dir
3448 cd conftest.dir
3449 # We will build objects and dependencies in a subdirectory because
3450 # it helps to detect inapplicable dependency modes. For instance
3451 # both Tru64's cc and ICC support -MD to output dependencies as a
3452 # side effect of compilation, but ICC will put the dependencies in
3453 # the current directory while Tru64 will put them in the object
3454 # directory.
3455 mkdir sub
3456
3457 am_cv_CC_dependencies_compiler_type=none
3458 if test "$am_compiler_list" = ""; then
3459 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
3460 fi
3461 am__universal=false
3462 case " $depcc " in #(
3463 *\ -arch\ *\ -arch\ *) am__universal=true ;;
3464 esac
3465
3466 for depmode in $am_compiler_list; do
3467 # Setup a source with many dependencies, because some compilers
3468 # like to wrap large dependency lists on column 80 (with \), and
3469 # we should not choose a depcomp mode which is confused by this.
3470 #
3471 # We need to recreate these files for each test, as the compiler may
3472 # overwrite some of them when testing with obscure command lines.
3473 # This happens at least with the AIX C compiler.
3474 : > sub/conftest.c
3475 for i in 1 2 3 4 5 6; do
3476 echo '#include "conftst'$i'.h"' >> sub/conftest.c
3477 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
3478 # Solaris 8's {/usr,}/bin/sh.
3479 touch sub/conftst$i.h
3480 done
3481 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
3482
3483 # We check with `-c' and `-o' for the sake of the "dashmstdout"
3484 # mode. It turns out that the SunPro C++ compiler does not properly
3485 # handle `-M -o', and we need to detect this. Also, some Intel
3486 # versions had trouble with output in subdirs
3487 am__obj=sub/conftest.${OBJEXT-o}
3488 am__minus_obj="-o $am__obj"
3489 case $depmode in
3490 gcc)
3491 # This depmode causes a compiler race in universal mode.
3492 test "$am__universal" = false || continue
3493 ;;
3494 nosideeffect)
3495 # after this tag, mechanisms are not by side-effect, so they'll
3496 # only be used when explicitly requested
3497 if test "x$enable_dependency_tracking" = xyes; then
3498 continue
3499 else
3500 break
3501 fi
3502 ;;
3503 msvisualcpp | msvcmsys)
3504 # This compiler won't grok `-c -o', but also, the minuso test has
3505 # not run yet. These depmodes are late enough in the game, and
3506 # so weak that their functioning should not be impacted.
3507 am__obj=conftest.${OBJEXT-o}
3508 am__minus_obj=
3509 ;;
3510 none) break ;;
3511 esac
3512 if depmode=$depmode \
3513 source=sub/conftest.c object=$am__obj \
3514 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
3515 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
3516 >/dev/null 2>conftest.err &&
3517 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
3518 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
3519 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
3520 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
3521 # icc doesn't choke on unknown options, it will just issue warnings
3522 # or remarks (even with -Werror). So we grep stderr for any message
3523 # that says an option was ignored or not supported.
3524 # When given -MP, icc 7.0 and 7.1 complain thusly:
3525 # icc: Command line warning: ignoring option '-M'; no argument required
3526 # The diagnosis changed in icc 8.0:
3527 # icc: Command line remark: option '-MP' not supported
3528 if (grep 'ignoring option' conftest.err ||
3529 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
3530 am_cv_CC_dependencies_compiler_type=$depmode
3531 break
3532 fi
3533 fi
3534 done
3535
3536 cd ..
3537 rm -rf conftest.dir
3538 else
3539 am_cv_CC_dependencies_compiler_type=none
3540 fi
3541
3542 fi
3543 { $as_echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
3544 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
3545 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
3546
3547 if
3548 test "x$enable_dependency_tracking" != xno \
3549 && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
3550 am__fastdepCC_TRUE=
3551 am__fastdepCC_FALSE='#'
3552 else
3553 am__fastdepCC_TRUE='#'
3554 am__fastdepCC_FALSE=
3555 fi
3556
3557
3558 # Find a good install program. We prefer a C program (faster),
3559 # so one script is as good as another. But avoid the broken or
3560 # incompatible versions:
3561 # SysV /etc/install, /usr/sbin/install
3562 # SunOS /usr/etc/install
3563 # IRIX /sbin/install
3564 # AIX /bin/install
3565 # AmigaOS /C/install, which installs bootblocks on floppy discs
3566 # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
3567 # AFS /usr/afsws/bin/install, which mishandles nonexistent args
3568 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
3569 # OS/2's system install, which has a completely different semantic
3570 # ./install, which can be erroneously created by make from ./install.sh.
3571 # Reject install programs that cannot install multiple files.
3572 { $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
3573 $as_echo_n "checking for a BSD-compatible install... " >&6; }
3574 if test -z "$INSTALL"; then
3575 if test "${ac_cv_path_install+set}" = set; then
3576 $as_echo_n "(cached) " >&6
3577 else
3578 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3579 for as_dir in $PATH
3580 do
3581 IFS=$as_save_IFS
3582 test -z "$as_dir" && as_dir=.
3583 # Account for people who put trailing slashes in PATH elements.
3584 case $as_dir/ in
3585 ./ | .// | /cC/* | \
3586 /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
3587 ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
3588 /usr/ucb/* ) ;;
3589 *)
3590 # OSF1 and SCO ODT 3.0 have their own names for install.
3591 # Don't use installbsd from OSF since it installs stuff as root
3592 # by default.
3593 for ac_prog in ginstall scoinst install; do
3594 for ac_exec_ext in '' $ac_executable_extensions; do
3595 if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
3596 if test $ac_prog = install &&
3597 grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
3598 # AIX install. It has an incompatible calling convention.
3599 :
3600 elif test $ac_prog = install &&
3601 grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
3602 # program-specific install script used by HP pwplus--don't use.
3603 :
3604 else
3605 rm -rf conftest.one conftest.two conftest.dir
3606 echo one > conftest.one
3607 echo two > conftest.two
3608 mkdir conftest.dir
3609 if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
3610 test -s conftest.one && test -s conftest.two &&
3611 test -s conftest.dir/conftest.one &&
3612 test -s conftest.dir/conftest.two
3613 then
3614 ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
3615 break 3
3616 fi
3617 fi
3618 fi
3619 done
3620 done
3621 ;;
3622 esac
3623
3624 done
3625 IFS=$as_save_IFS
3626
3627 rm -rf conftest.one conftest.two conftest.dir
3628
3629 fi
3630 if test "${ac_cv_path_install+set}" = set; then
3631 INSTALL=$ac_cv_path_install
3632 else
3633 # As a last resort, use the slow shell script. Don't cache a
3634 # value for INSTALL within a source directory, because that will
3635 # break other packages using the cache if that directory is
3636 # removed, or if the value is a relative name.
3637 INSTALL=$ac_install_sh
3638 fi
3639 fi
3640 { $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
3641 $as_echo "$INSTALL" >&6; }
3642
3643 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
3644 # It thinks the first close brace ends the variable substitution.
3645 test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
3646
3647 test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
3648
3649 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
3650
3651
3652 { $as_echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5
3653 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
3654 # Check whether --enable-maintainer-mode was given.
3655 if test "${enable_maintainer_mode+set}" = set; then
3656 enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
3657 else
3658 USE_MAINTAINER_MODE=no
3659 fi
3660
3661 { $as_echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5
3662 $as_echo "$USE_MAINTAINER_MODE" >&6; }
3663 if test $USE_MAINTAINER_MODE = yes; then
3664 MAINTAINER_MODE_TRUE=
3665 MAINTAINER_MODE_FALSE='#'
3666 else
3667 MAINTAINER_MODE_TRUE='#'
3668 MAINTAINER_MODE_FALSE=
3669 fi
3670
3671 MAINT=$MAINTAINER_MODE_TRUE
3672
3673
3674
3675 # Default prefix is decided with pkg-config
3676
3677
3678 #################
3679 # Check for Win32
3680 #################
3681
3682 { $as_echo "$as_me:$LINENO: checking for some Win32 platform" >&5
3683 $as_echo_n "checking for some Win32 platform... " >&6; }
3684 case "$target_or_host" in
3685 *-*-mingw* | *-*-cygwin*)
3686 platform_win32=yes
3687 PATHSEP=';'
3688 ;;
3689 *)
3690 platform_win32=no
3691 PATHSEP=':'
3692 ;;
3693 esac
3694 { $as_echo "$as_me:$LINENO: result: $platform_win32" >&5
3695 $as_echo "$platform_win32" >&6; }
3696
3697 if test "$platform_win32" = "yes"; then
3698 PLATFORM_WIN32_TRUE=
3699 PLATFORM_WIN32_FALSE='#'
3700 else
3701 PLATFORM_WIN32_TRUE='#'
3702 PLATFORM_WIN32_FALSE=
3703 fi
3704
3705 if test "$platform_win32" != "yes"; then
3706 PLATFORM_UNIX_TRUE=
3707 PLATFORM_UNIX_FALSE='#'
3708 else
3709 PLATFORM_UNIX_TRUE='#'
3710 PLATFORM_UNIX_FALSE=
3711 fi
3712
3713
3714
3715 # Checks for libraries.
3716
3717 # Checks for header files.
3718 #AC_HEADER_STDC
3719 #AC_CHECK_HEADERS([string.h])
3720
3721 # Checks for typedefs, structures, and compiler characteristics.
3722
3723 { $as_echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
3724 $as_echo_n "checking for an ANSI C-conforming const... " >&6; }
3725 if test "${ac_cv_c_const+set}" = set; then
3726 $as_echo_n "(cached) " >&6
3727 else
3728 cat >conftest.$ac_ext <<_ACEOF
3729 /* confdefs.h. */
3730 _ACEOF
3731 cat confdefs.h >>conftest.$ac_ext
3732 cat >>conftest.$ac_ext <<_ACEOF
3733 /* end confdefs.h. */
3734
3735 int
3736 main ()
3737 {
3738 /* FIXME: Include the comments suggested by Paul. */
3739 #ifndef __cplusplus
3740 /* Ultrix mips cc rejects this. */
3741 typedef int charset[2];
3742 const charset cs;
3743 /* SunOS 4.1.1 cc rejects this. */
3744 char const *const *pcpcc;
3745 char **ppc;
3746 /* NEC SVR4.0.2 mips cc rejects this. */
3747 struct point {int x, y;};
3748 static struct point const zero = {0,0};
3749 /* AIX XL C 1.02.0.0 rejects this.
3750 It does not let you subtract one const X* pointer from another in
3751 an arm of an if-expression whose if-part is not a constant
3752 expression */
3753 const char *g = "string";
3754 pcpcc = &g + (g ? g-g : 0);
3755 /* HPUX 7.0 cc rejects these. */
3756 ++pcpcc;
3757 ppc = (char**) pcpcc;
3758 pcpcc = (char const *const *) ppc;
3759 { /* SCO 3.2v4 cc rejects this. */
3760 char *t;
3761 char const *s = 0 ? (char *) 0 : (char const *) 0;
3762
3763 *t++ = 0;
3764 if (s) return 0;
3765 }
3766 { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */
3767 int x[] = {25, 17};
3768 const int *foo = &x[0];
3769 ++foo;
3770 }
3771 { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
3772 typedef const int *iptr;
3773 iptr p = 0;
3774 ++p;
3775 }
3776 { /* AIX XL C 1.02.0.0 rejects this saying
3777 "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
3778 struct s { int j; const int *ap[3]; };
3779 struct s *b; b->j = 5;
3780 }
3781 { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
3782 const int foo = 10;
3783 if (!foo) return 0;
3784 }
3785 return !cs[0] && !zero.x;
3786 #endif
3787
3788 ;
3789 return 0;
3790 }
3791 _ACEOF
3792 rm -f conftest.$ac_objext
3793 if { (ac_try="$ac_compile"
3794 case "(($ac_try" in
3795 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3796 *) ac_try_echo=$ac_try;;
3797 esac
3798 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
3799 $as_echo "$ac_try_echo") >&5
3800 (eval "$ac_compile") 2>conftest.er1
3801 ac_status=$?
3802 grep -v '^ *+' conftest.er1 >conftest.err
3803 rm -f conftest.er1
3804 cat conftest.err >&5
3805 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
3806 (exit $ac_status); } && {
3807 test -z "$ac_c_werror_flag" ||
3808 test ! -s conftest.err
3809 } && test -s conftest.$ac_objext; then
3810 ac_cv_c_const=yes
3811 else
3812 $as_echo "$as_me: failed program was:" >&5
3813 sed 's/^/| /' conftest.$ac_ext >&5
3814
3815 ac_cv_c_const=no
3816 fi
3817
3818 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3819 fi
3820 { $as_echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
3821 $as_echo "$ac_cv_c_const" >&6; }
3822 if test $ac_cv_c_const = no; then
3823
3824 cat >>confdefs.h <<\_ACEOF
3825 #define const /**/
3826 _ACEOF
3827
3828 fi
3829
3830
3831 # Checks for library functions.
3832
3833 # Extract the first word of "gdk-pixbuf-csource", so it can be a program name with args.
3834 set dummy gdk-pixbuf-csource; ac_word=$2
3835 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
3836 $as_echo_n "checking for $ac_word... " >&6; }
3837 if test "${ac_cv_path_GDK_PIXBUF_CSOURCE+set}" = set; then
3838 $as_echo_n "(cached) " >&6
3839 else
3840 case $GDK_PIXBUF_CSOURCE in
3841 [\\/]* | ?:[\\/]*)
3842 ac_cv_path_GDK_PIXBUF_CSOURCE="$GDK_PIXBUF_CSOURCE" # Let the user override the test with a path.
3843 ;;
3844 *)
3845 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3846 for as_dir in $PATH
3847 do
3848 IFS=$as_save_IFS
3849 test -z "$as_dir" && as_dir=.
3850 for ac_exec_ext in '' $ac_executable_extensions; do
3851 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
3852 ac_cv_path_GDK_PIXBUF_CSOURCE="$as_dir/$ac_word$ac_exec_ext"
3853 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
3854 break 2
3855 fi
3856 done
3857 done
3858 IFS=$as_save_IFS
3859
3860 test -z "$ac_cv_path_GDK_PIXBUF_CSOURCE" && ac_cv_path_GDK_PIXBUF_CSOURCE="no"
3861 ;;
3862 esac
3863 fi
3864 GDK_PIXBUF_CSOURCE=$ac_cv_path_GDK_PIXBUF_CSOURCE
3865 if test -n "$GDK_PIXBUF_CSOURCE"; then
3866 { $as_echo "$as_me:$LINENO: result: $GDK_PIXBUF_CSOURCE" >&5
3867 $as_echo "$GDK_PIXBUF_CSOURCE" >&6; }
3868 else
3869 { $as_echo "$as_me:$LINENO: result: no" >&5
3870 $as_echo "no" >&6; }
3871 fi
3872
3873
3874 if test "x$GDK_PIXBUF_CSOURCE" = xno; then
3875 { { $as_echo "$as_me:$LINENO: error: Could not find gdk-pixbuf-csource in your PATH" >&5
3876 $as_echo "$as_me: error: Could not find gdk-pixbuf-csource in your PATH" >&2;}
3877 { (exit 1); exit 1; }; }
3878 fi
3879
3880 ###############################
3881 # Checks for the gimp libraries
3882 ###############################
3883
3884
3885 # Check whether --with-gimp-prefix was given.
3886 if test "${with_gimp_prefix+set}" = set; then
3887 withval=$with_gimp_prefix;
3888 case "$withval" in
3889 yes) { { $as_echo "$as_me:$LINENO: error: give any value for --with-gimp-prefix." >&5
3890 $as_echo "$as_me: error: give any value for --with-gimp-prefix." >&2;}
3891 { (exit 1); exit 1; }; } ;;
3892 no) with_gimp_prefix=NONE ;;
3893 *)
3894 if test "x${withval:0:2}" = "x~/" -a "X$HOME" != "X" ; then
3895 with_gimp_prefix="${HOME}${withval:1}"
3896 else
3897 with_gimp_prefix="$withval"
3898 fi
3899 if ! with_gimp_prefix=$(cd "$with_gimp_prefix" && pwd) ; then
3900 { { $as_echo "$as_me:$LINENO: error: couldn't change directory in ${withval}." >&5
3901 $as_echo "$as_me: error: couldn't change directory in ${withval}." >&2;}
3902 { (exit 1); exit 1; }; }
3903 elif ! test -f "${with_gimp_prefix}/lib/pkgconfig/gimp-2.0.pc" ; then
3904 { { $as_echo "$as_me:$LINENO: error: gimp-2.0.pc is not installed in ${withval}/lib/pkgconfig" >&5
3905 $as_echo "$as_me: error: gimp-2.0.pc is not installed in ${withval}/lib/pkgconfig" >&2;}
3906 { (exit 1); exit 1; }; }
3907 fi ;;
3908 esac
3909
3910 else
3911 with_gimp_prefix=NONE
3912 fi
3913
3914 if test "X$with_gimp_prefix" != "XNONE" ; then
3915 export PKG_CONFIG_PATH="${with_gimp_prefix}/lib/pkgconfig${PKG_CONFIG_PATH+:$PKG_CONFIG_PATH}" LD_LIBRARY_PATH="${with_gimp_prefix}/lib${LD_LIBRARY_PATH+:$LD_LIBRARY_PATH}"
3916 fi
3917
3918
3919 # Check whether --enable-gimptest was given.
3920 if test "${enable_gimptest+set}" = set; then
3921 enableval=$enable_gimptest;
3922 else
3923 enable_gimptest=yes
3924 fi
3925
3926
3927 pkg_name=gimp-2.0
3928 pkg_config_args="$pkg_name gimpui-2.0"
3929
3930 no_gimp=""
3931
3932 # Extract the first word of "pkg-config", so it can be a program name with args.
3933 set dummy pkg-config; ac_word=$2
3934 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
3935 $as_echo_n "checking for $ac_word... " >&6; }
3936 if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
3937 $as_echo_n "(cached) " >&6
3938 else
3939 case $PKG_CONFIG in
3940 [\\/]* | ?:[\\/]*)
3941 ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
3942 ;;
3943 *)
3944 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3945 for as_dir in $PATH
3946 do
3947 IFS=$as_save_IFS
3948 test -z "$as_dir" && as_dir=.
3949 for ac_exec_ext in '' $ac_executable_extensions; do
3950 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
3951 ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
3952 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
3953 break 2
3954 fi
3955 done
3956 done
3957 IFS=$as_save_IFS
3958
3959 test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
3960 ;;
3961 esac
3962 fi
3963 PKG_CONFIG=$ac_cv_path_PKG_CONFIG
3964 if test -n "$PKG_CONFIG"; then
3965 { $as_echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5
3966 $as_echo "$PKG_CONFIG" >&6; }
3967 else
3968 { $as_echo "$as_me:$LINENO: result: no" >&5
3969 $as_echo "no" >&6; }
3970 fi
3971
3972
3973
3974 if test x$PKG_CONFIG != xno ; then
3975 if pkg-config --atleast-pkgconfig-version 0.7 ; then
3976 :
3977 else
3978 echo *** pkg-config too old; version 0.7 or better required.
3979 no_gimp=yes
3980 PKG_CONFIG=no
3981 fi
3982 else
3983 no_gimp=yes
3984 fi
3985
3986 min_gimp_version=2.4.0
3987 { $as_echo "$as_me:$LINENO: checking for GIMP - version >= $min_gimp_version" >&5
3988 $as_echo_n "checking for GIMP - version >= $min_gimp_version... " >&6; }
3989
3990 if test x$PKG_CONFIG != xno ; then
3991 ## don't try to run the test against uninstalled libtool libs
3992 if $PKG_CONFIG --uninstalled $pkg_config_args; then
3993 echo "Will use uninstalled version of GIMP found in PKG_CONFIG_PATH"
3994 enable_gimptest=no
3995 fi
3996
3997 if $PKG_CONFIG --atleast-version $min_gimp_version $pkg_config_args; then
3998 :
3999 else
4000 no_gimp=yes
4001 fi
4002 fi
4003
4004 if test x"$no_gimp" = x ; then
4005 GIMP_CFLAGS=`$PKG_CONFIG $pkg_config_args --cflags`
4006 GIMP_LIBS=`$PKG_CONFIG $pkg_config_args --libs`
4007 GIMP_CFLAGS_NOUI=`$PKG_CONFIG $pkg_name --cflags`
4008 GIMP_LIBS_NOUI=`$PKG_CONFIG $pkg_name --libs`
4009 GIMP_DATA_DIR=`$PKG_CONFIG $pkg_name --variable=gimpdatadir`
4010 GIMP_PLUGIN_DIR=`$PKG_CONFIG $pkg_name --variable=gimplibdir`
4011
4012 gimp_pkg_major_version=`$PKG_CONFIG --modversion $pkg_name | \
4013 sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'`
4014 gimp_pkg_minor_version=`$PKG_CONFIG --modversion $pkg_name | \
4015 sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'`
4016 gimp_pkg_micro_version=`$PKG_CONFIG --modversion $pkg_name | \
4017 sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'`
4018 if test "x$enable_gimptest" = "xyes" ; then
4019 ac_save_CFLAGS="$CFLAGS"
4020 ac_save_LIBS="$LIBS"
4021 CFLAGS="$CFLAGS $GIMP_CFLAGS"
4022 LIBS="$GIMP_LIBS $LIBS"
4023
4024 rm -f conf.gimptest
4025 if test "$cross_compiling" = yes; then
4026 echo $ac_n "cross compiling; assumed OK... $ac_c"
4027 else
4028 cat >conftest.$ac_ext <<_ACEOF
4029 /* confdefs.h. */
4030 _ACEOF
4031 cat confdefs.h >>conftest.$ac_ext
4032 cat >>conftest.$ac_ext <<_ACEOF
4033 /* end confdefs.h. */
4034
4035 #include <stdio.h>
4036 #include <stdlib.h>
4037
4038 #include <libgimp/gimp.h>
4039
4040 GimpPlugInInfo PLUG_IN_INFO =
4041 {
4042 NULL, /* init_proc */
4043 NULL, /* quit_proc */
4044 NULL, /* query_proc */
4045 NULL /* run_proc */
4046 };
4047
4048 int main ()
4049 {
4050 int major, minor, micro;
4051 char *tmp_version;
4052
4053 system ("touch conf.gimptest");
4054
4055 /* HP/UX 9 (%@#!) writes to sscanf strings */
4056 tmp_version = g_strdup("$min_gimp_version");
4057 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
4058 printf("%s, bad version string\n", "$min_gimp_version");
4059 exit(1);
4060 }
4061
4062 if (($gimp_pkg_major_version > major) ||
4063 (($gimp_pkg_major_version == major) && ($gimp_pkg_minor_version > minor)) ||
4064 (($gimp_pkg_major_version == major) && ($gimp_pkg_minor_version == minor) && ($gimp_pkg_micro_version >= micro)))
4065 {
4066 return 0;
4067 }
4068 else
4069 {
4070 printf("\n*** 'pkg-config --modversion %s' returned %d.%d.%d, but the minimum version\n", "$pkg_name", $gimp_pkg_major_version, $gimp_pkg_minor_version, $gimp_pkg_micro_version);
4071 printf("*** of GIMP required is %d.%d.%d. If pkg-config is correct, then it is\n", major, minor, micro);
4072 printf("*** best to upgrade to the required version.\n");
4073 printf("*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH\n");
4074 printf("*** to point to the correct the correct configuration files\n");
4075 return 1;
4076 }
4077 }
4078
4079
4080 _ACEOF
4081 rm -f conftest$ac_exeext
4082 if { (ac_try="$ac_link"
4083 case "(($ac_try" in
4084 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4085 *) ac_try_echo=$ac_try;;
4086 esac
4087 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
4088 $as_echo "$ac_try_echo") >&5
4089 (eval "$ac_link") 2>&5
4090 ac_status=$?
4091 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4092 (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
4093 { (case "(($ac_try" in
4094 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4095 *) ac_try_echo=$ac_try;;
4096 esac
4097 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
4098 $as_echo "$ac_try_echo") >&5
4099 (eval "$ac_try") 2>&5
4100 ac_status=$?
4101 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4102 (exit $ac_status); }; }; then
4103 :
4104 else
4105 $as_echo "$as_me: program exited with status $ac_status" >&5
4106 $as_echo "$as_me: failed program was:" >&5
4107 sed 's/^/| /' conftest.$ac_ext >&5
4108
4109 ( exit $ac_status )
4110 no_gimp=yes
4111 fi
4112 rm -rf conftest.dSYM
4113 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
4114 fi
4115
4116
4117 CFLAGS="$ac_save_CFLAGS"
4118 LIBS="$ac_save_LIBS"
4119 fi
4120 fi
4121 if test "x$no_gimp" = x ; then
4122 { $as_echo "$as_me:$LINENO: result: yes (version $gimp_pkg_major_version.$gimp_pkg_minor_version.$gimp_pkg_micro_version)" >&5
4123 $as_echo "yes (version $gimp_pkg_major_version.$gimp_pkg_minor_version.$gimp_pkg_micro_version)" >&6; }
4124 :
4125 else
4126 if test "$PKG_CONFIG" = "no" ; then
4127 echo "*** A new enough version of pkg-config was not found."
4128 echo "*** See http://www.freedesktop.org/software/pkgconfig/"
4129 else
4130 if test -f conf.gimptest ; then
4131 :
4132 else
4133 echo "*** Could not run GIMP test program, checking why..."
4134 CFLAGS="$CFLAGS $GIMP_CFLAGS"
4135 LIBS="$LIBS $GIMP_LIBS"
4136 cat >conftest.$ac_ext <<_ACEOF
4137 /* confdefs.h. */
4138 _ACEOF
4139 cat confdefs.h >>conftest.$ac_ext
4140 cat >>conftest.$ac_ext <<_ACEOF
4141 /* end confdefs.h. */
4142
4143 #include <stdio.h>
4144 #include <libgimp/gimp.h>
4145
4146 GimpPlugInInfo PLUG_IN_INFO =
4147 {
4148 NULL, /* init_proc */
4149 NULL, /* quit_proc */
4150 NULL, /* query_proc */
4151 NULL /* run_proc */
4152 };
4153
4154 int
4155 main ()
4156 {
4157 return 0;
4158 ;
4159 return 0;
4160 }
4161 _ACEOF
4162 rm -f conftest.$ac_objext conftest$ac_exeext
4163 if { (ac_try="$ac_link"
4164 case "(($ac_try" in
4165 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4166 *) ac_try_echo=$ac_try;;
4167 esac
4168 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
4169 $as_echo "$ac_try_echo") >&5
4170 (eval "$ac_link") 2>conftest.er1
4171 ac_status=$?
4172 grep -v '^ *+' conftest.er1 >conftest.err
4173 rm -f conftest.er1
4174 cat conftest.err >&5
4175 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4176 (exit $ac_status); } && {
4177 test -z "$ac_c_werror_flag" ||
4178 test ! -s conftest.err
4179 } && test -s conftest$ac_exeext && {
4180 test "$cross_compiling" = yes ||
4181 $as_test_x conftest$ac_exeext
4182 }; then
4183 echo "*** The test program compiled, but did not run. This usually means"
4184 echo "*** that the run-time linker is not finding GIMP or finding the wrong"
4185 echo "*** version of GIMP. If it is not finding GIMP, you'll need to set your"
4186 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
4187 echo "*** to the installed location Also, make sure you have run ldconfig if that"
4188 echo "*** is required on your system"
4189 echo "***"
4190 echo "*** If you have an old version installed, it is best to remove it, although"
4191 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"
4192 else
4193 $as_echo "$as_me: failed program was:" >&5
4194 sed 's/^/| /' conftest.$ac_ext >&5
4195
4196 echo "*** The test program failed to compile or link. See the file config.log for the"
4197 echo "*** exact error that occurred. This usually means GIMP is incorrectly installed."
4198 fi
4199
4200 rm -rf conftest.dSYM
4201 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
4202 conftest$ac_exeext conftest.$ac_ext
4203 CFLAGS="$ac_save_CFLAGS"
4204 LIBS="$ac_save_LIBS"
4205 fi
4206 fi
4207 GIMP_CFLAGS=""
4208 GIMP_LIBS=""
4209 GIMP_CFLAGS_NOUI=""
4210 GIMP_LIBS_NOUI=""
4211 { { $as_echo "$as_me:$LINENO: error: Test for libgimp failed." >&5
4212 $as_echo "$as_me: error: Test for libgimp failed." >&2;}
4213 { (exit 1); exit 1; }; }
4214 fi
4215
4216
4217
4218
4219
4220
4221 rm -f conf.gimptest
4222
4223 if test "x$with_gimp_prefix" != "XNONE" ; then
4224 gimp_libdir="$(echo -n "$GIMP_LIBS" | \
4225 sed -e "s;^.*-L\(${with_gimp_prefix}[^ ]*\).*$;\1;")"
4226 if test -d "$gimp_libdir" ; then
4227 GIMP_LIBS="-Wl,-rpath,$gimp_libdir $GIMP_LIBS"
4228 fi
4229 fi
4230
4231 ### override variables (prefix options)
4232 pkg_config_args="$pkg_name"
4233 if test "X$prefix" != "XNONE" ; then
4234 pkg_config_args="$pkg_config_args --define-variable=prefix=$prefix"
4235 elif test "X$with_gimp_prefix" != "XNONE"; then
4236 pkg_config_args="$pkg_config_args --define-variable=prefix=$with_gimp_prefix"
4237 ac_default_prefix="$with_gimp_prefix"
4238 else
4239 ac_default_prefix="$($PKG_CONFIG $pkg_config_args --variable=prefix)"
4240 fi
4241 if test "X$exec_prefix" != "XNONE"; then
4242 pkg_config_args="$pkg_config_args --define-variable=exec_prefix=$exec_prefix"
4243 fi
4244 GIMP_PLUGIN_DIR="$($PKG_CONFIG $pkg_config_args --variable=gimplibdir)"
4245
4246 ### user plug-in directory
4247 GIMP_USER_PLUGIN_DIR="${HOME}/.gimp-${gimp_pkg_major_version}.${gimp_pkg_minor_version}/plug-ins"
4248
4249
4250
4251 #############################
4252 # Threads and multi processor
4253 #############################
4254
4255 # Check whether --enable-mp was given.
4256 if test "${enable_mp+set}" = set; then
4257 enableval=$enable_mp;
4258 fi
4259
4260 if test "x$enable_mp" != "xno"; then
4261
4262
4263 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
4264 if test -n "$ac_tool_prefix"; then
4265 # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
4266 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
4267 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
4268 $as_echo_n "checking for $ac_word... " >&6; }
4269 if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
4270 $as_echo_n "(cached) " >&6
4271 else
4272 case $PKG_CONFIG in
4273 [\\/]* | ?:[\\/]*)
4274 ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
4275 ;;
4276 *)
4277 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4278 for as_dir in $PATH
4279 do
4280 IFS=$as_save_IFS
4281 test -z "$as_dir" && as_dir=.
4282 for ac_exec_ext in '' $ac_executable_extensions; do
4283 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
4284 ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
4285 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
4286 break 2
4287 fi
4288 done
4289 done
4290 IFS=$as_save_IFS
4291
4292 ;;
4293 esac
4294 fi
4295 PKG_CONFIG=$ac_cv_path_PKG_CONFIG
4296 if test -n "$PKG_CONFIG"; then
4297 { $as_echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5
4298 $as_echo "$PKG_CONFIG" >&6; }
4299 else
4300 { $as_echo "$as_me:$LINENO: result: no" >&5
4301 $as_echo "no" >&6; }
4302 fi
4303
4304
4305 fi
4306 if test -z "$ac_cv_path_PKG_CONFIG"; then
4307 ac_pt_PKG_CONFIG=$PKG_CONFIG
4308 # Extract the first word of "pkg-config", so it can be a program name with args.
4309 set dummy pkg-config; ac_word=$2
4310 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
4311 $as_echo_n "checking for $ac_word... " >&6; }
4312 if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then
4313 $as_echo_n "(cached) " >&6
4314 else
4315 case $ac_pt_PKG_CONFIG in
4316 [\\/]* | ?:[\\/]*)
4317 ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
4318 ;;
4319 *)
4320 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4321 for as_dir in $PATH
4322 do
4323 IFS=$as_save_IFS
4324 test -z "$as_dir" && as_dir=.
4325 for ac_exec_ext in '' $ac_executable_extensions; do
4326 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
4327 ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
4328 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
4329 break 2
4330 fi
4331 done
4332 done
4333 IFS=$as_save_IFS
4334
4335 ;;
4336 esac
4337 fi
4338 ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
4339 if test -n "$ac_pt_PKG_CONFIG"; then
4340 { $as_echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5
4341 $as_echo "$ac_pt_PKG_CONFIG" >&6; }
4342 else
4343 { $as_echo "$as_me:$LINENO: result: no" >&5
4344 $as_echo "no" >&6; }
4345 fi
4346
4347 if test "x$ac_pt_PKG_CONFIG" = x; then
4348 PKG_CONFIG=""
4349 else
4350 case $cross_compiling:$ac_tool_warned in
4351 yes:)
4352 { $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
4353 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
4354 ac_tool_warned=yes ;;
4355 esac
4356 PKG_CONFIG=$ac_pt_PKG_CONFIG
4357 fi
4358 else
4359 PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
4360 fi
4361
4362 fi
4363 if test -n "$PKG_CONFIG"; then
4364 _pkg_min_version=0.9.0
4365 { $as_echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5
4366 $as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
4367 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
4368 { $as_echo "$as_me:$LINENO: result: yes" >&5
4369 $as_echo "yes" >&6; }
4370 else
4371 { $as_echo "$as_me:$LINENO: result: no" >&5
4372 $as_echo "no" >&6; }
4373 PKG_CONFIG=""
4374 fi
4375
4376 fi
4377
4378 pkg_failed=no
4379 { $as_echo "$as_me:$LINENO: checking for GTHREAD" >&5
4380 $as_echo_n "checking for GTHREAD... " >&6; }
4381
4382 if test -n "$GTHREAD_CFLAGS"; then
4383 pkg_cv_GTHREAD_CFLAGS="$GTHREAD_CFLAGS"
4384 elif test -n "$PKG_CONFIG"; then
4385 if test -n "$PKG_CONFIG" && \
4386 { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gthread-2.0\"") >&5
4387 ($PKG_CONFIG --exists --print-errors "gthread-2.0") 2>&5
4388 ac_status=$?
4389 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4390 (exit $ac_status); }; then
4391 pkg_cv_GTHREAD_CFLAGS=`$PKG_CONFIG --cflags "gthread-2.0" 2>/dev/null`
4392 else
4393 pkg_failed=yes
4394 fi
4395 else
4396 pkg_failed=untried
4397 fi
4398 if test -n "$GTHREAD_LIBS"; then
4399 pkg_cv_GTHREAD_LIBS="$GTHREAD_LIBS"
4400 elif test -n "$PKG_CONFIG"; then
4401 if test -n "$PKG_CONFIG" && \
4402 { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gthread-2.0\"") >&5
4403 ($PKG_CONFIG --exists --print-errors "gthread-2.0") 2>&5
4404 ac_status=$?
4405 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4406 (exit $ac_status); }; then
4407 pkg_cv_GTHREAD_LIBS=`$PKG_CONFIG --libs "gthread-2.0" 2>/dev/null`
4408 else
4409 pkg_failed=yes
4410 fi
4411 else
4412 pkg_failed=untried
4413 fi
4414
4415
4416
4417 if test $pkg_failed = yes; then
4418
4419 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
4420 _pkg_short_errors_supported=yes
4421 else
4422 _pkg_short_errors_supported=no
4423 fi
4424 if test $_pkg_short_errors_supported = yes; then
4425 GTHREAD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gthread-2.0" 2>&1`
4426 else
4427 GTHREAD_PKG_ERRORS=`$PKG_CONFIG --print-errors "gthread-2.0" 2>&1`
4428 fi
4429 # Put the nasty error message in config.log where it belongs
4430 echo "$GTHREAD_PKG_ERRORS" >&5
4431
4432 { { $as_echo "$as_me:$LINENO: error: Package requirements (gthread-2.0) were not met:
4433
4434 $GTHREAD_PKG_ERRORS
4435
4436 Consider adjusting the PKG_CONFIG_PATH environment variable if you
4437 installed software in a non-standard prefix.
4438
4439 Alternatively, you may set the environment variables GTHREAD_CFLAGS
4440 and GTHREAD_LIBS to avoid the need to call pkg-config.
4441 See the pkg-config man page for more details.
4442 " >&5
4443 $as_echo "$as_me: error: Package requirements (gthread-2.0) were not met:
4444
4445 $GTHREAD_PKG_ERRORS
4446
4447 Consider adjusting the PKG_CONFIG_PATH environment variable if you
4448 installed software in a non-standard prefix.
4449
4450 Alternatively, you may set the environment variables GTHREAD_CFLAGS
4451 and GTHREAD_LIBS to avoid the need to call pkg-config.
4452 See the pkg-config man page for more details.
4453 " >&2;}
4454 { (exit 1); exit 1; }; }
4455 elif test $pkg_failed = untried; then
4456 { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
4457 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
4458 { { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old. Make sure it
4459 is in your PATH or set the PKG_CONFIG environment variable to the full
4460 path to pkg-config.
4461
4462 Alternatively, you may set the environment variables GTHREAD_CFLAGS
4463 and GTHREAD_LIBS to avoid the need to call pkg-config.
4464 See the pkg-config man page for more details.
4465
4466 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
4467 See \`config.log' for more details." >&5
4468 $as_echo "$as_me: error: The pkg-config script could not be found or is too old. Make sure it
4469 is in your PATH or set the PKG_CONFIG environment variable to the full
4470 path to pkg-config.
4471
4472 Alternatively, you may set the environment variables GTHREAD_CFLAGS
4473 and GTHREAD_LIBS to avoid the need to call pkg-config.
4474 See the pkg-config man page for more details.
4475
4476 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
4477 See \`config.log' for more details." >&2;}
4478 { (exit 1); exit 1; }; }; }
4479 else
4480 GTHREAD_CFLAGS=$pkg_cv_GTHREAD_CFLAGS
4481 GTHREAD_LIBS=$pkg_cv_GTHREAD_LIBS
4482 { $as_echo "$as_me:$LINENO: result: yes" >&5
4483 $as_echo "yes" >&6; }
4484
4485 cat >>confdefs.h <<\_ACEOF
4486 #define ENABLE_MP 1
4487 _ACEOF
4488
4489 fi
4490 fi
4491
4492
4493 ##################
4494 # Checks for FFTW3
4495 ##################
4496
4497 ac_ext=c
4498 ac_cpp='$CPP $CPPFLAGS'
4499 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4500 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4501 ac_compiler_gnu=$ac_cv_c_compiler_gnu
4502 { $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
4503 $as_echo_n "checking how to run the C preprocessor... " >&6; }
4504 # On Suns, sometimes $CPP names a directory.
4505 if test -n "$CPP" && test -d "$CPP"; then
4506 CPP=
4507 fi
4508 if test -z "$CPP"; then
4509 if test "${ac_cv_prog_CPP+set}" = set; then
4510 $as_echo_n "(cached) " >&6
4511 else
4512 # Double quotes because CPP needs to be expanded
4513 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
4514 do
4515 ac_preproc_ok=false
4516 for ac_c_preproc_warn_flag in '' yes
4517 do
4518 # Use a header file that comes with gcc, so configuring glibc
4519 # with a fresh cross-compiler works.
4520 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
4521 # <limits.h> exists even on freestanding compilers.
4522 # On the NeXT, cc -E runs the code through the compiler's parser,
4523 # not just through cpp. "Syntax error" is here to catch this case.
4524 cat >conftest.$ac_ext <<_ACEOF
4525 /* confdefs.h. */
4526 _ACEOF
4527 cat confdefs.h >>conftest.$ac_ext
4528 cat >>conftest.$ac_ext <<_ACEOF
4529 /* end confdefs.h. */
4530 #ifdef __STDC__
4531 # include <limits.h>
4532 #else
4533 # include <assert.h>
4534 #endif
4535 Syntax error
4536 _ACEOF
4537 if { (ac_try="$ac_cpp conftest.$ac_ext"
4538 case "(($ac_try" in
4539 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4540 *) ac_try_echo=$ac_try;;
4541 esac
4542 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
4543 $as_echo "$ac_try_echo") >&5
4544 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
4545 ac_status=$?
4546 grep -v '^ *+' conftest.er1 >conftest.err
4547 rm -f conftest.er1
4548 cat conftest.err >&5
4549 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4550 (exit $ac_status); } >/dev/null && {
4551 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
4552 test ! -s conftest.err
4553 }; then
4554 :
4555 else
4556 $as_echo "$as_me: failed program was:" >&5
4557 sed 's/^/| /' conftest.$ac_ext >&5
4558
4559 # Broken: fails on valid input.
4560 continue
4561 fi
4562
4563 rm -f conftest.err conftest.$ac_ext
4564
4565 # OK, works on sane cases. Now check whether nonexistent headers
4566 # can be detected and how.
4567 cat >conftest.$ac_ext <<_ACEOF
4568 /* confdefs.h. */
4569 _ACEOF
4570 cat confdefs.h >>conftest.$ac_ext
4571 cat >>conftest.$ac_ext <<_ACEOF
4572 /* end confdefs.h. */
4573 #include <ac_nonexistent.h>
4574 _ACEOF
4575 if { (ac_try="$ac_cpp conftest.$ac_ext"
4576 case "(($ac_try" in
4577 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4578 *) ac_try_echo=$ac_try;;
4579 esac
4580 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
4581 $as_echo "$ac_try_echo") >&5
4582 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
4583 ac_status=$?
4584 grep -v '^ *+' conftest.er1 >conftest.err
4585 rm -f conftest.er1
4586 cat conftest.err >&5
4587 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4588 (exit $ac_status); } >/dev/null && {
4589 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
4590 test ! -s conftest.err
4591 }; then
4592 # Broken: success on invalid input.
4593 continue
4594 else
4595 $as_echo "$as_me: failed program was:" >&5
4596 sed 's/^/| /' conftest.$ac_ext >&5
4597
4598 # Passes both tests.
4599 ac_preproc_ok=:
4600 break
4601 fi
4602
4603 rm -f conftest.err conftest.$ac_ext
4604
4605 done
4606 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
4607 rm -f conftest.err conftest.$ac_ext
4608 if $ac_preproc_ok; then
4609 break
4610 fi
4611
4612 done
4613 ac_cv_prog_CPP=$CPP
4614
4615 fi
4616 CPP=$ac_cv_prog_CPP
4617 else
4618 ac_cv_prog_CPP=$CPP
4619 fi
4620 { $as_echo "$as_me:$LINENO: result: $CPP" >&5
4621 $as_echo "$CPP" >&6; }
4622 ac_preproc_ok=false
4623 for ac_c_preproc_warn_flag in '' yes
4624 do
4625 # Use a header file that comes with gcc, so configuring glibc
4626 # with a fresh cross-compiler works.
4627 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
4628 # <limits.h> exists even on freestanding compilers.
4629 # On the NeXT, cc -E runs the code through the compiler's parser,
4630 # not just through cpp. "Syntax error" is here to catch this case.
4631 cat >conftest.$ac_ext <<_ACEOF
4632 /* confdefs.h. */
4633 _ACEOF
4634 cat confdefs.h >>conftest.$ac_ext
4635 cat >>conftest.$ac_ext <<_ACEOF
4636 /* end confdefs.h. */
4637 #ifdef __STDC__
4638 # include <limits.h>
4639 #else
4640 # include <assert.h>
4641 #endif
4642 Syntax error
4643 _ACEOF
4644 if { (ac_try="$ac_cpp conftest.$ac_ext"
4645 case "(($ac_try" in
4646 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4647 *) ac_try_echo=$ac_try;;
4648 esac
4649 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
4650 $as_echo "$ac_try_echo") >&5
4651 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
4652 ac_status=$?
4653 grep -v '^ *+' conftest.er1 >conftest.err
4654 rm -f conftest.er1
4655 cat conftest.err >&5
4656 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4657 (exit $ac_status); } >/dev/null && {
4658 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
4659 test ! -s conftest.err
4660 }; then
4661 :
4662 else
4663 $as_echo "$as_me: failed program was:" >&5
4664 sed 's/^/| /' conftest.$ac_ext >&5
4665
4666 # Broken: fails on valid input.
4667 continue
4668 fi
4669
4670 rm -f conftest.err conftest.$ac_ext
4671
4672 # OK, works on sane cases. Now check whether nonexistent headers
4673 # can be detected and how.
4674 cat >conftest.$ac_ext <<_ACEOF
4675 /* confdefs.h. */
4676 _ACEOF
4677 cat confdefs.h >>conftest.$ac_ext
4678 cat >>conftest.$ac_ext <<_ACEOF
4679 /* end confdefs.h. */
4680 #include <ac_nonexistent.h>
4681 _ACEOF
4682 if { (ac_try="$ac_cpp conftest.$ac_ext"
4683 case "(($ac_try" in
4684 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4685 *) ac_try_echo=$ac_try;;
4686 esac
4687 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
4688 $as_echo "$ac_try_echo") >&5
4689 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
4690 ac_status=$?
4691 grep -v '^ *+' conftest.er1 >conftest.err
4692 rm -f conftest.er1
4693 cat conftest.err >&5
4694 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4695 (exit $ac_status); } >/dev/null && {
4696 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
4697 test ! -s conftest.err
4698 }; then
4699 # Broken: success on invalid input.
4700 continue
4701 else
4702 $as_echo "$as_me: failed program was:" >&5
4703 sed 's/^/| /' conftest.$ac_ext >&5
4704
4705 # Passes both tests.
4706 ac_preproc_ok=:
4707 break
4708 fi
4709
4710 rm -f conftest.err conftest.$ac_ext
4711
4712 done
4713 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
4714 rm -f conftest.err conftest.$ac_ext
4715 if $ac_preproc_ok; then
4716 :
4717 else
4718 { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
4719 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
4720 { { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
4721 See \`config.log' for more details." >&5
4722 $as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
4723 See \`config.log' for more details." >&2;}
4724 { (exit 1); exit 1; }; }; }
4725 fi
4726
4727 ac_ext=c
4728 ac_cpp='$CPP $CPPFLAGS'
4729 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4730 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4731 ac_compiler_gnu=$ac_cv_c_compiler_gnu
4732
4733
4734 { $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
4735 $as_echo_n "checking for grep that handles long lines and -e... " >&6; }
4736 if test "${ac_cv_path_GREP+set}" = set; then
4737 $as_echo_n "(cached) " >&6
4738 else
4739 if test -z "$GREP"; then
4740 ac_path_GREP_found=false
4741 # Loop through the user's path and test for each of PROGNAME-LIST
4742 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4743 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4744 do
4745 IFS=$as_save_IFS
4746 test -z "$as_dir" && as_dir=.
4747 for ac_prog in grep ggrep; do
4748 for ac_exec_ext in '' $ac_executable_extensions; do
4749 ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
4750 { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
4751 # Check for GNU ac_path_GREP and select it if it is found.
4752 # Check for GNU $ac_path_GREP
4753 case `"$ac_path_GREP" --version 2>&1` in
4754 *GNU*)
4755 ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
4756 *)
4757 ac_count=0
4758 $as_echo_n 0123456789 >"conftest.in"
4759 while :
4760 do
4761 cat "conftest.in" "conftest.in" >"conftest.tmp"
4762 mv "conftest.tmp" "conftest.in"
4763 cp "conftest.in" "conftest.nl"
4764 $as_echo 'GREP' >> "conftest.nl"
4765 "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
4766 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4767 ac_count=`expr $ac_count + 1`
4768 if test $ac_count -gt ${ac_path_GREP_max-0}; then
4769 # Best one so far, save it but keep looking for a better one
4770 ac_cv_path_GREP="$ac_path_GREP"
4771 ac_path_GREP_max=$ac_count
4772 fi
4773 # 10*(2^10) chars as input seems more than enough
4774 test $ac_count -gt 10 && break
4775 done
4776 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4777 esac
4778
4779 $ac_path_GREP_found && break 3
4780 done
4781 done
4782 done
4783 IFS=$as_save_IFS
4784 if test -z "$ac_cv_path_GREP"; then
4785 { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
4786 $as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
4787 { (exit 1); exit 1; }; }
4788 fi
4789 else
4790 ac_cv_path_GREP=$GREP
4791 fi
4792
4793 fi
4794 { $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
4795 $as_echo "$ac_cv_path_GREP" >&6; }
4796 GREP="$ac_cv_path_GREP"
4797
4798
4799 { $as_echo "$as_me:$LINENO: checking for egrep" >&5
4800 $as_echo_n "checking for egrep... " >&6; }
4801 if test "${ac_cv_path_EGREP+set}" = set; then
4802 $as_echo_n "(cached) " >&6
4803 else
4804 if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
4805 then ac_cv_path_EGREP="$GREP -E"
4806 else
4807 if test -z "$EGREP"; then
4808 ac_path_EGREP_found=false
4809 # Loop through the user's path and test for each of PROGNAME-LIST
4810 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4811 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4812 do
4813 IFS=$as_save_IFS
4814 test -z "$as_dir" && as_dir=.
4815 for ac_prog in egrep; do
4816 for ac_exec_ext in '' $ac_executable_extensions; do
4817 ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
4818 { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
4819 # Check for GNU ac_path_EGREP and select it if it is found.
4820 # Check for GNU $ac_path_EGREP
4821 case `"$ac_path_EGREP" --version 2>&1` in
4822 *GNU*)
4823 ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
4824 *)
4825 ac_count=0
4826 $as_echo_n 0123456789 >"conftest.in"
4827 while :
4828 do
4829 cat "conftest.in" "conftest.in" >"conftest.tmp"
4830 mv "conftest.tmp" "conftest.in"
4831 cp "conftest.in" "conftest.nl"
4832 $as_echo 'EGREP' >> "conftest.nl"
4833 "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
4834 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4835 ac_count=`expr $ac_count + 1`
4836 if test $ac_count -gt ${ac_path_EGREP_max-0}; then
4837 # Best one so far, save it but keep looking for a better one
4838 ac_cv_path_EGREP="$ac_path_EGREP"
4839 ac_path_EGREP_max=$ac_count
4840 fi
4841 # 10*(2^10) chars as input seems more than enough
4842 test $ac_count -gt 10 && break
4843 done
4844 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4845 esac
4846
4847 $ac_path_EGREP_found && break 3
4848 done
4849 done
4850 done
4851 IFS=$as_save_IFS
4852 if test -z "$ac_cv_path_EGREP"; then
4853 { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
4854 $as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
4855 { (exit 1); exit 1; }; }
4856 fi
4857 else
4858 ac_cv_path_EGREP=$EGREP
4859 fi
4860
4861 fi
4862 fi
4863 { $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
4864 $as_echo "$ac_cv_path_EGREP" >&6; }
4865 EGREP="$ac_cv_path_EGREP"
4866
4867
4868 { $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
4869 $as_echo_n "checking for ANSI C header files... " >&6; }
4870 if test "${ac_cv_header_stdc+set}" = set; then
4871 $as_echo_n "(cached) " >&6
4872 else
4873 cat >conftest.$ac_ext <<_ACEOF
4874 /* confdefs.h. */
4875 _ACEOF
4876 cat confdefs.h >>conftest.$ac_ext
4877 cat >>conftest.$ac_ext <<_ACEOF
4878 /* end confdefs.h. */
4879 #include <stdlib.h>
4880 #include <stdarg.h>
4881 #include <string.h>
4882 #include <float.h>
4883
4884 int
4885 main ()
4886 {
4887
4888 ;
4889 return 0;
4890 }
4891 _ACEOF
4892 rm -f conftest.$ac_objext
4893 if { (ac_try="$ac_compile"
4894 case "(($ac_try" in
4895 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4896 *) ac_try_echo=$ac_try;;
4897 esac
4898 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
4899 $as_echo "$ac_try_echo") >&5
4900 (eval "$ac_compile") 2>conftest.er1
4901 ac_status=$?
4902 grep -v '^ *+' conftest.er1 >conftest.err
4903 rm -f conftest.er1
4904 cat conftest.err >&5
4905 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
4906 (exit $ac_status); } && {
4907 test -z "$ac_c_werror_flag" ||
4908 test ! -s conftest.err
4909 } && test -s conftest.$ac_objext; then
4910 ac_cv_header_stdc=yes
4911 else
4912 $as_echo "$as_me: failed program was:" >&5
4913 sed 's/^/| /' conftest.$ac_ext >&5
4914
4915 ac_cv_header_stdc=no
4916 fi
4917
4918 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4919
4920 if test $ac_cv_header_stdc = yes; then
4921 # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
4922 cat >conftest.$ac_ext <<_ACEOF
4923 /* confdefs.h. */
4924 _ACEOF
4925 cat confdefs.h >>conftest.$ac_ext
4926 cat >>conftest.$ac_ext <<_ACEOF
4927 /* end confdefs.h. */
4928 #include <string.h>
4929
4930 _ACEOF
4931 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
4932 $EGREP "memchr" >/dev/null 2>&1; then
4933 :
4934 else
4935 ac_cv_header_stdc=no
4936 fi
4937 rm -f conftest*
4938
4939 fi
4940
4941 if test $ac_cv_header_stdc = yes; then
4942 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
4943 cat >conftest.$ac_ext <<_ACEOF
4944 /* confdefs.h. */
4945 _ACEOF
4946 cat confdefs.h >>conftest.$ac_ext
4947 cat >>conftest.$ac_ext <<_ACEOF
4948 /* end confdefs.h. */
4949 #include <stdlib.h>
4950
4951 _ACEOF
4952 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
4953 $EGREP "free" >/dev/null 2>&1; then
4954 :
4955 else
4956 ac_cv_header_stdc=no
4957 fi
4958 rm -f conftest*
4959
4960 fi
4961
4962 if test $ac_cv_header_stdc = yes; then
4963 # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
4964 if test "$cross_compiling" = yes; then
4965 :
4966 else
4967 cat >conftest.$ac_ext <<_ACEOF
4968 /* confdefs.h. */
4969 _ACEOF
4970 cat confdefs.h >>conftest.$ac_ext
4971 cat >>conftest.$ac_ext <<_ACEOF
4972 /* end confdefs.h. */
4973 #include <ctype.h>
4974 #include <stdlib.h>
4975 #if ((' ' & 0x0FF) == 0x020)
4976 # define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
4977 # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
4978 #else
4979 # define ISLOWER(c) \
4980 (('a' <= (c) && (c) <= 'i') \
4981 || ('j' <= (c) && (c) <= 'r') \
4982 || ('s' <= (c) && (c) <= 'z'))
4983 # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
4984 #endif
4985
4986 #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
4987 int
4988 main ()
4989 {
4990 int i;
4991 for (i = 0; i < 256; i++)
4992 if (XOR (islower (i), ISLOWER (i))
4993 || toupper (i) != TOUPPER (i))
4994 return 2;
4995 return 0;
4996 }
4997 _ACEOF
4998 rm -f conftest$ac_exeext
4999 if { (ac_try="$ac_link"
5000 case "(($ac_try" in
5001 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
5002 *) ac_try_echo=$ac_try;;
5003 esac
5004 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
5005 $as_echo "$ac_try_echo") >&5
5006 (eval "$ac_link") 2>&5
5007 ac_status=$?
5008 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
5009 (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
5010 { (case "(($ac_try" in
5011 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
5012 *) ac_try_echo=$ac_try;;
5013 esac
5014 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
5015 $as_echo "$ac_try_echo") >&5
5016 (eval "$ac_try") 2>&5
5017 ac_status=$?
5018 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
5019 (exit $ac_status); }; }; then
5020 :
5021 else
5022 $as_echo "$as_me: program exited with status $ac_status" >&5
5023 $as_echo "$as_me: failed program was:" >&5
5024 sed 's/^/| /' conftest.$ac_ext >&5
5025
5026 ( exit $ac_status )
5027 ac_cv_header_stdc=no
5028 fi
5029 rm -rf conftest.dSYM
5030 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
5031 fi
5032
5033
5034 fi
5035 fi
5036 { $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
5037 $as_echo "$ac_cv_header_stdc" >&6; }
5038 if test $ac_cv_header_stdc = yes; then
5039
5040 cat >>confdefs.h <<\_ACEOF
5041 #define STDC_HEADERS 1
5042 _ACEOF
5043
5044 fi
5045
5046 # On IRIX 5.3, sys/types and inttypes.h are conflicting.
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056 for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
5057 inttypes.h stdint.h unistd.h
5058 do
5059 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
5060 { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
5061 $as_echo_n "checking for $ac_header... " >&6; }
5062 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
5063 $as_echo_n "(cached) " >&6
5064 else
5065 cat >conftest.$ac_ext <<_ACEOF
5066 /* confdefs.h. */
5067 _ACEOF
5068 cat confdefs.h >>conftest.$ac_ext
5069 cat >>conftest.$ac_ext <<_ACEOF
5070 /* end confdefs.h. */
5071 $ac_includes_default
5072
5073 #include <$ac_header>
5074 _ACEOF
5075 rm -f conftest.$ac_objext
5076 if { (ac_try="$ac_compile"
5077 case "(($ac_try" in
5078 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
5079 *) ac_try_echo=$ac_try;;
5080 esac
5081 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
5082 $as_echo "$ac_try_echo") >&5
5083 (eval "$ac_compile") 2>conftest.er1
5084 ac_status=$?
5085 grep -v '^ *+' conftest.er1 >conftest.err
5086 rm -f conftest.er1
5087 cat conftest.err >&5
5088 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
5089 (exit $ac_status); } && {
5090 test -z "$ac_c_werror_flag" ||
5091 test ! -s conftest.err
5092 } && test -s conftest.$ac_objext; then
5093 eval "$as_ac_Header=yes"
5094 else
5095 $as_echo "$as_me: failed program was:" >&5
5096 sed 's/^/| /' conftest.$ac_ext >&5
5097
5098 eval "$as_ac_Header=no"
5099 fi
5100
5101 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5102 fi
5103 ac_res=`eval 'as_val=${'$as_ac_Header'}
5104 $as_echo "$as_val"'`
5105 { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
5106 $as_echo "$ac_res" >&6; }
5107 as_val=`eval 'as_val=${'$as_ac_Header'}
5108 $as_echo "$as_val"'`
5109 if test "x$as_val" = x""yes; then
5110 cat >>confdefs.h <<_ACEOF
5111 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
5112 _ACEOF
5113
5114 fi
5115
5116 done
5117
5118
5119
5120 for ac_header in complex.h
5121 do
5122 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
5123 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
5124 { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
5125 $as_echo_n "checking for $ac_header... " >&6; }
5126 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
5127 $as_echo_n "(cached) " >&6
5128 fi
5129 ac_res=`eval 'as_val=${'$as_ac_Header'}
5130 $as_echo "$as_val"'`
5131 { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
5132 $as_echo "$ac_res" >&6; }
5133 else
5134 # Is the header compilable?
5135 { $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
5136 $as_echo_n "checking $ac_header usability... " >&6; }
5137 cat >conftest.$ac_ext <<_ACEOF
5138 /* confdefs.h. */
5139 _ACEOF
5140 cat confdefs.h >>conftest.$ac_ext
5141 cat >>conftest.$ac_ext <<_ACEOF
5142 /* end confdefs.h. */
5143 $ac_includes_default
5144 #include <$ac_header>
5145 _ACEOF
5146 rm -f conftest.$ac_objext
5147 if { (ac_try="$ac_compile"
5148 case "(($ac_try" in
5149 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
5150 *) ac_try_echo=$ac_try;;
5151 esac
5152 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
5153 $as_echo "$ac_try_echo") >&5
5154 (eval "$ac_compile") 2>conftest.er1
5155 ac_status=$?
5156 grep -v '^ *+' conftest.er1 >conftest.err
5157 rm -f conftest.er1
5158 cat conftest.err >&5
5159 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
5160 (exit $ac_status); } && {
5161 test -z "$ac_c_werror_flag" ||
5162 test ! -s conftest.err
5163 } && test -s conftest.$ac_objext; then
5164 ac_header_compiler=yes
5165 else
5166 $as_echo "$as_me: failed program was:" >&5
5167 sed 's/^/| /' conftest.$ac_ext >&5
5168
5169 ac_header_compiler=no
5170 fi
5171
5172 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5173 { $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
5174 $as_echo "$ac_header_compiler" >&6; }
5175
5176 # Is the header present?
5177 { $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
5178 $as_echo_n "checking $ac_header presence... " >&6; }
5179 cat >conftest.$ac_ext <<_ACEOF
5180 /* confdefs.h. */
5181 _ACEOF
5182 cat confdefs.h >>conftest.$ac_ext
5183 cat >>conftest.$ac_ext <<_ACEOF
5184 /* end confdefs.h. */
5185 #include <$ac_header>
5186 _ACEOF
5187 if { (ac_try="$ac_cpp conftest.$ac_ext"
5188 case "(($ac_try" in
5189 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
5190 *) ac_try_echo=$ac_try;;
5191 esac
5192 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
5193 $as_echo "$ac_try_echo") >&5
5194 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
5195 ac_status=$?
5196 grep -v '^ *+' conftest.er1 >conftest.err
5197 rm -f conftest.er1
5198 cat conftest.err >&5
5199 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
5200 (exit $ac_status); } >/dev/null && {
5201 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
5202 test ! -s conftest.err
5203 }; then
5204 ac_header_preproc=yes
5205 else
5206 $as_echo "$as_me: failed program was:" >&5
5207 sed 's/^/| /' conftest.$ac_ext >&5
5208
5209 ac_header_preproc=no
5210 fi
5211
5212 rm -f conftest.err conftest.$ac_ext
5213 { $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
5214 $as_echo "$ac_header_preproc" >&6; }
5215
5216 # So? What about this header?
5217 case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
5218 yes:no: )
5219 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
5220 $as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
5221 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
5222 $as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
5223 ac_header_preproc=yes
5224 ;;
5225 no:yes:* )
5226 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
5227 $as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
5228 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
5229 $as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
5230 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
5231 $as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
5232 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
5233 $as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
5234 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
5235 $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
5236 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
5237 $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
5238 ( cat <<\_ASBOX
5239 ## ----------------------------------------- ##
5240 ## Report this to das atmark dream dot japan ##
5241 ## ----------------------------------------- ##
5242 _ASBOX
5243 ) | sed "s/^/$as_me: WARNING: /" >&2
5244 ;;
5245 esac
5246 { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
5247 $as_echo_n "checking for $ac_header... " >&6; }
5248 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
5249 $as_echo_n "(cached) " >&6
5250 else
5251 eval "$as_ac_Header=\$ac_header_preproc"
5252 fi
5253 ac_res=`eval 'as_val=${'$as_ac_Header'}
5254 $as_echo "$as_val"'`
5255 { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
5256 $as_echo "$ac_res" >&6; }
5257
5258 fi
5259 as_val=`eval 'as_val=${'$as_ac_Header'}
5260 $as_echo "$as_val"'`
5261 if test "x$as_val" = x""yes; then
5262 cat >>confdefs.h <<_ACEOF
5263 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
5264 _ACEOF
5265
5266 fi
5267
5268 done
5269
5270
5271 have_fftw3=no
5272
5273 # Check whether --with-fftw3 was given.
5274 if test "${with_fftw3+set}" = set; then
5275 withval=$with_fftw3;
5276 fi
5277
5278 if test x$with_fftw3 != xno; then
5279 have_fftw3=yes
5280 if test -z "$FFTW3_CFLAGS" && test -z "$FFTW3_LIBS"; then
5281
5282 pkg_failed=no
5283 { $as_echo "$as_me:$LINENO: checking for FFTW3" >&5
5284 $as_echo_n "checking for FFTW3... " >&6; }
5285
5286 if test -n "$FFTW3_CFLAGS"; then
5287 pkg_cv_FFTW3_CFLAGS="$FFTW3_CFLAGS"
5288 elif test -n "$PKG_CONFIG"; then
5289 if test -n "$PKG_CONFIG" && \
5290 { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"fftw3f\"") >&5
5291 ($PKG_CONFIG --exists --print-errors "fftw3f") 2>&5
5292 ac_status=$?
5293 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
5294 (exit $ac_status); }; then
5295 pkg_cv_FFTW3_CFLAGS=`$PKG_CONFIG --cflags "fftw3f" 2>/dev/null`
5296 else
5297 pkg_failed=yes
5298 fi
5299 else
5300 pkg_failed=untried
5301 fi
5302 if test -n "$FFTW3_LIBS"; then
5303 pkg_cv_FFTW3_LIBS="$FFTW3_LIBS"
5304 elif test -n "$PKG_CONFIG"; then
5305 if test -n "$PKG_CONFIG" && \
5306 { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"fftw3f\"") >&5
5307 ($PKG_CONFIG --exists --print-errors "fftw3f") 2>&5
5308 ac_status=$?
5309 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
5310 (exit $ac_status); }; then
5311 pkg_cv_FFTW3_LIBS=`$PKG_CONFIG --libs "fftw3f" 2>/dev/null`
5312 else
5313 pkg_failed=yes
5314 fi
5315 else
5316 pkg_failed=untried
5317 fi
5318
5319
5320
5321 if test $pkg_failed = yes; then
5322
5323 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
5324 _pkg_short_errors_supported=yes
5325 else
5326 _pkg_short_errors_supported=no
5327 fi
5328 if test $_pkg_short_errors_supported = yes; then
5329 FFTW3_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "fftw3f" 2>&1`
5330 else
5331 FFTW3_PKG_ERRORS=`$PKG_CONFIG --print-errors "fftw3f" 2>&1`
5332 fi
5333 # Put the nasty error message in config.log where it belongs
5334 echo "$FFTW3_PKG_ERRORS" >&5
5335
5336 { $as_echo "$as_me:$LINENO: result: no" >&5
5337 $as_echo "no" >&6; }
5338 have_fftw3="no (FFTW3 not found)"
5339 elif test $pkg_failed = untried; then
5340 have_fftw3="no (FFTW3 not found)"
5341 else
5342 FFTW3_CFLAGS=$pkg_cv_FFTW3_CFLAGS
5343 FFTW3_LIBS=$pkg_cv_FFTW3_LIBS
5344 { $as_echo "$as_me:$LINENO: result: yes" >&5
5345 $as_echo "yes" >&6; }
5346
5347 cat >>confdefs.h <<\_ACEOF
5348 #define HAVE_FFTW3 1
5349 _ACEOF
5350
5351 fi
5352 fi
5353 fi
5354
5355 if test "x$have_fftw3" = "xyes"; then
5356 HAVE_FFTW3_TRUE=
5357 HAVE_FFTW3_FALSE='#'
5358 else
5359 HAVE_FFTW3_TRUE='#'
5360 HAVE_FFTW3_FALSE=
5361 fi
5362
5363
5364
5365
5366
5367
5368 # gettext i18n support
5369
5370 GETTEXT_PACKAGE="gimp20-focusblur"
5371
5372
5373 cat >>confdefs.h <<_ACEOF
5374 #define GETTEXT_PACKAGE "$GETTEXT_PACKAGE"
5375 _ACEOF
5376
5377 ALL_LINGUAS="it ja ru"
5378
5379 ######################
5380 # Internationalisation
5381 ######################
5382
5383
5384 { $as_echo "$as_me:$LINENO: checking whether NLS is requested" >&5
5385 $as_echo_n "checking whether NLS is requested... " >&6; }
5386 # Check whether --enable-nls was given.
5387 if test "${enable_nls+set}" = set; then
5388 enableval=$enable_nls; USE_NLS=$enableval
5389 else
5390 USE_NLS=yes
5391 fi
5392
5393 { $as_echo "$as_me:$LINENO: result: $USE_NLS" >&5
5394 $as_echo "$USE_NLS" >&6; }
5395
5396
5397
5398
5399 case "$am__api_version" in
5400 1.01234)
5401 { { $as_echo "$as_me:$LINENO: error: Automake 1.5 or newer is required to use intltool" >&5
5402 $as_echo "$as_me: error: Automake 1.5 or newer is required to use intltool" >&2;}
5403 { (exit 1); exit 1; }; }
5404 ;;
5405 *)
5406 ;;
5407 esac
5408
5409 if test -n "0.36.3"; then
5410 { $as_echo "$as_me:$LINENO: checking for intltool >= 0.36.3" >&5
5411 $as_echo_n "checking for intltool >= 0.36.3... " >&6; }
5412
5413 INTLTOOL_REQUIRED_VERSION_AS_INT=`echo 0.36.3 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
5414 INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3`
5415 INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
5416
5417 { $as_echo "$as_me:$LINENO: result: $INTLTOOL_APPLIED_VERSION found" >&5
5418 $as_echo "$INTLTOOL_APPLIED_VERSION found" >&6; }
5419 test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" ||
5420 { { $as_echo "$as_me:$LINENO: error: Your intltool is too old. You need intltool 0.36.3 or later." >&5
5421 $as_echo "$as_me: error: Your intltool is too old. You need intltool 0.36.3 or later." >&2;}
5422 { (exit 1); exit 1; }; }
5423 fi
5424
5425 # Extract the first word of "intltool-update", so it can be a program name with args.
5426 set dummy intltool-update; ac_word=$2
5427 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
5428 $as_echo_n "checking for $ac_word... " >&6; }
5429 if test "${ac_cv_path_INTLTOOL_UPDATE+set}" = set; then
5430 $as_echo_n "(cached) " >&6
5431 else
5432 case $INTLTOOL_UPDATE in
5433 [\\/]* | ?:[\\/]*)
5434 ac_cv_path_INTLTOOL_UPDATE="$INTLTOOL_UPDATE" # Let the user override the test with a path.
5435 ;;
5436 *)
5437 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5438 for as_dir in $PATH
5439 do
5440 IFS=$as_save_IFS
5441 test -z "$as_dir" && as_dir=.
5442 for ac_exec_ext in '' $ac_executable_extensions; do
5443 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
5444 ac_cv_path_INTLTOOL_UPDATE="$as_dir/$ac_word$ac_exec_ext"
5445 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
5446 break 2
5447 fi
5448 done
5449 done
5450 IFS=$as_save_IFS
5451
5452 ;;
5453 esac
5454 fi
5455 INTLTOOL_UPDATE=$ac_cv_path_INTLTOOL_UPDATE
5456 if test -n "$INTLTOOL_UPDATE"; then
5457 { $as_echo "$as_me:$LINENO: result: $INTLTOOL_UPDATE" >&5
5458 $as_echo "$INTLTOOL_UPDATE" >&6; }
5459 else
5460 { $as_echo "$as_me:$LINENO: result: no" >&5
5461 $as_echo "no" >&6; }
5462 fi
5463
5464
5465 # Extract the first word of "intltool-merge", so it can be a program name with args.
5466 set dummy intltool-merge; ac_word=$2
5467 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
5468 $as_echo_n "checking for $ac_word... " >&6; }
5469 if test "${ac_cv_path_INTLTOOL_MERGE+set}" = set; then
5470 $as_echo_n "(cached) " >&6
5471 else
5472 case $INTLTOOL_MERGE in
5473 [\\/]* | ?:[\\/]*)
5474 ac_cv_path_INTLTOOL_MERGE="$INTLTOOL_MERGE" # Let the user override the test with a path.
5475 ;;
5476 *)
5477 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5478 for as_dir in $PATH
5479 do
5480 IFS=$as_save_IFS
5481 test -z "$as_dir" && as_dir=.
5482 for ac_exec_ext in '' $ac_executable_extensions; do
5483 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
5484 ac_cv_path_INTLTOOL_MERGE="$as_dir/$ac_word$ac_exec_ext"
5485 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
5486 break 2
5487 fi
5488 done
5489 done
5490 IFS=$as_save_IFS
5491
5492 ;;
5493 esac
5494 fi
5495 INTLTOOL_MERGE=$ac_cv_path_INTLTOOL_MERGE
5496 if test -n "$INTLTOOL_MERGE"; then
5497 { $as_echo "$as_me:$LINENO: result: $INTLTOOL_MERGE" >&5
5498 $as_echo "$INTLTOOL_MERGE" >&6; }
5499 else
5500 { $as_echo "$as_me:$LINENO: result: no" >&5
5501 $as_echo "no" >&6; }
5502 fi
5503
5504
5505 # Extract the first word of "intltool-extract", so it can be a program name with args.
5506 set dummy intltool-extract; ac_word=$2
5507 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
5508 $as_echo_n "checking for $ac_word... " >&6; }
5509 if test "${ac_cv_path_INTLTOOL_EXTRACT+set}" = set; then
5510 $as_echo_n "(cached) " >&6
5511 else
5512 case $INTLTOOL_EXTRACT in
5513 [\\/]* | ?:[\\/]*)
5514 ac_cv_path_INTLTOOL_EXTRACT="$INTLTOOL_EXTRACT" # Let the user override the test with a path.
5515 ;;
5516 *)
5517 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5518 for as_dir in $PATH
5519 do
5520 IFS=$as_save_IFS
5521 test -z "$as_dir" && as_dir=.
5522 for ac_exec_ext in '' $ac_executable_extensions; do
5523 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
5524 ac_cv_path_INTLTOOL_EXTRACT="$as_dir/$ac_word$ac_exec_ext"
5525 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
5526 break 2
5527 fi
5528 done
5529 done
5530 IFS=$as_save_IFS
5531
5532 ;;
5533 esac
5534 fi
5535 INTLTOOL_EXTRACT=$ac_cv_path_INTLTOOL_EXTRACT
5536 if test -n "$INTLTOOL_EXTRACT"; then
5537 { $as_echo "$as_me:$LINENO: result: $INTLTOOL_EXTRACT" >&5
5538 $as_echo "$INTLTOOL_EXTRACT" >&6; }
5539 else
5540 { $as_echo "$as_me:$LINENO: result: no" >&5
5541 $as_echo "no" >&6; }
5542 fi
5543
5544
5545 if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then
5546 { { $as_echo "$as_me:$LINENO: error: The intltool scripts were not found. Please install intltool." >&5
5547 $as_echo "$as_me: error: The intltool scripts were not found. Please install intltool." >&2;}
5548 { (exit 1); exit 1; }; }
5549 fi
5550
5551 INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5552 INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5553 INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5554 INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5555 INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< $@'
5556 INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5557 INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5558 INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5559 INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5560 INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5561 INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5562 INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< $@'
5563 INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5564 INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5565 INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5566 INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5567 INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5568 INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5569 INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667 # Check the gettext tools to make sure they are GNU
5668 # Extract the first word of "xgettext", so it can be a program name with args.
5669 set dummy xgettext; ac_word=$2
5670 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
5671 $as_echo_n "checking for $ac_word... " >&6; }
5672 if test "${ac_cv_path_XGETTEXT+set}" = set; then
5673 $as_echo_n "(cached) " >&6
5674 else
5675 case $XGETTEXT in
5676 [\\/]* | ?:[\\/]*)
5677 ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
5678 ;;
5679 *)
5680 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5681 for as_dir in $PATH
5682 do
5683 IFS=$as_save_IFS
5684 test -z "$as_dir" && as_dir=.
5685 for ac_exec_ext in '' $ac_executable_extensions; do
5686 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
5687 ac_cv_path_XGETTEXT="$as_dir/$ac_word$ac_exec_ext"
5688 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
5689 break 2
5690 fi
5691 done
5692 done
5693 IFS=$as_save_IFS
5694
5695 ;;
5696 esac
5697 fi
5698 XGETTEXT=$ac_cv_path_XGETTEXT
5699 if test -n "$XGETTEXT"; then
5700 { $as_echo "$as_me:$LINENO: result: $XGETTEXT" >&5
5701 $as_echo "$XGETTEXT" >&6; }
5702 else
5703 { $as_echo "$as_me:$LINENO: result: no" >&5
5704 $as_echo "no" >&6; }
5705 fi
5706
5707
5708 # Extract the first word of "msgmerge", so it can be a program name with args.
5709 set dummy msgmerge; ac_word=$2
5710 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
5711 $as_echo_n "checking for $ac_word... " >&6; }
5712 if test "${ac_cv_path_MSGMERGE+set}" = set; then
5713 $as_echo_n "(cached) " >&6
5714 else
5715 case $MSGMERGE in
5716 [\\/]* | ?:[\\/]*)
5717 ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path.
5718 ;;
5719 *)
5720 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5721 for as_dir in $PATH
5722 do
5723 IFS=$as_save_IFS
5724 test -z "$as_dir" && as_dir=.
5725 for ac_exec_ext in '' $ac_executable_extensions; do
5726 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
5727 ac_cv_path_MSGMERGE="$as_dir/$ac_word$ac_exec_ext"
5728 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
5729 break 2
5730 fi
5731 done
5732 done
5733 IFS=$as_save_IFS
5734
5735 ;;
5736 esac
5737 fi
5738 MSGMERGE=$ac_cv_path_MSGMERGE
5739 if test -n "$MSGMERGE"; then
5740 { $as_echo "$as_me:$LINENO: result: $MSGMERGE" >&5
5741 $as_echo "$MSGMERGE" >&6; }
5742 else
5743 { $as_echo "$as_me:$LINENO: result: no" >&5
5744 $as_echo "no" >&6; }
5745 fi
5746
5747
5748 # Extract the first word of "msgfmt", so it can be a program name with args.
5749 set dummy msgfmt; ac_word=$2
5750 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
5751 $as_echo_n "checking for $ac_word... " >&6; }
5752 if test "${ac_cv_path_MSGFMT+set}" = set; then
5753 $as_echo_n "(cached) " >&6
5754 else
5755 case $MSGFMT in
5756 [\\/]* | ?:[\\/]*)
5757 ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
5758 ;;
5759 *)
5760 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5761 for as_dir in $PATH
5762 do
5763 IFS=$as_save_IFS
5764 test -z "$as_dir" && as_dir=.
5765 for ac_exec_ext in '' $ac_executable_extensions; do
5766 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
5767 ac_cv_path_MSGFMT="$as_dir/$ac_word$ac_exec_ext"
5768 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
5769 break 2
5770 fi
5771 done
5772 done
5773 IFS=$as_save_IFS
5774
5775 ;;
5776 esac
5777 fi
5778 MSGFMT=$ac_cv_path_MSGFMT
5779 if test -n "$MSGFMT"; then
5780 { $as_echo "$as_me:$LINENO: result: $MSGFMT" >&5
5781 $as_echo "$MSGFMT" >&6; }
5782 else
5783 { $as_echo "$as_me:$LINENO: result: no" >&5
5784 $as_echo "no" >&6; }
5785 fi
5786
5787
5788 # Extract the first word of "gmsgfmt", so it can be a program name with args.
5789 set dummy gmsgfmt; ac_word=$2
5790 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
5791 $as_echo_n "checking for $ac_word... " >&6; }
5792 if test "${ac_cv_path_GMSGFMT+set}" = set; then
5793 $as_echo_n "(cached) " >&6
5794 else
5795 case $GMSGFMT in
5796 [\\/]* | ?:[\\/]*)
5797 ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
5798 ;;
5799 *)
5800 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5801 for as_dir in $PATH
5802 do
5803 IFS=$as_save_IFS
5804 test -z "$as_dir" && as_dir=.
5805 for ac_exec_ext in '' $ac_executable_extensions; do
5806 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
5807 ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
5808 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
5809 break 2
5810 fi
5811 done
5812 done
5813 IFS=$as_save_IFS
5814
5815 test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
5816 ;;
5817 esac
5818 fi
5819 GMSGFMT=$ac_cv_path_GMSGFMT
5820 if test -n "$GMSGFMT"; then
5821 { $as_echo "$as_me:$LINENO: result: $GMSGFMT" >&5
5822 $as_echo "$GMSGFMT" >&6; }
5823 else
5824 { $as_echo "$as_me:$LINENO: result: no" >&5
5825 $as_echo "no" >&6; }
5826 fi
5827
5828
5829 if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then
5830 { { $as_echo "$as_me:$LINENO: error: GNU gettext tools not found; required for intltool" >&5
5831 $as_echo "$as_me: error: GNU gettext tools not found; required for intltool" >&2;}
5832 { (exit 1); exit 1; }; }
5833 fi
5834 xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`"
5835 mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`"
5836 mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`"
5837 if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then
5838 { { $as_echo "$as_me:$LINENO: error: GNU gettext tools not found; required for intltool" >&5
5839 $as_echo "$as_me: error: GNU gettext tools not found; required for intltool" >&2;}
5840 { (exit 1); exit 1; }; }
5841 fi
5842
5843 # Extract the first word of "perl", so it can be a program name with args.
5844 set dummy perl; ac_word=$2
5845 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
5846 $as_echo_n "checking for $ac_word... " >&6; }
5847 if test "${ac_cv_path_INTLTOOL_PERL+set}" = set; then
5848 $as_echo_n "(cached) " >&6
5849 else
5850 case $INTLTOOL_PERL in
5851 [\\/]* | ?:[\\/]*)
5852 ac_cv_path_INTLTOOL_PERL="$INTLTOOL_PERL" # Let the user override the test with a path.
5853 ;;
5854 *)
5855 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5856 for as_dir in $PATH
5857 do
5858 IFS=$as_save_IFS
5859 test -z "$as_dir" && as_dir=.
5860 for ac_exec_ext in '' $ac_executable_extensions; do
5861 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
5862 ac_cv_path_INTLTOOL_PERL="$as_dir/$ac_word$ac_exec_ext"
5863 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
5864 break 2
5865 fi
5866 done
5867 done
5868 IFS=$as_save_IFS
5869
5870 ;;
5871 esac
5872 fi
5873 INTLTOOL_PERL=$ac_cv_path_INTLTOOL_PERL
5874 if test -n "$INTLTOOL_PERL"; then
5875 { $as_echo "$as_me:$LINENO: result: $INTLTOOL_PERL" >&5
5876 $as_echo "$INTLTOOL_PERL" >&6; }
5877 else
5878 { $as_echo "$as_me:$LINENO: result: no" >&5
5879 $as_echo "no" >&6; }
5880 fi
5881
5882
5883 if test -z "$INTLTOOL_PERL"; then
5884 { { $as_echo "$as_me:$LINENO: error: perl not found" >&5
5885 $as_echo "$as_me: error: perl not found" >&2;}
5886 { (exit 1); exit 1; }; }
5887 fi
5888 { $as_echo "$as_me:$LINENO: checking for perl >= 5.8.1" >&5
5889 $as_echo_n "checking for perl >= 5.8.1... " >&6; }
5890 $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1
5891 if test $? -ne 0; then
5892 { { $as_echo "$as_me:$LINENO: error: perl 5.8.1 is required for intltool" >&5
5893 $as_echo "$as_me: error: perl 5.8.1 is required for intltool" >&2;}
5894 { (exit 1); exit 1; }; }
5895 else
5896 IT_PERL_VERSION="`$INTLTOOL_PERL -e \"printf '%vd', $^V\"`"
5897 { $as_echo "$as_me:$LINENO: result: $IT_PERL_VERSION" >&5
5898 $as_echo "$IT_PERL_VERSION" >&6; }
5899 fi
5900 if test "x" != "xno-xml"; then
5901 { $as_echo "$as_me:$LINENO: checking for XML::Parser" >&5
5902 $as_echo_n "checking for XML::Parser... " >&6; }
5903 if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then
5904 { $as_echo "$as_me:$LINENO: result: ok" >&5
5905 $as_echo "ok" >&6; }
5906 else
5907 { { $as_echo "$as_me:$LINENO: error: XML::Parser perl module is required for intltool" >&5
5908 $as_echo "$as_me: error: XML::Parser perl module is required for intltool" >&2;}
5909 { (exit 1); exit 1; }; }
5910 fi
5911 fi
5912
5913 # Substitute ALL_LINGUAS so we can use it in po/Makefile
5914
5915
5916 # Set DATADIRNAME correctly if it is not set yet
5917 # (copied from glib-gettext.m4)
5918 if test -z "$DATADIRNAME"; then
5919 cat >conftest.$ac_ext <<_ACEOF
5920 /* confdefs.h. */
5921 _ACEOF
5922 cat confdefs.h >>conftest.$ac_ext
5923 cat >>conftest.$ac_ext <<_ACEOF
5924 /* end confdefs.h. */
5925
5926 int
5927 main ()
5928 {
5929 extern int _nl_msg_cat_cntr;
5930 return _nl_msg_cat_cntr
5931 ;
5932 return 0;
5933 }
5934 _ACEOF
5935 rm -f conftest.$ac_objext conftest$ac_exeext
5936 if { (ac_try="$ac_link"
5937 case "(($ac_try" in
5938 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
5939 *) ac_try_echo=$ac_try;;
5940 esac
5941 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
5942 $as_echo "$ac_try_echo") >&5
5943 (eval "$ac_link") 2>conftest.er1
5944 ac_status=$?
5945 grep -v '^ *+' conftest.er1 >conftest.err
5946 rm -f conftest.er1
5947 cat conftest.err >&5
5948 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
5949 (exit $ac_status); } && {
5950 test -z "$ac_c_werror_flag" ||
5951 test ! -s conftest.err
5952 } && test -s conftest$ac_exeext && {
5953 test "$cross_compiling" = yes ||
5954 $as_test_x conftest$ac_exeext
5955 }; then
5956 DATADIRNAME=share
5957 else
5958 $as_echo "$as_me: failed program was:" >&5
5959 sed 's/^/| /' conftest.$ac_ext >&5
5960
5961 case $host in
5962 *-*-solaris*)
5963 { $as_echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5
5964 $as_echo_n "checking for bind_textdomain_codeset... " >&6; }
5965 if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then
5966 $as_echo_n "(cached) " >&6
5967 else
5968 cat >conftest.$ac_ext <<_ACEOF
5969 /* confdefs.h. */
5970 _ACEOF
5971 cat confdefs.h >>conftest.$ac_ext
5972 cat >>conftest.$ac_ext <<_ACEOF
5973 /* end confdefs.h. */
5974 /* Define bind_textdomain_codeset to an innocuous variant, in case <limits.h> declares bind_textdomain_codeset.
5975 For example, HP-UX 11i <limits.h> declares gettimeofday. */
5976 #define bind_textdomain_codeset innocuous_bind_textdomain_codeset
5977
5978 /* System header to define __stub macros and hopefully few prototypes,
5979 which can conflict with char bind_textdomain_codeset (); below.
5980 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
5981 <limits.h> exists even on freestanding compilers. */
5982
5983 #ifdef __STDC__
5984 # include <limits.h>
5985 #else
5986 # include <assert.h>
5987 #endif
5988
5989 #undef bind_textdomain_codeset
5990
5991 /* Override any GCC internal prototype to avoid an error.
5992 Use char because int might match the return type of a GCC
5993 builtin and then its argument prototype would still apply. */
5994 #ifdef __cplusplus
5995 extern "C"
5996 #endif
5997 char bind_textdomain_codeset ();
5998 /* The GNU C library defines this for functions which it implements
5999 to always fail with ENOSYS. Some functions are actually named
6000 something starting with __ and the normal name is an alias. */
6001 #if defined __stub_bind_textdomain_codeset || defined __stub___bind_textdomain_codeset
6002 choke me
6003 #endif
6004
6005 int
6006 main ()
6007 {
6008 return bind_textdomain_codeset ();
6009 ;
6010 return 0;
6011 }
6012 _ACEOF
6013 rm -f conftest.$ac_objext conftest$ac_exeext
6014 if { (ac_try="$ac_link"
6015 case "(($ac_try" in
6016 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6017 *) ac_try_echo=$ac_try;;
6018 esac
6019 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6020 $as_echo "$ac_try_echo") >&5
6021 (eval "$ac_link") 2>conftest.er1
6022 ac_status=$?
6023 grep -v '^ *+' conftest.er1 >conftest.err
6024 rm -f conftest.er1
6025 cat conftest.err >&5
6026 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6027 (exit $ac_status); } && {
6028 test -z "$ac_c_werror_flag" ||
6029 test ! -s conftest.err
6030 } && test -s conftest$ac_exeext && {
6031 test "$cross_compiling" = yes ||
6032 $as_test_x conftest$ac_exeext
6033 }; then
6034 ac_cv_func_bind_textdomain_codeset=yes
6035 else
6036 $as_echo "$as_me: failed program was:" >&5
6037 sed 's/^/| /' conftest.$ac_ext >&5
6038
6039 ac_cv_func_bind_textdomain_codeset=no
6040 fi
6041
6042 rm -rf conftest.dSYM
6043 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6044 conftest$ac_exeext conftest.$ac_ext
6045 fi
6046 { $as_echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5
6047 $as_echo "$ac_cv_func_bind_textdomain_codeset" >&6; }
6048 if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then
6049 DATADIRNAME=share
6050 else
6051 DATADIRNAME=lib
6052 fi
6053
6054 ;;
6055 *)
6056 DATADIRNAME=lib
6057 ;;
6058 esac
6059 fi
6060
6061 rm -rf conftest.dSYM
6062 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6063 conftest$ac_exeext conftest.$ac_ext
6064 fi
6065
6066
6067
6068
6069
6070
6071
6072 for ac_header in locale.h
6073 do
6074 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
6075 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
6076 { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
6077 $as_echo_n "checking for $ac_header... " >&6; }
6078 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
6079 $as_echo_n "(cached) " >&6
6080 fi
6081 ac_res=`eval 'as_val=${'$as_ac_Header'}
6082 $as_echo "$as_val"'`
6083 { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
6084 $as_echo "$ac_res" >&6; }
6085 else
6086 # Is the header compilable?
6087 { $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
6088 $as_echo_n "checking $ac_header usability... " >&6; }
6089 cat >conftest.$ac_ext <<_ACEOF
6090 /* confdefs.h. */
6091 _ACEOF
6092 cat confdefs.h >>conftest.$ac_ext
6093 cat >>conftest.$ac_ext <<_ACEOF
6094 /* end confdefs.h. */
6095 $ac_includes_default
6096 #include <$ac_header>
6097 _ACEOF
6098 rm -f conftest.$ac_objext
6099 if { (ac_try="$ac_compile"
6100 case "(($ac_try" in
6101 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6102 *) ac_try_echo=$ac_try;;
6103 esac
6104 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6105 $as_echo "$ac_try_echo") >&5
6106 (eval "$ac_compile") 2>conftest.er1
6107 ac_status=$?
6108 grep -v '^ *+' conftest.er1 >conftest.err
6109 rm -f conftest.er1
6110 cat conftest.err >&5
6111 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6112 (exit $ac_status); } && {
6113 test -z "$ac_c_werror_flag" ||
6114 test ! -s conftest.err
6115 } && test -s conftest.$ac_objext; then
6116 ac_header_compiler=yes
6117 else
6118 $as_echo "$as_me: failed program was:" >&5
6119 sed 's/^/| /' conftest.$ac_ext >&5
6120
6121 ac_header_compiler=no
6122 fi
6123
6124 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6125 { $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
6126 $as_echo "$ac_header_compiler" >&6; }
6127
6128 # Is the header present?
6129 { $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
6130 $as_echo_n "checking $ac_header presence... " >&6; }
6131 cat >conftest.$ac_ext <<_ACEOF
6132 /* confdefs.h. */
6133 _ACEOF
6134 cat confdefs.h >>conftest.$ac_ext
6135 cat >>conftest.$ac_ext <<_ACEOF
6136 /* end confdefs.h. */
6137 #include <$ac_header>
6138 _ACEOF
6139 if { (ac_try="$ac_cpp conftest.$ac_ext"
6140 case "(($ac_try" in
6141 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6142 *) ac_try_echo=$ac_try;;
6143 esac
6144 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6145 $as_echo "$ac_try_echo") >&5
6146 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
6147 ac_status=$?
6148 grep -v '^ *+' conftest.er1 >conftest.err
6149 rm -f conftest.er1
6150 cat conftest.err >&5
6151 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6152 (exit $ac_status); } >/dev/null && {
6153 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
6154 test ! -s conftest.err
6155 }; then
6156 ac_header_preproc=yes
6157 else
6158 $as_echo "$as_me: failed program was:" >&5
6159 sed 's/^/| /' conftest.$ac_ext >&5
6160
6161 ac_header_preproc=no
6162 fi
6163
6164 rm -f conftest.err conftest.$ac_ext
6165 { $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
6166 $as_echo "$ac_header_preproc" >&6; }
6167
6168 # So? What about this header?
6169 case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
6170 yes:no: )
6171 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
6172 $as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
6173 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
6174 $as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
6175 ac_header_preproc=yes
6176 ;;
6177 no:yes:* )
6178 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
6179 $as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
6180 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
6181 $as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
6182 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
6183 $as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
6184 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
6185 $as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
6186 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
6187 $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
6188 { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
6189 $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
6190 ( cat <<\_ASBOX
6191 ## ----------------------------------------- ##
6192 ## Report this to das atmark dream dot japan ##
6193 ## ----------------------------------------- ##
6194 _ASBOX
6195 ) | sed "s/^/$as_me: WARNING: /" >&2
6196 ;;
6197 esac
6198 { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
6199 $as_echo_n "checking for $ac_header... " >&6; }
6200 if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
6201 $as_echo_n "(cached) " >&6
6202 else
6203 eval "$as_ac_Header=\$ac_header_preproc"
6204 fi
6205 ac_res=`eval 'as_val=${'$as_ac_Header'}
6206 $as_echo "$as_val"'`
6207 { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
6208 $as_echo "$ac_res" >&6; }
6209
6210 fi
6211 as_val=`eval 'as_val=${'$as_ac_Header'}
6212 $as_echo "$as_val"'`
6213 if test "x$as_val" = x""yes; then
6214 cat >>confdefs.h <<_ACEOF
6215 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
6216 _ACEOF
6217
6218 fi
6219
6220 done
6221
6222 if test $ac_cv_header_locale_h = yes; then
6223 { $as_echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5
6224 $as_echo_n "checking for LC_MESSAGES... " >&6; }
6225 if test "${am_cv_val_LC_MESSAGES+set}" = set; then
6226 $as_echo_n "(cached) " >&6
6227 else
6228 cat >conftest.$ac_ext <<_ACEOF
6229 /* confdefs.h. */
6230 _ACEOF
6231 cat confdefs.h >>conftest.$ac_ext
6232 cat >>conftest.$ac_ext <<_ACEOF
6233 /* end confdefs.h. */
6234 #include <locale.h>
6235 int
6236 main ()
6237 {
6238 return LC_MESSAGES
6239 ;
6240 return 0;
6241 }
6242 _ACEOF
6243 rm -f conftest.$ac_objext conftest$ac_exeext
6244 if { (ac_try="$ac_link"
6245 case "(($ac_try" in
6246 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6247 *) ac_try_echo=$ac_try;;
6248 esac
6249 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6250 $as_echo "$ac_try_echo") >&5
6251 (eval "$ac_link") 2>conftest.er1
6252 ac_status=$?
6253 grep -v '^ *+' conftest.er1 >conftest.err
6254 rm -f conftest.er1
6255 cat conftest.err >&5
6256 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6257 (exit $ac_status); } && {
6258 test -z "$ac_c_werror_flag" ||
6259 test ! -s conftest.err
6260 } && test -s conftest$ac_exeext && {
6261 test "$cross_compiling" = yes ||
6262 $as_test_x conftest$ac_exeext
6263 }; then
6264 am_cv_val_LC_MESSAGES=yes
6265 else
6266 $as_echo "$as_me: failed program was:" >&5
6267 sed 's/^/| /' conftest.$ac_ext >&5
6268
6269 am_cv_val_LC_MESSAGES=no
6270 fi
6271
6272 rm -rf conftest.dSYM
6273 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6274 conftest$ac_exeext conftest.$ac_ext
6275 fi
6276 { $as_echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5
6277 $as_echo "$am_cv_val_LC_MESSAGES" >&6; }
6278 if test $am_cv_val_LC_MESSAGES = yes; then
6279
6280 cat >>confdefs.h <<\_ACEOF
6281 #define HAVE_LC_MESSAGES 1
6282 _ACEOF
6283
6284 fi
6285 fi
6286 USE_NLS=yes
6287
6288
6289 gt_cv_have_gettext=no
6290
6291 CATOBJEXT=NONE
6292 XGETTEXT=:
6293 INTLLIBS=
6294
6295 if test "${ac_cv_header_libintl_h+set}" = set; then
6296 { $as_echo "$as_me:$LINENO: checking for libintl.h" >&5
6297 $as_echo_n "checking for libintl.h... " >&6; }
6298 if test "${ac_cv_header_libintl_h+set}" = set; then
6299 $as_echo_n "(cached) " >&6
6300 fi
6301 { $as_echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5
6302 $as_echo "$ac_cv_header_libintl_h" >&6; }
6303 else
6304 # Is the header compilable?
6305 { $as_echo "$as_me:$LINENO: checking libintl.h usability" >&5
6306 $as_echo_n "checking libintl.h usability... " >&6; }
6307 cat >conftest.$ac_ext <<_ACEOF
6308 /* confdefs.h. */
6309 _ACEOF
6310 cat confdefs.h >>conftest.$ac_ext
6311 cat >>conftest.$ac_ext <<_ACEOF
6312 /* end confdefs.h. */
6313 $ac_includes_default
6314 #include <libintl.h>
6315 _ACEOF
6316 rm -f conftest.$ac_objext
6317 if { (ac_try="$ac_compile"
6318 case "(($ac_try" in
6319 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6320 *) ac_try_echo=$ac_try;;
6321 esac
6322 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6323 $as_echo "$ac_try_echo") >&5
6324 (eval "$ac_compile") 2>conftest.er1
6325 ac_status=$?
6326 grep -v '^ *+' conftest.er1 >conftest.err
6327 rm -f conftest.er1
6328 cat conftest.err >&5
6329 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6330 (exit $ac_status); } && {
6331 test -z "$ac_c_werror_flag" ||
6332 test ! -s conftest.err
6333 } && test -s conftest.$ac_objext; then
6334 ac_header_compiler=yes
6335 else
6336 $as_echo "$as_me: failed program was:" >&5
6337 sed 's/^/| /' conftest.$ac_ext >&5
6338
6339 ac_header_compiler=no
6340 fi
6341
6342 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
6343 { $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
6344 $as_echo "$ac_header_compiler" >&6; }
6345
6346 # Is the header present?
6347 { $as_echo "$as_me:$LINENO: checking libintl.h presence" >&5
6348 $as_echo_n "checking libintl.h presence... " >&6; }
6349 cat >conftest.$ac_ext <<_ACEOF
6350 /* confdefs.h. */
6351 _ACEOF
6352 cat confdefs.h >>conftest.$ac_ext
6353 cat >>conftest.$ac_ext <<_ACEOF
6354 /* end confdefs.h. */
6355 #include <libintl.h>
6356 _ACEOF
6357 if { (ac_try="$ac_cpp conftest.$ac_ext"
6358 case "(($ac_try" in
6359 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6360 *) ac_try_echo=$ac_try;;
6361 esac
6362 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6363 $as_echo "$ac_try_echo") >&5
6364 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
6365 ac_status=$?
6366 grep -v '^ *+' conftest.er1 >conftest.err
6367 rm -f conftest.er1
6368 cat conftest.err >&5
6369 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6370 (exit $ac_status); } >/dev/null && {
6371 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
6372 test ! -s conftest.err
6373 }; then
6374 ac_header_preproc=yes
6375 else
6376 $as_echo "$as_me: failed program was:" >&5
6377 sed 's/^/| /' conftest.$ac_ext >&5
6378
6379 ac_header_preproc=no
6380 fi
6381
6382 rm -f conftest.err conftest.$ac_ext
6383 { $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
6384 $as_echo "$ac_header_preproc" >&6; }
6385
6386 # So? What about this header?
6387 case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
6388 yes:no: )
6389 { $as_echo "$as_me:$LINENO: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&5
6390 $as_echo "$as_me: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
6391 { $as_echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the compiler's result" >&5
6392 $as_echo "$as_me: WARNING: libintl.h: proceeding with the compiler's result" >&2;}
6393 ac_header_preproc=yes
6394 ;;
6395 no:yes:* )
6396 { $as_echo "$as_me:$LINENO: WARNING: libintl.h: present but cannot be compiled" >&5
6397 $as_echo "$as_me: WARNING: libintl.h: present but cannot be compiled" >&2;}
6398 { $as_echo "$as_me:$LINENO: WARNING: libintl.h: check for missing prerequisite headers?" >&5
6399 $as_echo "$as_me: WARNING: libintl.h: check for missing prerequisite headers?" >&2;}
6400 { $as_echo "$as_me:$LINENO: WARNING: libintl.h: see the Autoconf documentation" >&5
6401 $as_echo "$as_me: WARNING: libintl.h: see the Autoconf documentation" >&2;}
6402 { $as_echo "$as_me:$LINENO: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&5
6403 $as_echo "$as_me: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&2;}
6404 { $as_echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the preprocessor's result" >&5
6405 $as_echo "$as_me: WARNING: libintl.h: proceeding with the preprocessor's result" >&2;}
6406 { $as_echo "$as_me:$LINENO: WARNING: libintl.h: in the future, the compiler will take precedence" >&5
6407 $as_echo "$as_me: WARNING: libintl.h: in the future, the compiler will take precedence" >&2;}
6408 ( cat <<\_ASBOX
6409 ## ----------------------------------------- ##
6410 ## Report this to das atmark dream dot japan ##
6411 ## ----------------------------------------- ##
6412 _ASBOX
6413 ) | sed "s/^/$as_me: WARNING: /" >&2
6414 ;;
6415 esac
6416 { $as_echo "$as_me:$LINENO: checking for libintl.h" >&5
6417 $as_echo_n "checking for libintl.h... " >&6; }
6418 if test "${ac_cv_header_libintl_h+set}" = set; then
6419 $as_echo_n "(cached) " >&6
6420 else
6421 ac_cv_header_libintl_h=$ac_header_preproc
6422 fi
6423 { $as_echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5
6424 $as_echo "$ac_cv_header_libintl_h" >&6; }
6425
6426 fi
6427 if test "x$ac_cv_header_libintl_h" = x""yes; then
6428 gt_cv_func_dgettext_libintl="no"
6429 libintl_extra_libs=""
6430
6431 #
6432 # First check in libc
6433 #
6434 { $as_echo "$as_me:$LINENO: checking for ngettext in libc" >&5
6435 $as_echo_n "checking for ngettext in libc... " >&6; }
6436 if test "${gt_cv_func_ngettext_libc+set}" = set; then
6437 $as_echo_n "(cached) " >&6
6438 else
6439 cat >conftest.$ac_ext <<_ACEOF
6440 /* confdefs.h. */
6441 _ACEOF
6442 cat confdefs.h >>conftest.$ac_ext
6443 cat >>conftest.$ac_ext <<_ACEOF
6444 /* end confdefs.h. */
6445
6446 #include <libintl.h>
6447
6448 int
6449 main ()
6450 {
6451 return !ngettext ("","", 1)
6452 ;
6453 return 0;
6454 }
6455 _ACEOF
6456 rm -f conftest.$ac_objext conftest$ac_exeext
6457 if { (ac_try="$ac_link"
6458 case "(($ac_try" in
6459 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6460 *) ac_try_echo=$ac_try;;
6461 esac
6462 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6463 $as_echo "$ac_try_echo") >&5
6464 (eval "$ac_link") 2>conftest.er1
6465 ac_status=$?
6466 grep -v '^ *+' conftest.er1 >conftest.err
6467 rm -f conftest.er1
6468 cat conftest.err >&5
6469 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6470 (exit $ac_status); } && {
6471 test -z "$ac_c_werror_flag" ||
6472 test ! -s conftest.err
6473 } && test -s conftest$ac_exeext && {
6474 test "$cross_compiling" = yes ||
6475 $as_test_x conftest$ac_exeext
6476 }; then
6477 gt_cv_func_ngettext_libc=yes
6478 else
6479 $as_echo "$as_me: failed program was:" >&5
6480 sed 's/^/| /' conftest.$ac_ext >&5
6481
6482 gt_cv_func_ngettext_libc=no
6483 fi
6484
6485 rm -rf conftest.dSYM
6486 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6487 conftest$ac_exeext conftest.$ac_ext
6488
6489 fi
6490 { $as_echo "$as_me:$LINENO: result: $gt_cv_func_ngettext_libc" >&5
6491 $as_echo "$gt_cv_func_ngettext_libc" >&6; }
6492
6493 if test "$gt_cv_func_ngettext_libc" = "yes" ; then
6494 { $as_echo "$as_me:$LINENO: checking for dgettext in libc" >&5
6495 $as_echo_n "checking for dgettext in libc... " >&6; }
6496 if test "${gt_cv_func_dgettext_libc+set}" = set; then
6497 $as_echo_n "(cached) " >&6
6498 else
6499 cat >conftest.$ac_ext <<_ACEOF
6500 /* confdefs.h. */
6501 _ACEOF
6502 cat confdefs.h >>conftest.$ac_ext
6503 cat >>conftest.$ac_ext <<_ACEOF
6504 /* end confdefs.h. */
6505
6506 #include <libintl.h>
6507
6508 int
6509 main ()
6510 {
6511 return !dgettext ("","")
6512 ;
6513 return 0;
6514 }
6515 _ACEOF
6516 rm -f conftest.$ac_objext conftest$ac_exeext
6517 if { (ac_try="$ac_link"
6518 case "(($ac_try" in
6519 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6520 *) ac_try_echo=$ac_try;;
6521 esac
6522 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6523 $as_echo "$ac_try_echo") >&5
6524 (eval "$ac_link") 2>conftest.er1
6525 ac_status=$?
6526 grep -v '^ *+' conftest.er1 >conftest.err
6527 rm -f conftest.er1
6528 cat conftest.err >&5
6529 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6530 (exit $ac_status); } && {
6531 test -z "$ac_c_werror_flag" ||
6532 test ! -s conftest.err
6533 } && test -s conftest$ac_exeext && {
6534 test "$cross_compiling" = yes ||
6535 $as_test_x conftest$ac_exeext
6536 }; then
6537 gt_cv_func_dgettext_libc=yes
6538 else
6539 $as_echo "$as_me: failed program was:" >&5
6540 sed 's/^/| /' conftest.$ac_ext >&5
6541
6542 gt_cv_func_dgettext_libc=no
6543 fi
6544
6545 rm -rf conftest.dSYM
6546 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6547 conftest$ac_exeext conftest.$ac_ext
6548
6549 fi
6550 { $as_echo "$as_me:$LINENO: result: $gt_cv_func_dgettext_libc" >&5
6551 $as_echo "$gt_cv_func_dgettext_libc" >&6; }
6552 fi
6553
6554 if test "$gt_cv_func_ngettext_libc" = "yes" ; then
6555
6556 for ac_func in bind_textdomain_codeset
6557 do
6558 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
6559 { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
6560 $as_echo_n "checking for $ac_func... " >&6; }
6561 if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
6562 $as_echo_n "(cached) " >&6
6563 else
6564 cat >conftest.$ac_ext <<_ACEOF
6565 /* confdefs.h. */
6566 _ACEOF
6567 cat confdefs.h >>conftest.$ac_ext
6568 cat >>conftest.$ac_ext <<_ACEOF
6569 /* end confdefs.h. */
6570 /* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
6571 For example, HP-UX 11i <limits.h> declares gettimeofday. */
6572 #define $ac_func innocuous_$ac_func
6573
6574 /* System header to define __stub macros and hopefully few prototypes,
6575 which can conflict with char $ac_func (); below.
6576 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
6577 <limits.h> exists even on freestanding compilers. */
6578
6579 #ifdef __STDC__
6580 # include <limits.h>
6581 #else
6582 # include <assert.h>
6583 #endif
6584
6585 #undef $ac_func
6586
6587 /* Override any GCC internal prototype to avoid an error.
6588 Use char because int might match the return type of a GCC
6589 builtin and then its argument prototype would still apply. */
6590 #ifdef __cplusplus
6591 extern "C"
6592 #endif
6593 char $ac_func ();
6594 /* The GNU C library defines this for functions which it implements
6595 to always fail with ENOSYS. Some functions are actually named
6596 something starting with __ and the normal name is an alias. */
6597 #if defined __stub_$ac_func || defined __stub___$ac_func
6598 choke me
6599 #endif
6600
6601 int
6602 main ()
6603 {
6604 return $ac_func ();
6605 ;
6606 return 0;
6607 }
6608 _ACEOF
6609 rm -f conftest.$ac_objext conftest$ac_exeext
6610 if { (ac_try="$ac_link"
6611 case "(($ac_try" in
6612 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6613 *) ac_try_echo=$ac_try;;
6614 esac
6615 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6616 $as_echo "$ac_try_echo") >&5
6617 (eval "$ac_link") 2>conftest.er1
6618 ac_status=$?
6619 grep -v '^ *+' conftest.er1 >conftest.err
6620 rm -f conftest.er1
6621 cat conftest.err >&5
6622 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6623 (exit $ac_status); } && {
6624 test -z "$ac_c_werror_flag" ||
6625 test ! -s conftest.err
6626 } && test -s conftest$ac_exeext && {
6627 test "$cross_compiling" = yes ||
6628 $as_test_x conftest$ac_exeext
6629 }; then
6630 eval "$as_ac_var=yes"
6631 else
6632 $as_echo "$as_me: failed program was:" >&5
6633 sed 's/^/| /' conftest.$ac_ext >&5
6634
6635 eval "$as_ac_var=no"
6636 fi
6637
6638 rm -rf conftest.dSYM
6639 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6640 conftest$ac_exeext conftest.$ac_ext
6641 fi
6642 ac_res=`eval 'as_val=${'$as_ac_var'}
6643 $as_echo "$as_val"'`
6644 { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
6645 $as_echo "$ac_res" >&6; }
6646 as_val=`eval 'as_val=${'$as_ac_var'}
6647 $as_echo "$as_val"'`
6648 if test "x$as_val" = x""yes; then
6649 cat >>confdefs.h <<_ACEOF
6650 #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
6651 _ACEOF
6652
6653 fi
6654 done
6655
6656 fi
6657
6658 #
6659 # If we don't have everything we want, check in libintl
6660 #
6661 if test "$gt_cv_func_dgettext_libc" != "yes" \
6662 || test "$gt_cv_func_ngettext_libc" != "yes" \
6663 || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
6664
6665 { $as_echo "$as_me:$LINENO: checking for bindtextdomain in -lintl" >&5
6666 $as_echo_n "checking for bindtextdomain in -lintl... " >&6; }
6667 if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then
6668 $as_echo_n "(cached) " >&6
6669 else
6670 ac_check_lib_save_LIBS=$LIBS
6671 LIBS="-lintl $LIBS"
6672 cat >conftest.$ac_ext <<_ACEOF
6673 /* confdefs.h. */
6674 _ACEOF
6675 cat confdefs.h >>conftest.$ac_ext
6676 cat >>conftest.$ac_ext <<_ACEOF
6677 /* end confdefs.h. */
6678
6679 /* Override any GCC internal prototype to avoid an error.
6680 Use char because int might match the return type of a GCC
6681 builtin and then its argument prototype would still apply. */
6682 #ifdef __cplusplus
6683 extern "C"
6684 #endif
6685 char bindtextdomain ();
6686 int
6687 main ()
6688 {
6689 return bindtextdomain ();
6690 ;
6691 return 0;
6692 }
6693 _ACEOF
6694 rm -f conftest.$ac_objext conftest$ac_exeext
6695 if { (ac_try="$ac_link"
6696 case "(($ac_try" in
6697 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6698 *) ac_try_echo=$ac_try;;
6699 esac
6700 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6701 $as_echo "$ac_try_echo") >&5
6702 (eval "$ac_link") 2>conftest.er1
6703 ac_status=$?
6704 grep -v '^ *+' conftest.er1 >conftest.err
6705 rm -f conftest.er1
6706 cat conftest.err >&5
6707 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6708 (exit $ac_status); } && {
6709 test -z "$ac_c_werror_flag" ||
6710 test ! -s conftest.err
6711 } && test -s conftest$ac_exeext && {
6712 test "$cross_compiling" = yes ||
6713 $as_test_x conftest$ac_exeext
6714 }; then
6715 ac_cv_lib_intl_bindtextdomain=yes
6716 else
6717 $as_echo "$as_me: failed program was:" >&5
6718 sed 's/^/| /' conftest.$ac_ext >&5
6719
6720 ac_cv_lib_intl_bindtextdomain=no
6721 fi
6722
6723 rm -rf conftest.dSYM
6724 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6725 conftest$ac_exeext conftest.$ac_ext
6726 LIBS=$ac_check_lib_save_LIBS
6727 fi
6728 { $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_bindtextdomain" >&5
6729 $as_echo "$ac_cv_lib_intl_bindtextdomain" >&6; }
6730 if test "x$ac_cv_lib_intl_bindtextdomain" = x""yes; then
6731 { $as_echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5
6732 $as_echo_n "checking for ngettext in -lintl... " >&6; }
6733 if test "${ac_cv_lib_intl_ngettext+set}" = set; then
6734 $as_echo_n "(cached) " >&6
6735 else
6736 ac_check_lib_save_LIBS=$LIBS
6737 LIBS="-lintl $LIBS"
6738 cat >conftest.$ac_ext <<_ACEOF
6739 /* confdefs.h. */
6740 _ACEOF
6741 cat confdefs.h >>conftest.$ac_ext
6742 cat >>conftest.$ac_ext <<_ACEOF
6743 /* end confdefs.h. */
6744
6745 /* Override any GCC internal prototype to avoid an error.
6746 Use char because int might match the return type of a GCC
6747 builtin and then its argument prototype would still apply. */
6748 #ifdef __cplusplus
6749 extern "C"
6750 #endif
6751 char ngettext ();
6752 int
6753 main ()
6754 {
6755 return ngettext ();
6756 ;
6757 return 0;
6758 }
6759 _ACEOF
6760 rm -f conftest.$ac_objext conftest$ac_exeext
6761 if { (ac_try="$ac_link"
6762 case "(($ac_try" in
6763 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6764 *) ac_try_echo=$ac_try;;
6765 esac
6766 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6767 $as_echo "$ac_try_echo") >&5
6768 (eval "$ac_link") 2>conftest.er1
6769 ac_status=$?
6770 grep -v '^ *+' conftest.er1 >conftest.err
6771 rm -f conftest.er1
6772 cat conftest.err >&5
6773 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6774 (exit $ac_status); } && {
6775 test -z "$ac_c_werror_flag" ||
6776 test ! -s conftest.err
6777 } && test -s conftest$ac_exeext && {
6778 test "$cross_compiling" = yes ||
6779 $as_test_x conftest$ac_exeext
6780 }; then
6781 ac_cv_lib_intl_ngettext=yes
6782 else
6783 $as_echo "$as_me: failed program was:" >&5
6784 sed 's/^/| /' conftest.$ac_ext >&5
6785
6786 ac_cv_lib_intl_ngettext=no
6787 fi
6788
6789 rm -rf conftest.dSYM
6790 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6791 conftest$ac_exeext conftest.$ac_ext
6792 LIBS=$ac_check_lib_save_LIBS
6793 fi
6794 { $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5
6795 $as_echo "$ac_cv_lib_intl_ngettext" >&6; }
6796 if test "x$ac_cv_lib_intl_ngettext" = x""yes; then
6797 { $as_echo "$as_me:$LINENO: checking for dgettext in -lintl" >&5
6798 $as_echo_n "checking for dgettext in -lintl... " >&6; }
6799 if test "${ac_cv_lib_intl_dgettext+set}" = set; then
6800 $as_echo_n "(cached) " >&6
6801 else
6802 ac_check_lib_save_LIBS=$LIBS
6803 LIBS="-lintl $LIBS"
6804 cat >conftest.$ac_ext <<_ACEOF
6805 /* confdefs.h. */
6806 _ACEOF
6807 cat confdefs.h >>conftest.$ac_ext
6808 cat >>conftest.$ac_ext <<_ACEOF
6809 /* end confdefs.h. */
6810
6811 /* Override any GCC internal prototype to avoid an error.
6812 Use char because int might match the return type of a GCC
6813 builtin and then its argument prototype would still apply. */
6814 #ifdef __cplusplus
6815 extern "C"
6816 #endif
6817 char dgettext ();
6818 int
6819 main ()
6820 {
6821 return dgettext ();
6822 ;
6823 return 0;
6824 }
6825 _ACEOF
6826 rm -f conftest.$ac_objext conftest$ac_exeext
6827 if { (ac_try="$ac_link"
6828 case "(($ac_try" in
6829 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6830 *) ac_try_echo=$ac_try;;
6831 esac
6832 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6833 $as_echo "$ac_try_echo") >&5
6834 (eval "$ac_link") 2>conftest.er1
6835 ac_status=$?
6836 grep -v '^ *+' conftest.er1 >conftest.err
6837 rm -f conftest.er1
6838 cat conftest.err >&5
6839 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6840 (exit $ac_status); } && {
6841 test -z "$ac_c_werror_flag" ||
6842 test ! -s conftest.err
6843 } && test -s conftest$ac_exeext && {
6844 test "$cross_compiling" = yes ||
6845 $as_test_x conftest$ac_exeext
6846 }; then
6847 ac_cv_lib_intl_dgettext=yes
6848 else
6849 $as_echo "$as_me: failed program was:" >&5
6850 sed 's/^/| /' conftest.$ac_ext >&5
6851
6852 ac_cv_lib_intl_dgettext=no
6853 fi
6854
6855 rm -rf conftest.dSYM
6856 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6857 conftest$ac_exeext conftest.$ac_ext
6858 LIBS=$ac_check_lib_save_LIBS
6859 fi
6860 { $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dgettext" >&5
6861 $as_echo "$ac_cv_lib_intl_dgettext" >&6; }
6862 if test "x$ac_cv_lib_intl_dgettext" = x""yes; then
6863 gt_cv_func_dgettext_libintl=yes
6864 fi
6865
6866 fi
6867
6868 fi
6869
6870
6871 if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
6872 { $as_echo "$as_me:$LINENO: checking if -liconv is needed to use gettext" >&5
6873 $as_echo_n "checking if -liconv is needed to use gettext... " >&6; }
6874 { $as_echo "$as_me:$LINENO: result: " >&5
6875 $as_echo "" >&6; }
6876 { $as_echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5
6877 $as_echo_n "checking for ngettext in -lintl... " >&6; }
6878 if test "${ac_cv_lib_intl_ngettext+set}" = set; then
6879 $as_echo_n "(cached) " >&6
6880 else
6881 ac_check_lib_save_LIBS=$LIBS
6882 LIBS="-lintl -liconv $LIBS"
6883 cat >conftest.$ac_ext <<_ACEOF
6884 /* confdefs.h. */
6885 _ACEOF
6886 cat confdefs.h >>conftest.$ac_ext
6887 cat >>conftest.$ac_ext <<_ACEOF
6888 /* end confdefs.h. */
6889
6890 /* Override any GCC internal prototype to avoid an error.
6891 Use char because int might match the return type of a GCC
6892 builtin and then its argument prototype would still apply. */
6893 #ifdef __cplusplus
6894 extern "C"
6895 #endif
6896 char ngettext ();
6897 int
6898 main ()
6899 {
6900 return ngettext ();
6901 ;
6902 return 0;
6903 }
6904 _ACEOF
6905 rm -f conftest.$ac_objext conftest$ac_exeext
6906 if { (ac_try="$ac_link"
6907 case "(($ac_try" in
6908 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6909 *) ac_try_echo=$ac_try;;
6910 esac
6911 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6912 $as_echo "$ac_try_echo") >&5
6913 (eval "$ac_link") 2>conftest.er1
6914 ac_status=$?
6915 grep -v '^ *+' conftest.er1 >conftest.err
6916 rm -f conftest.er1
6917 cat conftest.err >&5
6918 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6919 (exit $ac_status); } && {
6920 test -z "$ac_c_werror_flag" ||
6921 test ! -s conftest.err
6922 } && test -s conftest$ac_exeext && {
6923 test "$cross_compiling" = yes ||
6924 $as_test_x conftest$ac_exeext
6925 }; then
6926 ac_cv_lib_intl_ngettext=yes
6927 else
6928 $as_echo "$as_me: failed program was:" >&5
6929 sed 's/^/| /' conftest.$ac_ext >&5
6930
6931 ac_cv_lib_intl_ngettext=no
6932 fi
6933
6934 rm -rf conftest.dSYM
6935 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
6936 conftest$ac_exeext conftest.$ac_ext
6937 LIBS=$ac_check_lib_save_LIBS
6938 fi
6939 { $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5
6940 $as_echo "$ac_cv_lib_intl_ngettext" >&6; }
6941 if test "x$ac_cv_lib_intl_ngettext" = x""yes; then
6942 { $as_echo "$as_me:$LINENO: checking for dcgettext in -lintl" >&5
6943 $as_echo_n "checking for dcgettext in -lintl... " >&6; }
6944 if test "${ac_cv_lib_intl_dcgettext+set}" = set; then
6945 $as_echo_n "(cached) " >&6
6946 else
6947 ac_check_lib_save_LIBS=$LIBS
6948 LIBS="-lintl -liconv $LIBS"
6949 cat >conftest.$ac_ext <<_ACEOF
6950 /* confdefs.h. */
6951 _ACEOF
6952 cat confdefs.h >>conftest.$ac_ext
6953 cat >>conftest.$ac_ext <<_ACEOF
6954 /* end confdefs.h. */
6955
6956 /* Override any GCC internal prototype to avoid an error.
6957 Use char because int might match the return type of a GCC
6958 builtin and then its argument prototype would still apply. */
6959 #ifdef __cplusplus
6960 extern "C"
6961 #endif
6962 char dcgettext ();
6963 int
6964 main ()
6965 {
6966 return dcgettext ();
6967 ;
6968 return 0;
6969 }
6970 _ACEOF
6971 rm -f conftest.$ac_objext conftest$ac_exeext
6972 if { (ac_try="$ac_link"
6973 case "(($ac_try" in
6974 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
6975 *) ac_try_echo=$ac_try;;
6976 esac
6977 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
6978 $as_echo "$ac_try_echo") >&5
6979 (eval "$ac_link") 2>conftest.er1
6980 ac_status=$?
6981 grep -v '^ *+' conftest.er1 >conftest.err
6982 rm -f conftest.er1
6983 cat conftest.err >&5
6984 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
6985 (exit $ac_status); } && {
6986 test -z "$ac_c_werror_flag" ||
6987 test ! -s conftest.err
6988 } && test -s conftest$ac_exeext && {
6989 test "$cross_compiling" = yes ||
6990 $as_test_x conftest$ac_exeext
6991 }; then
6992 ac_cv_lib_intl_dcgettext=yes
6993 else
6994 $as_echo "$as_me: failed program was:" >&5
6995 sed 's/^/| /' conftest.$ac_ext >&5
6996
6997 ac_cv_lib_intl_dcgettext=no
6998 fi
6999
7000 rm -rf conftest.dSYM
7001 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
7002 conftest$ac_exeext conftest.$ac_ext
7003 LIBS=$ac_check_lib_save_LIBS
7004 fi
7005 { $as_echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dcgettext" >&5
7006 $as_echo "$ac_cv_lib_intl_dcgettext" >&6; }
7007 if test "x$ac_cv_lib_intl_dcgettext" = x""yes; then
7008 gt_cv_func_dgettext_libintl=yes
7009 libintl_extra_libs=-liconv
7010 else
7011 :
7012 fi
7013
7014 else
7015 :
7016 fi
7017
7018 fi
7019
7020 #
7021 # If we found libintl, then check in it for bind_textdomain_codeset();
7022 # we'll prefer libc if neither have bind_textdomain_codeset(),
7023 # and both have dgettext and ngettext
7024 #
7025 if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
7026 glib_save_LIBS="$LIBS"
7027 LIBS="$LIBS -lintl $libintl_extra_libs"
7028 unset ac_cv_func_bind_textdomain_codeset
7029
7030 for ac_func in bind_textdomain_codeset
7031 do
7032 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
7033 { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
7034 $as_echo_n "checking for $ac_func... " >&6; }
7035 if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
7036 $as_echo_n "(cached) " >&6
7037 else
7038 cat >conftest.$ac_ext <<_ACEOF
7039 /* confdefs.h. */
7040 _ACEOF
7041 cat confdefs.h >>conftest.$ac_ext
7042 cat >>conftest.$ac_ext <<_ACEOF
7043 /* end confdefs.h. */
7044 /* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
7045 For example, HP-UX 11i <limits.h> declares gettimeofday. */
7046 #define $ac_func innocuous_$ac_func
7047
7048 /* System header to define __stub macros and hopefully few prototypes,
7049 which can conflict with char $ac_func (); below.
7050 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
7051 <limits.h> exists even on freestanding compilers. */
7052
7053 #ifdef __STDC__
7054 # include <limits.h>
7055 #else
7056 # include <assert.h>
7057 #endif
7058
7059 #undef $ac_func
7060
7061 /* Override any GCC internal prototype to avoid an error.
7062 Use char because int might match the return type of a GCC
7063 builtin and then its argument prototype would still apply. */
7064 #ifdef __cplusplus
7065 extern "C"
7066 #endif
7067 char $ac_func ();
7068 /* The GNU C library defines this for functions which it implements
7069 to always fail with ENOSYS. Some functions are actually named
7070 something starting with __ and the normal name is an alias. */
7071 #if defined __stub_$ac_func || defined __stub___$ac_func
7072 choke me
7073 #endif
7074
7075 int
7076 main ()
7077 {
7078 return $ac_func ();
7079 ;
7080 return 0;
7081 }
7082 _ACEOF
7083 rm -f conftest.$ac_objext conftest$ac_exeext
7084 if { (ac_try="$ac_link"
7085 case "(($ac_try" in
7086 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
7087 *) ac_try_echo=$ac_try;;
7088 esac
7089 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
7090 $as_echo "$ac_try_echo") >&5
7091 (eval "$ac_link") 2>conftest.er1
7092 ac_status=$?
7093 grep -v '^ *+' conftest.er1 >conftest.err
7094 rm -f conftest.er1
7095 cat conftest.err >&5
7096 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
7097 (exit $ac_status); } && {
7098 test -z "$ac_c_werror_flag" ||
7099 test ! -s conftest.err
7100 } && test -s conftest$ac_exeext && {
7101 test "$cross_compiling" = yes ||
7102 $as_test_x conftest$ac_exeext
7103 }; then
7104 eval "$as_ac_var=yes"
7105 else
7106 $as_echo "$as_me: failed program was:" >&5
7107 sed 's/^/| /' conftest.$ac_ext >&5
7108
7109 eval "$as_ac_var=no"
7110 fi
7111
7112 rm -rf conftest.dSYM
7113 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
7114 conftest$ac_exeext conftest.$ac_ext
7115 fi
7116 ac_res=`eval 'as_val=${'$as_ac_var'}
7117 $as_echo "$as_val"'`
7118 { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
7119 $as_echo "$ac_res" >&6; }
7120 as_val=`eval 'as_val=${'$as_ac_var'}
7121 $as_echo "$as_val"'`
7122 if test "x$as_val" = x""yes; then
7123 cat >>confdefs.h <<_ACEOF
7124 #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
7125 _ACEOF
7126
7127 fi
7128 done
7129
7130 LIBS="$glib_save_LIBS"
7131
7132 if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
7133 gt_cv_func_dgettext_libc=no
7134 else
7135 if test "$gt_cv_func_dgettext_libc" = "yes" \
7136 && test "$gt_cv_func_ngettext_libc" = "yes"; then
7137 gt_cv_func_dgettext_libintl=no
7138 fi
7139 fi
7140 fi
7141 fi
7142
7143 if test "$gt_cv_func_dgettext_libc" = "yes" \
7144 || test "$gt_cv_func_dgettext_libintl" = "yes"; then
7145 gt_cv_have_gettext=yes
7146 fi
7147
7148 if test "$gt_cv_func_dgettext_libintl" = "yes"; then
7149 INTLLIBS="-lintl $libintl_extra_libs"
7150 fi
7151
7152 if test "$gt_cv_have_gettext" = "yes"; then
7153
7154 cat >>confdefs.h <<\_ACEOF
7155 #define HAVE_GETTEXT 1
7156 _ACEOF
7157
7158 # Extract the first word of "msgfmt", so it can be a program name with args.
7159 set dummy msgfmt; ac_word=$2
7160 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
7161 $as_echo_n "checking for $ac_word... " >&6; }
7162 if test "${ac_cv_path_MSGFMT+set}" = set; then
7163 $as_echo_n "(cached) " >&6
7164 else
7165 case "$MSGFMT" in
7166 /*)
7167 ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
7168 ;;
7169 *)
7170 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
7171 for ac_dir in $PATH; do
7172 test -z "$ac_dir" && ac_dir=.
7173 if test -f $ac_dir/$ac_word; then
7174 if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then
7175 ac_cv_path_MSGFMT="$ac_dir/$ac_word"
7176 break
7177 fi
7178 fi
7179 done
7180 IFS="$ac_save_ifs"
7181 test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no"
7182 ;;
7183 esac
7184 fi
7185 MSGFMT="$ac_cv_path_MSGFMT"
7186 if test "$MSGFMT" != "no"; then
7187 { $as_echo "$as_me:$LINENO: result: $MSGFMT" >&5
7188 $as_echo "$MSGFMT" >&6; }
7189 else
7190 { $as_echo "$as_me:$LINENO: result: no" >&5
7191 $as_echo "no" >&6; }
7192 fi
7193 if test "$MSGFMT" != "no"; then
7194 glib_save_LIBS="$LIBS"
7195 LIBS="$LIBS $INTLLIBS"
7196
7197 for ac_func in dcgettext
7198 do
7199 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
7200 { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
7201 $as_echo_n "checking for $ac_func... " >&6; }
7202 if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
7203 $as_echo_n "(cached) " >&6
7204 else
7205 cat >conftest.$ac_ext <<_ACEOF
7206 /* confdefs.h. */
7207 _ACEOF
7208 cat confdefs.h >>conftest.$ac_ext
7209 cat >>conftest.$ac_ext <<_ACEOF
7210 /* end confdefs.h. */
7211 /* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
7212 For example, HP-UX 11i <limits.h> declares gettimeofday. */
7213 #define $ac_func innocuous_$ac_func
7214
7215 /* System header to define __stub macros and hopefully few prototypes,
7216 which can conflict with char $ac_func (); below.
7217 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
7218 <limits.h> exists even on freestanding compilers. */
7219
7220 #ifdef __STDC__
7221 # include <limits.h>
7222 #else
7223 # include <assert.h>
7224 #endif
7225
7226 #undef $ac_func
7227
7228 /* Override any GCC internal prototype to avoid an error.
7229 Use char because int might match the return type of a GCC
7230 builtin and then its argument prototype would still apply. */
7231 #ifdef __cplusplus
7232 extern "C"
7233 #endif
7234 char $ac_func ();
7235 /* The GNU C library defines this for functions which it implements
7236 to always fail with ENOSYS. Some functions are actually named
7237 something starting with __ and the normal name is an alias. */
7238 #if defined __stub_$ac_func || defined __stub___$ac_func
7239 choke me
7240 #endif
7241
7242 int
7243 main ()
7244 {
7245 return $ac_func ();
7246 ;
7247 return 0;
7248 }
7249 _ACEOF
7250 rm -f conftest.$ac_objext conftest$ac_exeext
7251 if { (ac_try="$ac_link"
7252 case "(($ac_try" in
7253 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
7254 *) ac_try_echo=$ac_try;;
7255 esac
7256 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
7257 $as_echo "$ac_try_echo") >&5
7258 (eval "$ac_link") 2>conftest.er1
7259 ac_status=$?
7260 grep -v '^ *+' conftest.er1 >conftest.err
7261 rm -f conftest.er1
7262 cat conftest.err >&5
7263 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
7264 (exit $ac_status); } && {
7265 test -z "$ac_c_werror_flag" ||
7266 test ! -s conftest.err
7267 } && test -s conftest$ac_exeext && {
7268 test "$cross_compiling" = yes ||
7269 $as_test_x conftest$ac_exeext
7270 }; then
7271 eval "$as_ac_var=yes"
7272 else
7273 $as_echo "$as_me: failed program was:" >&5
7274 sed 's/^/| /' conftest.$ac_ext >&5
7275
7276 eval "$as_ac_var=no"
7277 fi
7278
7279 rm -rf conftest.dSYM
7280 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
7281 conftest$ac_exeext conftest.$ac_ext
7282 fi
7283 ac_res=`eval 'as_val=${'$as_ac_var'}
7284 $as_echo "$as_val"'`
7285 { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
7286 $as_echo "$ac_res" >&6; }
7287 as_val=`eval 'as_val=${'$as_ac_var'}
7288 $as_echo "$as_val"'`
7289 if test "x$as_val" = x""yes; then
7290 cat >>confdefs.h <<_ACEOF
7291 #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
7292 _ACEOF
7293
7294 fi
7295 done
7296
7297 MSGFMT_OPTS=
7298 { $as_echo "$as_me:$LINENO: checking if msgfmt accepts -c" >&5
7299 $as_echo_n "checking if msgfmt accepts -c... " >&6; }
7300 cat >conftest.foo <<_ACEOF
7301
7302 msgid ""
7303 msgstr ""
7304 "Content-Type: text/plain; charset=UTF-8\n"
7305 "Project-Id-Version: test 1.0\n"
7306 "PO-Revision-Date: 2007-02-15 12:01+0100\n"
7307 "Last-Translator: test <foo@bar.xx>\n"
7308 "Language-Team: C <LL@li.org>\n"
7309 "MIME-Version: 1.0\n"
7310 "Content-Transfer-Encoding: 8bit\n"
7311
7312 _ACEOF
7313 if { ($as_echo "$as_me:$LINENO: \$MSGFMT -c -o /dev/null conftest.foo") >&5
7314 ($MSGFMT -c -o /dev/null conftest.foo) 2>&5
7315 ac_status=$?
7316 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
7317 (exit $ac_status); }; then
7318 MSGFMT_OPTS=-c; { $as_echo "$as_me:$LINENO: result: yes" >&5
7319 $as_echo "yes" >&6; }
7320 else { $as_echo "$as_me:$LINENO: result: no" >&5
7321 $as_echo "no" >&6; }
7322 echo "$as_me: failed input was:" >&5
7323 sed 's/^/| /' conftest.foo >&5
7324 fi
7325
7326 # Extract the first word of "gmsgfmt", so it can be a program name with args.
7327 set dummy gmsgfmt; ac_word=$2
7328 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
7329 $as_echo_n "checking for $ac_word... " >&6; }
7330 if test "${ac_cv_path_GMSGFMT+set}" = set; then
7331 $as_echo_n "(cached) " >&6
7332 else
7333 case $GMSGFMT in
7334 [\\/]* | ?:[\\/]*)
7335 ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
7336 ;;
7337 *)
7338 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7339 for as_dir in $PATH
7340 do
7341 IFS=$as_save_IFS
7342 test -z "$as_dir" && as_dir=.
7343 for ac_exec_ext in '' $ac_executable_extensions; do
7344 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
7345 ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
7346 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
7347 break 2
7348 fi
7349 done
7350 done
7351 IFS=$as_save_IFS
7352
7353 test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
7354 ;;
7355 esac
7356 fi
7357 GMSGFMT=$ac_cv_path_GMSGFMT
7358 if test -n "$GMSGFMT"; then
7359 { $as_echo "$as_me:$LINENO: result: $GMSGFMT" >&5
7360 $as_echo "$GMSGFMT" >&6; }
7361 else
7362 { $as_echo "$as_me:$LINENO: result: no" >&5
7363 $as_echo "no" >&6; }
7364 fi
7365
7366
7367 # Extract the first word of "xgettext", so it can be a program name with args.
7368 set dummy xgettext; ac_word=$2
7369 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
7370 $as_echo_n "checking for $ac_word... " >&6; }
7371 if test "${ac_cv_path_XGETTEXT+set}" = set; then
7372 $as_echo_n "(cached) " >&6
7373 else
7374 case "$XGETTEXT" in
7375 /*)
7376 ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
7377 ;;
7378 *)
7379 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
7380 for ac_dir in $PATH; do
7381 test -z "$ac_dir" && ac_dir=.
7382 if test -f $ac_dir/$ac_word; then
7383 if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then
7384 ac_cv_path_XGETTEXT="$ac_dir/$ac_word"
7385 break
7386 fi
7387 fi
7388 done
7389 IFS="$ac_save_ifs"
7390 test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
7391 ;;
7392 esac
7393 fi
7394 XGETTEXT="$ac_cv_path_XGETTEXT"
7395 if test "$XGETTEXT" != ":"; then
7396 { $as_echo "$as_me:$LINENO: result: $XGETTEXT" >&5
7397 $as_echo "$XGETTEXT" >&6; }
7398 else
7399 { $as_echo "$as_me:$LINENO: result: no" >&5
7400 $as_echo "no" >&6; }
7401 fi
7402
7403 cat >conftest.$ac_ext <<_ACEOF
7404 /* confdefs.h. */
7405 _ACEOF
7406 cat confdefs.h >>conftest.$ac_ext
7407 cat >>conftest.$ac_ext <<_ACEOF
7408 /* end confdefs.h. */
7409
7410 int
7411 main ()
7412 {
7413 extern int _nl_msg_cat_cntr;
7414 return _nl_msg_cat_cntr
7415 ;
7416 return 0;
7417 }
7418 _ACEOF
7419 rm -f conftest.$ac_objext conftest$ac_exeext
7420 if { (ac_try="$ac_link"
7421 case "(($ac_try" in
7422 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
7423 *) ac_try_echo=$ac_try;;
7424 esac
7425 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
7426 $as_echo "$ac_try_echo") >&5
7427 (eval "$ac_link") 2>conftest.er1
7428 ac_status=$?
7429 grep -v '^ *+' conftest.er1 >conftest.err
7430 rm -f conftest.er1
7431 cat conftest.err >&5
7432 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
7433 (exit $ac_status); } && {
7434 test -z "$ac_c_werror_flag" ||
7435 test ! -s conftest.err
7436 } && test -s conftest$ac_exeext && {
7437 test "$cross_compiling" = yes ||
7438 $as_test_x conftest$ac_exeext
7439 }; then
7440 CATOBJEXT=.gmo
7441 DATADIRNAME=share
7442 else
7443 $as_echo "$as_me: failed program was:" >&5
7444 sed 's/^/| /' conftest.$ac_ext >&5
7445
7446 case $host in
7447 *-*-solaris*)
7448 { $as_echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5
7449 $as_echo_n "checking for bind_textdomain_codeset... " >&6; }
7450 if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then
7451 $as_echo_n "(cached) " >&6
7452 else
7453 cat >conftest.$ac_ext <<_ACEOF
7454 /* confdefs.h. */
7455 _ACEOF
7456 cat confdefs.h >>conftest.$ac_ext
7457 cat >>conftest.$ac_ext <<_ACEOF
7458 /* end confdefs.h. */
7459 /* Define bind_textdomain_codeset to an innocuous variant, in case <limits.h> declares bind_textdomain_codeset.
7460 For example, HP-UX 11i <limits.h> declares gettimeofday. */
7461 #define bind_textdomain_codeset innocuous_bind_textdomain_codeset
7462
7463 /* System header to define __stub macros and hopefully few prototypes,
7464 which can conflict with char bind_textdomain_codeset (); below.
7465 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
7466 <limits.h> exists even on freestanding compilers. */
7467
7468 #ifdef __STDC__
7469 # include <limits.h>
7470 #else
7471 # include <assert.h>
7472 #endif
7473
7474 #undef bind_textdomain_codeset
7475
7476 /* Override any GCC internal prototype to avoid an error.
7477 Use char because int might match the return type of a GCC
7478 builtin and then its argument prototype would still apply. */
7479 #ifdef __cplusplus
7480 extern "C"
7481 #endif
7482 char bind_textdomain_codeset ();
7483 /* The GNU C library defines this for functions which it implements
7484 to always fail with ENOSYS. Some functions are actually named
7485 something starting with __ and the normal name is an alias. */
7486 #if defined __stub_bind_textdomain_codeset || defined __stub___bind_textdomain_codeset
7487 choke me
7488 #endif
7489
7490 int
7491 main ()
7492 {
7493 return bind_textdomain_codeset ();
7494 ;
7495 return 0;
7496 }
7497 _ACEOF
7498 rm -f conftest.$ac_objext conftest$ac_exeext
7499 if { (ac_try="$ac_link"
7500 case "(($ac_try" in
7501 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
7502 *) ac_try_echo=$ac_try;;
7503 esac
7504 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
7505 $as_echo "$ac_try_echo") >&5
7506 (eval "$ac_link") 2>conftest.er1
7507 ac_status=$?
7508 grep -v '^ *+' conftest.er1 >conftest.err
7509 rm -f conftest.er1
7510 cat conftest.err >&5
7511 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
7512 (exit $ac_status); } && {
7513 test -z "$ac_c_werror_flag" ||
7514 test ! -s conftest.err
7515 } && test -s conftest$ac_exeext && {
7516 test "$cross_compiling" = yes ||
7517 $as_test_x conftest$ac_exeext
7518 }; then
7519 ac_cv_func_bind_textdomain_codeset=yes
7520 else
7521 $as_echo "$as_me: failed program was:" >&5
7522 sed 's/^/| /' conftest.$ac_ext >&5
7523
7524 ac_cv_func_bind_textdomain_codeset=no
7525 fi
7526
7527 rm -rf conftest.dSYM
7528 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
7529 conftest$ac_exeext conftest.$ac_ext
7530 fi
7531 { $as_echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5
7532 $as_echo "$ac_cv_func_bind_textdomain_codeset" >&6; }
7533 if test "x$ac_cv_func_bind_textdomain_codeset" = x""yes; then
7534 CATOBJEXT=.gmo
7535 DATADIRNAME=share
7536 else
7537 CATOBJEXT=.mo
7538 DATADIRNAME=lib
7539 fi
7540
7541 ;;
7542 *)
7543 CATOBJEXT=.mo
7544 DATADIRNAME=lib
7545 ;;
7546 esac
7547 fi
7548
7549 rm -rf conftest.dSYM
7550 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
7551 conftest$ac_exeext conftest.$ac_ext
7552 LIBS="$glib_save_LIBS"
7553 INSTOBJEXT=.mo
7554 else
7555 gt_cv_have_gettext=no
7556 fi
7557 fi
7558
7559 fi
7560
7561
7562
7563 if test "$gt_cv_have_gettext" = "yes" ; then
7564
7565 cat >>confdefs.h <<\_ACEOF
7566 #define ENABLE_NLS 1
7567 _ACEOF
7568
7569 fi
7570
7571 if test "$XGETTEXT" != ":"; then
7572 if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
7573 : ;
7574 else
7575 { $as_echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5
7576 $as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; }
7577 XGETTEXT=":"
7578 fi
7579 fi
7580
7581 # We need to process the po/ directory.
7582 POSUB=po
7583
7584 ac_config_commands="$ac_config_commands default-1"
7585
7586
7587 for lang in $ALL_LINGUAS; do
7588 GMOFILES="$GMOFILES $lang.gmo"
7589 POFILES="$POFILES $lang.po"
7590 done
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604 if test "$gt_cv_have_gettext" = "yes"; then
7605 if test "x$ALL_LINGUAS" = "x"; then
7606 LINGUAS=
7607 else
7608 { $as_echo "$as_me:$LINENO: checking for catalogs to be installed" >&5
7609 $as_echo_n "checking for catalogs to be installed... " >&6; }
7610 NEW_LINGUAS=
7611 for presentlang in $ALL_LINGUAS; do
7612 useit=no
7613 if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
7614 desiredlanguages="$LINGUAS"
7615 else
7616 desiredlanguages="$ALL_LINGUAS"
7617 fi
7618 for desiredlang in $desiredlanguages; do
7619 # Use the presentlang catalog if desiredlang is
7620 # a. equal to presentlang, or
7621 # b. a variant of presentlang (because in this case,
7622 # presentlang can be used as a fallback for messages
7623 # which are not translated in the desiredlang catalog).
7624 case "$desiredlang" in
7625 "$presentlang"*) useit=yes;;
7626 esac
7627 done
7628 if test $useit = yes; then
7629 NEW_LINGUAS="$NEW_LINGUAS $presentlang"
7630 fi
7631 done
7632 LINGUAS=$NEW_LINGUAS
7633 { $as_echo "$as_me:$LINENO: result: $LINGUAS" >&5
7634 $as_echo "$LINGUAS" >&6; }
7635 fi
7636
7637 if test -n "$LINGUAS"; then
7638 for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
7639 fi
7640 fi
7641
7642 MKINSTALLDIRS=
7643 if test -n "$ac_aux_dir"; then
7644 MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
7645 fi
7646 if test -z "$MKINSTALLDIRS"; then
7647 MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
7648 fi
7649
7650
7651 test -d po || mkdir po
7652 if test "x$srcdir" != "x."; then
7653 if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
7654 posrcprefix="$srcdir/"
7655 else
7656 posrcprefix="../$srcdir/"
7657 fi
7658 else
7659 posrcprefix="../"
7660 fi
7661 rm -f po/POTFILES
7662 sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
7663 < $srcdir/po/POTFILES.in > po/POTFILES
7664
7665
7666
7667 ac_config_files="$ac_config_files Makefile src/Makefile pixmaps/Makefile po/Makefile.in"
7668
7669
7670 cat >confcache <<\_ACEOF
7671 # This file is a shell script that caches the results of configure
7672 # tests run on this system so they can be shared between configure
7673 # scripts and configure runs, see configure's option --config-cache.
7674 # It is not useful on other systems. If it contains results you don't
7675 # want to keep, you may remove or edit it.
7676 #
7677 # config.status only pays attention to the cache file if you give it
7678 # the --recheck option to rerun configure.
7679 #
7680 # `ac_cv_env_foo' variables (set or unset) will be overridden when
7681 # loading this file, other *unset* `ac_cv_foo' will be assigned the
7682 # following values.
7683
7684 _ACEOF
7685
7686 # The following way of writing the cache mishandles newlines in values,
7687 # but we know of no workaround that is simple, portable, and efficient.
7688 # So, we kill variables containing newlines.
7689 # Ultrix sh set writes to stderr and can't be redirected directly,
7690 # and sets the high bit in the cache file unless we assign to the vars.
7691 (
7692 for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
7693 eval ac_val=\$$ac_var
7694 case $ac_val in #(
7695 *${as_nl}*)
7696 case $ac_var in #(
7697 *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
7698 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
7699 esac
7700 case $ac_var in #(
7701 _ | IFS | as_nl) ;; #(
7702 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
7703 *) $as_unset $ac_var ;;
7704 esac ;;
7705 esac
7706 done
7707
7708 (set) 2>&1 |
7709 case $as_nl`(ac_space=' '; set) 2>&1` in #(
7710 *${as_nl}ac_space=\ *)
7711 # `set' does not quote correctly, so add quotes (double-quote
7712 # substitution turns \\\\ into \\, and sed turns \\ into \).
7713 sed -n \
7714 "s/'/'\\\\''/g;
7715 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
7716 ;; #(
7717 *)
7718 # `set' quotes correctly as required by POSIX, so do not add quotes.
7719 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
7720 ;;
7721 esac |
7722 sort
7723 ) |
7724 sed '
7725 /^ac_cv_env_/b end
7726 t clear
7727 :clear
7728 s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
7729 t end
7730 s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
7731 :end' >>confcache
7732 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
7733 if test -w "$cache_file"; then
7734 test "x$cache_file" != "x/dev/null" &&
7735 { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5
7736 $as_echo "$as_me: updating cache $cache_file" >&6;}
7737 cat confcache >$cache_file
7738 else
7739 { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
7740 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
7741 fi
7742 fi
7743 rm -f confcache
7744
7745 test "x$prefix" = xNONE && prefix=$ac_default_prefix
7746 # Let make expand exec_prefix.
7747 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
7748
7749 DEFS=-DHAVE_CONFIG_H
7750
7751 ac_libobjs=
7752 ac_ltlibobjs=
7753 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
7754 # 1. Remove the extension, and $U if already installed.
7755 ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
7756 ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
7757 # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
7758 # will be set to the directory where LIBOBJS objects are built.
7759 ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
7760 ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
7761 done
7762 LIBOBJS=$ac_libobjs
7763
7764 LTLIBOBJS=$ac_ltlibobjs
7765
7766
7767 if test -n "$EXEEXT"; then
7768 am__EXEEXT_TRUE=
7769 am__EXEEXT_FALSE='#'
7770 else
7771 am__EXEEXT_TRUE='#'
7772 am__EXEEXT_FALSE=
7773 fi
7774
7775 if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
7776 { { $as_echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
7777 Usually this means the macro was only invoked conditionally." >&5
7778 $as_echo "$as_me: error: conditional \"AMDEP\" was never defined.
7779 Usually this means the macro was only invoked conditionally." >&2;}
7780 { (exit 1); exit 1; }; }
7781 fi
7782 if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
7783 { { $as_echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
7784 Usually this means the macro was only invoked conditionally." >&5
7785 $as_echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
7786 Usually this means the macro was only invoked conditionally." >&2;}
7787 { (exit 1); exit 1; }; }
7788 fi
7789 if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
7790 { { $as_echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined.
7791 Usually this means the macro was only invoked conditionally." >&5
7792 $as_echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
7793 Usually this means the macro was only invoked conditionally." >&2;}
7794 { (exit 1); exit 1; }; }
7795 fi
7796 if test -z "${PLATFORM_WIN32_TRUE}" && test -z "${PLATFORM_WIN32_FALSE}"; then
7797 { { $as_echo "$as_me:$LINENO: error: conditional \"PLATFORM_WIN32\" was never defined.
7798 Usually this means the macro was only invoked conditionally." >&5
7799 $as_echo "$as_me: error: conditional \"PLATFORM_WIN32\" was never defined.
7800 Usually this means the macro was only invoked conditionally." >&2;}
7801 { (exit 1); exit 1; }; }
7802 fi
7803 if test -z "${PLATFORM_UNIX_TRUE}" && test -z "${PLATFORM_UNIX_FALSE}"; then
7804 { { $as_echo "$as_me:$LINENO: error: conditional \"PLATFORM_UNIX\" was never defined.
7805 Usually this means the macro was only invoked conditionally." >&5
7806 $as_echo "$as_me: error: conditional \"PLATFORM_UNIX\" was never defined.
7807 Usually this means the macro was only invoked conditionally." >&2;}
7808 { (exit 1); exit 1; }; }
7809 fi
7810 if test -z "${HAVE_FFTW3_TRUE}" && test -z "${HAVE_FFTW3_FALSE}"; then
7811 { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_FFTW3\" was never defined.
7812 Usually this means the macro was only invoked conditionally." >&5
7813 $as_echo "$as_me: error: conditional \"HAVE_FFTW3\" was never defined.
7814 Usually this means the macro was only invoked conditionally." >&2;}
7815 { (exit 1); exit 1; }; }
7816 fi
7817
7818 ac_config_commands="$ac_config_commands po/stamp-it"
7819
7820
7821
7822 : ${CONFIG_STATUS=./config.status}
7823 ac_write_fail=0
7824 ac_clean_files_save=$ac_clean_files
7825 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
7826 { $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
7827 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
7828 cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
7829 #! $SHELL
7830 # Generated by $as_me.
7831 # Run this file to recreate the current configuration.
7832 # Compiler output produced by configure, useful for debugging
7833 # configure, is in config.log if it exists.
7834
7835 debug=false
7836 ac_cs_recheck=false
7837 ac_cs_silent=false
7838 SHELL=\${CONFIG_SHELL-$SHELL}
7839 _ACEOF
7840
7841 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
7842 ## --------------------- ##
7843 ## M4sh Initialization. ##
7844 ## --------------------- ##
7845
7846 # Be more Bourne compatible
7847 DUALCASE=1; export DUALCASE # for MKS sh
7848 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
7849 emulate sh
7850 NULLCMD=:
7851 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
7852 # is contrary to our usage. Disable this feature.
7853 alias -g '${1+"$@"}'='"$@"'
7854 setopt NO_GLOB_SUBST
7855 else
7856 case `(set -o) 2>/dev/null` in
7857 *posix*) set -o posix ;;
7858 esac
7859
7860 fi
7861
7862
7863
7864
7865 # PATH needs CR
7866 # Avoid depending upon Character Ranges.
7867 as_cr_letters='abcdefghijklmnopqrstuvwxyz'
7868 as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
7869 as_cr_Letters=$as_cr_letters$as_cr_LETTERS
7870 as_cr_digits='0123456789'
7871 as_cr_alnum=$as_cr_Letters$as_cr_digits
7872
7873 as_nl='
7874 '
7875 export as_nl
7876 # Printing a long string crashes Solaris 7 /usr/bin/printf.
7877 as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
7878 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
7879 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
7880 if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
7881 as_echo='printf %s\n'
7882 as_echo_n='printf %s'
7883 else
7884 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
7885 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
7886 as_echo_n='/usr/ucb/echo -n'
7887 else
7888 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
7889 as_echo_n_body='eval
7890 arg=$1;
7891 case $arg in
7892 *"$as_nl"*)
7893 expr "X$arg" : "X\\(.*\\)$as_nl";
7894 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
7895 esac;
7896 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
7897 '
7898 export as_echo_n_body
7899 as_echo_n='sh -c $as_echo_n_body as_echo'
7900 fi
7901 export as_echo_body
7902 as_echo='sh -c $as_echo_body as_echo'
7903 fi
7904
7905 # The user is always right.
7906 if test "${PATH_SEPARATOR+set}" != set; then
7907 PATH_SEPARATOR=:
7908 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
7909 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
7910 PATH_SEPARATOR=';'
7911 }
7912 fi
7913
7914 # Support unset when possible.
7915 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7916 as_unset=unset
7917 else
7918 as_unset=false
7919 fi
7920
7921
7922 # IFS
7923 # We need space, tab and new line, in precisely that order. Quoting is
7924 # there to prevent editors from complaining about space-tab.
7925 # (If _AS_PATH_WALK were called with IFS unset, it would disable word
7926 # splitting by setting IFS to empty value.)
7927 IFS=" "" $as_nl"
7928
7929 # Find who we are. Look in the path if we contain no directory separator.
7930 case $0 in
7931 *[\\/]* ) as_myself=$0 ;;
7932 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7933 for as_dir in $PATH
7934 do
7935 IFS=$as_save_IFS
7936 test -z "$as_dir" && as_dir=.
7937 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
7938 done
7939 IFS=$as_save_IFS
7940
7941 ;;
7942 esac
7943 # We did not find ourselves, most probably we were run as `sh COMMAND'
7944 # in which case we are not to be found in the path.
7945 if test "x$as_myself" = x; then
7946 as_myself=$0
7947 fi
7948 if test ! -f "$as_myself"; then
7949 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
7950 { (exit 1); exit 1; }
7951 fi
7952
7953 # Work around bugs in pre-3.0 UWIN ksh.
7954 for as_var in ENV MAIL MAILPATH
7955 do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
7956 done
7957 PS1='$ '
7958 PS2='> '
7959 PS4='+ '
7960
7961 # NLS nuisances.
7962 LC_ALL=C
7963 export LC_ALL
7964 LANGUAGE=C
7965 export LANGUAGE
7966
7967 # Required to use basename.
7968 if expr a : '\(a\)' >/dev/null 2>&1 &&
7969 test "X`expr 00001 : '.*\(...\)'`" = X001; then
7970 as_expr=expr
7971 else
7972 as_expr=false
7973 fi
7974
7975 if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
7976 as_basename=basename
7977 else
7978 as_basename=false
7979 fi
7980
7981
7982 # Name of the executable.
7983 as_me=`$as_basename -- "$0" ||
7984 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
7985 X"$0" : 'X\(//\)$' \| \
7986 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
7987 $as_echo X/"$0" |
7988 sed '/^.*\/\([^/][^/]*\)\/*$/{
7989 s//\1/
7990 q
7991 }
7992 /^X\/\(\/\/\)$/{
7993 s//\1/
7994 q
7995 }
7996 /^X\/\(\/\).*/{
7997 s//\1/
7998 q
7999 }
8000 s/.*/./; q'`
8001
8002 # CDPATH.
8003 $as_unset CDPATH
8004
8005
8006
8007 as_lineno_1=$LINENO
8008 as_lineno_2=$LINENO
8009 test "x$as_lineno_1" != "x$as_lineno_2" &&
8010 test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
8011
8012 # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
8013 # uniformly replaced by the line number. The first 'sed' inserts a
8014 # line-number line after each line using $LINENO; the second 'sed'
8015 # does the real work. The second script uses 'N' to pair each
8016 # line-number line with the line containing $LINENO, and appends
8017 # trailing '-' during substitution so that $LINENO is not a special
8018 # case at line end.
8019 # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
8020 # scripts with optimization help from Paolo Bonzini. Blame Lee
8021 # E. McMahon (1931-1989) for sed's syntax. :-)
8022 sed -n '
8023 p
8024 /[$]LINENO/=
8025 ' <$as_myself |
8026 sed '
8027 s/[$]LINENO.*/&-/
8028 t lineno
8029 b
8030 :lineno
8031 N
8032 :loop
8033 s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
8034 t loop
8035 s/-\n.*//
8036 ' >$as_me.lineno &&
8037 chmod +x "$as_me.lineno" ||
8038 { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
8039 { (exit 1); exit 1; }; }
8040
8041 # Don't try to exec as it changes $[0], causing all sort of problems
8042 # (the dirname of $[0] is not the place where we might find the
8043 # original and so on. Autoconf is especially sensitive to this).
8044 . "./$as_me.lineno"
8045 # Exit status is that of the last command.
8046 exit
8047 }
8048
8049
8050 if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
8051 as_dirname=dirname
8052 else
8053 as_dirname=false
8054 fi
8055
8056 ECHO_C= ECHO_N= ECHO_T=
8057 case `echo -n x` in
8058 -n*)
8059 case `echo 'x\c'` in
8060 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
8061 *) ECHO_C='\c';;
8062 esac;;
8063 *)
8064 ECHO_N='-n';;
8065 esac
8066 if expr a : '\(a\)' >/dev/null 2>&1 &&
8067 test "X`expr 00001 : '.*\(...\)'`" = X001; then
8068 as_expr=expr
8069 else
8070 as_expr=false
8071 fi
8072
8073 rm -f conf$$ conf$$.exe conf$$.file
8074 if test -d conf$$.dir; then
8075 rm -f conf$$.dir/conf$$.file
8076 else
8077 rm -f conf$$.dir
8078 mkdir conf$$.dir 2>/dev/null
8079 fi
8080 if (echo >conf$$.file) 2>/dev/null; then
8081 if ln -s conf$$.file conf$$ 2>/dev/null; then
8082 as_ln_s='ln -s'
8083 # ... but there are two gotchas:
8084 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
8085 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
8086 # In both cases, we have to default to `cp -p'.
8087 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
8088 as_ln_s='cp -p'
8089 elif ln conf$$.file conf$$ 2>/dev/null; then
8090 as_ln_s=ln
8091 else
8092 as_ln_s='cp -p'
8093 fi
8094 else
8095 as_ln_s='cp -p'
8096 fi
8097 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
8098 rmdir conf$$.dir 2>/dev/null
8099
8100 if mkdir -p . 2>/dev/null; then
8101 as_mkdir_p=:
8102 else
8103 test -d ./-p && rmdir ./-p
8104 as_mkdir_p=false
8105 fi
8106
8107 if test -x / >/dev/null 2>&1; then
8108 as_test_x='test -x'
8109 else
8110 if ls -dL / >/dev/null 2>&1; then
8111 as_ls_L_option=L
8112 else
8113 as_ls_L_option=
8114 fi
8115 as_test_x='
8116 eval sh -c '\''
8117 if test -d "$1"; then
8118 test -d "$1/.";
8119 else
8120 case $1 in
8121 -*)set "./$1";;
8122 esac;
8123 case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
8124 ???[sx]*):;;*)false;;esac;fi
8125 '\'' sh
8126 '
8127 fi
8128 as_executable_p=$as_test_x
8129
8130 # Sed expression to map a string onto a valid CPP name.
8131 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
8132
8133 # Sed expression to map a string onto a valid variable name.
8134 as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
8135
8136
8137 exec 6>&1
8138
8139 # Save the log message, to keep $[0] and so on meaningful, and to
8140 # report actual input values of CONFIG_FILES etc. instead of their
8141 # values after options handling.
8142 ac_log="
8143 This file was extended by Focus Blur $as_me 3.2.6, which was
8144 generated by GNU Autoconf 2.63. Invocation command line was
8145
8146 CONFIG_FILES = $CONFIG_FILES
8147 CONFIG_HEADERS = $CONFIG_HEADERS
8148 CONFIG_LINKS = $CONFIG_LINKS
8149 CONFIG_COMMANDS = $CONFIG_COMMANDS
8150 $ $0 $@
8151
8152 on `(hostname || uname -n) 2>/dev/null | sed 1q`
8153 "
8154
8155 _ACEOF
8156
8157 case $ac_config_files in *"
8158 "*) set x $ac_config_files; shift; ac_config_files=$*;;
8159 esac
8160
8161 case $ac_config_headers in *"
8162 "*) set x $ac_config_headers; shift; ac_config_headers=$*;;
8163 esac
8164
8165
8166 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8167 # Files that config.status was made for.
8168 config_files="$ac_config_files"
8169 config_headers="$ac_config_headers"
8170 config_commands="$ac_config_commands"
8171
8172 _ACEOF
8173
8174 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8175 ac_cs_usage="\
8176 \`$as_me' instantiates files from templates according to the
8177 current configuration.
8178
8179 Usage: $0 [OPTION]... [FILE]...
8180
8181 -h, --help print this help, then exit
8182 -V, --version print version number and configuration settings, then exit
8183 -q, --quiet, --silent
8184 do not print progress messages
8185 -d, --debug don't remove temporary files
8186 --recheck update $as_me by reconfiguring in the same conditions
8187 --file=FILE[:TEMPLATE]
8188 instantiate the configuration file FILE
8189 --header=FILE[:TEMPLATE]
8190 instantiate the configuration header FILE
8191
8192 Configuration files:
8193 $config_files
8194
8195 Configuration headers:
8196 $config_headers
8197
8198 Configuration commands:
8199 $config_commands
8200
8201 Report bugs to <bug-autoconf@gnu.org>."
8202
8203 _ACEOF
8204 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8205 ac_cs_version="\\
8206 Focus Blur config.status 3.2.6
8207 configured by $0, generated by GNU Autoconf 2.63,
8208 with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
8209
8210 Copyright (C) 2008 Free Software Foundation, Inc.
8211 This config.status script is free software; the Free Software Foundation
8212 gives unlimited permission to copy, distribute and modify it."
8213
8214 ac_pwd='$ac_pwd'
8215 srcdir='$srcdir'
8216 INSTALL='$INSTALL'
8217 MKDIR_P='$MKDIR_P'
8218 AWK='$AWK'
8219 test -n "\$AWK" || AWK=awk
8220 _ACEOF
8221
8222 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8223 # The default lists apply if the user does not specify any file.
8224 ac_need_defaults=:
8225 while test $# != 0
8226 do
8227 case $1 in
8228 --*=*)
8229 ac_option=`expr "X$1" : 'X\([^=]*\)='`
8230 ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
8231 ac_shift=:
8232 ;;
8233 *)
8234 ac_option=$1
8235 ac_optarg=$2
8236 ac_shift=shift
8237 ;;
8238 esac
8239
8240 case $ac_option in
8241 # Handling of the options.
8242 -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
8243 ac_cs_recheck=: ;;
8244 --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
8245 $as_echo "$ac_cs_version"; exit ;;
8246 --debug | --debu | --deb | --de | --d | -d )
8247 debug=: ;;
8248 --file | --fil | --fi | --f )
8249 $ac_shift
8250 case $ac_optarg in
8251 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
8252 esac
8253 CONFIG_FILES="$CONFIG_FILES '$ac_optarg'"
8254 ac_need_defaults=false;;
8255 --header | --heade | --head | --hea )
8256 $ac_shift
8257 case $ac_optarg in
8258 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
8259 esac
8260 CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'"
8261 ac_need_defaults=false;;
8262 --he | --h)
8263 # Conflict between --help and --header
8264 { $as_echo "$as_me: error: ambiguous option: $1
8265 Try \`$0 --help' for more information." >&2
8266 { (exit 1); exit 1; }; };;
8267 --help | --hel | -h )
8268 $as_echo "$ac_cs_usage"; exit ;;
8269 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
8270 | -silent | --silent | --silen | --sile | --sil | --si | --s)
8271 ac_cs_silent=: ;;
8272
8273 # This is an error.
8274 -*) { $as_echo "$as_me: error: unrecognized option: $1
8275 Try \`$0 --help' for more information." >&2
8276 { (exit 1); exit 1; }; } ;;
8277
8278 *) ac_config_targets="$ac_config_targets $1"
8279 ac_need_defaults=false ;;
8280
8281 esac
8282 shift
8283 done
8284
8285 ac_configure_extra_args=
8286
8287 if $ac_cs_silent; then
8288 exec 6>/dev/null
8289 ac_configure_extra_args="$ac_configure_extra_args --silent"
8290 fi
8291
8292 _ACEOF
8293 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8294 if \$ac_cs_recheck; then
8295 set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
8296 shift
8297 \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
8298 CONFIG_SHELL='$SHELL'
8299 export CONFIG_SHELL
8300 exec "\$@"
8301 fi
8302
8303 _ACEOF
8304 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8305 exec 5>>config.log
8306 {
8307 echo
8308 sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
8309 ## Running $as_me. ##
8310 _ASBOX
8311 $as_echo "$ac_log"
8312 } >&5
8313
8314 _ACEOF
8315 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8316 #
8317 # INIT-COMMANDS
8318 #
8319 AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
8320
8321
8322 _ACEOF
8323
8324 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8325
8326 # Handling of arguments.
8327 for ac_config_target in $ac_config_targets
8328 do
8329 case $ac_config_target in
8330 "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
8331 "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
8332 "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
8333 "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
8334 "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
8335 "pixmaps/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/Makefile" ;;
8336 "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
8337 "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;;
8338
8339 *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
8340 $as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
8341 { (exit 1); exit 1; }; };;
8342 esac
8343 done
8344
8345
8346 # If the user did not use the arguments to specify the items to instantiate,
8347 # then the envvar interface is used. Set only those that are not.
8348 # We use the long form for the default assignment because of an extremely
8349 # bizarre bug on SunOS 4.1.3.
8350 if $ac_need_defaults; then
8351 test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
8352 test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
8353 test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
8354 fi
8355
8356 # Have a temporary directory for convenience. Make it in the build tree
8357 # simply because there is no reason against having it here, and in addition,
8358 # creating and moving files from /tmp can sometimes cause problems.
8359 # Hook for its removal unless debugging.
8360 # Note that there is a small window in which the directory will not be cleaned:
8361 # after its creation but before its name has been assigned to `$tmp'.
8362 $debug ||
8363 {
8364 tmp=
8365 trap 'exit_status=$?
8366 { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
8367 ' 0
8368 trap '{ (exit 1); exit 1; }' 1 2 13 15
8369 }
8370 # Create a (secure) tmp directory for tmp files.
8371
8372 {
8373 tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
8374 test -n "$tmp" && test -d "$tmp"
8375 } ||
8376 {
8377 tmp=./conf$$-$RANDOM
8378 (umask 077 && mkdir "$tmp")
8379 } ||
8380 {
8381 $as_echo "$as_me: cannot create a temporary directory in ." >&2
8382 { (exit 1); exit 1; }
8383 }
8384
8385 # Set up the scripts for CONFIG_FILES section.
8386 # No need to generate them if there are no CONFIG_FILES.
8387 # This happens for instance with `./config.status config.h'.
8388 if test -n "$CONFIG_FILES"; then
8389
8390
8391 ac_cr='
8392 '
8393 ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
8394 if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
8395 ac_cs_awk_cr='\\r'
8396 else
8397 ac_cs_awk_cr=$ac_cr
8398 fi
8399
8400 echo 'BEGIN {' >"$tmp/subs1.awk" &&
8401 _ACEOF
8402
8403
8404 {
8405 echo "cat >conf$$subs.awk <<_ACEOF" &&
8406 echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
8407 echo "_ACEOF"
8408 } >conf$$subs.sh ||
8409 { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
8410 $as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
8411 { (exit 1); exit 1; }; }
8412 ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
8413 ac_delim='%!_!# '
8414 for ac_last_try in false false false false false :; do
8415 . ./conf$$subs.sh ||
8416 { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
8417 $as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
8418 { (exit 1); exit 1; }; }
8419
8420 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
8421 if test $ac_delim_n = $ac_delim_num; then
8422 break
8423 elif $ac_last_try; then
8424 { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
8425 $as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
8426 { (exit 1); exit 1; }; }
8427 else
8428 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
8429 fi
8430 done
8431 rm -f conf$$subs.sh
8432
8433 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8434 cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
8435 _ACEOF
8436 sed -n '
8437 h
8438 s/^/S["/; s/!.*/"]=/
8439 p
8440 g
8441 s/^[^!]*!//
8442 :repl
8443 t repl
8444 s/'"$ac_delim"'$//
8445 t delim
8446 :nl
8447 h
8448 s/\(.\{148\}\).*/\1/
8449 t more1
8450 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
8451 p
8452 n
8453 b repl
8454 :more1
8455 s/["\\]/\\&/g; s/^/"/; s/$/"\\/
8456 p
8457 g
8458 s/.\{148\}//
8459 t nl
8460 :delim
8461 h
8462 s/\(.\{148\}\).*/\1/
8463 t more2
8464 s/["\\]/\\&/g; s/^/"/; s/$/"/
8465 p
8466 b
8467 :more2
8468 s/["\\]/\\&/g; s/^/"/; s/$/"\\/
8469 p
8470 g
8471 s/.\{148\}//
8472 t delim
8473 ' <conf$$subs.awk | sed '
8474 /^[^""]/{
8475 N
8476 s/\n//
8477 }
8478 ' >>$CONFIG_STATUS || ac_write_fail=1
8479 rm -f conf$$subs.awk
8480 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8481 _ACAWK
8482 cat >>"\$tmp/subs1.awk" <<_ACAWK &&
8483 for (key in S) S_is_set[key] = 1
8484 FS = ""
8485
8486 }
8487 {
8488 line = $ 0
8489 nfields = split(line, field, "@")
8490 substed = 0
8491 len = length(field[1])
8492 for (i = 2; i < nfields; i++) {
8493 key = field[i]
8494 keylen = length(key)
8495 if (S_is_set[key]) {
8496 value = S[key]
8497 line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
8498 len += length(value) + length(field[++i])
8499 substed = 1
8500 } else
8501 len += 1 + keylen
8502 }
8503
8504 print line
8505 }
8506
8507 _ACAWK
8508 _ACEOF
8509 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8510 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
8511 sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
8512 else
8513 cat
8514 fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
8515 || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5
8516 $as_echo "$as_me: error: could not setup config files machinery" >&2;}
8517 { (exit 1); exit 1; }; }
8518 _ACEOF
8519
8520 # VPATH may cause trouble with some makes, so we remove $(srcdir),
8521 # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
8522 # trailing colons and then remove the whole line if VPATH becomes empty
8523 # (actually we leave an empty line to preserve line numbers).
8524 if test "x$srcdir" = x.; then
8525 ac_vpsub='/^[ ]*VPATH[ ]*=/{
8526 s/:*\$(srcdir):*/:/
8527 s/:*\${srcdir}:*/:/
8528 s/:*@srcdir@:*/:/
8529 s/^\([^=]*=[ ]*\):*/\1/
8530 s/:*$//
8531 s/^[^=]*=[ ]*$//
8532 }'
8533 fi
8534
8535 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8536 fi # test -n "$CONFIG_FILES"
8537
8538 # Set up the scripts for CONFIG_HEADERS section.
8539 # No need to generate them if there are no CONFIG_HEADERS.
8540 # This happens for instance with `./config.status Makefile'.
8541 if test -n "$CONFIG_HEADERS"; then
8542 cat >"$tmp/defines.awk" <<\_ACAWK ||
8543 BEGIN {
8544 _ACEOF
8545
8546 # Transform confdefs.h into an awk script `defines.awk', embedded as
8547 # here-document in config.status, that substitutes the proper values into
8548 # config.h.in to produce config.h.
8549
8550 # Create a delimiter string that does not exist in confdefs.h, to ease
8551 # handling of long lines.
8552 ac_delim='%!_!# '
8553 for ac_last_try in false false :; do
8554 ac_t=`sed -n "/$ac_delim/p" confdefs.h`
8555 if test -z "$ac_t"; then
8556 break
8557 elif $ac_last_try; then
8558 { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5
8559 $as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;}
8560 { (exit 1); exit 1; }; }
8561 else
8562 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
8563 fi
8564 done
8565
8566 # For the awk script, D is an array of macro values keyed by name,
8567 # likewise P contains macro parameters if any. Preserve backslash
8568 # newline sequences.
8569
8570 ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
8571 sed -n '
8572 s/.\{148\}/&'"$ac_delim"'/g
8573 t rset
8574 :rset
8575 s/^[ ]*#[ ]*define[ ][ ]*/ /
8576 t def
8577 d
8578 :def
8579 s/\\$//
8580 t bsnl
8581 s/["\\]/\\&/g
8582 s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
8583 D["\1"]=" \3"/p
8584 s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
8585 d
8586 :bsnl
8587 s/["\\]/\\&/g
8588 s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
8589 D["\1"]=" \3\\\\\\n"\\/p
8590 t cont
8591 s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
8592 t cont
8593 d
8594 :cont
8595 n
8596 s/.\{148\}/&'"$ac_delim"'/g
8597 t clear
8598 :clear
8599 s/\\$//
8600 t bsnlc
8601 s/["\\]/\\&/g; s/^/"/; s/$/"/p
8602 d
8603 :bsnlc
8604 s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
8605 b cont
8606 ' <confdefs.h | sed '
8607 s/'"$ac_delim"'/"\\\
8608 "/g' >>$CONFIG_STATUS || ac_write_fail=1
8609
8610 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8611 for (key in D) D_is_set[key] = 1
8612 FS = ""
8613 }
8614 /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
8615 line = \$ 0
8616 split(line, arg, " ")
8617 if (arg[1] == "#") {
8618 defundef = arg[2]
8619 mac1 = arg[3]
8620 } else {
8621 defundef = substr(arg[1], 2)
8622 mac1 = arg[2]
8623 }
8624 split(mac1, mac2, "(") #)
8625 macro = mac2[1]
8626 prefix = substr(line, 1, index(line, defundef) - 1)
8627 if (D_is_set[macro]) {
8628 # Preserve the white space surrounding the "#".
8629 print prefix "define", macro P[macro] D[macro]
8630 next
8631 } else {
8632 # Replace #undef with comments. This is necessary, for example,
8633 # in the case of _POSIX_SOURCE, which is predefined and required
8634 # on some systems where configure will not decide to define it.
8635 if (defundef == "undef") {
8636 print "/*", prefix defundef, macro, "*/"
8637 next
8638 }
8639 }
8640 }
8641 { print }
8642 _ACAWK
8643 _ACEOF
8644 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8645 { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5
8646 $as_echo "$as_me: error: could not setup config headers machinery" >&2;}
8647 { (exit 1); exit 1; }; }
8648 fi # test -n "$CONFIG_HEADERS"
8649
8650
8651 eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
8652 shift
8653 for ac_tag
8654 do
8655 case $ac_tag in
8656 :[FHLC]) ac_mode=$ac_tag; continue;;
8657 esac
8658 case $ac_mode$ac_tag in
8659 :[FHL]*:*);;
8660 :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5
8661 $as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
8662 { (exit 1); exit 1; }; };;
8663 :[FH]-) ac_tag=-:-;;
8664 :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
8665 esac
8666 ac_save_IFS=$IFS
8667 IFS=:
8668 set x $ac_tag
8669 IFS=$ac_save_IFS
8670 shift
8671 ac_file=$1
8672 shift
8673
8674 case $ac_mode in
8675 :L) ac_source=$1;;
8676 :[FH])
8677 ac_file_inputs=
8678 for ac_f
8679 do
8680 case $ac_f in
8681 -) ac_f="$tmp/stdin";;
8682 *) # Look for the file first in the build tree, then in the source tree
8683 # (if the path is not absolute). The absolute path cannot be DOS-style,
8684 # because $ac_f cannot contain `:'.
8685 test -f "$ac_f" ||
8686 case $ac_f in
8687 [\\/$]*) false;;
8688 *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
8689 esac ||
8690 { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
8691 $as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
8692 { (exit 1); exit 1; }; };;
8693 esac
8694 case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
8695 ac_file_inputs="$ac_file_inputs '$ac_f'"
8696 done
8697
8698 # Let's still pretend it is `configure' which instantiates (i.e., don't
8699 # use $as_me), people would be surprised to read:
8700 # /* config.h. Generated by config.status. */
8701 configure_input='Generated from '`
8702 $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
8703 `' by configure.'
8704 if test x"$ac_file" != x-; then
8705 configure_input="$ac_file. $configure_input"
8706 { $as_echo "$as_me:$LINENO: creating $ac_file" >&5
8707 $as_echo "$as_me: creating $ac_file" >&6;}
8708 fi
8709 # Neutralize special characters interpreted by sed in replacement strings.
8710 case $configure_input in #(
8711 *\&* | *\|* | *\\* )
8712 ac_sed_conf_input=`$as_echo "$configure_input" |
8713 sed 's/[\\\\&|]/\\\\&/g'`;; #(
8714 *) ac_sed_conf_input=$configure_input;;
8715 esac
8716
8717 case $ac_tag in
8718 *:-:* | *:-) cat >"$tmp/stdin" \
8719 || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
8720 $as_echo "$as_me: error: could not create $ac_file" >&2;}
8721 { (exit 1); exit 1; }; } ;;
8722 esac
8723 ;;
8724 esac
8725
8726 ac_dir=`$as_dirname -- "$ac_file" ||
8727 $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
8728 X"$ac_file" : 'X\(//\)[^/]' \| \
8729 X"$ac_file" : 'X\(//\)$' \| \
8730 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
8731 $as_echo X"$ac_file" |
8732 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
8733 s//\1/
8734 q
8735 }
8736 /^X\(\/\/\)[^/].*/{
8737 s//\1/
8738 q
8739 }
8740 /^X\(\/\/\)$/{
8741 s//\1/
8742 q
8743 }
8744 /^X\(\/\).*/{
8745 s//\1/
8746 q
8747 }
8748 s/.*/./; q'`
8749 { as_dir="$ac_dir"
8750 case $as_dir in #(
8751 -*) as_dir=./$as_dir;;
8752 esac
8753 test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
8754 as_dirs=
8755 while :; do
8756 case $as_dir in #(
8757 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
8758 *) as_qdir=$as_dir;;
8759 esac
8760 as_dirs="'$as_qdir' $as_dirs"
8761 as_dir=`$as_dirname -- "$as_dir" ||
8762 $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
8763 X"$as_dir" : 'X\(//\)[^/]' \| \
8764 X"$as_dir" : 'X\(//\)$' \| \
8765 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
8766 $as_echo X"$as_dir" |
8767 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
8768 s//\1/
8769 q
8770 }
8771 /^X\(\/\/\)[^/].*/{
8772 s//\1/
8773 q
8774 }
8775 /^X\(\/\/\)$/{
8776 s//\1/
8777 q
8778 }
8779 /^X\(\/\).*/{
8780 s//\1/
8781 q
8782 }
8783 s/.*/./; q'`
8784 test -d "$as_dir" && break
8785 done
8786 test -z "$as_dirs" || eval "mkdir $as_dirs"
8787 } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
8788 $as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
8789 { (exit 1); exit 1; }; }; }
8790 ac_builddir=.
8791
8792 case "$ac_dir" in
8793 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
8794 *)
8795 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
8796 # A ".." for each directory in $ac_dir_suffix.
8797 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
8798 case $ac_top_builddir_sub in
8799 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
8800 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
8801 esac ;;
8802 esac
8803 ac_abs_top_builddir=$ac_pwd
8804 ac_abs_builddir=$ac_pwd$ac_dir_suffix
8805 # for backward compatibility:
8806 ac_top_builddir=$ac_top_build_prefix
8807
8808 case $srcdir in
8809 .) # We are building in place.
8810 ac_srcdir=.
8811 ac_top_srcdir=$ac_top_builddir_sub
8812 ac_abs_top_srcdir=$ac_pwd ;;
8813 [\\/]* | ?:[\\/]* ) # Absolute name.
8814 ac_srcdir=$srcdir$ac_dir_suffix;
8815 ac_top_srcdir=$srcdir
8816 ac_abs_top_srcdir=$srcdir ;;
8817 *) # Relative name.
8818 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
8819 ac_top_srcdir=$ac_top_build_prefix$srcdir
8820 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
8821 esac
8822 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
8823
8824
8825 case $ac_mode in
8826 :F)
8827 #
8828 # CONFIG_FILE
8829 #
8830
8831 case $INSTALL in
8832 [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
8833 *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
8834 esac
8835 ac_MKDIR_P=$MKDIR_P
8836 case $MKDIR_P in
8837 [\\/$]* | ?:[\\/]* ) ;;
8838 */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
8839 esac
8840 _ACEOF
8841
8842 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8843 # If the template does not know about datarootdir, expand it.
8844 # FIXME: This hack should be removed a few years after 2.60.
8845 ac_datarootdir_hack=; ac_datarootdir_seen=
8846
8847 ac_sed_dataroot='
8848 /datarootdir/ {
8849 p
8850 q
8851 }
8852 /@datadir@/p
8853 /@docdir@/p
8854 /@infodir@/p
8855 /@localedir@/p
8856 /@mandir@/p
8857 '
8858 case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
8859 *datarootdir*) ac_datarootdir_seen=yes;;
8860 *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
8861 { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
8862 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
8863 _ACEOF
8864 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8865 ac_datarootdir_hack='
8866 s&@datadir@&$datadir&g
8867 s&@docdir@&$docdir&g
8868 s&@infodir@&$infodir&g
8869 s&@localedir@&$localedir&g
8870 s&@mandir@&$mandir&g
8871 s&\\\${datarootdir}&$datarootdir&g' ;;
8872 esac
8873 _ACEOF
8874
8875 # Neutralize VPATH when `$srcdir' = `.'.
8876 # Shell code in configure.ac might set extrasub.
8877 # FIXME: do we really want to maintain this feature?
8878 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
8879 ac_sed_extra="$ac_vpsub
8880 $extrasub
8881 _ACEOF
8882 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
8883 :t
8884 /@[a-zA-Z_][a-zA-Z_0-9]*@/!b
8885 s|@configure_input@|$ac_sed_conf_input|;t t
8886 s&@top_builddir@&$ac_top_builddir_sub&;t t
8887 s&@top_build_prefix@&$ac_top_build_prefix&;t t
8888 s&@srcdir@&$ac_srcdir&;t t
8889 s&@abs_srcdir@&$ac_abs_srcdir&;t t
8890 s&@top_srcdir@&$ac_top_srcdir&;t t
8891 s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
8892 s&@builddir@&$ac_builddir&;t t
8893 s&@abs_builddir@&$ac_abs_builddir&;t t
8894 s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
8895 s&@INSTALL@&$ac_INSTALL&;t t
8896 s&@MKDIR_P@&$ac_MKDIR_P&;t t
8897 $ac_datarootdir_hack
8898 "
8899 eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
8900 || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
8901 $as_echo "$as_me: error: could not create $ac_file" >&2;}
8902 { (exit 1); exit 1; }; }
8903
8904 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
8905 { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
8906 { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
8907 { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
8908 which seems to be undefined. Please make sure it is defined." >&5
8909 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
8910 which seems to be undefined. Please make sure it is defined." >&2;}
8911
8912 rm -f "$tmp/stdin"
8913 case $ac_file in
8914 -) cat "$tmp/out" && rm -f "$tmp/out";;
8915 *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
8916 esac \
8917 || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
8918 $as_echo "$as_me: error: could not create $ac_file" >&2;}
8919 { (exit 1); exit 1; }; }
8920 ;;
8921 :H)
8922 #
8923 # CONFIG_HEADER
8924 #
8925 if test x"$ac_file" != x-; then
8926 {
8927 $as_echo "/* $configure_input */" \
8928 && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
8929 } >"$tmp/config.h" \
8930 || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
8931 $as_echo "$as_me: error: could not create $ac_file" >&2;}
8932 { (exit 1); exit 1; }; }
8933 if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
8934 { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5
8935 $as_echo "$as_me: $ac_file is unchanged" >&6;}
8936 else
8937 rm -f "$ac_file"
8938 mv "$tmp/config.h" "$ac_file" \
8939 || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
8940 $as_echo "$as_me: error: could not create $ac_file" >&2;}
8941 { (exit 1); exit 1; }; }
8942 fi
8943 else
8944 $as_echo "/* $configure_input */" \
8945 && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
8946 || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5
8947 $as_echo "$as_me: error: could not create -" >&2;}
8948 { (exit 1); exit 1; }; }
8949 fi
8950 # Compute "$ac_file"'s index in $config_headers.
8951 _am_arg="$ac_file"
8952 _am_stamp_count=1
8953 for _am_header in $config_headers :; do
8954 case $_am_header in
8955 $_am_arg | $_am_arg:* )
8956 break ;;
8957 * )
8958 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
8959 esac
8960 done
8961 echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
8962 $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
8963 X"$_am_arg" : 'X\(//\)[^/]' \| \
8964 X"$_am_arg" : 'X\(//\)$' \| \
8965 X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
8966 $as_echo X"$_am_arg" |
8967 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
8968 s//\1/
8969 q
8970 }
8971 /^X\(\/\/\)[^/].*/{
8972 s//\1/
8973 q
8974 }
8975 /^X\(\/\/\)$/{
8976 s//\1/
8977 q
8978 }
8979 /^X\(\/\).*/{
8980 s//\1/
8981 q
8982 }
8983 s/.*/./; q'`/stamp-h$_am_stamp_count
8984 ;;
8985
8986 :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5
8987 $as_echo "$as_me: executing $ac_file commands" >&6;}
8988 ;;
8989 esac
8990
8991
8992 case $ac_file$ac_mode in
8993 "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
8994 # Autoconf 2.62 quotes --file arguments for eval, but not when files
8995 # are listed without --file. Let's play safe and only enable the eval
8996 # if we detect the quoting.
8997 case $CONFIG_FILES in
8998 *\'*) eval set x "$CONFIG_FILES" ;;
8999 *) set x $CONFIG_FILES ;;
9000 esac
9001 shift
9002 for mf
9003 do
9004 # Strip MF so we end up with the name of the file.
9005 mf=`echo "$mf" | sed -e 's/:.*$//'`
9006 # Check whether this is an Automake generated Makefile or not.
9007 # We used to match only the files named `Makefile.in', but
9008 # some people rename them; so instead we look at the file content.
9009 # Grep'ing the first line is not enough: some people post-process
9010 # each Makefile.in and add a new line on top of each file to say so.
9011 # Grep'ing the whole file is not good either: AIX grep has a line
9012 # limit of 2048, but all sed's we know have understand at least 4000.
9013 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
9014 dirpart=`$as_dirname -- "$mf" ||
9015 $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9016 X"$mf" : 'X\(//\)[^/]' \| \
9017 X"$mf" : 'X\(//\)$' \| \
9018 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
9019 $as_echo X"$mf" |
9020 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
9021 s//\1/
9022 q
9023 }
9024 /^X\(\/\/\)[^/].*/{
9025 s//\1/
9026 q
9027 }
9028 /^X\(\/\/\)$/{
9029 s//\1/
9030 q
9031 }
9032 /^X\(\/\).*/{
9033 s//\1/
9034 q
9035 }
9036 s/.*/./; q'`
9037 else
9038 continue
9039 fi
9040 # Extract the definition of DEPDIR, am__include, and am__quote
9041 # from the Makefile without running `make'.
9042 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
9043 test -z "$DEPDIR" && continue
9044 am__include=`sed -n 's/^am__include = //p' < "$mf"`
9045 test -z "am__include" && continue
9046 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
9047 # When using ansi2knr, U may be empty or an underscore; expand it
9048 U=`sed -n 's/^U = //p' < "$mf"`
9049 # Find all dependency output files, they are included files with
9050 # $(DEPDIR) in their names. We invoke sed twice because it is the
9051 # simplest approach to changing $(DEPDIR) to its actual value in the
9052 # expansion.
9053 for file in `sed -n "
9054 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
9055 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
9056 # Make sure the directory exists.
9057 test -f "$dirpart/$file" && continue
9058 fdir=`$as_dirname -- "$file" ||
9059 $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9060 X"$file" : 'X\(//\)[^/]' \| \
9061 X"$file" : 'X\(//\)$' \| \
9062 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
9063 $as_echo X"$file" |
9064 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
9065 s//\1/
9066 q
9067 }
9068 /^X\(\/\/\)[^/].*/{
9069 s//\1/
9070 q
9071 }
9072 /^X\(\/\/\)$/{
9073 s//\1/
9074 q
9075 }
9076 /^X\(\/\).*/{
9077 s//\1/
9078 q
9079 }
9080 s/.*/./; q'`
9081 { as_dir=$dirpart/$fdir
9082 case $as_dir in #(
9083 -*) as_dir=./$as_dir;;
9084 esac
9085 test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
9086 as_dirs=
9087 while :; do
9088 case $as_dir in #(
9089 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
9090 *) as_qdir=$as_dir;;
9091 esac
9092 as_dirs="'$as_qdir' $as_dirs"
9093 as_dir=`$as_dirname -- "$as_dir" ||
9094 $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
9095 X"$as_dir" : 'X\(//\)[^/]' \| \
9096 X"$as_dir" : 'X\(//\)$' \| \
9097 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
9098 $as_echo X"$as_dir" |
9099 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
9100 s//\1/
9101 q
9102 }
9103 /^X\(\/\/\)[^/].*/{
9104 s//\1/
9105 q
9106 }
9107 /^X\(\/\/\)$/{
9108 s//\1/
9109 q
9110 }
9111 /^X\(\/\).*/{
9112 s//\1/
9113 q
9114 }
9115 s/.*/./; q'`
9116 test -d "$as_dir" && break
9117 done
9118 test -z "$as_dirs" || eval "mkdir $as_dirs"
9119 } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
9120 $as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
9121 { (exit 1); exit 1; }; }; }
9122 # echo "creating $dirpart/$file"
9123 echo '# dummy' > "$dirpart/$file"
9124 done
9125 done
9126 }
9127 ;;
9128 "default-1":C) case "$CONFIG_FILES" in *po/Makefile.in*)
9129 sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
9130 esac ;;
9131 "po/stamp-it":C)
9132 if ! grep "^# INTLTOOL_MAKEFILE$" "po/Makefile.in" > /dev/null ; then
9133 { { $as_echo "$as_me:$LINENO: error: po/Makefile.in.in was not created by intltoolize." >&5
9134 $as_echo "$as_me: error: po/Makefile.in.in was not created by intltoolize." >&2;}
9135 { (exit 1); exit 1; }; }
9136 fi
9137 rm -f "po/stamp-it" "po/stamp-it.tmp" "po/POTFILES" "po/Makefile.tmp"
9138 >"po/stamp-it.tmp"
9139 sed '/^#/d
9140 s/^[[].*] *//
9141 /^[ ]*$/d
9142 '"s|^| $ac_top_srcdir/|" \
9143 "$srcdir/po/POTFILES.in" | sed '$!s/$/ \\/' >"po/POTFILES"
9144
9145 sed '/^POTFILES =/,/[^\\]$/ {
9146 /^POTFILES =/!d
9147 r po/POTFILES
9148 }
9149 ' "po/Makefile.in" >"po/Makefile"
9150 rm -f "po/Makefile.tmp"
9151 mv "po/stamp-it.tmp" "po/stamp-it"
9152 ;;
9153
9154 esac
9155 done # for ac_tag
9156
9157
9158 { (exit 0); exit 0; }
9159 _ACEOF
9160 chmod +x $CONFIG_STATUS
9161 ac_clean_files=$ac_clean_files_save
9162
9163 test $ac_write_fail = 0 ||
9164 { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5
9165 $as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;}
9166 { (exit 1); exit 1; }; }
9167
9168
9169 # configure is writing to config.log, and then calls config.status.
9170 # config.status does its own redirection, appending to config.log.
9171 # Unfortunately, on DOS this fails, as config.log is still kept open
9172 # by configure, so config.status won't be able to write to it; its
9173 # output is simply discarded. So we exec the FD to /dev/null,
9174 # effectively closing config.log, so it can be properly (re)opened and
9175 # appended to by config.status. When coming back to configure, we
9176 # need to make the FD available again.
9177 if test "$no_create" != yes; then
9178 ac_cs_success=:
9179 ac_config_status_args=
9180 test "$silent" = yes &&
9181 ac_config_status_args="$ac_config_status_args --quiet"
9182 exec 5>/dev/null
9183 $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
9184 exec 5>>config.log
9185 # Use ||, not &&, to avoid exiting from the if with $? = 1, which
9186 # would make configure fail if this is the last instruction.
9187 $ac_cs_success || { (exit 1); exit 1; }
9188 fi
9189 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
9190 { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
9191 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
9192 fi
9193
+0
-168
focus-blur/focusblur-3.2.6/configure.ac less more
0 # -*- Autoconf -*-
1 # Process this file with autoconf to produce a configure script.
2
3 AC_PREREQ(2.54)
4 AC_INIT([Focus Blur], [3.2.6], [das atmark dream dot japan], [focusblur])
5 AC_CONFIG_SRCDIR([src/gimpplugin.c])
6 AC_CONFIG_HEADER([config.h])
7 AM_INIT_AUTOMAKE([no-define no-dist-gzip dist-bzip2 dist-xz])
8
9 # Checks for programs.
10 AC_PROG_CC
11 AC_PROG_INSTALL
12 AM_MAINTAINER_MODE
13
14 # Default prefix is decided with pkg-config
15 AC_PREFIX_DEFAULT([NONE])
16
17 #################
18 # Check for Win32
19 #################
20
21 AC_MSG_CHECKING([for some Win32 platform])
22 case "$target_or_host" in
23 *-*-mingw* | *-*-cygwin*)
24 platform_win32=yes
25 PATHSEP=';'
26 ;;
27 *)
28 platform_win32=no
29 PATHSEP=':'
30 ;;
31 esac
32 AC_MSG_RESULT([$platform_win32])
33 AC_SUBST(PATHSEP)
34 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
35 AM_CONDITIONAL(PLATFORM_UNIX, test "$platform_win32" != "yes")
36
37
38 # Checks for libraries.
39
40 # Checks for header files.
41 #AC_HEADER_STDC
42 #AC_CHECK_HEADERS([string.h])
43
44 # Checks for typedefs, structures, and compiler characteristics.
45 AC_C_CONST
46
47 # Checks for library functions.
48
49 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
50 if test "x$GDK_PIXBUF_CSOURCE" = xno; then
51 AC_MSG_ERROR(Could not find gdk-pixbuf-csource in your PATH)
52 fi
53
54 ###############################
55 # Checks for the gimp libraries
56 ###############################
57
58 AC_ARG_WITH(gimp-prefix,
59 AS_HELP_STRING([--with-gimp-prefix=DIR],
60 [search for installed gimp-2.0.pc]),
61 [
62 case "$withval" in
63 yes) AC_MSG_ERROR([give any value for --with-gimp-prefix.]) ;;
64 no) with_gimp_prefix=NONE ;;
65 *)
66 if test "x${withval:0:2}" = "x~/" -a "X$HOME" != "X" ; then
67 with_gimp_prefix="${HOME}${withval:1}"
68 else
69 with_gimp_prefix="$withval"
70 fi
71 if ! with_gimp_prefix=$(cd "$with_gimp_prefix" && pwd) ; then
72 AC_MSG_ERROR([couldn't change directory in ${withval}.])
73 elif ! test -f "${with_gimp_prefix}/lib/pkgconfig/gimp-2.0.pc" ; then
74 AC_MSG_ERROR([gimp-2.0.pc is not installed in ${withval}/lib/pkgconfig])
75 fi ;;
76 esac
77 ], with_gimp_prefix=NONE)
78 if test "X$with_gimp_prefix" != "XNONE" ; then
79 export PKG_CONFIG_PATH="${with_gimp_prefix}/lib/pkgconfig${PKG_CONFIG_PATH+:$PKG_CONFIG_PATH}" LD_LIBRARY_PATH="${with_gimp_prefix}/lib${LD_LIBRARY_PATH+:$LD_LIBRARY_PATH}"
80 fi
81
82 AM_PATH_GIMP_2_0([2.4.0], :, AC_MSG_ERROR([Test for libgimp failed.]))
83 if test "x$with_gimp_prefix" != "XNONE" ; then
84 gimp_libdir="$(echo -n "$GIMP_LIBS" | \
85 sed -e "s;^.*-L\(${with_gimp_prefix}[[^ ]]*\).*$;\1;")"
86 if test -d "$gimp_libdir" ; then
87 GIMP_LIBS="-Wl,-rpath,$gimp_libdir $GIMP_LIBS"
88 fi
89 fi
90
91 ### override variables (prefix options)
92 pkg_config_args="$pkg_name"
93 if test "X$prefix" != "XNONE" ; then
94 pkg_config_args="$pkg_config_args --define-variable=prefix=$prefix"
95 elif test "X$with_gimp_prefix" != "XNONE"; then
96 pkg_config_args="$pkg_config_args --define-variable=prefix=$with_gimp_prefix"
97 ac_default_prefix="$with_gimp_prefix"
98 else
99 ac_default_prefix="$($PKG_CONFIG $pkg_config_args --variable=prefix)"
100 fi
101 if test "X$exec_prefix" != "XNONE"; then
102 pkg_config_args="$pkg_config_args --define-variable=exec_prefix=$exec_prefix"
103 fi
104 GIMP_PLUGIN_DIR="$($PKG_CONFIG $pkg_config_args --variable=gimplibdir)"
105
106 ### user plug-in directory
107 GIMP_USER_PLUGIN_DIR="${HOME}/.gimp-${gimp_pkg_major_version}.${gimp_pkg_minor_version}/plug-ins"
108 AC_SUBST(GIMP_USER_PLUGIN_DIR)
109
110
111 #############################
112 # Threads and multi processor
113 #############################
114
115 AC_ARG_ENABLE(mp,
116 AS_HELP_STRING([--disable-mp],
117 [disable support for multiple processors]))
118 if test "x$enable_mp" != "xno"; then
119 PKG_CHECK_MODULES(GTHREAD, [gthread-2.0],
120 AC_DEFINE(ENABLE_MP, 1,
121 [Define to 1 to enable support for multiple processors.]))
122 fi
123
124
125 ##################
126 # Checks for FFTW3
127 ##################
128
129 AC_CHECK_HEADERS(complex.h)
130
131 have_fftw3=no
132 AC_ARG_WITH(fftw3,
133 AS_HELP_STRING([--without-fftw3], [build without FFTW3 support]))
134 if test x$with_fftw3 != xno; then
135 have_fftw3=yes
136 if test -z "$FFTW3_CFLAGS" && test -z "$FFTW3_LIBS"; then
137 PKG_CHECK_MODULES(FFTW3, fftw3f,
138 AC_DEFINE(HAVE_FFTW3, 1, [Define to 1 if FFTW3 is available]),
139 have_fftw3="no (FFTW3 not found)")
140 fi
141 fi
142
143 AM_CONDITIONAL(HAVE_FFTW3, test "x$have_fftw3" = "xyes")
144
145 AC_SUBST(FFTW3_CFLAGS)
146 AC_SUBST(FFTW3_LIBS)
147
148
149 # gettext i18n support
150
151 GETTEXT_PACKAGE="gimp20-focusblur"
152 AC_SUBST(GETTEXT_PACKAGE)
153 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
154 [The gettext translation domain.])
155 ALL_LINGUAS="it ja ru"
156
157 ######################
158 # Internationalisation
159 ######################
160
161 IT_PROG_INTLTOOL(0.36.3)
162 AM_GLIB_GNU_GETTEXT
163
164
165 AC_CONFIG_FILES([Makefile src/Makefile pixmaps/Makefile po/Makefile.in])
166
167 AC_OUTPUT
+0
-630
focus-blur/focusblur-3.2.6/depcomp less more
0 #! /bin/sh
1 # depcomp - compile a program generating dependencies as side-effects
2
3 scriptversion=2009-04-28.21; # UTC
4
5 # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
6 # Software Foundation, Inc.
7
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2, or (at your option)
11 # any later version.
12
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
17
18 # You should have received a copy of the GNU General Public License
19 # along with this program. If not, see <http://www.gnu.org/licenses/>.
20
21 # As a special exception to the GNU General Public License, if you
22 # distribute this file as part of a program that contains a
23 # configuration script generated by Autoconf, you may include it under
24 # the same distribution terms that you use for the rest of that program.
25
26 # Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
27
28 case $1 in
29 '')
30 echo "$0: No command. Try \`$0 --help' for more information." 1>&2
31 exit 1;
32 ;;
33 -h | --h*)
34 cat <<\EOF
35 Usage: depcomp [--help] [--version] PROGRAM [ARGS]
36
37 Run PROGRAMS ARGS to compile a file, generating dependencies
38 as side-effects.
39
40 Environment variables:
41 depmode Dependency tracking mode.
42 source Source file read by `PROGRAMS ARGS'.
43 object Object file output by `PROGRAMS ARGS'.
44 DEPDIR directory where to store dependencies.
45 depfile Dependency file to output.
46 tmpdepfile Temporary file to use when outputing dependencies.
47 libtool Whether libtool is used (yes/no).
48
49 Report bugs to <bug-automake@gnu.org>.
50 EOF
51 exit $?
52 ;;
53 -v | --v*)
54 echo "depcomp $scriptversion"
55 exit $?
56 ;;
57 esac
58
59 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
60 echo "depcomp: Variables source, object and depmode must be set" 1>&2
61 exit 1
62 fi
63
64 # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
65 depfile=${depfile-`echo "$object" |
66 sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
67 tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
68
69 rm -f "$tmpdepfile"
70
71 # Some modes work just like other modes, but use different flags. We
72 # parameterize here, but still list the modes in the big case below,
73 # to make depend.m4 easier to write. Note that we *cannot* use a case
74 # here, because this file can only contain one case statement.
75 if test "$depmode" = hp; then
76 # HP compiler uses -M and no extra arg.
77 gccflag=-M
78 depmode=gcc
79 fi
80
81 if test "$depmode" = dashXmstdout; then
82 # This is just like dashmstdout with a different argument.
83 dashmflag=-xM
84 depmode=dashmstdout
85 fi
86
87 cygpath_u="cygpath -u -f -"
88 if test "$depmode" = msvcmsys; then
89 # This is just like msvisualcpp but w/o cygpath translation.
90 # Just convert the backslash-escaped backslashes to single forward
91 # slashes to satisfy depend.m4
92 cygpath_u="sed s,\\\\\\\\,/,g"
93 depmode=msvisualcpp
94 fi
95
96 case "$depmode" in
97 gcc3)
98 ## gcc 3 implements dependency tracking that does exactly what
99 ## we want. Yay! Note: for some reason libtool 1.4 doesn't like
100 ## it if -MD -MP comes after the -MF stuff. Hmm.
101 ## Unfortunately, FreeBSD c89 acceptance of flags depends upon
102 ## the command line argument order; so add the flags where they
103 ## appear in depend2.am. Note that the slowdown incurred here
104 ## affects only configure: in makefiles, %FASTDEP% shortcuts this.
105 for arg
106 do
107 case $arg in
108 -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
109 *) set fnord "$@" "$arg" ;;
110 esac
111 shift # fnord
112 shift # $arg
113 done
114 "$@"
115 stat=$?
116 if test $stat -eq 0; then :
117 else
118 rm -f "$tmpdepfile"
119 exit $stat
120 fi
121 mv "$tmpdepfile" "$depfile"
122 ;;
123
124 gcc)
125 ## There are various ways to get dependency output from gcc. Here's
126 ## why we pick this rather obscure method:
127 ## - Don't want to use -MD because we'd like the dependencies to end
128 ## up in a subdir. Having to rename by hand is ugly.
129 ## (We might end up doing this anyway to support other compilers.)
130 ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
131 ## -MM, not -M (despite what the docs say).
132 ## - Using -M directly means running the compiler twice (even worse
133 ## than renaming).
134 if test -z "$gccflag"; then
135 gccflag=-MD,
136 fi
137 "$@" -Wp,"$gccflag$tmpdepfile"
138 stat=$?
139 if test $stat -eq 0; then :
140 else
141 rm -f "$tmpdepfile"
142 exit $stat
143 fi
144 rm -f "$depfile"
145 echo "$object : \\" > "$depfile"
146 alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
147 ## The second -e expression handles DOS-style file names with drive letters.
148 sed -e 's/^[^:]*: / /' \
149 -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
150 ## This next piece of magic avoids the `deleted header file' problem.
151 ## The problem is that when a header file which appears in a .P file
152 ## is deleted, the dependency causes make to die (because there is
153 ## typically no way to rebuild the header). We avoid this by adding
154 ## dummy dependencies for each header file. Too bad gcc doesn't do
155 ## this for us directly.
156 tr ' ' '
157 ' < "$tmpdepfile" |
158 ## Some versions of gcc put a space before the `:'. On the theory
159 ## that the space means something, we add a space to the output as
160 ## well.
161 ## Some versions of the HPUX 10.20 sed can't process this invocation
162 ## correctly. Breaking it into two sed invocations is a workaround.
163 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
164 rm -f "$tmpdepfile"
165 ;;
166
167 hp)
168 # This case exists only to let depend.m4 do its work. It works by
169 # looking at the text of this script. This case will never be run,
170 # since it is checked for above.
171 exit 1
172 ;;
173
174 sgi)
175 if test "$libtool" = yes; then
176 "$@" "-Wp,-MDupdate,$tmpdepfile"
177 else
178 "$@" -MDupdate "$tmpdepfile"
179 fi
180 stat=$?
181 if test $stat -eq 0; then :
182 else
183 rm -f "$tmpdepfile"
184 exit $stat
185 fi
186 rm -f "$depfile"
187
188 if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
189 echo "$object : \\" > "$depfile"
190
191 # Clip off the initial element (the dependent). Don't try to be
192 # clever and replace this with sed code, as IRIX sed won't handle
193 # lines with more than a fixed number of characters (4096 in
194 # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
195 # the IRIX cc adds comments like `#:fec' to the end of the
196 # dependency line.
197 tr ' ' '
198 ' < "$tmpdepfile" \
199 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
200 tr '
201 ' ' ' >> "$depfile"
202 echo >> "$depfile"
203
204 # The second pass generates a dummy entry for each header file.
205 tr ' ' '
206 ' < "$tmpdepfile" \
207 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
208 >> "$depfile"
209 else
210 # The sourcefile does not contain any dependencies, so just
211 # store a dummy comment line, to avoid errors with the Makefile
212 # "include basename.Plo" scheme.
213 echo "#dummy" > "$depfile"
214 fi
215 rm -f "$tmpdepfile"
216 ;;
217
218 aix)
219 # The C for AIX Compiler uses -M and outputs the dependencies
220 # in a .u file. In older versions, this file always lives in the
221 # current directory. Also, the AIX compiler puts `$object:' at the
222 # start of each line; $object doesn't have directory information.
223 # Version 6 uses the directory in both cases.
224 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
225 test "x$dir" = "x$object" && dir=
226 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
227 if test "$libtool" = yes; then
228 tmpdepfile1=$dir$base.u
229 tmpdepfile2=$base.u
230 tmpdepfile3=$dir.libs/$base.u
231 "$@" -Wc,-M
232 else
233 tmpdepfile1=$dir$base.u
234 tmpdepfile2=$dir$base.u
235 tmpdepfile3=$dir$base.u
236 "$@" -M
237 fi
238 stat=$?
239
240 if test $stat -eq 0; then :
241 else
242 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
243 exit $stat
244 fi
245
246 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
247 do
248 test -f "$tmpdepfile" && break
249 done
250 if test -f "$tmpdepfile"; then
251 # Each line is of the form `foo.o: dependent.h'.
252 # Do two passes, one to just change these to
253 # `$object: dependent.h' and one to simply `dependent.h:'.
254 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
255 # That's a tab and a space in the [].
256 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
257 else
258 # The sourcefile does not contain any dependencies, so just
259 # store a dummy comment line, to avoid errors with the Makefile
260 # "include basename.Plo" scheme.
261 echo "#dummy" > "$depfile"
262 fi
263 rm -f "$tmpdepfile"
264 ;;
265
266 icc)
267 # Intel's C compiler understands `-MD -MF file'. However on
268 # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
269 # ICC 7.0 will fill foo.d with something like
270 # foo.o: sub/foo.c
271 # foo.o: sub/foo.h
272 # which is wrong. We want:
273 # sub/foo.o: sub/foo.c
274 # sub/foo.o: sub/foo.h
275 # sub/foo.c:
276 # sub/foo.h:
277 # ICC 7.1 will output
278 # foo.o: sub/foo.c sub/foo.h
279 # and will wrap long lines using \ :
280 # foo.o: sub/foo.c ... \
281 # sub/foo.h ... \
282 # ...
283
284 "$@" -MD -MF "$tmpdepfile"
285 stat=$?
286 if test $stat -eq 0; then :
287 else
288 rm -f "$tmpdepfile"
289 exit $stat
290 fi
291 rm -f "$depfile"
292 # Each line is of the form `foo.o: dependent.h',
293 # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
294 # Do two passes, one to just change these to
295 # `$object: dependent.h' and one to simply `dependent.h:'.
296 sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
297 # Some versions of the HPUX 10.20 sed can't process this invocation
298 # correctly. Breaking it into two sed invocations is a workaround.
299 sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
300 sed -e 's/$/ :/' >> "$depfile"
301 rm -f "$tmpdepfile"
302 ;;
303
304 hp2)
305 # The "hp" stanza above does not work with aCC (C++) and HP's ia64
306 # compilers, which have integrated preprocessors. The correct option
307 # to use with these is +Maked; it writes dependencies to a file named
308 # 'foo.d', which lands next to the object file, wherever that
309 # happens to be.
310 # Much of this is similar to the tru64 case; see comments there.
311 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
312 test "x$dir" = "x$object" && dir=
313 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
314 if test "$libtool" = yes; then
315 tmpdepfile1=$dir$base.d
316 tmpdepfile2=$dir.libs/$base.d
317 "$@" -Wc,+Maked
318 else
319 tmpdepfile1=$dir$base.d
320 tmpdepfile2=$dir$base.d
321 "$@" +Maked
322 fi
323 stat=$?
324 if test $stat -eq 0; then :
325 else
326 rm -f "$tmpdepfile1" "$tmpdepfile2"
327 exit $stat
328 fi
329
330 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
331 do
332 test -f "$tmpdepfile" && break
333 done
334 if test -f "$tmpdepfile"; then
335 sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
336 # Add `dependent.h:' lines.
337 sed -ne '2,${
338 s/^ *//
339 s/ \\*$//
340 s/$/:/
341 p
342 }' "$tmpdepfile" >> "$depfile"
343 else
344 echo "#dummy" > "$depfile"
345 fi
346 rm -f "$tmpdepfile" "$tmpdepfile2"
347 ;;
348
349 tru64)
350 # The Tru64 compiler uses -MD to generate dependencies as a side
351 # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
352 # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
353 # dependencies in `foo.d' instead, so we check for that too.
354 # Subdirectories are respected.
355 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
356 test "x$dir" = "x$object" && dir=
357 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
358
359 if test "$libtool" = yes; then
360 # With Tru64 cc, shared objects can also be used to make a
361 # static library. This mechanism is used in libtool 1.4 series to
362 # handle both shared and static libraries in a single compilation.
363 # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
364 #
365 # With libtool 1.5 this exception was removed, and libtool now
366 # generates 2 separate objects for the 2 libraries. These two
367 # compilations output dependencies in $dir.libs/$base.o.d and
368 # in $dir$base.o.d. We have to check for both files, because
369 # one of the two compilations can be disabled. We should prefer
370 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
371 # automatically cleaned when .libs/ is deleted, while ignoring
372 # the former would cause a distcleancheck panic.
373 tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
374 tmpdepfile2=$dir$base.o.d # libtool 1.5
375 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
376 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
377 "$@" -Wc,-MD
378 else
379 tmpdepfile1=$dir$base.o.d
380 tmpdepfile2=$dir$base.d
381 tmpdepfile3=$dir$base.d
382 tmpdepfile4=$dir$base.d
383 "$@" -MD
384 fi
385
386 stat=$?
387 if test $stat -eq 0; then :
388 else
389 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
390 exit $stat
391 fi
392
393 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
394 do
395 test -f "$tmpdepfile" && break
396 done
397 if test -f "$tmpdepfile"; then
398 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
399 # That's a tab and a space in the [].
400 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
401 else
402 echo "#dummy" > "$depfile"
403 fi
404 rm -f "$tmpdepfile"
405 ;;
406
407 #nosideeffect)
408 # This comment above is used by automake to tell side-effect
409 # dependency tracking mechanisms from slower ones.
410
411 dashmstdout)
412 # Important note: in order to support this mode, a compiler *must*
413 # always write the preprocessed file to stdout, regardless of -o.
414 "$@" || exit $?
415
416 # Remove the call to Libtool.
417 if test "$libtool" = yes; then
418 while test "X$1" != 'X--mode=compile'; do
419 shift
420 done
421 shift
422 fi
423
424 # Remove `-o $object'.
425 IFS=" "
426 for arg
427 do
428 case $arg in
429 -o)
430 shift
431 ;;
432 $object)
433 shift
434 ;;
435 *)
436 set fnord "$@" "$arg"
437 shift # fnord
438 shift # $arg
439 ;;
440 esac
441 done
442
443 test -z "$dashmflag" && dashmflag=-M
444 # Require at least two characters before searching for `:'
445 # in the target name. This is to cope with DOS-style filenames:
446 # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
447 "$@" $dashmflag |
448 sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
449 rm -f "$depfile"
450 cat < "$tmpdepfile" > "$depfile"
451 tr ' ' '
452 ' < "$tmpdepfile" | \
453 ## Some versions of the HPUX 10.20 sed can't process this invocation
454 ## correctly. Breaking it into two sed invocations is a workaround.
455 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
456 rm -f "$tmpdepfile"
457 ;;
458
459 dashXmstdout)
460 # This case only exists to satisfy depend.m4. It is never actually
461 # run, as this mode is specially recognized in the preamble.
462 exit 1
463 ;;
464
465 makedepend)
466 "$@" || exit $?
467 # Remove any Libtool call
468 if test "$libtool" = yes; then
469 while test "X$1" != 'X--mode=compile'; do
470 shift
471 done
472 shift
473 fi
474 # X makedepend
475 shift
476 cleared=no eat=no
477 for arg
478 do
479 case $cleared in
480 no)
481 set ""; shift
482 cleared=yes ;;
483 esac
484 if test $eat = yes; then
485 eat=no
486 continue
487 fi
488 case "$arg" in
489 -D*|-I*)
490 set fnord "$@" "$arg"; shift ;;
491 # Strip any option that makedepend may not understand. Remove
492 # the object too, otherwise makedepend will parse it as a source file.
493 -arch)
494 eat=yes ;;
495 -*|$object)
496 ;;
497 *)
498 set fnord "$@" "$arg"; shift ;;
499 esac
500 done
501 obj_suffix=`echo "$object" | sed 's/^.*\././'`
502 touch "$tmpdepfile"
503 ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
504 rm -f "$depfile"
505 cat < "$tmpdepfile" > "$depfile"
506 sed '1,2d' "$tmpdepfile" | tr ' ' '
507 ' | \
508 ## Some versions of the HPUX 10.20 sed can't process this invocation
509 ## correctly. Breaking it into two sed invocations is a workaround.
510 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
511 rm -f "$tmpdepfile" "$tmpdepfile".bak
512 ;;
513
514 cpp)
515 # Important note: in order to support this mode, a compiler *must*
516 # always write the preprocessed file to stdout.
517 "$@" || exit $?
518
519 # Remove the call to Libtool.
520 if test "$libtool" = yes; then
521 while test "X$1" != 'X--mode=compile'; do
522 shift
523 done
524 shift
525 fi
526
527 # Remove `-o $object'.
528 IFS=" "
529 for arg
530 do
531 case $arg in
532 -o)
533 shift
534 ;;
535 $object)
536 shift
537 ;;
538 *)
539 set fnord "$@" "$arg"
540 shift # fnord
541 shift # $arg
542 ;;
543 esac
544 done
545
546 "$@" -E |
547 sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
548 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
549 sed '$ s: \\$::' > "$tmpdepfile"
550 rm -f "$depfile"
551 echo "$object : \\" > "$depfile"
552 cat < "$tmpdepfile" >> "$depfile"
553 sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
554 rm -f "$tmpdepfile"
555 ;;
556
557 msvisualcpp)
558 # Important note: in order to support this mode, a compiler *must*
559 # always write the preprocessed file to stdout.
560 "$@" || exit $?
561
562 # Remove the call to Libtool.
563 if test "$libtool" = yes; then
564 while test "X$1" != 'X--mode=compile'; do
565 shift
566 done
567 shift
568 fi
569
570 IFS=" "
571 for arg
572 do
573 case "$arg" in
574 -o)
575 shift
576 ;;
577 $object)
578 shift
579 ;;
580 "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
581 set fnord "$@"
582 shift
583 shift
584 ;;
585 *)
586 set fnord "$@" "$arg"
587 shift
588 shift
589 ;;
590 esac
591 done
592 "$@" -E 2>/dev/null |
593 sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
594 rm -f "$depfile"
595 echo "$object : \\" > "$depfile"
596 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
597 echo " " >> "$depfile"
598 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
599 rm -f "$tmpdepfile"
600 ;;
601
602 msvcmsys)
603 # This case exists only to let depend.m4 do its work. It works by
604 # looking at the text of this script. This case will never be run,
605 # since it is checked for above.
606 exit 1
607 ;;
608
609 none)
610 exec "$@"
611 ;;
612
613 *)
614 echo "Unknown depmode $depmode" 1>&2
615 exit 1
616 ;;
617 esac
618
619 exit 0
620
621 # Local Variables:
622 # mode: shell-script
623 # sh-indentation: 2
624 # eval: (add-hook 'write-file-hooks 'time-stamp)
625 # time-stamp-start: "scriptversion="
626 # time-stamp-format: "%:y-%02m-%02d.%02H"
627 # time-stamp-time-zone: "UTC"
628 # time-stamp-end: "; # UTC"
629 # End:
+0
-520
focus-blur/focusblur-3.2.6/install-sh less more
0 #!/bin/sh
1 # install - install a program, script, or datafile
2
3 scriptversion=2009-04-28.21; # UTC
4
5 # This originates from X11R5 (mit/util/scripts/install.sh), which was
6 # later released in X11R6 (xc/config/util/install.sh) with the
7 # following copyright and license.
8 #
9 # Copyright (C) 1994 X Consortium
10 #
11 # Permission is hereby granted, free of charge, to any person obtaining a copy
12 # of this software and associated documentation files (the "Software"), to
13 # deal in the Software without restriction, including without limitation the
14 # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
15 # sell copies of the Software, and to permit persons to whom the Software is
16 # furnished to do so, subject to the following conditions:
17 #
18 # The above copyright notice and this permission notice shall be included in
19 # all copies or substantial portions of the Software.
20 #
21 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
25 # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
26 # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 #
28 # Except as contained in this notice, the name of the X Consortium shall not
29 # be used in advertising or otherwise to promote the sale, use or other deal-
30 # ings in this Software without prior written authorization from the X Consor-
31 # tium.
32 #
33 #
34 # FSF changes to this file are in the public domain.
35 #
36 # Calling this script install-sh is preferred over install.sh, to prevent
37 # `make' implicit rules from creating a file called install from it
38 # when there is no Makefile.
39 #
40 # This script is compatible with the BSD install script, but was written
41 # from scratch.
42
43 nl='
44 '
45 IFS=" "" $nl"
46
47 # set DOITPROG to echo to test this script
48
49 # Don't use :- since 4.3BSD and earlier shells don't like it.
50 doit=${DOITPROG-}
51 if test -z "$doit"; then
52 doit_exec=exec
53 else
54 doit_exec=$doit
55 fi
56
57 # Put in absolute file names if you don't have them in your path;
58 # or use environment vars.
59
60 chgrpprog=${CHGRPPROG-chgrp}
61 chmodprog=${CHMODPROG-chmod}
62 chownprog=${CHOWNPROG-chown}
63 cmpprog=${CMPPROG-cmp}
64 cpprog=${CPPROG-cp}
65 mkdirprog=${MKDIRPROG-mkdir}
66 mvprog=${MVPROG-mv}
67 rmprog=${RMPROG-rm}
68 stripprog=${STRIPPROG-strip}
69
70 posix_glob='?'
71 initialize_posix_glob='
72 test "$posix_glob" != "?" || {
73 if (set -f) 2>/dev/null; then
74 posix_glob=
75 else
76 posix_glob=:
77 fi
78 }
79 '
80
81 posix_mkdir=
82
83 # Desired mode of installed file.
84 mode=0755
85
86 chgrpcmd=
87 chmodcmd=$chmodprog
88 chowncmd=
89 mvcmd=$mvprog
90 rmcmd="$rmprog -f"
91 stripcmd=
92
93 src=
94 dst=
95 dir_arg=
96 dst_arg=
97
98 copy_on_change=false
99 no_target_directory=
100
101 usage="\
102 Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
103 or: $0 [OPTION]... SRCFILES... DIRECTORY
104 or: $0 [OPTION]... -t DIRECTORY SRCFILES...
105 or: $0 [OPTION]... -d DIRECTORIES...
106
107 In the 1st form, copy SRCFILE to DSTFILE.
108 In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
109 In the 4th, create DIRECTORIES.
110
111 Options:
112 --help display this help and exit.
113 --version display version info and exit.
114
115 -c (ignored)
116 -C install only if different (preserve the last data modification time)
117 -d create directories instead of installing files.
118 -g GROUP $chgrpprog installed files to GROUP.
119 -m MODE $chmodprog installed files to MODE.
120 -o USER $chownprog installed files to USER.
121 -s $stripprog installed files.
122 -t DIRECTORY install into DIRECTORY.
123 -T report an error if DSTFILE is a directory.
124
125 Environment variables override the default commands:
126 CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
127 RMPROG STRIPPROG
128 "
129
130 while test $# -ne 0; do
131 case $1 in
132 -c) ;;
133
134 -C) copy_on_change=true;;
135
136 -d) dir_arg=true;;
137
138 -g) chgrpcmd="$chgrpprog $2"
139 shift;;
140
141 --help) echo "$usage"; exit $?;;
142
143 -m) mode=$2
144 case $mode in
145 *' '* | *' '* | *'
146 '* | *'*'* | *'?'* | *'['*)
147 echo "$0: invalid mode: $mode" >&2
148 exit 1;;
149 esac
150 shift;;
151
152 -o) chowncmd="$chownprog $2"
153 shift;;
154
155 -s) stripcmd=$stripprog;;
156
157 -t) dst_arg=$2
158 shift;;
159
160 -T) no_target_directory=true;;
161
162 --version) echo "$0 $scriptversion"; exit $?;;
163
164 --) shift
165 break;;
166
167 -*) echo "$0: invalid option: $1" >&2
168 exit 1;;
169
170 *) break;;
171 esac
172 shift
173 done
174
175 if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
176 # When -d is used, all remaining arguments are directories to create.
177 # When -t is used, the destination is already specified.
178 # Otherwise, the last argument is the destination. Remove it from $@.
179 for arg
180 do
181 if test -n "$dst_arg"; then
182 # $@ is not empty: it contains at least $arg.
183 set fnord "$@" "$dst_arg"
184 shift # fnord
185 fi
186 shift # arg
187 dst_arg=$arg
188 done
189 fi
190
191 if test $# -eq 0; then
192 if test -z "$dir_arg"; then
193 echo "$0: no input file specified." >&2
194 exit 1
195 fi
196 # It's OK to call `install-sh -d' without argument.
197 # This can happen when creating conditional directories.
198 exit 0
199 fi
200
201 if test -z "$dir_arg"; then
202 trap '(exit $?); exit' 1 2 13 15
203
204 # Set umask so as not to create temps with too-generous modes.
205 # However, 'strip' requires both read and write access to temps.
206 case $mode in
207 # Optimize common cases.
208 *644) cp_umask=133;;
209 *755) cp_umask=22;;
210
211 *[0-7])
212 if test -z "$stripcmd"; then
213 u_plus_rw=
214 else
215 u_plus_rw='% 200'
216 fi
217 cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
218 *)
219 if test -z "$stripcmd"; then
220 u_plus_rw=
221 else
222 u_plus_rw=,u+rw
223 fi
224 cp_umask=$mode$u_plus_rw;;
225 esac
226 fi
227
228 for src
229 do
230 # Protect names starting with `-'.
231 case $src in
232 -*) src=./$src;;
233 esac
234
235 if test -n "$dir_arg"; then
236 dst=$src
237 dstdir=$dst
238 test -d "$dstdir"
239 dstdir_status=$?
240 else
241
242 # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
243 # might cause directories to be created, which would be especially bad
244 # if $src (and thus $dsttmp) contains '*'.
245 if test ! -f "$src" && test ! -d "$src"; then
246 echo "$0: $src does not exist." >&2
247 exit 1
248 fi
249
250 if test -z "$dst_arg"; then
251 echo "$0: no destination specified." >&2
252 exit 1
253 fi
254
255 dst=$dst_arg
256 # Protect names starting with `-'.
257 case $dst in
258 -*) dst=./$dst;;
259 esac
260
261 # If destination is a directory, append the input filename; won't work
262 # if double slashes aren't ignored.
263 if test -d "$dst"; then
264 if test -n "$no_target_directory"; then
265 echo "$0: $dst_arg: Is a directory" >&2
266 exit 1
267 fi
268 dstdir=$dst
269 dst=$dstdir/`basename "$src"`
270 dstdir_status=0
271 else
272 # Prefer dirname, but fall back on a substitute if dirname fails.
273 dstdir=`
274 (dirname "$dst") 2>/dev/null ||
275 expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
276 X"$dst" : 'X\(//\)[^/]' \| \
277 X"$dst" : 'X\(//\)$' \| \
278 X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
279 echo X"$dst" |
280 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
281 s//\1/
282 q
283 }
284 /^X\(\/\/\)[^/].*/{
285 s//\1/
286 q
287 }
288 /^X\(\/\/\)$/{
289 s//\1/
290 q
291 }
292 /^X\(\/\).*/{
293 s//\1/
294 q
295 }
296 s/.*/./; q'
297 `
298
299 test -d "$dstdir"
300 dstdir_status=$?
301 fi
302 fi
303
304 obsolete_mkdir_used=false
305
306 if test $dstdir_status != 0; then
307 case $posix_mkdir in
308 '')
309 # Create intermediate dirs using mode 755 as modified by the umask.
310 # This is like FreeBSD 'install' as of 1997-10-28.
311 umask=`umask`
312 case $stripcmd.$umask in
313 # Optimize common cases.
314 *[2367][2367]) mkdir_umask=$umask;;
315 .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
316
317 *[0-7])
318 mkdir_umask=`expr $umask + 22 \
319 - $umask % 100 % 40 + $umask % 20 \
320 - $umask % 10 % 4 + $umask % 2
321 `;;
322 *) mkdir_umask=$umask,go-w;;
323 esac
324
325 # With -d, create the new directory with the user-specified mode.
326 # Otherwise, rely on $mkdir_umask.
327 if test -n "$dir_arg"; then
328 mkdir_mode=-m$mode
329 else
330 mkdir_mode=
331 fi
332
333 posix_mkdir=false
334 case $umask in
335 *[123567][0-7][0-7])
336 # POSIX mkdir -p sets u+wx bits regardless of umask, which
337 # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
338 ;;
339 *)
340 tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
341 trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
342
343 if (umask $mkdir_umask &&
344 exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
345 then
346 if test -z "$dir_arg" || {
347 # Check for POSIX incompatibilities with -m.
348 # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
349 # other-writeable bit of parent directory when it shouldn't.
350 # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
351 ls_ld_tmpdir=`ls -ld "$tmpdir"`
352 case $ls_ld_tmpdir in
353 d????-?r-*) different_mode=700;;
354 d????-?--*) different_mode=755;;
355 *) false;;
356 esac &&
357 $mkdirprog -m$different_mode -p -- "$tmpdir" && {
358 ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
359 test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
360 }
361 }
362 then posix_mkdir=:
363 fi
364 rmdir "$tmpdir/d" "$tmpdir"
365 else
366 # Remove any dirs left behind by ancient mkdir implementations.
367 rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
368 fi
369 trap '' 0;;
370 esac;;
371 esac
372
373 if
374 $posix_mkdir && (
375 umask $mkdir_umask &&
376 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
377 )
378 then :
379 else
380
381 # The umask is ridiculous, or mkdir does not conform to POSIX,
382 # or it failed possibly due to a race condition. Create the
383 # directory the slow way, step by step, checking for races as we go.
384
385 case $dstdir in
386 /*) prefix='/';;
387 -*) prefix='./';;
388 *) prefix='';;
389 esac
390
391 eval "$initialize_posix_glob"
392
393 oIFS=$IFS
394 IFS=/
395 $posix_glob set -f
396 set fnord $dstdir
397 shift
398 $posix_glob set +f
399 IFS=$oIFS
400
401 prefixes=
402
403 for d
404 do
405 test -z "$d" && continue
406
407 prefix=$prefix$d
408 if test -d "$prefix"; then
409 prefixes=
410 else
411 if $posix_mkdir; then
412 (umask=$mkdir_umask &&
413 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
414 # Don't fail if two instances are running concurrently.
415 test -d "$prefix" || exit 1
416 else
417 case $prefix in
418 *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
419 *) qprefix=$prefix;;
420 esac
421 prefixes="$prefixes '$qprefix'"
422 fi
423 fi
424 prefix=$prefix/
425 done
426
427 if test -n "$prefixes"; then
428 # Don't fail if two instances are running concurrently.
429 (umask $mkdir_umask &&
430 eval "\$doit_exec \$mkdirprog $prefixes") ||
431 test -d "$dstdir" || exit 1
432 obsolete_mkdir_used=true
433 fi
434 fi
435 fi
436
437 if test -n "$dir_arg"; then
438 { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
439 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
440 { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
441 test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
442 else
443
444 # Make a couple of temp file names in the proper directory.
445 dsttmp=$dstdir/_inst.$$_
446 rmtmp=$dstdir/_rm.$$_
447
448 # Trap to clean up those temp files at exit.
449 trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
450
451 # Copy the file name to the temp name.
452 (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
453
454 # and set any options; do chmod last to preserve setuid bits.
455 #
456 # If any of these fail, we abort the whole thing. If we want to
457 # ignore errors from any of these, just make sure not to ignore
458 # errors from the above "$doit $cpprog $src $dsttmp" command.
459 #
460 { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
461 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
462 { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
463 { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
464
465 # If -C, don't bother to copy if it wouldn't change the file.
466 if $copy_on_change &&
467 old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
468 new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
469
470 eval "$initialize_posix_glob" &&
471 $posix_glob set -f &&
472 set X $old && old=:$2:$4:$5:$6 &&
473 set X $new && new=:$2:$4:$5:$6 &&
474 $posix_glob set +f &&
475
476 test "$old" = "$new" &&
477 $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
478 then
479 rm -f "$dsttmp"
480 else
481 # Rename the file to the real destination.
482 $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
483
484 # The rename failed, perhaps because mv can't rename something else
485 # to itself, or perhaps because mv is so ancient that it does not
486 # support -f.
487 {
488 # Now remove or move aside any old file at destination location.
489 # We try this two ways since rm can't unlink itself on some
490 # systems and the destination file might be busy for other
491 # reasons. In this case, the final cleanup might fail but the new
492 # file should still install successfully.
493 {
494 test ! -f "$dst" ||
495 $doit $rmcmd -f "$dst" 2>/dev/null ||
496 { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
497 { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
498 } ||
499 { echo "$0: cannot unlink or rename $dst" >&2
500 (exit 1); exit 1
501 }
502 } &&
503
504 # Now rename the file to the real destination.
505 $doit $mvcmd "$dsttmp" "$dst"
506 }
507 fi || exit 1
508
509 trap '' 0
510 fi
511 done
512
513 # Local variables:
514 # eval: (add-hook 'write-file-hooks 'time-stamp)
515 # time-stamp-start: "scriptversion="
516 # time-stamp-format: "%:y-%02m-%02d.%02H"
517 # time-stamp-time-zone: "UTC"
518 # time-stamp-end: "; # UTC"
519 # End:
+0
-22
focus-blur/focusblur-3.2.6/libgimp/gettext.h less more
0 #ifndef __FOCUSBLUR_GETTEXT_H__
1 #define __FOCUSBLUR_GETTEXT_H__
2
3 #ifdef ENABLE_NLS
4
5 #include <glib/gi18n.h>
6
7 #define INIT_I18N() G_STMT_START{ \
8 bindtextdomain (GETTEXT_PACKAGE, gimp_locale_directory ()); \
9 bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); \
10 textdomain (GETTEXT_PACKAGE); \
11 }G_STMT_END
12
13 #else
14
15 #define _(String) (String)
16 #define N_(String) (String)
17 #define INIT_I18N() {}
18
19 #endif /* ENABLE_NLS */
20
21 #endif /* __FOCUSBLUR_GETTEXT_H__ */
+0
-11
focus-blur/focusblur-3.2.6/libgimp/stdplugins-intl.h less more
0 /*
1 * Names of this file and directory mean nothing,
2 * because this is a dummy path to maintain difference.
3 */
4
5 /* trap for source compatibility */
6 #ifndef GETTEXT_PACKAGE
7 #error "config.h must be included prior to stdplugins-intl.h"
8 #endif
9
10 #include "gettext.h"
+0
-208
focus-blur/focusblur-3.2.6/merge.patch less more
0 This plug-in is designed for including into the Gimp source tree.
1 If you would like to compile this plug-in with the Gimp, read this note.
2
3 copy src/ directory to the name as focusblur/ under the gimp/plug-ins/
4
5 $ cp -a focusblur-3.2.0/src gimp/plug-ins/focusblur
6
7 also copy pixmaps directory under the directoriy.
8
9 $ cp -a focusblur-3.2.0/pixmaps gimp/plug-ins/focusblur/
10
11 apply this patch. it modifies configure.in, plug-ins/Makefile.am
12 and some files in plug-ins/focusblur
13
14 $ cd gimp
15 $ patch -p0 < ../focusblur-3.2.0/merge.patch
16
17 then re-run autogen.sh.
18
19 $ ./autogen.sh
20
21
22 Index: configure.in
23 ===================================================================
24 --- configure.in (revision 24772)
25 +++ configure.in (working copy)
26 @@ -1137,6 +1137,29 @@ AC_SUBST(EXIF_LIBS)
27
28
29 #################
30 +# Check for FFTW3
31 +#################
32 +
33 +AC_CHECK_HEADERS(complex.h)
34 +
35 +have_fftw3=no
36 +AC_ARG_WITH(fftw3, [ --without-fftw3 build without FFTW3 support])
37 +if test x$with_fftw3 != xno; then
38 + have_fftw3=yes
39 + if test -z "$FFTW3_CFLAGS" && test -z "$FFTW3_LIBS"; then
40 + PKG_CHECK_MODULES(FFTW3, fftw3f,
41 + AC_DEFINE(HAVE_FFTW3, 1, [Define to 1 if FFTW3 is available]),
42 + have_fftw3="no (FFTW3 not found)")
43 + fi
44 +fi
45 +
46 +AM_CONDITIONAL(HAVE_FFTW3, test x$have_fftw3 = xyes)
47 +
48 +AC_SUBST(FFTW3_CFLAGS)
49 +AC_SUBST(FFTW3_LIBS)
50 +
51 +
52 +#################
53 # Check for libaa
54 #################
55
56 @@ -1926,6 +1949,8 @@ plug-ins/common/Makefile
57 plug-ins/faxg3/Makefile
58 plug-ins/fits/Makefile
59 plug-ins/flame/Makefile
60 +plug-ins/focusblur/Makefile
61 +plug-ins/focusblur/pixmaps/Makefile
62 plug-ins/gfig/Makefile
63 plug-ins/gfig/gfig-examples/Makefile
64 plug-ins/gfig/images/Makefile
65 @@ -2070,6 +2095,7 @@ Optional Plug-Ins:
66
67 Plug-In Features:
68 EXIF support: $have_libexif
69 + FFTW3 support: $have_fftw3
70 GNOME UI: $have_gnomeui
71 GNOME keyring: $have_gnome_keyring
72
73 Index: plug-ins/Makefile.am
74 ===================================================================
75 --- plug-ins/Makefile.am (revision 24772)
76 +++ plug-ins/Makefile.am (working copy)
77 @@ -52,6 +52,7 @@ SUBDIRS = \
78 faxg3 \
79 fits \
80 flame \
81 + focusblur \
82 gfig \
83 gflare \
84 gfli \
85 Index: plug-ins/focusblur/Makefile.am
86 ===================================================================
87 --- plug-ins/focusblur/Makefile.am (revision 0)
88 +++ plug-ins/focusblur/Makefile.am (revision 0)
89 @@ -1,6 +1,7 @@
90 ## Process this file with automake to produce Makefile.in
91
92 -libexecdir = $(GIMP_PLUGIN_DIR)/plug-ins
93 +SUBDIRS = pixmaps
94 +libexecdir = $(gimpplugindir)/plug-ins
95
96 libexec_PROGRAMS = focusblur
97
98 @@ -42,6 +43,14 @@
99 fftblurproc.h
100 endif
101
102 +libgimpui = $(top_builddir)/libgimp/libgimpui-$(GIMP_API_VERSION).la
103 +libgimpconfig = $(top_builddir)/libgimpconfig/libgimpconfig-$(GIMP_API_VERSION).la
104 +libgimpwidgets = $(top_builddir)/libgimpwidgets/libgimpwidgets-$(GIMP_API_VERSION).la
105 +libgimp = $(top_builddir)/libgimp/libgimp-$(GIMP_API_VERSION).la
106 +libgimpcolor = $(top_builddir)/libgimpcolor/libgimpcolor-$(GIMP_API_VERSION).la
107 +libgimpbase = $(top_builddir)/libgimpbase/libgimpbase-$(GIMP_API_VERSION).la
108 +libgimpmath = $(top_builddir)/libgimpmath/libgimpmath-$(GIMP_API_VERSION).la
109 +
110 if OS_WIN32
111 mwindows = -mwindows
112 endif
113 @@ -49,29 +58,24 @@
114 AM_LDFLAGS = $(mwindows)
115
116 INCLUDES = \
117 - $(GTHREAD_CFLAGS) \
118 - $(GIMP_CFLAGS) \
119 + -I$(top_srcdir) \
120 + $(GTK_CFLAGS) \
121 $(FFTW3_CFLAGS) \
122 -I$(includedir)
123
124 LDADD = \
125 - $(GTHREAD_LIBS) \
126 - $(GIMP_LIBS) \
127 - $(FFTW3_LIBS)
128 -
129 -focusblurstock.$(OBJEXT): $(top_srcdir)/pixmaps/pixbufs.h
130 -$(top_srcdir)/pixmaps/pixbufs.h:
131 - $(MAKE) -C $(top_srcdir)/pixmaps pixbufs.h
132 -
133 -install-user: $(libexec_PROGRAMS)
134 - @if test -d $(GIMP_USER_PLUGIN_DIR) ; then \
135 - $(INSTALL_PROGRAM) $(libexec_PROGRAMS) $(GIMP_USER_PLUGIN_DIR) ; \
136 - fi
137 -
138 -uninstall-user:
139 - @if test -d $(GIMP_USER_PLUGIN_DIR) ; then \
140 - for i in $(libexec_PROGRAMS) ; do \
141 - echo " $(RM) '$(GIMP_USER_PLUGIN_DIR)/$$i'"; \
142 - $(RM) "$(GIMP_USER_PLUGIN_DIR)$$i" ; \
143 - done ; \
144 - fi
145 + $(libgimpui) \
146 + $(libgimpwidgets) \
147 + $(libgimpconfig) \
148 + $(libgimp) \
149 + $(libgimpcolor) \
150 + $(libgimpmath) \
151 + $(libgimpbase) \
152 + $(GTK_LIBS) \
153 + $(FFTW3_LIBS) \
154 + $(RT_LIBS) \
155 + $(INTLLIBS)
156 +
157 +focusblurstock.$(OBJEXT): pixmaps/pixbufs.h
158 +pixmaps/pixbufs.h:
159 + $(MAKE) -C pixmaps pixbufs.h
160 Index: plug-ins/focusblur/focusblurenums.c
161 ===================================================================
162 --- plug-ins/focusblur/focusblurenums.c (revision 0)
163 +++ plug-ins/focusblur/focusblurenums.c (revision 0)
164 @@ -58,9 +58,7 @@
165 };
166
167 type = g_enum_register_static ("FblurModelType", values);
168 -#ifdef ENABLE_NLS
169 gimp_type_set_translation_domain (type, GETTEXT_PACKAGE);
170 -#endif
171 gimp_enum_set_value_descriptions (type, descs);
172 }
173
174 @@ -89,9 +87,7 @@
175 };
176
177 type = g_enum_register_static ("FblurShineType", values);
178 -#ifdef ENABLE_NLS
179 gimp_type_set_translation_domain (type, GETTEXT_PACKAGE);
180 -#endif
181 gimp_enum_set_value_descriptions (type, descs);
182 }
183
184 @@ -124,9 +120,7 @@
185 };
186
187 type = g_enum_register_static ("FblurQualityType", values);
188 -#ifdef ENABLE_NLS
189 gimp_type_set_translation_domain (type, GETTEXT_PACKAGE);
190 -#endif
191 gimp_enum_set_value_descriptions (type, descs);
192 }
193
194 Index: plug-ins/focusblur/gimpplugin.c
195 ===================================================================
196 --- plug-ins/focusblur/gimpplugin.c (revision 0)
197 +++ plug-ins/focusblur/gimpplugin.c (revision 0)
198 @@ -90,9 +90,6 @@
199 args, NULL);
200
201 gimp_plugin_menu_register (PLUG_IN_PROC, "<Image>/Filters/Blur");
202 -#ifdef ENABLE_NLS
203 - gimp_plugin_domain_register (GETTEXT_PACKAGE, NULL);
204 -#endif
205 }
206
207 static void
+0
-376
focus-blur/focusblur-3.2.6/missing less more
0 #! /bin/sh
1 # Common stub for a few missing GNU programs while installing.
2
3 scriptversion=2009-04-28.21; # UTC
4
5 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
6 # 2008, 2009 Free Software Foundation, Inc.
7 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
8
9 # This program is free software; you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation; either version 2, or (at your option)
12 # any later version.
13
14 # This program is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License for more details.
18
19 # You should have received a copy of the GNU General Public License
20 # along with this program. If not, see <http://www.gnu.org/licenses/>.
21
22 # As a special exception to the GNU General Public License, if you
23 # distribute this file as part of a program that contains a
24 # configuration script generated by Autoconf, you may include it under
25 # the same distribution terms that you use for the rest of that program.
26
27 if test $# -eq 0; then
28 echo 1>&2 "Try \`$0 --help' for more information"
29 exit 1
30 fi
31
32 run=:
33 sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
34 sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
35
36 # In the cases where this matters, `missing' is being run in the
37 # srcdir already.
38 if test -f configure.ac; then
39 configure_ac=configure.ac
40 else
41 configure_ac=configure.in
42 fi
43
44 msg="missing on your system"
45
46 case $1 in
47 --run)
48 # Try to run requested program, and just exit if it succeeds.
49 run=
50 shift
51 "$@" && exit 0
52 # Exit code 63 means version mismatch. This often happens
53 # when the user try to use an ancient version of a tool on
54 # a file that requires a minimum version. In this case we
55 # we should proceed has if the program had been absent, or
56 # if --run hadn't been passed.
57 if test $? = 63; then
58 run=:
59 msg="probably too old"
60 fi
61 ;;
62
63 -h|--h|--he|--hel|--help)
64 echo "\
65 $0 [OPTION]... PROGRAM [ARGUMENT]...
66
67 Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
68 error status if there is no known handling for PROGRAM.
69
70 Options:
71 -h, --help display this help and exit
72 -v, --version output version information and exit
73 --run try to run the given command, and emulate it if it fails
74
75 Supported PROGRAM values:
76 aclocal touch file \`aclocal.m4'
77 autoconf touch file \`configure'
78 autoheader touch file \`config.h.in'
79 autom4te touch the output file, or create a stub one
80 automake touch all \`Makefile.in' files
81 bison create \`y.tab.[ch]', if possible, from existing .[ch]
82 flex create \`lex.yy.c', if possible, from existing .c
83 help2man touch the output file
84 lex create \`lex.yy.c', if possible, from existing .c
85 makeinfo touch the output file
86 tar try tar, gnutar, gtar, then tar without non-portable flags
87 yacc create \`y.tab.[ch]', if possible, from existing .[ch]
88
89 Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
90 \`g' are ignored when checking the name.
91
92 Send bug reports to <bug-automake@gnu.org>."
93 exit $?
94 ;;
95
96 -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
97 echo "missing $scriptversion (GNU Automake)"
98 exit $?
99 ;;
100
101 -*)
102 echo 1>&2 "$0: Unknown \`$1' option"
103 echo 1>&2 "Try \`$0 --help' for more information"
104 exit 1
105 ;;
106
107 esac
108
109 # normalize program name to check for.
110 program=`echo "$1" | sed '
111 s/^gnu-//; t
112 s/^gnu//; t
113 s/^g//; t'`
114
115 # Now exit if we have it, but it failed. Also exit now if we
116 # don't have it and --version was passed (most likely to detect
117 # the program). This is about non-GNU programs, so use $1 not
118 # $program.
119 case $1 in
120 lex*|yacc*)
121 # Not GNU programs, they don't have --version.
122 ;;
123
124 tar*)
125 if test -n "$run"; then
126 echo 1>&2 "ERROR: \`tar' requires --run"
127 exit 1
128 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
129 exit 1
130 fi
131 ;;
132
133 *)
134 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
135 # We have it, but it failed.
136 exit 1
137 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
138 # Could not run --version or --help. This is probably someone
139 # running `$TOOL --version' or `$TOOL --help' to check whether
140 # $TOOL exists and not knowing $TOOL uses missing.
141 exit 1
142 fi
143 ;;
144 esac
145
146 # If it does not exist, or fails to run (possibly an outdated version),
147 # try to emulate it.
148 case $program in
149 aclocal*)
150 echo 1>&2 "\
151 WARNING: \`$1' is $msg. You should only need it if
152 you modified \`acinclude.m4' or \`${configure_ac}'. You might want
153 to install the \`Automake' and \`Perl' packages. Grab them from
154 any GNU archive site."
155 touch aclocal.m4
156 ;;
157
158 autoconf*)
159 echo 1>&2 "\
160 WARNING: \`$1' is $msg. You should only need it if
161 you modified \`${configure_ac}'. You might want to install the
162 \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
163 archive site."
164 touch configure
165 ;;
166
167 autoheader*)
168 echo 1>&2 "\
169 WARNING: \`$1' is $msg. You should only need it if
170 you modified \`acconfig.h' or \`${configure_ac}'. You might want
171 to install the \`Autoconf' and \`GNU m4' packages. Grab them
172 from any GNU archive site."
173 files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
174 test -z "$files" && files="config.h"
175 touch_files=
176 for f in $files; do
177 case $f in
178 *:*) touch_files="$touch_files "`echo "$f" |
179 sed -e 's/^[^:]*://' -e 's/:.*//'`;;
180 *) touch_files="$touch_files $f.in";;
181 esac
182 done
183 touch $touch_files
184 ;;
185
186 automake*)
187 echo 1>&2 "\
188 WARNING: \`$1' is $msg. You should only need it if
189 you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
190 You might want to install the \`Automake' and \`Perl' packages.
191 Grab them from any GNU archive site."
192 find . -type f -name Makefile.am -print |
193 sed 's/\.am$/.in/' |
194 while read f; do touch "$f"; done
195 ;;
196
197 autom4te*)
198 echo 1>&2 "\
199 WARNING: \`$1' is needed, but is $msg.
200 You might have modified some files without having the
201 proper tools for further handling them.
202 You can get \`$1' as part of \`Autoconf' from any GNU
203 archive site."
204
205 file=`echo "$*" | sed -n "$sed_output"`
206 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
207 if test -f "$file"; then
208 touch $file
209 else
210 test -z "$file" || exec >$file
211 echo "#! /bin/sh"
212 echo "# Created by GNU Automake missing as a replacement of"
213 echo "# $ $@"
214 echo "exit 0"
215 chmod +x $file
216 exit 1
217 fi
218 ;;
219
220 bison*|yacc*)
221 echo 1>&2 "\
222 WARNING: \`$1' $msg. You should only need it if
223 you modified a \`.y' file. You may need the \`Bison' package
224 in order for those modifications to take effect. You can get
225 \`Bison' from any GNU archive site."
226 rm -f y.tab.c y.tab.h
227 if test $# -ne 1; then
228 eval LASTARG="\${$#}"
229 case $LASTARG in
230 *.y)
231 SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
232 if test -f "$SRCFILE"; then
233 cp "$SRCFILE" y.tab.c
234 fi
235 SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
236 if test -f "$SRCFILE"; then
237 cp "$SRCFILE" y.tab.h
238 fi
239 ;;
240 esac
241 fi
242 if test ! -f y.tab.h; then
243 echo >y.tab.h
244 fi
245 if test ! -f y.tab.c; then
246 echo 'main() { return 0; }' >y.tab.c
247 fi
248 ;;
249
250 lex*|flex*)
251 echo 1>&2 "\
252 WARNING: \`$1' is $msg. You should only need it if
253 you modified a \`.l' file. You may need the \`Flex' package
254 in order for those modifications to take effect. You can get
255 \`Flex' from any GNU archive site."
256 rm -f lex.yy.c
257 if test $# -ne 1; then
258 eval LASTARG="\${$#}"
259 case $LASTARG in
260 *.l)
261 SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
262 if test -f "$SRCFILE"; then
263 cp "$SRCFILE" lex.yy.c
264 fi
265 ;;
266 esac
267 fi
268 if test ! -f lex.yy.c; then
269 echo 'main() { return 0; }' >lex.yy.c
270 fi
271 ;;
272
273 help2man*)
274 echo 1>&2 "\
275 WARNING: \`$1' is $msg. You should only need it if
276 you modified a dependency of a manual page. You may need the
277 \`Help2man' package in order for those modifications to take
278 effect. You can get \`Help2man' from any GNU archive site."
279
280 file=`echo "$*" | sed -n "$sed_output"`
281 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
282 if test -f "$file"; then
283 touch $file
284 else
285 test -z "$file" || exec >$file
286 echo ".ab help2man is required to generate this page"
287 exit $?
288 fi
289 ;;
290
291 makeinfo*)
292 echo 1>&2 "\
293 WARNING: \`$1' is $msg. You should only need it if
294 you modified a \`.texi' or \`.texinfo' file, or any other file
295 indirectly affecting the aspect of the manual. The spurious
296 call might also be the consequence of using a buggy \`make' (AIX,
297 DU, IRIX). You might want to install the \`Texinfo' package or
298 the \`GNU make' package. Grab either from any GNU archive site."
299 # The file to touch is that specified with -o ...
300 file=`echo "$*" | sed -n "$sed_output"`
301 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
302 if test -z "$file"; then
303 # ... or it is the one specified with @setfilename ...
304 infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
305 file=`sed -n '
306 /^@setfilename/{
307 s/.* \([^ ]*\) *$/\1/
308 p
309 q
310 }' $infile`
311 # ... or it is derived from the source name (dir/f.texi becomes f.info)
312 test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
313 fi
314 # If the file does not exist, the user really needs makeinfo;
315 # let's fail without touching anything.
316 test -f $file || exit 1
317 touch $file
318 ;;
319
320 tar*)
321 shift
322
323 # We have already tried tar in the generic part.
324 # Look for gnutar/gtar before invocation to avoid ugly error
325 # messages.
326 if (gnutar --version > /dev/null 2>&1); then
327 gnutar "$@" && exit 0
328 fi
329 if (gtar --version > /dev/null 2>&1); then
330 gtar "$@" && exit 0
331 fi
332 firstarg="$1"
333 if shift; then
334 case $firstarg in
335 *o*)
336 firstarg=`echo "$firstarg" | sed s/o//`
337 tar "$firstarg" "$@" && exit 0
338 ;;
339 esac
340 case $firstarg in
341 *h*)
342 firstarg=`echo "$firstarg" | sed s/h//`
343 tar "$firstarg" "$@" && exit 0
344 ;;
345 esac
346 fi
347
348 echo 1>&2 "\
349 WARNING: I can't seem to be able to run \`tar' with the given arguments.
350 You may want to install GNU tar or Free paxutils, or check the
351 command line arguments."
352 exit 1
353 ;;
354
355 *)
356 echo 1>&2 "\
357 WARNING: \`$1' is needed, and is $msg.
358 You might have modified some files without having the
359 proper tools for further handling them. Check the \`README' file,
360 it often tells you about the needed prerequisites for installing
361 this package. You may also peek at any GNU archive site, in case
362 some other package would contain this missing \`$1' program."
363 exit 1
364 ;;
365 esac
366
367 exit 0
368
369 # Local variables:
370 # eval: (add-hook 'write-file-hooks 'time-stamp)
371 # time-stamp-start: "scriptversion="
372 # time-stamp-format: "%:y-%02m-%02d.%02H"
373 # time-stamp-time-zone: "UTC"
374 # time-stamp-end: "; # UTC"
375 # End:
+0
-162
focus-blur/focusblur-3.2.6/mkinstalldirs less more
0 #! /bin/sh
1 # mkinstalldirs --- make directory hierarchy
2
3 scriptversion=2009-04-28.21; # UTC
4
5 # Original author: Noah Friedman <friedman@prep.ai.mit.edu>
6 # Created: 1993-05-16
7 # Public domain.
8 #
9 # This file is maintained in Automake, please report
10 # bugs to <bug-automake@gnu.org> or send patches to
11 # <automake-patches@gnu.org>.
12
13 nl='
14 '
15 IFS=" "" $nl"
16 errstatus=0
17 dirmode=
18
19 usage="\
20 Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
21
22 Create each directory DIR (with mode MODE, if specified), including all
23 leading file name components.
24
25 Report bugs to <bug-automake@gnu.org>."
26
27 # process command line arguments
28 while test $# -gt 0 ; do
29 case $1 in
30 -h | --help | --h*) # -h for help
31 echo "$usage"
32 exit $?
33 ;;
34 -m) # -m PERM arg
35 shift
36 test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
37 dirmode=$1
38 shift
39 ;;
40 --version)
41 echo "$0 $scriptversion"
42 exit $?
43 ;;
44 --) # stop option processing
45 shift
46 break
47 ;;
48 -*) # unknown option
49 echo "$usage" 1>&2
50 exit 1
51 ;;
52 *) # first non-opt arg
53 break
54 ;;
55 esac
56 done
57
58 for file
59 do
60 if test -d "$file"; then
61 shift
62 else
63 break
64 fi
65 done
66
67 case $# in
68 0) exit 0 ;;
69 esac
70
71 # Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
72 # mkdir -p a/c at the same time, both will detect that a is missing,
73 # one will create a, then the other will try to create a and die with
74 # a "File exists" error. This is a problem when calling mkinstalldirs
75 # from a parallel make. We use --version in the probe to restrict
76 # ourselves to GNU mkdir, which is thread-safe.
77 case $dirmode in
78 '')
79 if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
80 echo "mkdir -p -- $*"
81 exec mkdir -p -- "$@"
82 else
83 # On NextStep and OpenStep, the `mkdir' command does not
84 # recognize any option. It will interpret all options as
85 # directories to create, and then abort because `.' already
86 # exists.
87 test -d ./-p && rmdir ./-p
88 test -d ./--version && rmdir ./--version
89 fi
90 ;;
91 *)
92 if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
93 test ! -d ./--version; then
94 echo "mkdir -m $dirmode -p -- $*"
95 exec mkdir -m "$dirmode" -p -- "$@"
96 else
97 # Clean up after NextStep and OpenStep mkdir.
98 for d in ./-m ./-p ./--version "./$dirmode";
99 do
100 test -d $d && rmdir $d
101 done
102 fi
103 ;;
104 esac
105
106 for file
107 do
108 case $file in
109 /*) pathcomp=/ ;;
110 *) pathcomp= ;;
111 esac
112 oIFS=$IFS
113 IFS=/
114 set fnord $file
115 shift
116 IFS=$oIFS
117
118 for d
119 do
120 test "x$d" = x && continue
121
122 pathcomp=$pathcomp$d
123 case $pathcomp in
124 -*) pathcomp=./$pathcomp ;;
125 esac
126
127 if test ! -d "$pathcomp"; then
128 echo "mkdir $pathcomp"
129
130 mkdir "$pathcomp" || lasterr=$?
131
132 if test ! -d "$pathcomp"; then
133 errstatus=$lasterr
134 else
135 if test ! -z "$dirmode"; then
136 echo "chmod $dirmode $pathcomp"
137 lasterr=
138 chmod "$dirmode" "$pathcomp" || lasterr=$?
139
140 if test ! -z "$lasterr"; then
141 errstatus=$lasterr
142 fi
143 fi
144 fi
145 fi
146
147 pathcomp=$pathcomp/
148 done
149 done
150
151 exit $errstatus
152
153 # Local Variables:
154 # mode: shell-script
155 # sh-indentation: 2
156 # eval: (add-hook 'write-file-hooks 'time-stamp)
157 # time-stamp-start: "scriptversion="
158 # time-stamp-format: "%:y-%02m-%02d.%02H"
159 # time-stamp-time-zone: "UTC"
160 # time-stamp-end: "; # UTC"
161 # End:
+0
-20
focus-blur/focusblur-3.2.6/pixmaps/Makefile.am less more
0 BUILT_SOURCES = pixbufs.h
1
2 icons = \
3 focusblur-model-flat.png \
4 focusblur-model-spherical.png \
5 focusblur-model-gaussian.png \
6 focusblur-model-ring.png \
7 focusblur-model-concave.png
8
9 EXTRA_DIST = $(icons)
10
11 pixbufs.h: $(icons)
12 { echo '#include <gdk-pixbuf/gdk-pixdata.h>' ; \
13 $(GDK_PIXBUF_CSOURCE) --struct --rle --build-list \
14 $$(for i in $(icons) ; do \
15 echo $$i | sed -e 's;\..*;;' -e 's;-;_;g' ; \
16 echo -n $$i" " ; \
17 done) | \
18 sed -e '/pixel_data:/a(guint8 *)' ; \
19 } > $@
+0
-373
focus-blur/focusblur-3.2.6/pixmaps/Makefile.in less more
0 # Makefile.in generated by automake 1.11.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
4 # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
5 # Inc.
6 # This Makefile.in is free software; the Free Software Foundation
7 # gives unlimited permission to copy and/or distribute it,
8 # with or without modifications, as long as this notice is preserved.
9
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
12 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
13 # PARTICULAR PURPOSE.
14
15 @SET_MAKE@
16 VPATH = @srcdir@
17 pkgdatadir = $(datadir)/@PACKAGE@
18 pkgincludedir = $(includedir)/@PACKAGE@
19 pkglibdir = $(libdir)/@PACKAGE@
20 pkglibexecdir = $(libexecdir)/@PACKAGE@
21 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
22 install_sh_DATA = $(install_sh) -c -m 644
23 install_sh_PROGRAM = $(install_sh) -c
24 install_sh_SCRIPT = $(install_sh) -c
25 INSTALL_HEADER = $(INSTALL_DATA)
26 transform = $(program_transform_name)
27 NORMAL_INSTALL = :
28 PRE_INSTALL = :
29 POST_INSTALL = :
30 NORMAL_UNINSTALL = :
31 PRE_UNINSTALL = :
32 POST_UNINSTALL = :
33 subdir = pixmaps
34 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
35 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
36 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
37 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
38 $(ACLOCAL_M4)
39 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
40 CONFIG_HEADER = $(top_builddir)/config.h
41 CONFIG_CLEAN_FILES =
42 CONFIG_CLEAN_VPATH_FILES =
43 SOURCES =
44 DIST_SOURCES =
45 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
46 ACLOCAL = @ACLOCAL@
47 ALL_LINGUAS = @ALL_LINGUAS@
48 AMTAR = @AMTAR@
49 AUTOCONF = @AUTOCONF@
50 AUTOHEADER = @AUTOHEADER@
51 AUTOMAKE = @AUTOMAKE@
52 AWK = @AWK@
53 CATALOGS = @CATALOGS@
54 CATOBJEXT = @CATOBJEXT@
55 CC = @CC@
56 CCDEPMODE = @CCDEPMODE@
57 CFLAGS = @CFLAGS@
58 CPP = @CPP@
59 CPPFLAGS = @CPPFLAGS@
60 CYGPATH_W = @CYGPATH_W@
61 DATADIRNAME = @DATADIRNAME@
62 DEFS = @DEFS@
63 DEPDIR = @DEPDIR@
64 ECHO_C = @ECHO_C@
65 ECHO_N = @ECHO_N@
66 ECHO_T = @ECHO_T@
67 EGREP = @EGREP@
68 EXEEXT = @EXEEXT@
69 FFTW3_CFLAGS = @FFTW3_CFLAGS@
70 FFTW3_LIBS = @FFTW3_LIBS@
71 GDK_PIXBUF_CSOURCE = @GDK_PIXBUF_CSOURCE@
72 GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
73 GIMP_CFLAGS = @GIMP_CFLAGS@
74 GIMP_CFLAGS_NOUI = @GIMP_CFLAGS_NOUI@
75 GIMP_DATA_DIR = @GIMP_DATA_DIR@
76 GIMP_LIBS = @GIMP_LIBS@
77 GIMP_LIBS_NOUI = @GIMP_LIBS_NOUI@
78 GIMP_PLUGIN_DIR = @GIMP_PLUGIN_DIR@
79 GIMP_USER_PLUGIN_DIR = @GIMP_USER_PLUGIN_DIR@
80 GMOFILES = @GMOFILES@
81 GMSGFMT = @GMSGFMT@
82 GREP = @GREP@
83 GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
84 GTHREAD_LIBS = @GTHREAD_LIBS@
85 INSTALL = @INSTALL@
86 INSTALL_DATA = @INSTALL_DATA@
87 INSTALL_PROGRAM = @INSTALL_PROGRAM@
88 INSTALL_SCRIPT = @INSTALL_SCRIPT@
89 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
90 INSTOBJEXT = @INSTOBJEXT@
91 INTLLIBS = @INTLLIBS@
92 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
93 INTLTOOL_MERGE = @INTLTOOL_MERGE@
94 INTLTOOL_PERL = @INTLTOOL_PERL@
95 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
96 LDFLAGS = @LDFLAGS@
97 LIBOBJS = @LIBOBJS@
98 LIBS = @LIBS@
99 LTLIBOBJS = @LTLIBOBJS@
100 MAINT = @MAINT@
101 MAKEINFO = @MAKEINFO@
102 MKDIR_P = @MKDIR_P@
103 MKINSTALLDIRS = @MKINSTALLDIRS@
104 MSGFMT = @MSGFMT@
105 MSGFMT_OPTS = @MSGFMT_OPTS@
106 MSGMERGE = @MSGMERGE@
107 OBJEXT = @OBJEXT@
108 PACKAGE = @PACKAGE@
109 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
110 PACKAGE_NAME = @PACKAGE_NAME@
111 PACKAGE_STRING = @PACKAGE_STRING@
112 PACKAGE_TARNAME = @PACKAGE_TARNAME@
113 PACKAGE_VERSION = @PACKAGE_VERSION@
114 PATHSEP = @PATHSEP@
115 PATH_SEPARATOR = @PATH_SEPARATOR@
116 PKG_CONFIG = @PKG_CONFIG@
117 POFILES = @POFILES@
118 POSUB = @POSUB@
119 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
120 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
121 SET_MAKE = @SET_MAKE@
122 SHELL = @SHELL@
123 STRIP = @STRIP@
124 USE_NLS = @USE_NLS@
125 VERSION = @VERSION@
126 XGETTEXT = @XGETTEXT@
127 abs_builddir = @abs_builddir@
128 abs_srcdir = @abs_srcdir@
129 abs_top_builddir = @abs_top_builddir@
130 abs_top_srcdir = @abs_top_srcdir@
131 ac_ct_CC = @ac_ct_CC@
132 am__include = @am__include@
133 am__leading_dot = @am__leading_dot@
134 am__quote = @am__quote@
135 am__tar = @am__tar@
136 am__untar = @am__untar@
137 bindir = @bindir@
138 build_alias = @build_alias@
139 builddir = @builddir@
140 datadir = @datadir@
141 datarootdir = @datarootdir@
142 docdir = @docdir@
143 dvidir = @dvidir@
144 exec_prefix = @exec_prefix@
145 host_alias = @host_alias@
146 htmldir = @htmldir@
147 includedir = @includedir@
148 infodir = @infodir@
149 install_sh = @install_sh@
150 libdir = @libdir@
151 libexecdir = @libexecdir@
152 localedir = @localedir@
153 localstatedir = @localstatedir@
154 mandir = @mandir@
155 mkdir_p = @mkdir_p@
156 oldincludedir = @oldincludedir@
157 pdfdir = @pdfdir@
158 prefix = @prefix@
159 program_transform_name = @program_transform_name@
160 psdir = @psdir@
161 sbindir = @sbindir@
162 sharedstatedir = @sharedstatedir@
163 srcdir = @srcdir@
164 sysconfdir = @sysconfdir@
165 target_alias = @target_alias@
166 top_build_prefix = @top_build_prefix@
167 top_builddir = @top_builddir@
168 top_srcdir = @top_srcdir@
169 BUILT_SOURCES = pixbufs.h
170 icons = \
171 focusblur-model-flat.png \
172 focusblur-model-spherical.png \
173 focusblur-model-gaussian.png \
174 focusblur-model-ring.png \
175 focusblur-model-concave.png
176
177 EXTRA_DIST = $(icons)
178 all: $(BUILT_SOURCES)
179 $(MAKE) $(AM_MAKEFLAGS) all-am
180
181 .SUFFIXES:
182 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
183 @for dep in $?; do \
184 case '$(am__configure_deps)' in \
185 *$$dep*) \
186 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
187 && { if test -f $@; then exit 0; else break; fi; }; \
188 exit 1;; \
189 esac; \
190 done; \
191 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu pixmaps/Makefile'; \
192 $(am__cd) $(top_srcdir) && \
193 $(AUTOMAKE) --gnu pixmaps/Makefile
194 .PRECIOUS: Makefile
195 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
196 @case '$?' in \
197 *config.status*) \
198 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
199 *) \
200 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
201 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
202 esac;
203
204 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
205 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
206
207 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
208 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
209 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
210 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
211 $(am__aclocal_m4_deps):
212 tags: TAGS
213 TAGS:
214
215 ctags: CTAGS
216 CTAGS:
217
218
219 distdir: $(DISTFILES)
220 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
221 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
222 list='$(DISTFILES)'; \
223 dist_files=`for file in $$list; do echo $$file; done | \
224 sed -e "s|^$$srcdirstrip/||;t" \
225 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
226 case $$dist_files in \
227 */*) $(MKDIR_P) `echo "$$dist_files" | \
228 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
229 sort -u` ;; \
230 esac; \
231 for file in $$dist_files; do \
232 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
233 if test -d $$d/$$file; then \
234 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
235 if test -d "$(distdir)/$$file"; then \
236 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
237 fi; \
238 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
239 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
240 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
241 fi; \
242 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
243 else \
244 test -f "$(distdir)/$$file" \
245 || cp -p $$d/$$file "$(distdir)/$$file" \
246 || exit 1; \
247 fi; \
248 done
249 check-am: all-am
250 check: $(BUILT_SOURCES)
251 $(MAKE) $(AM_MAKEFLAGS) check-am
252 all-am: Makefile
253 installdirs:
254 install: $(BUILT_SOURCES)
255 $(MAKE) $(AM_MAKEFLAGS) install-am
256 install-exec: install-exec-am
257 install-data: install-data-am
258 uninstall: uninstall-am
259
260 install-am: all-am
261 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
262
263 installcheck: installcheck-am
264 install-strip:
265 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
266 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
267 `test -z '$(STRIP)' || \
268 echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
269 mostlyclean-generic:
270
271 clean-generic:
272
273 distclean-generic:
274 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
275 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
276
277 maintainer-clean-generic:
278 @echo "This command is intended for maintainers to use"
279 @echo "it deletes files that may require special tools to rebuild."
280 -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
281 clean: clean-am
282
283 clean-am: clean-generic mostlyclean-am
284
285 distclean: distclean-am
286 -rm -f Makefile
287 distclean-am: clean-am distclean-generic
288
289 dvi: dvi-am
290
291 dvi-am:
292
293 html: html-am
294
295 html-am:
296
297 info: info-am
298
299 info-am:
300
301 install-data-am:
302
303 install-dvi: install-dvi-am
304
305 install-dvi-am:
306
307 install-exec-am:
308
309 install-html: install-html-am
310
311 install-html-am:
312
313 install-info: install-info-am
314
315 install-info-am:
316
317 install-man:
318
319 install-pdf: install-pdf-am
320
321 install-pdf-am:
322
323 install-ps: install-ps-am
324
325 install-ps-am:
326
327 installcheck-am:
328
329 maintainer-clean: maintainer-clean-am
330 -rm -f Makefile
331 maintainer-clean-am: distclean-am maintainer-clean-generic
332
333 mostlyclean: mostlyclean-am
334
335 mostlyclean-am: mostlyclean-generic
336
337 pdf: pdf-am
338
339 pdf-am:
340
341 ps: ps-am
342
343 ps-am:
344
345 uninstall-am:
346
347 .MAKE: all check install install-am install-strip
348
349 .PHONY: all all-am check check-am clean clean-generic distclean \
350 distclean-generic distdir dvi dvi-am html html-am info info-am \
351 install install-am install-data install-data-am install-dvi \
352 install-dvi-am install-exec install-exec-am install-html \
353 install-html-am install-info install-info-am install-man \
354 install-pdf install-pdf-am install-ps install-ps-am \
355 install-strip installcheck installcheck-am installdirs \
356 maintainer-clean maintainer-clean-generic mostlyclean \
357 mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am
358
359
360 pixbufs.h: $(icons)
361 { echo '#include <gdk-pixbuf/gdk-pixdata.h>' ; \
362 $(GDK_PIXBUF_CSOURCE) --struct --rle --build-list \
363 $$(for i in $(icons) ; do \
364 echo $$i | sed -e 's;\..*;;' -e 's;-;_;g' ; \
365 echo -n $$i" " ; \
366 done) | \
367 sed -e '/pixel_data:/a(guint8 *)' ; \
368 } > $@
369
370 # Tell versions [3.59,3.63) of GNU make to not export all variables.
371 # Otherwise a system limit (for SysV at least) may be exceeded.
372 .NOEXPORT:
focus-blur/focusblur-3.2.6/pixmaps/focusblur-model-concave.png less more
Binary diff not shown
focus-blur/focusblur-3.2.6/pixmaps/focusblur-model-flat.png less more
Binary diff not shown
focus-blur/focusblur-3.2.6/pixmaps/focusblur-model-gaussian.png less more
Binary diff not shown
focus-blur/focusblur-3.2.6/pixmaps/focusblur-model-ring.png less more
Binary diff not shown
focus-blur/focusblur-3.2.6/pixmaps/focusblur-model-spherical.png less more
Binary diff not shown
+0
-12
focus-blur/focusblur-3.2.6/po/ChangeLog less more
0 2007-01-22 gettextize <bug-gnu-gettext@gnu.org>
1
2 * Makefile.in.in: New file, from gettext-0.14.6.
3 * Rules-quot: New file, from gettext-0.14.6.
4 * boldquot.sed: New file, from gettext-0.14.6.
5 * en@boldquot.header: New file, from gettext-0.14.6.
6 * en@quot.header: New file, from gettext-0.14.6.
7 * insert-header.sin: New file, from gettext-0.14.6.
8 * quot.sed: New file, from gettext-0.14.6.
9 * remove-potcdate.sin: New file, from gettext-0.14.6.
10 * POTFILES.in: New file.
11
+0
-217
focus-blur/focusblur-3.2.6/po/Makefile.in.in less more
0 # Makefile for program source directory in GNU NLS utilities package.
1 # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
2 # Copyright (C) 2004-2008 Rodney Dawes <dobey.pwns@gmail.com>
3 #
4 # This file may be copied and used freely without restrictions. It may
5 # be used in projects which are not available under a GNU Public License,
6 # but which still want to provide support for the GNU gettext functionality.
7 #
8 # - Modified by Owen Taylor <otaylor@redhat.com> to use GETTEXT_PACKAGE
9 # instead of PACKAGE and to look for po2tbl in ./ not in intl/
10 #
11 # - Modified by jacob berkman <jacob@ximian.com> to install
12 # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize
13 #
14 # - Modified by Rodney Dawes <dobey.pwns@gmail.com> for use with intltool
15 #
16 # We have the following line for use by intltoolize:
17 # INTLTOOL_MAKEFILE
18
19 GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
20 PACKAGE = @PACKAGE@
21 VERSION = @VERSION@
22
23 SHELL = @SHELL@
24
25 srcdir = @srcdir@
26 top_srcdir = @top_srcdir@
27 top_builddir = @top_builddir@
28 VPATH = @srcdir@
29
30 prefix = @prefix@
31 exec_prefix = @exec_prefix@
32 datadir = @datadir@
33 datarootdir = @datarootdir@
34 libdir = @libdir@
35 DATADIRNAME = @DATADIRNAME@
36 itlocaledir = $(prefix)/$(DATADIRNAME)/locale
37 subdir = po
38 install_sh = @install_sh@
39 # Automake >= 1.8 provides @mkdir_p@.
40 # Until it can be supposed, use the safe fallback:
41 mkdir_p = $(install_sh) -d
42
43 INSTALL = @INSTALL@
44 INSTALL_DATA = @INSTALL_DATA@
45
46 GMSGFMT = @GMSGFMT@
47 MSGFMT = @MSGFMT@
48 XGETTEXT = @XGETTEXT@
49 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
50 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
51 MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist
52 GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot
53
54 ALL_LINGUAS = @ALL_LINGUAS@
55
56 PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; else echo "$(ALL_LINGUAS)"; fi)
57
58 USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep \^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep \^$$lang$$`"; then printf "$$lang "; fi; done; fi)
59
60 USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done)
61
62 POFILES=$(shell LINGUAS="$(PO_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done)
63
64 DISTFILES = Makefile.in.in POTFILES.in $(POFILES)
65 EXTRA_DISTFILES = ChangeLog POTFILES.skip Makevars LINGUAS
66
67 POTFILES = \
68 # This comment gets stripped out
69
70 CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done)
71
72 .SUFFIXES:
73 .SUFFIXES: .po .pox .gmo .mo .msg .cat
74
75 .po.pox:
76 $(MAKE) $(GETTEXT_PACKAGE).pot
77 $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox
78
79 .po.mo:
80 $(MSGFMT) -o $@ $<
81
82 .po.gmo:
83 file=`echo $* | sed 's,.*/,,'`.gmo \
84 && rm -f $$file && $(GMSGFMT) -o $$file $<
85
86 .po.cat:
87 sed -f ../intl/po2msg.sed < $< > $*.msg \
88 && rm -f $@ && gencat $@ $*.msg
89
90
91 all: all-@USE_NLS@
92
93 all-yes: $(CATALOGS)
94 all-no:
95
96 $(GETTEXT_PACKAGE).pot: $(POTFILES)
97 $(GENPOT)
98
99 install: install-data
100 install-data: install-data-@USE_NLS@
101 install-data-no: all
102 install-data-yes: all
103 linguas="$(USE_LINGUAS)"; \
104 for lang in $$linguas; do \
105 dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \
106 $(mkdir_p) $$dir; \
107 if test -r $$lang.gmo; then \
108 $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
109 echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \
110 else \
111 $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
112 echo "installing $(srcdir)/$$lang.gmo as" \
113 "$$dir/$(GETTEXT_PACKAGE).mo"; \
114 fi; \
115 if test -r $$lang.gmo.m; then \
116 $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \
117 echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \
118 else \
119 if test -r $(srcdir)/$$lang.gmo.m ; then \
120 $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \
121 $$dir/$(GETTEXT_PACKAGE).mo.m; \
122 echo "installing $(srcdir)/$$lang.gmo.m as" \
123 "$$dir/$(GETTEXT_PACKAGE).mo.m"; \
124 else \
125 true; \
126 fi; \
127 fi; \
128 done
129
130 # Empty stubs to satisfy archaic automake needs
131 dvi info ctags tags CTAGS TAGS ID:
132
133 # Define this as empty until I found a useful application.
134 install-exec installcheck:
135
136 uninstall:
137 linguas="$(USE_LINGUAS)"; \
138 for lang in $$linguas; do \
139 rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
140 rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
141 done
142
143 check: all $(GETTEXT_PACKAGE).pot
144 rm -f missing notexist
145 srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m
146 if [ -r missing -o -r notexist ]; then \
147 exit 1; \
148 fi
149
150 mostlyclean:
151 rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp
152 rm -f .intltool-merge-cache
153
154 clean: mostlyclean
155
156 distclean: clean
157 rm -f Makefile Makefile.in POTFILES stamp-it
158 rm -f *.mo *.msg *.cat *.cat.m *.gmo
159
160 maintainer-clean: distclean
161 @echo "This command is intended for maintainers to use;"
162 @echo "it deletes files that may require special tools to rebuild."
163 rm -f Makefile.in.in
164
165 distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
166 dist distdir: $(DISTFILES)
167 dists="$(DISTFILES)"; \
168 extra_dists="$(EXTRA_DISTFILES)"; \
169 for file in $$extra_dists; do \
170 test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \
171 done; \
172 for file in $$dists; do \
173 test -f $$file || file="$(srcdir)/$$file"; \
174 ln $$file $(distdir) 2> /dev/null \
175 || cp -p $$file $(distdir); \
176 done
177
178 update-po: Makefile
179 $(MAKE) $(GETTEXT_PACKAGE).pot
180 tmpdir=`pwd`; \
181 linguas="$(USE_LINGUAS)"; \
182 for lang in $$linguas; do \
183 echo "$$lang:"; \
184 result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \
185 if $$result; then \
186 if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
187 rm -f $$tmpdir/$$lang.new.po; \
188 else \
189 if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
190 :; \
191 else \
192 echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
193 rm -f $$tmpdir/$$lang.new.po; \
194 exit 1; \
195 fi; \
196 fi; \
197 else \
198 echo "msgmerge for $$lang.gmo failed!"; \
199 rm -f $$tmpdir/$$lang.new.po; \
200 fi; \
201 done
202
203 Makefile POTFILES: stamp-it
204 @if test ! -f $@; then \
205 rm -f stamp-it; \
206 $(MAKE) stamp-it; \
207 fi
208
209 stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in
210 cd $(top_builddir) \
211 && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \
212 $(SHELL) ./config.status
213
214 # Tell versions [3.59,3.63) of GNU make not to export all variables.
215 # Otherwise a system limit (for SysV at least) may be exceeded.
216 .NOEXPORT:
+0
-41
focus-blur/focusblur-3.2.6/po/Makevars less more
0 # Makefile variables for PO directory in any package using GNU gettext.
1
2 # Usually the message domain is the same as the package name.
3 DOMAIN = $(GETTEXT_PACKAGE)
4
5 # These two variables depend on the location of this directory.
6 subdir = po
7 top_builddir = ..
8
9 # These options get passed to xgettext.
10 XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
11
12 # This is the copyright holder that gets inserted into the header of the
13 # $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
14 # package. (Note that the msgstr strings, extracted from the package's
15 # sources, belong to the copyright holder of the package.) Translators are
16 # expected to transfer the copyright for their translations to this person
17 # or entity, or to disclaim their copyright. The empty string stands for
18 # the public domain; in this case the translators are expected to disclaim
19 # their copyright.
20 COPYRIGHT_HOLDER =
21
22 # This is the email address or URL to which the translators shall report
23 # bugs in the untranslated strings:
24 # - Strings which are not entire sentences, see the maintainer guidelines
25 # in the GNU gettext documentation, section 'Preparing Strings'.
26 # - Strings which use unclear terms or require additional context to be
27 # understood.
28 # - Strings which make invalid assumptions about notation of date, time or
29 # money.
30 # - Pluralisation problems.
31 # - Incorrect English spelling.
32 # - Incorrect formatting.
33 # It can be your email address, or a mailing list address where translators
34 # can write to without being subscribed, or the URL of a web page through
35 # which the translators can contact you.
36 MSGID_BUGS_ADDRESS =
37
38 # This is the list of locale categories, beyond LC_MESSAGES, for which the
39 # message catalogs shall be used. It is usually empty.
40 EXTRA_LOCALE_CATEGORIES =
+0
-13
focus-blur/focusblur-3.2.6/po/POTFILES.in less more
0 # List of source files which contain translatable strings.
1
2 src/brush.c
3 src/depthmap.c
4 src/fftblur.c
5 src/fftblurbuffer.c
6 src/focusblurenums.c
7 src/focusblurparam.c
8 src/focusblurrc.c
9 src/focusblurstock.c
10 src/gimpplugin.c
11 src/interface.c
12 src/render.c
+0
-211
focus-blur/focusblur-3.2.6/po/it.po less more
0 # translation of gimp focus-blur plug-in.
1 # This file is put in the public domain.
2 # Carlo Baldassi
3 msgid ""
4 msgstr ""
5 "Project-Id-Version: gimp focus-blur plug-in 3.1.4\n"
6 "Report-Msgid-Bugs-To: das atmark dream dot japan\n"
7 "POT-Creation-Date: 2009-08-11 22:01+0900\n"
8 "PO-Revision-Date: 2009-08-11 22:00+0900\n"
9 "Last-Translator: Carlo Baldassi <carlobaldassi@yahoo.it>\n"
10 "Language-Team: Italian\n"
11 "MIME-Version: 1.0\n"
12 "Content-Type: text/plain; charset=UTF-8\n"
13 "Content-Transfer-Encoding: 8bit\n"
14
15 #: src/brush.c:122
16 msgid "gimp_brush_get_pixels() is failed."
17 msgstr ""
18
19 #: src/depthmap.c:155 src/interface.c:599
20 msgid "Specified depth map is invalid."
21 msgstr ""
22
23 #: src/fftblur.c:288 src/render.c:162
24 msgid "Focus Blur..."
25 msgstr "Fuori fuoco..."
26
27 #: src/fftblurbuffer.c:94
28 msgid "Failed to update diffusion table."
29 msgstr ""
30
31 #: src/fftblurbuffer.c:145
32 msgid "Failed to allocate memory."
33 msgstr ""
34
35 #: src/fftblurbuffer.c:156 src/focusblurparam.c:176
36 msgid "Failed to update source buffer."
37 msgstr ""
38
39 #: src/fftblurbuffer.c:167 src/focusblurparam.c:188
40 msgid "Failed to update depth info."
41 msgstr ""
42
43 #: src/fftblurbuffer.c:183
44 msgid "Failed to update working buffer."
45 msgstr ""
46
47 #: src/fftblurbuffer.c:192 src/focusblurparam.c:196
48 msgid "Failed to update shine data."
49 msgstr ""
50
51 #: src/focusblurenums.c:51 src/focusblurstock.c:49
52 msgid "Flat"
53 msgstr "Piatto"
54
55 #: src/focusblurenums.c:52 src/focusblurstock.c:50
56 msgid "Spherical"
57 msgstr "Sferica"
58
59 #: src/focusblurenums.c:53 src/focusblurstock.c:51
60 msgid "Gaussian"
61 msgstr "Gaussiana"
62
63 #: src/focusblurenums.c:54 src/focusblurstock.c:52
64 msgid "Ring"
65 msgstr "Ad anello"
66
67 #: src/focusblurenums.c:55 src/focusblurstock.c:53
68 msgid "Concave"
69 msgstr "Concavo"
70
71 #: src/focusblurenums.c:56 src/focusblurstock.c:54
72 msgid "Brush"
73 msgstr "Pennelli"
74
75 #: src/focusblurenums.c:86
76 msgid "Luminosity"
77 msgstr "Luminosità"
78
79 #: src/focusblurenums.c:87
80 msgid "Saturation"
81 msgstr "Saturazione"
82
83 #: src/focusblurenums.c:119
84 msgid "Best"
85 msgstr "Migliore"
86
87 #: src/focusblurenums.c:120
88 msgid "Normal"
89 msgstr "Normale"
90
91 #: src/focusblurenums.c:121
92 msgid "Low"
93 msgstr "Bassa"
94
95 #: src/focusblurenums.c:122
96 msgid "Defective"
97 msgstr "Carente"
98
99 #: src/focusblurrc.c:374
100 msgid "Resource file is invalid."
101 msgstr ""
102
103 #: src/gimpplugin.c:78
104 msgid "Make a out of focus with luminosity and depth, like a sight or lenses"
105 msgstr ""
106 "Simula un fuori fuoco con luminosità e profondità, come attraverso una lente"
107
108 #: src/gimpplugin.c:87
109 msgid "_Focus Blur..."
110 msgstr "_Focus Blur..."
111
112 #: src/interface.c:96
113 msgid "Focus Blur"
114 msgstr "Focus Blur"
115
116 #: src/interface.c:147
117 msgid "_Basic"
118 msgstr "_Base"
119
120 #: src/interface.c:159
121 msgid "Diffusion Model and _Radius:"
122 msgstr "Modello di diffusione e Ra_ggio:"
123
124 #: src/interface.c:182 src/interface.c:750
125 #, c-format
126 msgid "Brush:%s"
127 msgstr "Pennelli:%s"
128
129 #: src/interface.c:217
130 msgid "Pea_k radius for Shining:"
131 msgstr "Raggio del picco di _luminosità"
132
133 #: src/interface.c:229
134 msgid "_Use Depth map:"
135 msgstr "_Usa una mappa per la profondità:"
136
137 #: src/interface.c:266
138 msgid "Foc_al depth:"
139 msgstr "Profo_ndità focale:"
140
141 #: src/interface.c:282
142 msgid "_Model"
143 msgstr "_Modello"
144
145 #: src/interface.c:304
146 msgid "Make a ba_lance of brush"
147 msgstr ""
148
149 #: src/interface.c:320
150 msgid "_Rotation:"
151 msgstr "_Rotazione:"
152
153 #: src/interface.c:334
154 msgid "F_illing inside:"
155 msgstr "Riempimen_to:"
156
157 #: src/interface.c:348
158 msgid "Sof_tness:"
159 msgstr "_Sfocatura:"
160
161 #: src/interface.c:363
162 msgid "_Shine"
163 msgstr "B_rillìo"
164
165 #: src/interface.c:377
166 msgid "Sensing t_ype:"
167 msgstr "Appli_ca a:"
168
169 #: src/interface.c:384
170 msgid "T_hreshold:"
171 msgstr "So_glia:"
172
173 #: src/interface.c:398
174 msgid "_Level:"
175 msgstr "_Livello:"
176
177 #: src/interface.c:412
178 msgid "C_urve:"
179 msgstr "C_urvatura:"
180
181 #: src/interface.c:428
182 msgid "_Depth"
183 msgstr "_Profondità"
184
185 #: src/interface.c:433
186 msgid "Depth with p_recedence"
187 msgstr "Preceden_za alla profondità"
188
189 #: src/interface.c:448
190 msgid "Evade _anti-alias"
191 msgstr ""
192
193 #: src/interface.c:467
194 msgid "Pre_ferences"
195 msgstr "Pre_ferenze"
196
197 #: src/interface.c:484
198 msgid "Rendering _quality:"
199 msgstr "_Qualità del risultato:"
200
201 #: src/interface.c:500
202 msgid "Pre_view quality:"
203 msgstr "Qualità dell'an_teprima:"
204
205 #: src/interface.c:513
206 msgid "Dis_able support for multi-threads"
207 msgstr "Disabilita il multi-t_hread"
208
209 #~ msgid "Soft_ness delay:"
210 #~ msgstr "_Dilazione della sfocatura:"
+0
-208
focus-blur/focusblur-3.2.6/po/ja.po less more
0 # Message catalog for Focus Blur (Japanese)
1 # This file is put in the public domain.
2 # Kyoichiro Suda <das atmark dream dot japan>, 2009.
3 #
4 msgid ""
5 msgstr ""
6 "Project-Id-Version: Focus Blur 3.2.4\n"
7 "Report-Msgid-Bugs-To: das atmark dream dot japan\n"
8 "POT-Creation-Date: 2009-08-11 22:01+0900\n"
9 "PO-Revision-Date: 2009-08-11 21:58+0900\n"
10 "Last-Translator: Kyoichiro Suda\n"
11 "Language-Team: Japanese <LL@li.org>\n"
12 "MIME-Version: 1.0\n"
13 "Content-Type: text/plain; charset=UTF-8\n"
14 "Content-Transfer-Encoding: 8bit\n"
15
16 #: src/brush.c:122
17 msgid "gimp_brush_get_pixels() is failed."
18 msgstr "gimp_brush_get_pixels() は失敗しました。"
19
20 #: src/depthmap.c:155 src/interface.c:599
21 msgid "Specified depth map is invalid."
22 msgstr "指定された深度マップは無効です。"
23
24 #: src/fftblur.c:288 src/render.c:162
25 msgid "Focus Blur..."
26 msgstr "焦点ぼかし..."
27
28 #: src/fftblurbuffer.c:94
29 msgid "Failed to update diffusion table."
30 msgstr "拡散テーブルの更新に失敗しました。"
31
32 #: src/fftblurbuffer.c:145
33 msgid "Failed to allocate memory."
34 msgstr "メモリーの割り当てに失敗しました。"
35
36 #: src/fftblurbuffer.c:156 src/focusblurparam.c:176
37 msgid "Failed to update source buffer."
38 msgstr "ソースバッファの更新に失敗しました。"
39
40 #: src/fftblurbuffer.c:167 src/focusblurparam.c:188
41 msgid "Failed to update depth info."
42 msgstr "深度情報の更新に失敗しました。"
43
44 #: src/fftblurbuffer.c:183
45 msgid "Failed to update working buffer."
46 msgstr "作業バッファの更新に失敗しました。"
47
48 #: src/fftblurbuffer.c:192 src/focusblurparam.c:196
49 msgid "Failed to update shine data."
50 msgstr "輝きデータの更新に失敗しました。"
51
52 #: src/focusblurenums.c:51 src/focusblurstock.c:49
53 msgid "Flat"
54 msgstr "平坦"
55
56 #: src/focusblurenums.c:52 src/focusblurstock.c:50
57 msgid "Spherical"
58 msgstr "球状"
59
60 #: src/focusblurenums.c:53 src/focusblurstock.c:51
61 msgid "Gaussian"
62 msgstr "ガウス"
63
64 #: src/focusblurenums.c:54 src/focusblurstock.c:52
65 msgid "Ring"
66 msgstr "輪状"
67
68 #: src/focusblurenums.c:55 src/focusblurstock.c:53
69 msgid "Concave"
70 msgstr "凹面"
71
72 #: src/focusblurenums.c:56 src/focusblurstock.c:54
73 msgid "Brush"
74 msgstr "ブラシ"
75
76 #: src/focusblurenums.c:86
77 msgid "Luminosity"
78 msgstr "光度"
79
80 #: src/focusblurenums.c:87
81 msgid "Saturation"
82 msgstr "彩度"
83
84 #: src/focusblurenums.c:119
85 msgid "Best"
86 msgstr "最良"
87
88 #: src/focusblurenums.c:120
89 msgid "Normal"
90 msgstr "普通"
91
92 #: src/focusblurenums.c:121
93 msgid "Low"
94 msgstr "低い"
95
96 #: src/focusblurenums.c:122
97 msgid "Defective"
98 msgstr "欠陥的"
99
100 #: src/focusblurrc.c:374
101 msgid "Resource file is invalid."
102 msgstr "リソースファイルは無効です。"
103
104 #: src/gimpplugin.c:78
105 msgid "Make a out of focus with luminosity and depth, like a sight or lenses"
106 msgstr "視覚やレンズのような光量と奥行を伴うボケを加える"
107
108 #: src/gimpplugin.c:87
109 msgid "_Focus Blur..."
110 msgstr "焦点ぼかし(_F)..."
111
112 #: src/interface.c:96
113 msgid "Focus Blur"
114 msgstr "焦点ぼかし"
115
116 #: src/interface.c:147
117 msgid "_Basic"
118 msgstr "基礎(_B)"
119
120 #: src/interface.c:159
121 msgid "Diffusion Model and _Radius:"
122 msgstr "拡散モデルと半径(_R):"
123
124 #: src/interface.c:182 src/interface.c:750
125 #, c-format
126 msgid "Brush:%s"
127 msgstr "ブラシ:%s"
128
129 #: src/interface.c:217
130 msgid "Pea_k radius for Shining:"
131 msgstr "最高に輝く半径(_K):"
132
133 #: src/interface.c:229
134 msgid "_Use Depth map:"
135 msgstr "奥行マップを使う(_U):"
136
137 #: src/interface.c:266
138 msgid "Foc_al depth:"
139 msgstr "焦点(_A):"
140
141 #: src/interface.c:282
142 msgid "_Model"
143 msgstr "モデル(_M)"
144
145 #: src/interface.c:304
146 msgid "Make a ba_lance of brush"
147 msgstr "ブラシの均衡をとる(_L)"
148
149 #: src/interface.c:320
150 msgid "_Rotation:"
151 msgstr "回転(_R):"
152
153 #: src/interface.c:334
154 msgid "F_illing inside:"
155 msgstr "内側塗りつぶし(_I):"
156
157 #: src/interface.c:348
158 msgid "Sof_tness:"
159 msgstr "ソフト(_T):"
160
161 #: src/interface.c:363
162 msgid "_Shine"
163 msgstr "輝き(_S)"
164
165 #: src/interface.c:377
166 msgid "Sensing t_ype:"
167 msgstr "反応タイプ(_Y):"
168
169 #: src/interface.c:384
170 msgid "T_hreshold:"
171 msgstr "閾値(_H):"
172
173 #: src/interface.c:398
174 msgid "_Level:"
175 msgstr "レベル(_L):"
176
177 #: src/interface.c:412
178 msgid "C_urve:"
179 msgstr "カーブ(_U):"
180
181 #: src/interface.c:428
182 msgid "_Depth"
183 msgstr "奥行(_D)"
184
185 #: src/interface.c:433
186 msgid "Depth with p_recedence"
187 msgstr "奥行で優先づけをする(_R)"
188
189 #: src/interface.c:448
190 msgid "Evade _anti-alias"
191 msgstr "アンチエイリアスを回避する(_A)"
192
193 #: src/interface.c:467
194 msgid "Pre_ferences"
195 msgstr "設定(_F)"
196
197 #: src/interface.c:484
198 msgid "Rendering _quality:"
199 msgstr "レンダリング品質(_Q):"
200
201 #: src/interface.c:500
202 msgid "Pre_view quality:"
203 msgstr "プレビュー品質(_V):"
204
205 #: src/interface.c:513
206 msgid "Dis_able support for multi-threads"
207 msgstr "マルチスレッドサポートを無効にする(_A)"
+0
-215
focus-blur/focusblur-3.2.6/po/ru.po less more
0 # translation of ru.po to Russian
1 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2 # This file is distributed under the same license as the PACKAGE package.
3 #
4 # Alexandre Prokoudine <alexandre.prokoudine@gmail.com>, 2006.
5 msgid ""
6 msgstr ""
7 "Project-Id-Version: ru\n"
8 "Report-Msgid-Bugs-To: das atmark dream dot japan\n"
9 "POT-Creation-Date: 2009-08-11 22:01+0900\n"
10 "PO-Revision-Date: 2009-08-11 22:00+0900\n"
11 "Last-Translator: Yury Aliaev <mutabor@altlinux.org>\n"
12 "Language-Team: Russian <gnome-cyr@gnome.org>\n"
13 "MIME-Version: 1.0\n"
14 "Content-Type: text/plain; charset=UTF-8\n"
15 "Content-Transfer-Encoding: 8bit\n"
16 "X-Generator: KBabel 1.11.4\n"
17 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
18 "10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19
20 #: src/brush.c:122
21 msgid "gimp_brush_get_pixels() is failed."
22 msgstr "Ошибка выполнения функции gimp_brush_get_pixels()."
23
24 #: src/depthmap.c:155 src/interface.c:599
25 msgid "Specified depth map is invalid."
26 msgstr "Некорректная карта глубин."
27
28 #: src/fftblur.c:288 src/render.c:162
29 msgid "Focus Blur..."
30 msgstr "Размывание вне зоны ГРИП..."
31
32 #: src/fftblurbuffer.c:94
33 msgid "Failed to update diffusion table."
34 msgstr "Ошибка заполнения таблицы рассеяния."
35
36 #: src/fftblurbuffer.c:145
37 msgid "Failed to allocate memory."
38 msgstr "Ошибка выделения памяти."
39
40 #: src/fftblurbuffer.c:156 src/focusblurparam.c:176
41 msgid "Failed to update source buffer."
42 msgstr "Ошибка обновления буфера исходных данных."
43
44 #: src/fftblurbuffer.c:167 src/focusblurparam.c:188
45 msgid "Failed to update depth info."
46 msgstr "Ошибка обновления информации о глубине."
47
48 #: src/fftblurbuffer.c:183
49 msgid "Failed to update working buffer."
50 msgstr "Ошибка обновления рабочего буфера."
51
52 #: src/fftblurbuffer.c:192 src/focusblurparam.c:196
53 msgid "Failed to update shine data."
54 msgstr "Ошибка обновления данных светимости."
55
56 #: src/focusblurenums.c:51 src/focusblurstock.c:49
57 msgid "Flat"
58 msgstr "Плоская"
59
60 #: src/focusblurenums.c:52 src/focusblurstock.c:50
61 msgid "Spherical"
62 msgstr "Сферический"
63
64 #: src/focusblurenums.c:53 src/focusblurstock.c:51
65 msgid "Gaussian"
66 msgstr "Гауссово"
67
68 #: src/focusblurenums.c:54 src/focusblurstock.c:52
69 msgid "Ring"
70 msgstr "Кольцевая"
71
72 #: src/focusblurenums.c:55 src/focusblurstock.c:53
73 msgid "Concave"
74 msgstr "Вогнутая"
75
76 #: src/focusblurenums.c:56 src/focusblurstock.c:54
77 msgid "Brush"
78 msgstr "Кисть"
79
80 #: src/focusblurenums.c:86
81 msgid "Luminosity"
82 msgstr "Освещенность"
83
84 #: src/focusblurenums.c:87
85 msgid "Saturation"
86 msgstr "Насыщенность"
87
88 #: src/focusblurenums.c:119
89 msgid "Best"
90 msgstr "Высокое"
91
92 #: src/focusblurenums.c:120
93 msgid "Normal"
94 msgstr "Обычное"
95
96 #: src/focusblurenums.c:121
97 msgid "Low"
98 msgstr "Низкое"
99
100 #: src/focusblurenums.c:122
101 msgid "Defective"
102 msgstr "Ужасное"
103
104 #: src/focusblurrc.c:374
105 msgid "Resource file is invalid."
106 msgstr "Некорректный файл ресурса."
107
108 #: src/gimpplugin.c:78
109 msgid "Make a out of focus with luminosity and depth, like a sight or lenses"
110 msgstr "Имитация размывания вне зоны резко изображаемого пространства"
111
112 #: src/gimpplugin.c:87
113 msgid "_Focus Blur..."
114 msgstr "Размывание вне зоны ГРИП..."
115
116 #: src/interface.c:96
117 msgid "Focus Blur"
118 msgstr "Размывание вне зоны ГРИП"
119
120 #: src/interface.c:147
121 msgid "_Basic"
122 msgstr "О_сновные"
123
124 #: src/interface.c:159
125 msgid "Diffusion Model and _Radius:"
126 msgstr "М_одель рассеивания и радиус:"
127
128 #: src/interface.c:182 src/interface.c:750
129 #, c-format
130 msgid "Brush:%s"
131 msgstr "Кисть:%s"
132
133 #: src/interface.c:217
134 msgid "Pea_k radius for Shining:"
135 msgstr "Пиковый _радиус сияния:"
136
137 #: src/interface.c:229
138 msgid "_Use Depth map:"
139 msgstr "_Использовать карту расстояний:"
140
141 #: src/interface.c:266
142 msgid "Foc_al depth:"
143 msgstr "_Фокусное расстояние:"
144
145 #: src/interface.c:282
146 msgid "_Model"
147 msgstr "_Модель"
148
149 #: src/interface.c:304
150 msgid "Make a ba_lance of brush"
151 msgstr "C_балансировать кисть."
152
153 #: src/interface.c:320
154 msgid "_Rotation:"
155 msgstr "_Вращение:"
156
157 #: src/interface.c:334
158 msgid "F_illing inside:"
159 msgstr "_Заполнение изнутри:"
160
161 #: src/interface.c:348
162 msgid "Sof_tness:"
163 msgstr "М_ягкость:"
164
165 #: src/interface.c:363
166 msgid "_Shine"
167 msgstr "_Свет"
168
169 #: src/interface.c:377
170 msgid "Sensing t_ype:"
171 msgstr "Тип _измерения:"
172
173 #: src/interface.c:384
174 msgid "T_hreshold:"
175 msgstr "П_орог:"
176
177 #: src/interface.c:398
178 msgid "_Level:"
179 msgstr "_Уровень:"
180
181 #: src/interface.c:412
182 msgid "C_urve:"
183 msgstr "_Кривая:"
184
185 #: src/interface.c:428
186 msgid "_Depth"
187 msgstr "_Глубина"
188
189 #: src/interface.c:433
190 msgid "Depth with p_recedence"
191 msgstr "_Приоритет глубины"
192
193 #: src/interface.c:448
194 msgid "Evade _anti-alias"
195 msgstr ""
196
197 #: src/interface.c:467
198 msgid "Pre_ferences"
199 msgstr "_Параметры"
200
201 #: src/interface.c:484
202 msgid "Rendering _quality:"
203 msgstr "_Качество обработки:"
204
205 #: src/interface.c:500
206 msgid "Pre_view quality:"
207 msgstr "Качество _эскиза:"
208
209 #: src/interface.c:513
210 msgid "Dis_able support for multi-threads"
211 msgstr "Отключить поддержку _многопоточности"
212
213 #~ msgid "Soft_ness delay:"
214 #~ msgstr "З_адержка мягкости:"
+0
-79
focus-blur/focusblur-3.2.6/src/Makefile.am less more
0 ## Process this file with automake to produce Makefile.in
1
2 libexecdir = $(GIMP_PLUGIN_DIR)/plug-ins
3
4 libexec_PROGRAMS = focusblur
5
6 focusblur_SOURCES = \
7 aaa.c \
8 aaa.h \
9 brush.c \
10 brush.h \
11 depthmap.c \
12 depthmap.h \
13 diffusion.c \
14 diffusion.h \
15 focusblur.h \
16 focusblurenums.c \
17 focusblurenums.h \
18 focusblurparam.c \
19 focusblurparam.h \
20 focusblurrc.c \
21 focusblurrc.h \
22 focusblurstock.c \
23 focusblurstock.h \
24 focusblurtypes.h \
25 gimpplugin.c \
26 gimpplugin.h \
27 interface.c \
28 interface.h \
29 render.c \
30 render.h \
31 shine.c \
32 shine.h \
33 source.c \
34 source.h
35
36 if HAVE_FFTW3
37 focusblur_SOURCES += \
38 fftblur.c \
39 fftblur.h \
40 fftblurbuffer.c \
41 fftblurbuffer.h \
42 fftblurproc.c \
43 fftblurproc.h
44 endif
45
46 if PLATFORM_WIN32
47 mwindows = -mwindows
48 endif
49
50 AM_LDFLAGS = $(mwindows)
51
52 INCLUDES = \
53 $(GTHREAD_CFLAGS) \
54 $(GIMP_CFLAGS) \
55 $(FFTW3_CFLAGS) \
56 -I$(includedir)
57
58 LDADD = \
59 $(GTHREAD_LIBS) \
60 $(GIMP_LIBS) \
61 $(FFTW3_LIBS)
62
63 focusblurstock.$(OBJEXT): $(top_srcdir)/pixmaps/pixbufs.h
64 $(top_srcdir)/pixmaps/pixbufs.h:
65 $(MAKE) -C $(top_srcdir)/pixmaps pixbufs.h
66
67 install-user: $(libexec_PROGRAMS)
68 @if test -d $(GIMP_USER_PLUGIN_DIR) ; then \
69 $(INSTALL_PROGRAM) $(libexec_PROGRAMS) $(GIMP_USER_PLUGIN_DIR) ; \
70 fi
71
72 uninstall-user:
73 @if test -d $(GIMP_USER_PLUGIN_DIR) ; then \
74 for i in $(libexec_PROGRAMS) ; do \
75 echo " $(RM) '$(GIMP_USER_PLUGIN_DIR)/$$i'"; \
76 $(RM) "$(GIMP_USER_PLUGIN_DIR)/$$i" ; \
77 done ; \
78 fi
+0
-563
focus-blur/focusblur-3.2.6/src/Makefile.in less more
0 # Makefile.in generated by automake 1.11.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
4 # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
5 # Inc.
6 # This Makefile.in is free software; the Free Software Foundation
7 # gives unlimited permission to copy and/or distribute it,
8 # with or without modifications, as long as this notice is preserved.
9
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
12 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
13 # PARTICULAR PURPOSE.
14
15 @SET_MAKE@
16
17 VPATH = @srcdir@
18 pkgdatadir = $(datadir)/@PACKAGE@
19 pkgincludedir = $(includedir)/@PACKAGE@
20 pkglibdir = $(libdir)/@PACKAGE@
21 pkglibexecdir = $(libexecdir)/@PACKAGE@
22 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
23 install_sh_DATA = $(install_sh) -c -m 644
24 install_sh_PROGRAM = $(install_sh) -c
25 install_sh_SCRIPT = $(install_sh) -c
26 INSTALL_HEADER = $(INSTALL_DATA)
27 transform = $(program_transform_name)
28 NORMAL_INSTALL = :
29 PRE_INSTALL = :
30 POST_INSTALL = :
31 NORMAL_UNINSTALL = :
32 PRE_UNINSTALL = :
33 POST_UNINSTALL = :
34 libexec_PROGRAMS = focusblur$(EXEEXT)
35 @HAVE_FFTW3_TRUE@am__append_1 = \
36 @HAVE_FFTW3_TRUE@ fftblur.c \
37 @HAVE_FFTW3_TRUE@ fftblur.h \
38 @HAVE_FFTW3_TRUE@ fftblurbuffer.c \
39 @HAVE_FFTW3_TRUE@ fftblurbuffer.h \
40 @HAVE_FFTW3_TRUE@ fftblurproc.c \
41 @HAVE_FFTW3_TRUE@ fftblurproc.h
42
43 subdir = src
44 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
45 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
46 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
47 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
48 $(ACLOCAL_M4)
49 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
50 CONFIG_HEADER = $(top_builddir)/config.h
51 CONFIG_CLEAN_FILES =
52 CONFIG_CLEAN_VPATH_FILES =
53 am__installdirs = "$(DESTDIR)$(libexecdir)"
54 PROGRAMS = $(libexec_PROGRAMS)
55 am__focusblur_SOURCES_DIST = aaa.c aaa.h brush.c brush.h depthmap.c \
56 depthmap.h diffusion.c diffusion.h focusblur.h \
57 focusblurenums.c focusblurenums.h focusblurparam.c \
58 focusblurparam.h focusblurrc.c focusblurrc.h focusblurstock.c \
59 focusblurstock.h focusblurtypes.h gimpplugin.c gimpplugin.h \
60 interface.c interface.h render.c render.h shine.c shine.h \
61 source.c source.h fftblur.c fftblur.h fftblurbuffer.c \
62 fftblurbuffer.h fftblurproc.c fftblurproc.h
63 @HAVE_FFTW3_TRUE@am__objects_1 = fftblur.$(OBJEXT) \
64 @HAVE_FFTW3_TRUE@ fftblurbuffer.$(OBJEXT) fftblurproc.$(OBJEXT)
65 am_focusblur_OBJECTS = aaa.$(OBJEXT) brush.$(OBJEXT) \
66 depthmap.$(OBJEXT) diffusion.$(OBJEXT) \
67 focusblurenums.$(OBJEXT) focusblurparam.$(OBJEXT) \
68 focusblurrc.$(OBJEXT) focusblurstock.$(OBJEXT) \
69 gimpplugin.$(OBJEXT) interface.$(OBJEXT) render.$(OBJEXT) \
70 shine.$(OBJEXT) source.$(OBJEXT) $(am__objects_1)
71 focusblur_OBJECTS = $(am_focusblur_OBJECTS)
72 focusblur_LDADD = $(LDADD)
73 am__DEPENDENCIES_1 =
74 focusblur_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
75 $(am__DEPENDENCIES_1)
76 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
77 depcomp = $(SHELL) $(top_srcdir)/depcomp
78 am__depfiles_maybe = depfiles
79 am__mv = mv -f
80 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
81 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
82 CCLD = $(CC)
83 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
84 SOURCES = $(focusblur_SOURCES)
85 DIST_SOURCES = $(am__focusblur_SOURCES_DIST)
86 ETAGS = etags
87 CTAGS = ctags
88 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
89 ACLOCAL = @ACLOCAL@
90 ALL_LINGUAS = @ALL_LINGUAS@
91 AMTAR = @AMTAR@
92 AUTOCONF = @AUTOCONF@
93 AUTOHEADER = @AUTOHEADER@
94 AUTOMAKE = @AUTOMAKE@
95 AWK = @AWK@
96 CATALOGS = @CATALOGS@
97 CATOBJEXT = @CATOBJEXT@
98 CC = @CC@
99 CCDEPMODE = @CCDEPMODE@
100 CFLAGS = @CFLAGS@
101 CPP = @CPP@
102 CPPFLAGS = @CPPFLAGS@
103 CYGPATH_W = @CYGPATH_W@
104 DATADIRNAME = @DATADIRNAME@
105 DEFS = @DEFS@
106 DEPDIR = @DEPDIR@
107 ECHO_C = @ECHO_C@
108 ECHO_N = @ECHO_N@
109 ECHO_T = @ECHO_T@
110 EGREP = @EGREP@
111 EXEEXT = @EXEEXT@
112 FFTW3_CFLAGS = @FFTW3_CFLAGS@
113 FFTW3_LIBS = @FFTW3_LIBS@
114 GDK_PIXBUF_CSOURCE = @GDK_PIXBUF_CSOURCE@
115 GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
116 GIMP_CFLAGS = @GIMP_CFLAGS@
117 GIMP_CFLAGS_NOUI = @GIMP_CFLAGS_NOUI@
118 GIMP_DATA_DIR = @GIMP_DATA_DIR@
119 GIMP_LIBS = @GIMP_LIBS@
120 GIMP_LIBS_NOUI = @GIMP_LIBS_NOUI@
121 GIMP_PLUGIN_DIR = @GIMP_PLUGIN_DIR@
122 GIMP_USER_PLUGIN_DIR = @GIMP_USER_PLUGIN_DIR@
123 GMOFILES = @GMOFILES@
124 GMSGFMT = @GMSGFMT@
125 GREP = @GREP@
126 GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
127 GTHREAD_LIBS = @GTHREAD_LIBS@
128 INSTALL = @INSTALL@
129 INSTALL_DATA = @INSTALL_DATA@
130 INSTALL_PROGRAM = @INSTALL_PROGRAM@
131 INSTALL_SCRIPT = @INSTALL_SCRIPT@
132 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
133 INSTOBJEXT = @INSTOBJEXT@
134 INTLLIBS = @INTLLIBS@
135 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
136 INTLTOOL_MERGE = @INTLTOOL_MERGE@
137 INTLTOOL_PERL = @INTLTOOL_PERL@
138 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
139 LDFLAGS = @LDFLAGS@
140 LIBOBJS = @LIBOBJS@
141 LIBS = @LIBS@
142 LTLIBOBJS = @LTLIBOBJS@
143 MAINT = @MAINT@
144 MAKEINFO = @MAKEINFO@
145 MKDIR_P = @MKDIR_P@
146 MKINSTALLDIRS = @MKINSTALLDIRS@
147 MSGFMT = @MSGFMT@
148 MSGFMT_OPTS = @MSGFMT_OPTS@
149 MSGMERGE = @MSGMERGE@
150 OBJEXT = @OBJEXT@
151 PACKAGE = @PACKAGE@
152 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
153 PACKAGE_NAME = @PACKAGE_NAME@
154 PACKAGE_STRING = @PACKAGE_STRING@
155 PACKAGE_TARNAME = @PACKAGE_TARNAME@
156 PACKAGE_VERSION = @PACKAGE_VERSION@
157 PATHSEP = @PATHSEP@
158 PATH_SEPARATOR = @PATH_SEPARATOR@
159 PKG_CONFIG = @PKG_CONFIG@
160 POFILES = @POFILES@
161 POSUB = @POSUB@
162 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
163 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
164 SET_MAKE = @SET_MAKE@
165 SHELL = @SHELL@
166 STRIP = @STRIP@
167 USE_NLS = @USE_NLS@
168 VERSION = @VERSION@
169 XGETTEXT = @XGETTEXT@
170 abs_builddir = @abs_builddir@
171 abs_srcdir = @abs_srcdir@
172 abs_top_builddir = @abs_top_builddir@
173 abs_top_srcdir = @abs_top_srcdir@
174 ac_ct_CC = @ac_ct_CC@
175 am__include = @am__include@
176 am__leading_dot = @am__leading_dot@
177 am__quote = @am__quote@
178 am__tar = @am__tar@
179 am__untar = @am__untar@
180 bindir = @bindir@
181 build_alias = @build_alias@
182 builddir = @builddir@
183 datadir = @datadir@
184 datarootdir = @datarootdir@
185 docdir = @docdir@
186 dvidir = @dvidir@
187 exec_prefix = @exec_prefix@
188 host_alias = @host_alias@
189 htmldir = @htmldir@
190 includedir = @includedir@
191 infodir = @infodir@
192 install_sh = @install_sh@
193 libdir = @libdir@
194 libexecdir = $(GIMP_PLUGIN_DIR)/plug-ins
195 localedir = @localedir@
196 localstatedir = @localstatedir@
197 mandir = @mandir@
198 mkdir_p = @mkdir_p@
199 oldincludedir = @oldincludedir@
200 pdfdir = @pdfdir@
201 prefix = @prefix@
202 program_transform_name = @program_transform_name@
203 psdir = @psdir@
204 sbindir = @sbindir@
205 sharedstatedir = @sharedstatedir@
206 srcdir = @srcdir@
207 sysconfdir = @sysconfdir@
208 target_alias = @target_alias@
209 top_build_prefix = @top_build_prefix@
210 top_builddir = @top_builddir@
211 top_srcdir = @top_srcdir@
212 focusblur_SOURCES = aaa.c aaa.h brush.c brush.h depthmap.c depthmap.h \
213 diffusion.c diffusion.h focusblur.h focusblurenums.c \
214 focusblurenums.h focusblurparam.c focusblurparam.h \
215 focusblurrc.c focusblurrc.h focusblurstock.c focusblurstock.h \
216 focusblurtypes.h gimpplugin.c gimpplugin.h interface.c \
217 interface.h render.c render.h shine.c shine.h source.c \
218 source.h $(am__append_1)
219 @PLATFORM_WIN32_TRUE@mwindows = -mwindows
220 AM_LDFLAGS = $(mwindows)
221 INCLUDES = \
222 $(GTHREAD_CFLAGS) \
223 $(GIMP_CFLAGS) \
224 $(FFTW3_CFLAGS) \
225 -I$(includedir)
226
227 LDADD = \
228 $(GTHREAD_LIBS) \
229 $(GIMP_LIBS) \
230 $(FFTW3_LIBS)
231
232 all: all-am
233
234 .SUFFIXES:
235 .SUFFIXES: .c .o .obj
236 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
237 @for dep in $?; do \
238 case '$(am__configure_deps)' in \
239 *$$dep*) \
240 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
241 && { if test -f $@; then exit 0; else break; fi; }; \
242 exit 1;; \
243 esac; \
244 done; \
245 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
246 $(am__cd) $(top_srcdir) && \
247 $(AUTOMAKE) --gnu src/Makefile
248 .PRECIOUS: Makefile
249 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
250 @case '$?' in \
251 *config.status*) \
252 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
253 *) \
254 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
255 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
256 esac;
257
258 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
259 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
260
261 $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
262 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
263 $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
264 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
265 $(am__aclocal_m4_deps):
266 install-libexecPROGRAMS: $(libexec_PROGRAMS)
267 @$(NORMAL_INSTALL)
268 test -z "$(libexecdir)" || $(MKDIR_P) "$(DESTDIR)$(libexecdir)"
269 @list='$(libexec_PROGRAMS)'; test -n "$(libexecdir)" || list=; \
270 for p in $$list; do echo "$$p $$p"; done | \
271 sed 's/$(EXEEXT)$$//' | \
272 while read p p1; do if test -f $$p; \
273 then echo "$$p"; echo "$$p"; else :; fi; \
274 done | \
275 sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
276 -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
277 sed 'N;N;N;s,\n, ,g' | \
278 $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
279 { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
280 if ($$2 == $$4) files[d] = files[d] " " $$1; \
281 else { print "f", $$3 "/" $$4, $$1; } } \
282 END { for (d in files) print "f", d, files[d] }' | \
283 while read type dir files; do \
284 if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
285 test -z "$$files" || { \
286 echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(libexecdir)$$dir'"; \
287 $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(libexecdir)$$dir" || exit $$?; \
288 } \
289 ; done
290
291 uninstall-libexecPROGRAMS:
292 @$(NORMAL_UNINSTALL)
293 @list='$(libexec_PROGRAMS)'; test -n "$(libexecdir)" || list=; \
294 files=`for p in $$list; do echo "$$p"; done | \
295 sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
296 -e 's/$$/$(EXEEXT)/' `; \
297 test -n "$$list" || exit 0; \
298 echo " ( cd '$(DESTDIR)$(libexecdir)' && rm -f" $$files ")"; \
299 cd "$(DESTDIR)$(libexecdir)" && rm -f $$files
300
301 clean-libexecPROGRAMS:
302 -test -z "$(libexec_PROGRAMS)" || rm -f $(libexec_PROGRAMS)
303 focusblur$(EXEEXT): $(focusblur_OBJECTS) $(focusblur_DEPENDENCIES)
304 @rm -f focusblur$(EXEEXT)
305 $(LINK) $(focusblur_OBJECTS) $(focusblur_LDADD) $(LIBS)
306
307 mostlyclean-compile:
308 -rm -f *.$(OBJEXT)
309
310 distclean-compile:
311 -rm -f *.tab.c
312
313 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/aaa.Po@am__quote@
314 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/brush.Po@am__quote@
315 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/depthmap.Po@am__quote@
316 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/diffusion.Po@am__quote@
317 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fftblur.Po@am__quote@
318 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fftblurbuffer.Po@am__quote@
319 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fftblurproc.Po@am__quote@
320 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/focusblurenums.Po@am__quote@
321 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/focusblurparam.Po@am__quote@
322 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/focusblurrc.Po@am__quote@
323 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/focusblurstock.Po@am__quote@
324 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gimpplugin.Po@am__quote@
325 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/interface.Po@am__quote@
326 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/render.Po@am__quote@
327 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/shine.Po@am__quote@
328 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/source.Po@am__quote@
329
330 .c.o:
331 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
332 @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
333 @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
334 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
335 @am__fastdepCC_FALSE@ $(COMPILE) -c $<
336
337 .c.obj:
338 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
339 @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
340 @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
341 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
342 @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
343
344 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
345 list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
346 unique=`for i in $$list; do \
347 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
348 done | \
349 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
350 END { if (nonempty) { for (i in files) print i; }; }'`; \
351 mkid -fID $$unique
352 tags: TAGS
353
354 TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
355 $(TAGS_FILES) $(LISP)
356 set x; \
357 here=`pwd`; \
358 list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
359 unique=`for i in $$list; do \
360 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
361 done | \
362 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
363 END { if (nonempty) { for (i in files) print i; }; }'`; \
364 shift; \
365 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
366 test -n "$$unique" || unique=$$empty_fix; \
367 if test $$# -gt 0; then \
368 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
369 "$$@" $$unique; \
370 else \
371 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
372 $$unique; \
373 fi; \
374 fi
375 ctags: CTAGS
376 CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
377 $(TAGS_FILES) $(LISP)
378 list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
379 unique=`for i in $$list; do \
380 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
381 done | \
382 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
383 END { if (nonempty) { for (i in files) print i; }; }'`; \
384 test -z "$(CTAGS_ARGS)$$unique" \
385 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
386 $$unique
387
388 GTAGS:
389 here=`$(am__cd) $(top_builddir) && pwd` \
390 && $(am__cd) $(top_srcdir) \
391 && gtags -i $(GTAGS_ARGS) "$$here"
392
393 distclean-tags:
394 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
395
396 distdir: $(DISTFILES)
397 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
398 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
399 list='$(DISTFILES)'; \
400 dist_files=`for file in $$list; do echo $$file; done | \
401 sed -e "s|^$$srcdirstrip/||;t" \
402 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
403 case $$dist_files in \
404 */*) $(MKDIR_P) `echo "$$dist_files" | \
405 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
406 sort -u` ;; \
407 esac; \
408 for file in $$dist_files; do \
409 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
410 if test -d $$d/$$file; then \
411 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
412 if test -d "$(distdir)/$$file"; then \
413 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
414 fi; \
415 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
416 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
417 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
418 fi; \
419 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
420 else \
421 test -f "$(distdir)/$$file" \
422 || cp -p $$d/$$file "$(distdir)/$$file" \
423 || exit 1; \
424 fi; \
425 done
426 check-am: all-am
427 check: check-am
428 all-am: Makefile $(PROGRAMS)
429 installdirs:
430 for dir in "$(DESTDIR)$(libexecdir)"; do \
431 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
432 done
433 install: install-am
434 install-exec: install-exec-am
435 install-data: install-data-am
436 uninstall: uninstall-am
437
438 install-am: all-am
439 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
440
441 installcheck: installcheck-am
442 install-strip:
443 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
444 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
445 `test -z '$(STRIP)' || \
446 echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
447 mostlyclean-generic:
448
449 clean-generic:
450
451 distclean-generic:
452 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
453 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
454
455 maintainer-clean-generic:
456 @echo "This command is intended for maintainers to use"
457 @echo "it deletes files that may require special tools to rebuild."
458 clean: clean-am
459
460 clean-am: clean-generic clean-libexecPROGRAMS mostlyclean-am
461
462 distclean: distclean-am
463 -rm -rf ./$(DEPDIR)
464 -rm -f Makefile
465 distclean-am: clean-am distclean-compile distclean-generic \
466 distclean-tags
467
468 dvi: dvi-am
469
470 dvi-am:
471
472 html: html-am
473
474 html-am:
475
476 info: info-am
477
478 info-am:
479
480 install-data-am:
481
482 install-dvi: install-dvi-am
483
484 install-dvi-am:
485
486 install-exec-am: install-libexecPROGRAMS
487
488 install-html: install-html-am
489
490 install-html-am:
491
492 install-info: install-info-am
493
494 install-info-am:
495
496 install-man:
497
498 install-pdf: install-pdf-am
499
500 install-pdf-am:
501
502 install-ps: install-ps-am
503
504 install-ps-am:
505
506 installcheck-am:
507
508 maintainer-clean: maintainer-clean-am
509 -rm -rf ./$(DEPDIR)
510 -rm -f Makefile
511 maintainer-clean-am: distclean-am maintainer-clean-generic
512
513 mostlyclean: mostlyclean-am
514
515 mostlyclean-am: mostlyclean-compile mostlyclean-generic
516
517 pdf: pdf-am
518
519 pdf-am:
520
521 ps: ps-am
522
523 ps-am:
524
525 uninstall-am: uninstall-libexecPROGRAMS
526
527 .MAKE: install-am install-strip
528
529 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
530 clean-libexecPROGRAMS ctags distclean distclean-compile \
531 distclean-generic distclean-tags distdir dvi dvi-am html \
532 html-am info info-am install install-am install-data \
533 install-data-am install-dvi install-dvi-am install-exec \
534 install-exec-am install-html install-html-am install-info \
535 install-info-am install-libexecPROGRAMS install-man \
536 install-pdf install-pdf-am install-ps install-ps-am \
537 install-strip installcheck installcheck-am installdirs \
538 maintainer-clean maintainer-clean-generic mostlyclean \
539 mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
540 tags uninstall uninstall-am uninstall-libexecPROGRAMS
541
542
543 focusblurstock.$(OBJEXT): $(top_srcdir)/pixmaps/pixbufs.h
544 $(top_srcdir)/pixmaps/pixbufs.h:
545 $(MAKE) -C $(top_srcdir)/pixmaps pixbufs.h
546
547 install-user: $(libexec_PROGRAMS)
548 @if test -d $(GIMP_USER_PLUGIN_DIR) ; then \
549 $(INSTALL_PROGRAM) $(libexec_PROGRAMS) $(GIMP_USER_PLUGIN_DIR) ; \
550 fi
551
552 uninstall-user:
553 @if test -d $(GIMP_USER_PLUGIN_DIR) ; then \
554 for i in $(libexec_PROGRAMS) ; do \
555 echo " $(RM) '$(GIMP_USER_PLUGIN_DIR)/$$i'"; \
556 $(RM) "$(GIMP_USER_PLUGIN_DIR)/$$i" ; \
557 done ; \
558 fi
559
560 # Tell versions [3.59,3.63) of GNU make to not export all variables.
561 # Otherwise a system limit (for SysV at least) may be exceeded.
562 .NOEXPORT:
+0
-119
focus-blur/focusblur-3.2.6/src/aaa.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation; either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16 */
17
18 #include "config.h"
19
20 #include "aaa.h"
21
22
23 /*---- Prototypes ----*/
24
25 static gboolean focusblur_aaa_check (guint8 *data,
26 guint8 *min_ret,
27 guint8 *max_ret);
28 static inline void
29 swap_uint8 (guint8 *a,
30 guint8 *b)
31 {
32 *a ^= *b;
33 *b ^= *a;
34 *a ^= *b;
35 }
36
37
38 /*---- Functions ----*/
39
40 void
41 focusblur_aaa_neighbor (guint8 *data,
42 guint8 *round_ret,
43 guint8 *dummy0,
44 gfloat *dummy1)
45 {
46 guint8 min, max;
47 gfloat ratio;
48
49 if (! focusblur_aaa_check (data, &min, &max))
50 return;
51
52 ratio = (gfloat) (data[4] - min) / (max - min);
53 *round_ret = (ratio < 0.5f) ? min : max;
54 }
55
56
57 void
58 focusblur_aaa_separate (guint8 *data,
59 guint8 *min_ret,
60 guint8 *max_ret,
61 gfloat *ratio_ret)
62 {
63 if (! focusblur_aaa_check (data, min_ret, max_ret))
64 return;
65
66 *ratio_ret = (gfloat) (data[4] - *min_ret) / (*max_ret - *min_ret);
67 }
68
69
70 static gboolean
71 focusblur_aaa_check (guint8 *data,
72 guint8 *min_ret,
73 guint8 *max_ret)
74 {
75 const gint aaa_ambiguous = 8; /* 6-10 is good */
76 guint8 min, max;
77 guint8 gate_low, gate_high;
78 gint i;
79
80 min = max = data[0];
81
82 for (i = 1; i < 9; i ++)
83 if (data[i] > max)
84 max = data[i];
85 else if (data[i] < min)
86 min = data[i];
87
88 gate_low = min + aaa_ambiguous;
89 gate_high = max - aaa_ambiguous;
90
91 if (gate_low >= gate_high ||
92 data[4] <= gate_low ||
93 data[4] >= gate_high)
94 return FALSE;
95
96 if (data[1] > data[7])
97 {
98 swap_uint8 (&data[0], &data[6]);
99 //swap_uint8 (&data[1], &data[7]);
100 swap_uint8 (&data[2], &data[8]);
101 }
102
103 if (data[3] > data[5])
104 {
105 swap_uint8 (&data[0], &data[2]);
106 //swap_uint8 (&data[3], &data[5]);
107 swap_uint8 (&data[6], &data[8]);
108 }
109
110 if (data[0] > gate_low ||
111 data[8] < gate_high)
112 return FALSE;
113
114 *min_ret = min;
115 *max_ret = max;
116
117 return TRUE;
118 }
+0
-51
focus-blur/focusblur-3.2.6/src/aaa.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation; either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16 */
17
18 #ifndef __AAA_H__
19 #define __AAA_H__
20
21 #include <glib/gmacros.h>
22 #include <glib/gtypes.h>
23
24
25 G_BEGIN_DECLS
26
27
28 /*---- Types ----*/
29
30 typedef void (*FblurAAAFunc) (guint8 *data,
31 guint8 *round_ret,
32 guint8 *dummy0,
33 gfloat *dummy1);
34
35 /*---- Functions ----*/
36
37 void focusblur_aaa_neighbor (guint8 *data,
38 guint8 *round_ret,
39 guint8 *dummy0,
40 gfloat *dummy1);
41 void focusblur_aaa_separate (guint8 *data,
42 guint8 *min_ret,
43 guint8 *max_ret,
44 gfloat *ratio_ret);
45
46
47 G_END_DECLS
48
49
50 #endif /* __AAA_H__ */
+0
-526
focus-blur/focusblur-3.2.6/src/brush.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21
22 #include "config.h"
23
24 #include <libgimp/gimp.h>
25 #include <math.h>
26 #include <string.h>
27
28 #include "libgimp/stdplugins-intl.h"
29
30 #include "brush.h"
31
32
33 /*---- Structures ----*/
34
35 struct _FblurBrush
36 {
37 /* parameter */
38 gchar *name;
39 gboolean balance;
40
41 /* computed */
42 gfloat original_density;
43 gfloat radius;
44 gfloat center_x;
45 gfloat center_y;
46
47 /* temporary */
48 gfloat cache_rotate;
49 gfloat cache_rot_sin;
50 gfloat cache_rot_cos;
51
52 /* constant */
53 gint width;
54 gint height;
55 gsize length;
56 guint8 *data;
57 };
58
59
60 /*---- Prototypes ----*/
61
62 static void focusblur_brush_init_density (FblurBrush *brush);
63 static void focusblur_brush_init_balance (FblurBrush *brush,
64 gboolean balance);
65 static void focusblur_brush_init_radius (FblurBrush *brush);
66 static gfloat focusblur_brush_render_oversamp (gfloat *dlp,
67 gsize rowstride,
68 gint width,
69 FblurBrush *brush,
70 gfloat factor,
71 gfloat fx,
72 gfloat fx_incx,
73 gfloat fx_incy,
74 gfloat fy,
75 gfloat fy_incx,
76 gfloat fy_incy);
77 static gfloat focusblur_brush_render_biliner (gfloat *dlp,
78 gsize rowstride,
79 gint width,
80 FblurBrush *brush,
81 gfloat factor,
82 gfloat fx,
83 gfloat fx_incx,
84 gfloat fx_incy,
85 gfloat fy,
86 gfloat fy_incx,
87 gfloat fy_incy);
88
89
90 static inline guint8
91 focusblur_brush_get_pixel (FblurBrush *brush,
92 gint x,
93 gint y)
94 {
95 if (x < 0 || x >= brush->width ||
96 y < 0 || y >= brush->height)
97 return 0;
98
99 return brush->data[brush->width * y + x];
100 }
101
102
103 /*---- Functions ----*/
104
105 FblurBrush*
106 focusblur_brush_new (gchar *brush_name,
107 gboolean balance)
108 {
109 FblurBrush *brush;
110 gboolean ret;
111 gint width, height;
112 gint mask_bpp, num_mask_bytes;
113 gint color_bpp, num_color_bytes;
114 guint8 *mask_bytes, *color_bytes;
115
116 ret = gimp_brush_get_pixels (brush_name, &width, &height,
117 &mask_bpp, &num_mask_bytes, &mask_bytes,
118 &color_bpp, &num_color_bytes, &color_bytes);
119 if (! ret)
120 {
121 gimp_message (_("gimp_brush_get_pixels() is failed."));
122 g_free (mask_bytes);
123 return NULL;
124 }
125
126 g_assert (mask_bpp == 1); /* other bpp is not supported. */
127
128 /* color is not supported. */
129 if (color_bytes)
130 {
131 gfloat tval = 1.0f / 255.0f / color_bpp;
132 guint8 *mp = mask_bytes;
133 guint8 *cp = color_bytes;
134 gint i, b, cval;
135
136 for (i = num_mask_bytes; i --; mp ++, cp += color_bpp)
137 if (*mp)
138 {
139 cval = 0;
140 for (b = 0; b < color_bpp; b ++)
141 cval += cp[b];
142 *mp = rint (cval * *mp * tval);
143 }
144
145 g_free (color_bytes);
146 }
147
148 brush = g_new0 (FblurBrush, 1);
149 brush->cache_rotate = -1; /* not cached */
150 brush->name = g_strdup (brush_name);
151 brush->width = width;
152 brush->height = height;
153 brush->length = num_mask_bytes;
154 brush->data = mask_bytes;
155
156 focusblur_brush_init_density (brush);
157
158 if (brush->original_density <= 0.0f)
159 {
160 focusblur_brush_destroy (&brush);
161 return NULL;
162 }
163
164 focusblur_brush_init_balance (brush, balance);
165 focusblur_brush_init_radius (brush);
166
167 return brush;
168 }
169
170
171 void
172 focusblur_brush_destroy (FblurBrush **brush)
173 {
174 g_return_if_fail (brush != NULL);
175
176 if (*brush)
177 {
178 g_free ((*brush)->name);
179 g_free ((*brush)->data);
180 g_free (*brush);
181 *brush = NULL;
182 }
183 }
184
185
186 gboolean
187 focusblur_brush_name_is (FblurBrush *brush,
188 gchar *brush_name)
189 {
190 g_return_val_if_fail (brush != NULL, FALSE);
191
192 return strcmp (brush->name, brush_name) == 0;
193 }
194
195
196 /* returns whether diffusion table must be update or not */
197 gboolean
198 focusblur_brush_update_balance (FblurBrush *brush,
199 gboolean balance)
200 {
201 gfloat tmp_x, tmp_y;
202
203 g_return_val_if_fail (brush != NULL, TRUE);
204
205 if (brush->balance == balance)
206 return FALSE;
207
208 tmp_x = brush->center_x;
209 tmp_y = brush->center_y;
210
211 focusblur_brush_init_balance (brush, balance);
212
213 if (brush->center_x == tmp_x &&
214 brush->center_y == tmp_y)
215 return FALSE;
216
217 focusblur_brush_init_radius (brush);
218
219 return TRUE;
220 }
221
222
223 static void
224 focusblur_brush_init_density (FblurBrush *brush)
225 {
226 const gfloat color_fnum = 1.0f / 255.0f;
227 guint8 *dp = brush->data;
228 gint i = brush->length;
229 float sum = 0.0f;
230
231 while (i --)
232 sum += *dp ++;
233
234 brush->original_density = sum * color_fnum;
235 }
236
237
238 static void
239 focusblur_brush_init_balance (FblurBrush *brush,
240 gboolean balance)
241 {
242 const gfloat color_fnum = 1.0f / 255.0f;
243 guint8 *dp, *dlp;
244 gint x, y;
245 gfloat sum, sumb, half;
246
247 brush->balance = balance;
248
249 if (! balance)
250 {
251 brush->center_x = (gfloat) (brush->width - 1) / 2.0f;
252 brush->center_y = (gfloat) (brush->height - 1) / 2.0f;
253
254 return;
255 }
256
257 /* balanced value */
258 half = brush->original_density / color_fnum / 2.0f;
259
260 /* search Y */
261 sum = sumb = 0.0f;
262 for (y = 0, dp = brush->data; y < brush->height; y ++)
263 for (x = 0; x < brush->width; x ++, dp ++)
264 {
265 sum += *dp;
266 if (sum >= half)
267 {
268 brush->center_y = y + (half - sumb) / (sum - sumb) - 0.5f;
269 goto break_y;
270 }
271 sumb = sum;
272 }
273 break_y:
274
275 /* search X */
276 sum = sumb = 0.0f;
277 for (x = 0, dlp = brush->data; x < brush->width; x ++, dlp ++)
278 for (y = 0, dp = dlp; y < brush->height; y ++, dp += brush->width)
279 {
280 sum += *dp;
281 if (sum >= half)
282 {
283 brush->center_x = x + (half - sumb) / (sum - sumb) - 0.5f;
284 goto break_x;
285 }
286 sumb = sum;
287 }
288 break_x:
289
290 return;
291 }
292
293
294 static void
295 focusblur_brush_init_radius (FblurBrush *brush)
296 {
297 guint8 *dp;
298 gint x, y;
299 gfloat max, radius;
300
301 max = 0.0f;
302 for (y = 0, dp = brush->data; y < brush->height; y ++)
303 for (x = 0; x < brush->width; x ++, dp ++)
304 {
305 if (*dp)
306 {
307 radius = hypotf (x - brush->center_x, y - brush->center_y);
308 //radius -= (gfloat) *dp / 255.0f; /* counter to anti-alias */
309 if (radius > max)
310 max = radius;
311 }
312 }
313
314 brush->radius = max;
315 }
316
317
318 gfloat
319 focusblur_brush_make_density (FblurBrush *brush,
320 gfloat radius)
321 {
322 gfloat fval;
323 gfloat factor;
324
325 factor = (1.0f + 2 * radius) / (1.0f + 2 * brush->radius);
326 fval = brush->original_density * factor * factor;
327 /* it will make difference. */
328
329 g_return_val_if_fail (fval > 1.0f, 1.0f);
330
331 return fval;
332 }
333
334
335 gfloat
336 focusblur_brush_render (FblurBrush *brush,
337 gfloat radius,
338 gfloat rotate,
339 gsize rowstride,
340 gfloat *centerp)
341 {
342 gfloat *cornerp;
343 gint range, width;
344 gfloat density;
345 gfloat factor, radian;
346 gfloat fx, fx_incx, fx_incy;
347 gfloat fy, fy_incx, fy_incy;
348 gfloat rot_sin, rot_cos;
349 gfloat tran_cos, tran_sin;
350
351 g_assert (brush != NULL);
352
353 range = ceilf (radius);
354 cornerp = centerp - range * rowstride - range;
355 factor = (1.0f + 2 * brush->radius) / (1.0f + 2 * radius);
356
357 /* it is computed? */
358 if (brush->cache_rotate == rotate)
359 {
360 rot_sin = brush->cache_rot_sin;
361 rot_cos = brush->cache_rot_cos;
362 }
363 else
364 {
365 /* 1.0 for inverting x and y */
366 radian = (rotate / 180.0f + 1.0f) * G_PI;
367
368 rot_sin = brush->cache_rot_sin = sinf (radian);
369 rot_cos = brush->cache_rot_cos = cosf (radian);
370 brush->cache_rotate = rotate;
371 }
372
373 /* first coordinates and incremental value */
374 tran_sin = factor * rot_sin;
375 tran_cos = factor * rot_cos;
376
377 fx = brush->center_x - range * (tran_cos + tran_sin);
378 fy = brush->center_y - range * (tran_cos - tran_sin);
379 fx_incx = tran_cos;
380 fy_incx = - tran_sin;
381 width = 1 + 2 * range;
382 fx_incy = tran_sin - tran_cos * width;
383 fy_incy = tran_cos + tran_sin * width;
384
385 if (factor > 1.0)
386 density = focusblur_brush_render_oversamp
387 (cornerp, rowstride, width, brush, factor,
388 fx, fx_incx, fx_incy, fy, fy_incx, fy_incy);
389 else
390 density = focusblur_brush_render_biliner
391 (cornerp, rowstride, width, brush, factor,
392 fx, fx_incx, fx_incy, fy, fy_incx, fy_incy);
393
394 return density;
395 }
396
397
398 static gfloat
399 focusblur_brush_render_oversamp (gfloat *dlp,
400 gsize rowstride,
401 gint width,
402 FblurBrush *brush,
403 gfloat factor,
404 gfloat fx,
405 gfloat fx_incx,
406 gfloat fx_incy,
407 gfloat fy,
408 gfloat fy_incx,
409 gfloat fy_incy)
410 {
411 const gfloat color_fnum = 1.0f / 255.0f;
412 gfloat density = 0.0f;
413 gfloat *dp;
414
415 gint rx, ry, sx, sy;
416 gfloat tran_sin, tran_cos;
417
418 gint div;
419 gfloat div_fac;
420 gfloat val, sum;
421 gfloat bit_sin, bit_cos;
422 gfloat bx, by;
423 gfloat bx_incx, by_incx;
424 gfloat bx_incy, by_incy;
425 gfloat bx_d, by_d;
426
427 /* divided coordinates and first offset */
428 div = ((gint) floorf (factor)) * 2 + 1;
429 if (div > 15)
430 div = 15;
431
432 div_fac = 1.0 / (div * div);
433
434 tran_sin = - fy_incx;
435 tran_cos = fx_incx;
436
437 bit_sin = tran_sin / div;
438 bit_cos = tran_cos / div;
439
440 bx_incx = bit_cos;
441 by_incx = - bit_sin;
442 bx_incy = bit_sin - tran_cos;
443 by_incy = bit_cos + tran_sin;
444 bx_d = (bit_cos + bit_sin) * (div / 2);
445 by_d = (bit_cos - bit_sin) * (div / 2);
446
447 /* run on distribution */
448 for (ry = width; ry --; dlp += rowstride, fx += fx_incy, fy += fy_incy)
449 for (rx = width, dp = dlp; rx --; dp ++, fx += fx_incx, fy += fy_incx)
450 {
451 /* clip */
452 if (fx + factor < 0.0f || fx - factor > (brush->width - 1) ||
453 fy + factor < 0.0f || fy - factor > (brush->height - 1))
454 continue;
455
456 bx = fx - bx_d;
457 by = fy - by_d;
458 sum = 0.0f;
459
460 /* run more minutely */
461 for (sy = div; sy --; bx += bx_incy, by += by_incy)
462 for (sx = div; sx --; bx += bx_incx, by += by_incx)
463 sum += focusblur_brush_get_pixel (brush, rintf (bx), rintf (by));
464 val = sum * div_fac;
465
466 density += *dp = val * color_fnum;
467 }
468
469 g_assert (density > 0.0f);
470 return density;
471 }
472
473
474 static gfloat
475 focusblur_brush_render_biliner (gfloat *dlp,
476 gsize rowstride,
477 gint width,
478 FblurBrush *brush,
479 gfloat factor,
480 gfloat fx,
481 gfloat fx_incx,
482 gfloat fx_incy,
483 gfloat fy,
484 gfloat fy_incx,
485 gfloat fy_incy)
486 {
487 const gfloat color_fnum = 1.0f / 255.0f;
488 gfloat density = 0.0f;
489 gfloat *dp;
490
491 gint rx, ry, sx, sy;
492
493 gfloat balx, baly;
494 gfloat val, val1, val2;
495 guint8 c[4];
496
497 /* run on distribution */
498 for (ry = width; ry --; dlp += rowstride, fx += fx_incy, fy += fy_incy)
499 for (rx = width, dp = dlp; rx --; dp ++, fx += fx_incx, fy += fy_incx)
500 {
501 /* clip it but leaves 1px to interpolate */
502 if (fx <= -1.0f || fx >= brush->width ||
503 fy <= -1.0f || fy >= brush->height)
504 continue;
505
506 sx = floorf (fx);
507 sy = floorf (fy);
508 balx = fx - sx;
509 baly = fy - sy;
510
511 c[0] = focusblur_brush_get_pixel (brush, sx, sy);
512 c[1] = focusblur_brush_get_pixel (brush, sx + 1, sy);
513 c[2] = focusblur_brush_get_pixel (brush, sx, sy + 1);
514 c[3] = focusblur_brush_get_pixel (brush, sx + 1, sy + 1);
515
516 val1 = c[0] + balx * (c[1] - c[0]);
517 val2 = c[2] + balx * (c[3] - c[2]);
518 val = val1 + baly * (val2 - val1);
519
520 density += *dp = val * color_fnum;
521 }
522
523 g_assert (density > 0.0f);
524 return density;
525 }
+0
-50
focus-blur/focusblur-3.2.6/src/brush.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_BRUSH_H__
22 #define __FOCUSBLUR_BRUSH_H__
23
24 #include <glib/gtypes.h>
25 #include "focusblurtypes.h"
26
27 G_BEGIN_DECLS
28
29
30 /*---- Functions ----*/
31
32 FblurBrush* focusblur_brush_new (gchar *name,
33 gboolean balance);
34 void focusblur_brush_destroy (FblurBrush **brush);
35 gboolean focusblur_brush_name_is (FblurBrush *brush,
36 gchar *brush_name);
37 gboolean focusblur_brush_update_balance (FblurBrush *brush,
38 gboolean balance);
39 gfloat focusblur_brush_make_density (FblurBrush *brush,
40 gfloat radius);
41 gfloat focusblur_brush_render (FblurBrush *brush,
42 gfloat radius,
43 gfloat rotate,
44 gsize rowstride,
45 gfloat *centerp);
46
47 G_END_DECLS
48
49 #endif /* __FOCUSBLUR_BRUSH_H__ */
+0
-459
focus-blur/focusblur-3.2.6/src/depthmap.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <string.h>
24 #include <libgimp/gimp.h>
25
26 #include "libgimp/stdplugins-intl.h"
27
28 #include "focusblur.h"
29 #include "focusblurparam.h"
30 #include "depthmap.h"
31 #ifdef HAVE_FFTW3
32 # include "fftblurbuffer.h"
33 #endif
34 #include "aaa.h"
35
36
37 typedef enum
38 {
39 FBLUR_AAA_DISABLE,
40 FBLUR_AAA_NEIGHBOR,
41 FBLUR_AAA_SEPARATE,
42 } FblurAAAType;
43
44
45 /*---- Structure ----*/
46
47 typedef struct _FblurAAAData FblurAAAData;
48
49 struct _FblurDepthMap
50 {
51 /* specified values */
52 gint32 depth_map_ID;
53 gfloat focal_depth;
54 /* pre-computed values */
55 gint focal_depth_int;
56 /* main data */
57 gint width, height;
58 guchar *data;
59
60 FblurAAAType aaa_mode;
61 struct _FblurAAAData {
62 gfloat val;
63 guchar depth;
64 } *aaa;
65 };
66
67
68 /*---- Prototypes ----*/
69
70 static gboolean focusblur_depth_map_make (FblurDepthMap *depth_map);
71 static void focusblur_depth_map_make_aaa (FblurDepthMap *depth_map,
72 gint width,
73 gint height);
74
75
76 /*---- Functions ----*/
77
78 gboolean
79 focusblur_depth_map_update (FblurDepthMap **depth_map,
80 FblurFftBuffer *fft,
81 FblurStoreParam *store,
82 FblurQualityType quality)
83 {
84 FblurAAAType aaa_mode = FBLUR_AAA_DISABLE;
85
86 if (! store->enable_depth_map)
87 return TRUE;
88
89 if (store->enable_depth_aaa)
90 {
91 switch (quality)
92 {
93 case FBLUR_QUALITY_BEST:
94 aaa_mode = FBLUR_AAA_SEPARATE;
95 break;
96
97 case FBLUR_QUALITY_NORMAL:
98 case FBLUR_QUALITY_LOW:
99 aaa_mode = FBLUR_AAA_NEIGHBOR;
100 break;
101
102 case FBLUR_QUALITY_DEFECTIVE:
103 aaa_mode = FBLUR_AAA_DISABLE;
104 break;
105 }
106
107 if (aaa_mode != FBLUR_AAA_DISABLE)
108 {
109 gint width, height;
110 if (*depth_map)
111 {
112 width = (*depth_map)->width;
113 height = (*depth_map)->height;
114 }
115 else
116 {
117 width = gimp_drawable_width (store->depth_map_ID);
118 height = gimp_drawable_height (store->depth_map_ID);
119 }
120 if (width < 3 ||
121 height < 3)
122 aaa_mode = FBLUR_AAA_DISABLE;
123 }
124 }
125
126 if (*depth_map)
127 {
128 if ((*depth_map)->depth_map_ID == store->depth_map_ID &&
129 aaa_mode == (*depth_map)->aaa_mode)
130 {
131 if (store->focal_depth == (*depth_map)->focal_depth)
132 /* not changed */
133 return TRUE;
134
135 (*depth_map)->focal_depth = store->focal_depth;
136 (*depth_map)->focal_depth_int =
137 rintf (FBLUR_DEPTH_MAX * (*depth_map)->focal_depth / 100.0f);
138
139 if (! gimp_drawable_has_alpha ((*depth_map)->depth_map_ID))
140 /* do not need to update */
141 return TRUE;
142 }
143
144 focusblur_depth_map_destroy (depth_map);
145 }
146
147 #ifdef HAVE_FFTW3
148 if (fft)
149 focusblur_fft_buffer_invalidate_depth_map (fft);
150 #endif
151
152 if (! gimp_drawable_is_valid (store->depth_map_ID))
153 {
154 gimp_message (_("Specified depth map is invalid."));
155 return TRUE;
156 }
157
158 (*depth_map) = g_new0 (FblurDepthMap, 1);
159
160 (*depth_map)->depth_map_ID = store->depth_map_ID;
161 (*depth_map)->focal_depth = store->focal_depth;
162 /* pre-computed values */
163 (*depth_map)->focal_depth_int =
164 rintf (FBLUR_DEPTH_MAX * (*depth_map)->focal_depth / 100.0f);
165 (*depth_map)->aaa_mode = aaa_mode;
166
167 if (! focusblur_depth_map_make (*depth_map))
168 {
169 focusblur_depth_map_destroy (depth_map);
170 return FALSE;
171 }
172
173 return TRUE;
174 }
175
176 static gboolean
177 focusblur_depth_map_make (FblurDepthMap *depth_map)
178 {
179 GimpDrawable *drawable;
180 GimpPixelRgn pr;
181 gpointer p;
182 guchar *slp, *sp;
183 guchar *dlp, *dp;
184 gint x, y, w, h;
185 gint i, len;
186 gint focal;
187
188 drawable = gimp_drawable_get (depth_map->depth_map_ID);
189
190 if (! drawable)
191 return FALSE;
192
193 w = depth_map->width = drawable->width;
194 h = depth_map->height = drawable->height;
195 len = w * h;
196 depth_map->data = g_new (guchar, len);
197 if (! depth_map->data)
198 return FALSE;
199
200 if (depth_map->aaa_mode == FBLUR_AAA_SEPARATE)
201 {
202 depth_map->aaa = g_new0 (FblurAAAData, len);
203 if (! depth_map->aaa)
204 return FALSE;
205 }
206
207 gimp_pixel_rgn_init (&pr, drawable, 0, 0, w, h, FALSE, FALSE);
208 p = gimp_pixel_rgns_register (1, &pr);
209
210 switch (gimp_drawable_type (depth_map->depth_map_ID))
211 {
212 case GIMP_GRAY_IMAGE:
213 g_assert (pr.bpp == 1);
214 for (; p; p = gimp_pixel_rgns_process (p))
215 for (y = pr.h, slp = pr.data,
216 dlp = depth_map->data + pr.y * w + pr.x;
217 y --; slp += pr.rowstride, dlp += w)
218 for (x = pr.w, sp = slp, dp = dlp; x --; sp ++, dp ++)
219 *dp = *sp;
220 break;
221
222 case GIMP_GRAYA_IMAGE:
223 g_assert (pr.bpp == 2);
224 focal = rintf (255 * depth_map->focal_depth / 100.0f);
225 for (; p; p = gimp_pixel_rgns_process (p))
226 for (y = pr.h, slp = pr.data,
227 dlp = depth_map->data + pr.y * w + pr.x;
228 y --; slp += pr.rowstride, dlp += w)
229 for (x = pr.w, sp = slp, dp = dlp; x --; sp += 2, dp ++)
230 *dp = (sp[0] * sp[1] + focal * (255 - sp[1])) / 255;
231 break;
232
233 case GIMP_RGB_IMAGE:
234 g_assert (pr.bpp == 3);
235 for (; p; p = gimp_pixel_rgns_process (p))
236 for (y = pr.h, slp = pr.data,
237 dlp = depth_map->data + pr.y * w + pr.x;
238 y --; slp += pr.rowstride, dlp += w)
239 for (x = pr.w, sp = slp, dp = dlp; x --; sp += 3, dp ++)
240 *dp = (sp[0] + sp[1] + sp[2]) / 3;
241 break;
242
243 case GIMP_RGBA_IMAGE:
244 g_assert (pr.bpp == 4);
245 focal = rintf (255 * depth_map->focal_depth / 100.0f);
246 for (; p; p = gimp_pixel_rgns_process (p))
247 for (y = pr.h, slp = pr.data,
248 dlp = depth_map->data + pr.y * w + pr.x;
249 y --; slp += pr.rowstride, dlp += w)
250 for (x = pr.w, sp = slp, dp = dlp; x --; sp += 4, dp ++)
251 *dp = ((sp[0] + sp[1] + sp[2]) / 3 * sp[3]
252 + focal * (255 - sp[3])) / 255;
253 break;
254
255 default:
256 g_assert_not_reached ();
257 }
258
259 gimp_drawable_detach (drawable);
260
261 if (depth_map->aaa_mode != FBLUR_AAA_DISABLE)
262 focusblur_depth_map_make_aaa (depth_map, w, h);
263
264 /* hard coding FBLUR_DEPTH_MAX = 127 */
265 for (i = 0; i < len; i ++)
266 /* variable depth division
267 *dp = FBLUR_DEPTH_MAX * (*dp & mask) / mask;
268 or simply */
269 depth_map->data[i] /= 2;
270 if (depth_map->aaa)
271 for (i = 0; i < len; i ++)
272 depth_map->aaa[i].depth /= 2;
273
274 return TRUE;
275 }
276
277
278 static void
279 focusblur_depth_map_make_aaa (FblurDepthMap *depth_map,
280 gint width,
281 gint height)
282 {
283 guint8 box[9];
284 FblurAAAFunc func;
285 FblurAAAData *ap;
286 guint8 *bp;
287 guint8 *line;
288 guint8 *lp;
289 guint8 *dp;
290 gint x, y;
291 gint bx, by;
292 gint lw;
293
294 switch (depth_map->aaa_mode)
295 {
296 case FBLUR_AAA_NEIGHBOR:
297 func = focusblur_aaa_neighbor;
298 break;
299
300 case FBLUR_AAA_SEPARATE:
301 func = focusblur_aaa_separate;
302 break;
303
304 default:
305 g_assert_not_reached ();
306 }
307
308 dp = depth_map->data;
309 ap = depth_map->aaa;
310
311 /* copy first line */
312 lw = width + 2;
313 line = g_malloc (lw * 3);
314 memcpy (line + 1, depth_map->data, width);
315 line[0] = line[1];
316 line[lw -1] = line[lw - 2];
317 memcpy (line + lw, line, lw);
318
319 for (y = 0; y < height; y ++)
320 {
321 /* next line */
322 if (y + 1 < height)
323 {
324 memcpy (line + lw + lw + 1, dp + width, width);
325 line[lw * 2] = line[lw * 2 + 1];
326 line[lw * 3 - 1] = line[lw * 3 - 2];
327 }
328 else
329 memcpy (line + lw + lw, line + lw, lw);
330
331 for (x = 0; x < width; x ++, dp ++)
332 {
333 /* copy to box */
334 bp = box;
335 lp = line + x;
336 for (by = 0; by < 3; by ++, lp += lw)
337 for (bx = 0; bx < 3; bx ++)
338 *bp ++ = lp[bx];
339
340 func (box, dp, &(ap->depth), &(ap->val));
341 }
342
343 /* move line */
344 memcpy (line, line + lw, lw);
345 memcpy (line + lw, line + 2 * lw, lw);
346 }
347
348 g_free (line);
349 }
350
351
352 void
353 focusblur_depth_map_destroy (FblurDepthMap **depth_map)
354 {
355 if (*depth_map)
356 {
357 if ((*depth_map)->data)
358 g_free ((*depth_map)->data);
359
360 if ((*depth_map)->aaa)
361 g_free ((*depth_map)->aaa);
362
363 g_free (*depth_map);
364 *depth_map = NULL;
365 }
366 }
367
368
369 gint
370 focusblur_depth_map_get_depth (FblurDepthMap *depth_map,
371 gint x,
372 gint y)
373 {
374 gsize offset;
375 gint depth;
376
377 if (x >= depth_map->width)
378 x %= depth_map->width;
379 else if (x < 0)
380 x = depth_map->width + (x % depth_map->width);
381
382 if (y >= depth_map->height)
383 y %= depth_map->height;
384 else if (y < 0)
385 y = depth_map->height + (y % depth_map->height);
386
387 offset = y * depth_map->width + x;
388 depth = depth_map->data[offset];
389
390 return depth;
391 }
392
393
394 gint
395 focusblur_depth_map_get_level (FblurDepthMap *depth_map,
396 gint depth)
397 {
398 gint level;
399
400 g_return_val_if_fail (depth_map != NULL, FBLUR_DEPTH_MAX);
401
402 level = depth - depth_map->focal_depth_int;
403
404 return level;
405 }
406
407
408 gint
409 focusblur_depth_map_focal_depth (FblurDepthMap *depth_map)
410 {
411 g_return_val_if_fail (depth_map != NULL, 0);
412
413 return depth_map->focal_depth_int;
414 }
415
416
417 gboolean
418 focusblur_depth_map_has_aaa (FblurDepthMap *depth_map)
419 {
420 if (depth_map &&
421 depth_map->width >= 3 &&
422 depth_map->height >= 3 &&
423 depth_map->aaa_mode == FBLUR_AAA_SEPARATE &&
424 depth_map->aaa)
425
426 return TRUE;
427
428 else
429 return FALSE;
430 }
431
432
433 gfloat
434 focusblur_depth_map_get_aaa (FblurDepthMap *depth_map,
435 gint x,
436 gint y,
437 gint *depth_ret)
438 {
439 gint offset;
440
441 g_return_val_if_fail (depth_map != NULL, 0.0f);
442 g_return_val_if_fail (depth_map->aaa != NULL, 0.0f);
443
444 if (x >= depth_map->width)
445 x %= depth_map->width;
446 else if (x < 0)
447 x = depth_map->width + (x % depth_map->width);
448
449 if (y >= depth_map->height)
450 y %= depth_map->height;
451 else if (y < 0)
452 y = depth_map->height + (y % depth_map->height);
453
454 offset = y * depth_map->width + x;
455
456 *depth_ret = depth_map->aaa[offset].depth;
457 return depth_map->aaa[offset].val;
458 }
+0
-55
focus-blur/focusblur-3.2.6/src/depthmap.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_DEPTHMAP_H__
22 #define __FOCUSBLUR_DEPTHMAP_H__
23
24 #include <glib/gtypes.h>
25
26 #include "focusblurtypes.h"
27 #include "focusblurenums.h"
28
29
30 G_BEGIN_DECLS
31
32
33 gboolean focusblur_depth_map_update (FblurDepthMap **depth_map,
34 FblurFftBuffer *fft,
35 FblurStoreParam *store,
36 FblurQualityType quality);
37 void focusblur_depth_map_destroy (FblurDepthMap **depth_map);
38 gint focusblur_depth_map_get_depth (FblurDepthMap *depth_map,
39 gint x,
40 gint y);
41 gint focusblur_depth_map_get_level (FblurDepthMap *depth_map,
42 gint depth);
43 gint focusblur_depth_map_focal_depth (FblurDepthMap *depth_map);
44 gboolean focusblur_depth_map_has_aaa (FblurDepthMap *depth_map);
45 gfloat focusblur_depth_map_get_aaa (FblurDepthMap *depth_map,
46 gint x,
47 gint y,
48 gint *depth_ret);
49
50
51 G_END_DECLS
52
53
54 #endif /* __FOCUSBLUR_DEPTHMAP_H__ */
+0
-912
focus-blur/focusblur-3.2.6/src/diffusion.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <glib.h>
24 #include <math.h>
25 #include <stdlib.h>
26
27 #include "focusblurparam.h"
28 #include "diffusion.h"
29 #include "brush.h"
30 #ifdef HAVE_FFTW3
31 # include "fftblurbuffer.h"
32 #endif
33
34 #ifndef SQR
35 # define SQR(a) (a*a)
36 #endif
37
38
39 /*---- Types ----*/
40
41 typedef gfloat
42 (*FocusblurDiffusionModelFunc) (FblurDiffusionTable *diffusion,
43 gfloat radius,
44 gfloat difference);
45
46
47 /*---- Static values ----*/
48
49 const int table_length = FBLUR_RADIUS_MAX + 1;
50 static gfloat *difference_table = NULL;
51
52
53 /*---- Prototypes ----*/
54
55 static void focusblur_diffusion_difference_table_init (void);
56 static void focusblur_diffusion_make (FblurDiffusionTable *diffusion,
57 gint level,
58 gint num);
59 static gfloat focusblur_diffusion_make_density
60 (FblurDiffusionTable *diffusion,
61 gfloat radius);
62 static void focusblur_diffusion_blur (FblurDiffusionTable *diffusion,
63 gfloat *data,
64 gfloat model_radius,
65 gint level);
66 static gfloat focusblur_diffusion_model_flat
67 (FblurDiffusionTable *diffusion,
68 gfloat radius,
69 gfloat difference);
70 static gfloat focusblur_diffusion_model_spherical
71 (FblurDiffusionTable *diffusion,
72 gfloat radius,
73 gfloat difference);
74 static gfloat focusblur_diffusion_model_gaussian
75 (FblurDiffusionTable *diffusion,
76 gfloat radius,
77 gfloat difference);
78 static gfloat focusblur_diffusion_model_ring
79 (FblurDiffusionTable *diffusion,
80 gfloat radius,
81 gfloat difference);
82 static gfloat focusblur_diffusion_model_concave
83 (FblurDiffusionTable *diffusion,
84 gfloat radius,
85 gfloat difference);
86
87 /*---- Functions ----*/
88
89 static void
90 focusblur_diffusion_difference_table_init (void)
91 {
92 gfloat *tp, *tp2;
93 gint x, y;
94
95 if (difference_table)
96 return;
97
98 difference_table = g_new (gfloat, table_length * table_length);
99
100 tp = difference_table;
101 for (y = 0; y < table_length; y ++)
102 {
103 for (x = 0, tp2 = difference_table + y; x < y; x ++, tp2 += table_length)
104 *tp ++ = *tp2;
105 for (; x < table_length; x ++)
106 *tp ++ = hypotf (x, y);
107 }
108 }
109
110
111 gboolean
112 focusblur_diffusion_update (FblurDiffusionTable **diffusion,
113 FblurFftBuffer *fft,
114 FblurStoreParam *store,
115 gchar *brush_name)
116 {
117 FblurBrush *brush_tmp = NULL;
118 gsize rowstride, centeroffset;
119 gint radius_int, width;
120 gfloat radius;
121 gfloat density_max_bak = 0.0f;
122
123 if (! difference_table)
124 focusblur_diffusion_difference_table_init ();
125
126 if (*diffusion)
127 {
128 gboolean same_source, same_density, same_diffusion;
129 if (store->model_type == FBLUR_MODEL_BRUSH)
130 {
131 same_source = (*diffusion)->brush &&
132 focusblur_brush_name_is ((*diffusion)->brush, brush_name);
133 same_density = same_source &&
134 ! focusblur_brush_update_balance ((*diffusion)->brush,
135 store->enable_brush_balance);
136 same_diffusion = same_density &&
137 store->model_rotate == (*diffusion)->model_rotate;
138 }
139 else
140 same_source = same_density = same_diffusion = TRUE; /* ignored */
141
142 if (store->model_type == (*diffusion)->model_type &&
143 store->model_radius == (*diffusion)->model_radius &&
144 (store->model_type == FBLUR_MODEL_FLAT ||
145 store->model_type == FBLUR_MODEL_BRUSH ||
146 store->model_fill == (*diffusion)->model_fill) &&
147 store->model_softness == (*diffusion)->model_softness &&
148 same_diffusion /* model == brush */ )
149 {
150 if (store->shine_radius != (*diffusion)->shine_radius)
151 {
152 (*diffusion)->shine_radius = store->shine_radius;
153 (*diffusion)->density_max = focusblur_diffusion_make_density
154 (*diffusion, (*diffusion)->shine_radius);
155 }
156
157 return TRUE;
158 }
159
160 if (store->shine_radius == (*diffusion)->shine_radius &&
161
162 store->model_type == (*diffusion)->model_type &&
163 same_density /* model == brush */ &&
164 (store->model_type == FBLUR_MODEL_BRUSH ||
165 store->model_type == FBLUR_MODEL_FLAT ||
166 store->model_fill == (*diffusion)->model_fill))
167 /* reuse */
168 density_max_bak = (*diffusion)->density_max;
169
170 if (same_source)
171 {
172 /* it doesn't need to update */
173 brush_tmp = (*diffusion)->brush;
174 (*diffusion)->brush = NULL;
175 }
176
177 focusblur_diffusion_destroy (diffusion);
178 }
179
180 #ifdef HAVE_FFTW3
181 if (fft)
182 focusblur_fft_buffer_invalidate_diffusion (fft);
183 #endif
184
185 if (store->model_type == FBLUR_MODEL_BRUSH &&
186 ! brush_tmp)
187 {
188 brush_tmp =
189 focusblur_brush_new (brush_name, store->enable_brush_balance);
190
191 if (! brush_tmp)
192 return FALSE;
193 }
194
195 *diffusion = g_new0 (FblurDiffusionTable, 1);
196
197 (*diffusion)->model_type = store->model_type;
198 (*diffusion)->model_radius = store->model_radius;
199 (*diffusion)->model_rotate = store->model_rotate;
200 (*diffusion)->model_fill = store->model_fill;
201 (*diffusion)->model_softness = store->model_softness;
202 (*diffusion)->shine_radius = store->shine_radius;
203
204 (*diffusion)->model_fill_float = (*diffusion)->model_fill / 100.0f;
205
206 radius = (*diffusion)->model_radius;
207 radius *= 1.0f + (*diffusion)->model_softness / 100.0f;
208
209 radius_int = ceilf (radius);
210
211 /* the figure symmetric on each axes */
212 if (store->model_type != FBLUR_MODEL_BRUSH)
213 {
214 width = 1 + radius_int;
215 rowstride = width;
216 centeroffset = 0; /* means symmetrical */
217 }
218 else
219 {
220 width = radius_int + 1 + radius_int;
221 rowstride = width;
222 centeroffset = rowstride * radius_int + radius_int;
223 }
224
225 (*diffusion)->model_radius_int = radius_int;
226 (*diffusion)->centeroffset = centeroffset;
227 (*diffusion)->rowstride = rowstride;
228 (*diffusion)->blocksize = sizeof (gfloat) * rowstride * width;
229 (*diffusion)->brush = brush_tmp;
230
231 if (density_max_bak)
232 (*diffusion)->density_max = density_max_bak;
233 else
234 (*diffusion)->density_max = focusblur_diffusion_make_density
235 (*diffusion, (*diffusion)->shine_radius);
236
237 g_assert ((*diffusion)->model_type != FBLUR_MODEL_BRUSH ||
238 (*diffusion)->brush != NULL);
239
240 return TRUE;
241 }
242
243
244 void
245 focusblur_diffusion_destroy (FblurDiffusionTable **diffusion)
246 {
247 gint i;
248
249 if (*diffusion)
250 {
251 for (i = 0; i < FBLUR_DIFFUSION_NTABLES; i ++)
252 if ((*diffusion)->distribution[i])
253 g_slice_free1 ((*diffusion)->blocksize,
254 (*diffusion)->distribution[i]);
255
256 focusblur_brush_destroy (&((*diffusion)->brush));
257
258 g_free (*diffusion);
259 *diffusion = NULL;
260 }
261 }
262
263
264 gfloat
265 focusblur_diffusion_get (FblurDiffusionTable *diffusion,
266 gint level,
267 gint pos_x,
268 gint pos_y,
269 gint x,
270 gint y)
271 {
272 gfloat *dp;
273 gint dx, dy;
274 gint num;
275
276 dx = pos_x - x;
277 dy = pos_y - y;
278
279 if (dx < - diffusion->model_radius_int ||
280 dx > diffusion->model_radius_int ||
281 dy < - diffusion->model_radius_int ||
282 dy > diffusion->model_radius_int)
283 return 0.0f;
284
285 g_assert (level <= FBLUR_DEPTH_MAX);
286 g_assert (level >= -FBLUR_DEPTH_MAX);
287
288 if (! level)
289 return (dx || dy) ? 0.0f : 1.0f;
290
291 level = abs (level);
292
293 /* Farthest distribution is allocated at index 0. */
294 num = FBLUR_DEPTH_MAX - level;
295
296 g_assert (num >= 0);
297 g_assert (num < FBLUR_DIFFUSION_NTABLES);
298
299 if (! diffusion->distribution[num])
300 focusblur_diffusion_make (diffusion, level, num);
301
302 g_assert (diffusion->distribution[num] != NULL);
303
304 dp = diffusion->distribution[num];
305 if (diffusion->centeroffset == 0)
306 {
307 /* data in quarto */
308 dx = abs (dx);
309 dy = abs (dy);
310 }
311 else
312 {
313 dp += diffusion->centeroffset;
314 }
315 dp += dy * diffusion->rowstride + dx;
316
317 return *dp;
318 }
319
320
321 /* it is not enough for shrinked coordinates,
322 but it is not bad than to do nothing. */
323 gfloat
324 focusblur_diffusion_getf (FblurDiffusionTable *diffusion,
325 gint level,
326 gfloat fx,
327 gfloat fy)
328 {
329 gint x0, x1, y0, y1;
330 gfloat distribution, d[4];
331 gfloat xbal, ybal, r0, r1;
332
333 x0 = floorf (fx);
334 x1 = ceilf (fx);
335 y0 = floorf (fy);
336 y1 = ceilf (fy);
337
338 d[0] =
339 focusblur_diffusion_get (diffusion, level, x0, y0, 0, 0);
340 d[1] =
341 focusblur_diffusion_get (diffusion, level, x1, y0, 0, 0);
342 d[2] =
343 focusblur_diffusion_get (diffusion, level, x0, y1, 0, 0);
344 d[3] =
345 focusblur_diffusion_get (diffusion, level, x1, y1, 0, 0);
346
347 /* same as gimp_bilinear (fx, fy, d), but float. */
348
349 xbal = fx - x0;
350 ybal = fy - y0;
351 r0 = d[0] + (d[1] - d[0]) * xbal;
352 r1 = d[2] + (d[3] - d[2]) * xbal;
353 distribution = r0 + (r1 - r0) * ybal;
354
355 return distribution;
356 }
357
358
359 gfloat
360 focusblur_diffusion_get_shine (FblurDiffusionTable *diffusion,
361 gint depth_level,
362 gint shine_level)
363 {
364 const gfloat color_fnum = 1.0f / 255.0f;
365 gfloat shine_density;
366 gfloat fval;
367 gint num;
368
369 g_assert (depth_level <= FBLUR_DEPTH_MAX);
370 g_assert (depth_level >= -FBLUR_DEPTH_MAX);
371
372 if (! depth_level ||
373 ! shine_level ||
374 ! diffusion->shine_radius)
375 return 1.0f;
376
377 depth_level = abs (depth_level);
378
379 /* Farthest distribution is allocated at index 0. */
380 num = FBLUR_DEPTH_MAX - depth_level;
381
382 g_assert (num >= 0);
383 g_assert (num < FBLUR_DIFFUSION_NTABLES);
384
385 if (! diffusion->distribution[num])
386 focusblur_diffusion_make (diffusion, depth_level, num);
387
388 shine_density = diffusion->density[num];
389
390 if (diffusion->density_max > 1.0f &&
391 shine_density > diffusion->density_max)
392 shine_density = diffusion->density_max;
393
394 shine_density -= 1.0f;
395
396 g_return_val_if_fail (shine_density >= 0.0f, 1.0f);
397
398 fval = 1.0f + shine_level * shine_density * color_fnum;
399
400 return fval;
401 }
402
403
404 static void
405 focusblur_diffusion_make (FblurDiffusionTable *diffusion,
406 gint level,
407 gint num)
408 {
409 FocusblurDiffusionModelFunc func;
410
411 gfloat *dlp, *dp;
412 gfloat *tlp, *tp;
413 gfloat radius;
414 gfloat density;
415 gfloat fval;
416 gint range, width;
417 gint x, y;
418
419 g_assert (level > 0);
420
421 radius = diffusion->model_radius;
422
423 switch (diffusion->model_type)
424 {
425 case FBLUR_MODEL_FLAT:
426 func = focusblur_diffusion_model_flat;
427 break;
428
429 case FBLUR_MODEL_SPHERICAL:
430 func = focusblur_diffusion_model_spherical;
431 break;
432
433 case FBLUR_MODEL_GAUSSIAN:
434 func = focusblur_diffusion_model_gaussian;
435 break;
436
437 case FBLUR_MODEL_RING:
438 func = focusblur_diffusion_model_ring;
439 break;
440
441 case FBLUR_MODEL_CONCAVE:
442 func = focusblur_diffusion_model_concave;
443 break;
444
445 case FBLUR_MODEL_BRUSH:
446 func = 0;
447 break;
448
449 default:
450 g_assert_not_reached ();
451 func = NULL; /* shut a warning */
452 }
453
454 radius *= (gfloat) level / (gfloat) FBLUR_DEPTH_MAX;
455 range = ceilf (radius);
456 width = 1 + range;
457 if (diffusion->centeroffset)
458 width += range;
459
460 g_assert (radius >= 0.0f);
461 g_assert (range < table_length);
462
463 diffusion->distribution[num] = g_slice_alloc0 (diffusion->blocksize);
464
465 density = 0.0f;
466 dlp = diffusion->distribution[num];
467
468 /* rendring and total value */
469 if (diffusion->centeroffset == 0)
470 {
471 g_assert (func != 0);
472
473 tlp = difference_table;
474 for (y = width; y --; dlp += diffusion->rowstride, tlp += table_length)
475 for (x = width, dp = dlp, tp = tlp; x --; dp ++, tp ++)
476 density += (*dp = (*func) (diffusion, radius, *tp));
477
478 /* 4 times density */
479 dp = diffusion->distribution[num];
480 for (x = width; x --; dp ++)
481 density -= *dp;
482 density *= 4;
483 density += diffusion->distribution[num][0];
484 }
485 else
486 {
487 dlp += diffusion->centeroffset;
488
489 switch (diffusion->model_type)
490 {
491 case FBLUR_MODEL_BRUSH:
492 g_assert (diffusion->brush != NULL);
493
494 density = focusblur_brush_render
495 (diffusion->brush, radius, diffusion->model_rotate,
496 diffusion->rowstride, dlp);
497 break;
498
499 default:
500 /* currently supports only brush */
501 g_assert_not_reached ();
502 }
503 }
504 diffusion->density[num] = MAX (density, 1.0f);
505
506 /* normalize */
507 g_assert (density > 0.0f);
508 fval = 1.0f / density;
509 dlp = diffusion->distribution[num];
510 if (diffusion->centeroffset)
511 /* move to corner */
512 dlp += diffusion->centeroffset - diffusion->rowstride * range - range;
513
514 for (y = width; y --; dlp += diffusion->rowstride)
515 for (x = width, dp = dlp; x --; dp ++)
516 *dp *= fval;
517
518 focusblur_diffusion_blur
519 (diffusion, diffusion->distribution[num], radius, level);
520 }
521
522
523 /* Pre-making figure and compute density. it limits
524 diffuseable maximum density to be shown as shining. */
525 static gfloat
526 focusblur_diffusion_make_density (FblurDiffusionTable *diffusion,
527 gfloat radius)
528 {
529 FocusblurDiffusionModelFunc func;
530
531 gfloat *tlp, *tp;
532 gfloat density;
533 gint range;
534 gint x, y;
535
536 if (! radius)
537 return 1.0f;
538
539 if (radius < 0.0f)
540 return 0.0f;
541
542 switch (diffusion->model_type)
543 {
544 case FBLUR_MODEL_FLAT:
545 func = focusblur_diffusion_model_flat;
546 break;
547
548 case FBLUR_MODEL_SPHERICAL:
549 func = focusblur_diffusion_model_spherical;
550 break;
551
552 case FBLUR_MODEL_GAUSSIAN:
553 func = focusblur_diffusion_model_gaussian;
554 break;
555
556 case FBLUR_MODEL_RING:
557 func = focusblur_diffusion_model_ring;
558 break;
559
560 case FBLUR_MODEL_CONCAVE:
561 func = focusblur_diffusion_model_concave;
562 break;
563
564 case FBLUR_MODEL_BRUSH:
565 return focusblur_brush_make_density (diffusion->brush, radius);
566
567 default:
568 g_assert_not_reached ();
569 func = NULL; /* shut a warning */
570 }
571
572 range = ceilf (radius);
573
574 g_assert (radius >= 0.0f);
575 g_assert (range < table_length);
576
577 density = 0.0f;
578 tlp = difference_table;
579
580 if (diffusion->centeroffset == 0)
581 {
582 /* skip first line, it has been overlapped */
583 tlp += table_length;
584
585 for (y = 1; y <= range; y ++, tlp += table_length)
586 for (x = 0, tp = tlp; x <= range; x ++, tp ++)
587 density += (*func) (diffusion, radius, *tp);
588
589 /* 4 times (like a pinwheel) and fill center */
590 density *= 4;
591 density += (*func) (diffusion, radius, 0.0f);
592 }
593 else
594 g_assert_not_reached ();
595
596 return density;
597 }
598
599
600 static void
601 focusblur_diffusion_blur (FblurDiffusionTable *diffusion,
602 gfloat *data,
603 gfloat model_radius,
604 gint level)
605 {
606 const gint width = 1 + 2 * FBLUR_RADIUS_MAX;
607 gfloat blur_table[width];
608 /* tp[] has minus offset. it reduces calling abs(). */
609 gfloat *tp = &(blur_table[FBLUR_RADIUS_MAX]);
610 gfloat *dlp, *dp, *sp;
611
612 gint range;
613 gint blur_radius_int;
614 gint x, y, i, j;
615 gfloat softness;
616 gfloat blur_radius;
617 gfloat vr, fval, sval;
618
619 if (! diffusion->model_softness)
620 return;
621
622 softness = diffusion->model_softness / 100.0f;
623 range = diffusion->model_radius_int;
624 blur_radius = model_radius * softness;
625 blur_radius_int = ceilf (blur_radius);
626
627 vr = FBLUR_GAUSSIAN_FACTOR * (blur_radius + 1);
628 vr = -1.0f / (2.0f * SQR (vr));
629
630 /* make blurring table */
631 tp[0] = 1.0f;
632 sval = 0.0f;
633 for (i = 1; i <= blur_radius_int; i ++)
634 {
635 fval = expf (SQR (i) * vr);
636 tp[i] = tp[-i] = fval;
637 sval += fval;
638 }
639 sval *= 2.0f;
640 sval += 1.0f;
641
642 for (i = -blur_radius_int; i <= blur_radius_int; i ++)
643 tp[i] /= sval;
644
645 /* for symmetrical figures */
646 if (diffusion->centeroffset == 0)
647 {
648 gfloat sum[1 + range];
649
650 /* run on X lines */
651 for (y = 0, dlp = data; y <= range; y ++, dlp += diffusion->rowstride)
652 {
653 for (x = 0, sp = sum; x <= range; x ++, sp ++)
654 {
655 fval = 0.0f;
656 for (i = - blur_radius_int; i <= blur_radius_int; i ++)
657 {
658 j = abs (x + i); /* abs() works as mirror */
659 if (j <= range) /* limits inside of X */
660 fval += tp[i] * dlp[j];
661 }
662 *sp = fval;
663 }
664 for (x = 0, dp = dlp, sp = sum; y <= range; y ++, dp ++, sp ++)
665 *dp = *sp;
666 }
667
668 /* run on Y lines */
669 for (x = 0, dlp = data; x <= range; x ++, dlp ++)
670 {
671 for (y = 0, sp = sum; y <= range; y ++, sp ++)
672 {
673 fval = 0.0f;
674 for (i = - blur_radius_int; i <= blur_radius_int; i ++)
675 {
676 j = abs (y + i);
677 if (j <= range)
678 fval += tp[i] * dlp[j * diffusion->rowstride];
679 }
680 *sp = fval;
681 }
682 for (y = 0, dp = dlp, sp = sum; y <= range;
683 y ++, dp += diffusion->rowstride, sp ++)
684 *dp = *sp;
685 }
686 }
687 else /* has center offset */
688 {
689 gfloat sum[range + 1 + range];
690 gsize centerline = diffusion->rowstride * range;
691
692 /* move to corner */
693 data += diffusion->centeroffset - centerline - range;
694
695 for (y = -range, dlp = data + range;
696 y <= range; y ++, dlp += diffusion->rowstride)
697 {
698 for (x = -range, sp = sum; x <= range; x ++, sp ++)
699 {
700 fval = 0.0f;
701 for (i = - blur_radius_int; i <= blur_radius_int; i ++)
702 {
703 j = x + i;
704 if (j >= -range && j <= range)
705 fval += tp[i] * dlp[j];
706 }
707 *sp = fval;
708 }
709 for (x = -range, dp = dlp - range, sp = sum;
710 y <= range; y ++, dp ++, sp ++)
711 *dp = *sp;
712 }
713
714 for (x = -range, dlp = data + centerline;
715 x <= range; x ++, dlp ++)
716 {
717 for (y = -range, sp = sum; y <= range; y ++, sp ++)
718 {
719 fval = 0.0f;
720 for (i = - blur_radius_int; i <= blur_radius_int; i ++)
721 {
722 j = y + i;
723 if (j >= -range && j <= range)
724 fval += tp[i] * dlp[j * diffusion->rowstride];
725 }
726 *sp = fval;
727 }
728 for (y = -range, dp = dlp - centerline, sp = sum;
729 y <= range; y ++, dp += diffusion->rowstride, sp ++)
730 *dp = *sp;
731 }
732 }
733 }
734
735
736 static gfloat
737 focusblur_diffusion_model_flat (FblurDiffusionTable *diffusion,
738 gfloat radius,
739 gfloat difference)
740 {
741 gfloat distribution;
742
743 distribution = 1.0f + radius - difference;
744
745 if (distribution <= 0.0f)
746 distribution = 0.0f;
747
748 else if (distribution >= 1.0f)
749 distribution = 1.0f;
750
751 return distribution;
752 }
753
754
755 static gfloat
756 focusblur_diffusion_model_spherical (FblurDiffusionTable *diffusion,
757 gfloat radius,
758 gfloat difference)
759 {
760 gfloat distribution;
761 gfloat base, r, nd, fd, nval, fval;
762
763 if (difference < 0.5f)
764 return 1.0f;
765
766 r = radius + 0.5f;
767 nd = difference - 0.5f;
768 fd = difference + 0.5f;
769
770 if (nd < 0.0f)
771 nd = 0.0f;
772 if (nd > r)
773 return 0.0f;
774
775 if (fd > r)
776 {
777 fd = r;
778 fval = 0.0f;
779 }
780 else
781 fval = sqrtf (1.0f - SQR (fd / r));
782
783 base = fd - nd;
784
785 nval = sqrtf (1.0f - SQR (nd / r));
786
787 distribution = base * (nval + fval) / 2.0f;
788
789 return distribution;
790 }
791
792
793 static gfloat
794 focusblur_diffusion_model_gaussian (FblurDiffusionTable *diffusion,
795 gfloat radius,
796 gfloat difference)
797 {
798 static gfloat cache_radius = 0.0f;
799 static gfloat cache_vr = 0.0f;
800
801 gfloat distribution;
802 gfloat vr;
803
804 if (difference - radius >= 1.0f)
805 return 0.0f;
806
807 if (radius == cache_radius)
808 {
809 vr = cache_vr;
810 }
811 else
812 {
813 vr = FBLUR_GAUSSIAN_FACTOR * (radius + 1);
814 vr = -1.0f / (2.0f * vr * vr);
815
816 cache_radius = radius;
817 cache_vr = vr;
818 }
819
820 distribution = expf (difference * difference * vr);
821
822 return distribution;
823 }
824
825
826 static gfloat
827 focusblur_diffusion_model_ring (FblurDiffusionTable *diffusion,
828 gfloat radius,
829 gfloat difference)
830 {
831 gfloat distribution;
832
833 if (difference == 0.0f)
834 {
835 if (radius <= 5.0f)
836 distribution = 1.0f;
837
838 else if (radius < 1.0f)
839 {
840 distribution = 2.0f * (1.0f - radius);
841 distribution += diffusion->model_fill_float * (1.0f - distribution);
842
843 return distribution;
844 }
845 else
846 distribution = diffusion->model_fill_float;
847
848 return distribution;
849 }
850
851 distribution = 1.0f + radius - difference;
852
853 if (distribution <= 0.0f)
854 distribution = 0.0f;
855
856 else if (distribution >= 2.0f)
857 distribution = diffusion->model_fill_float;
858
859 else if (distribution > 1.0f)
860 {
861 distribution = 2.0f - distribution;
862
863 distribution *= 1.0f - diffusion->model_fill_float;
864 distribution += diffusion->model_fill_float;
865 }
866
867 return distribution;
868 }
869
870
871 static gfloat
872 focusblur_diffusion_model_concave (FblurDiffusionTable *diffusion,
873 gfloat radius,
874 gfloat difference)
875 {
876 gfloat distribution;
877
878 if (difference == 0.0f)
879 {
880 if (radius <= 5.0f)
881 distribution = 1.0f;
882
883 else if (radius < 1.0f)
884 {
885 distribution = 2.0f * (1.0f - radius);
886 distribution += diffusion->model_fill_float * (1.0f - distribution);
887
888 return distribution;
889 }
890 else
891 distribution = diffusion->model_fill_float;
892
893 return distribution;
894 }
895
896 distribution = 1.0f + radius - difference;
897
898 if (distribution <= 0.0f)
899 distribution = 0.0f;
900
901 else if (distribution > 1.0f)
902 {
903 distribution = (difference + 0.5f) / (radius + 0.5f);
904 distribution *= distribution;
905
906 distribution *= 1.0f - diffusion->model_fill_float;
907 distribution += diffusion->model_fill_float;
908 }
909
910 return distribution;
911 }
+0
-84
focus-blur/focusblur-3.2.6/src/diffusion.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_DIFFUSION_H__
22 #define __FOCUSBLUR_DIFFUSION_H__
23
24
25 #include <glib/gtypes.h>
26
27 #include "focusblur.h"
28 #include "focusblurtypes.h"
29 #include "focusblurenums.h"
30
31 G_BEGIN_DECLS
32
33
34 /*---- Structures ----*/
35
36 struct _FblurDiffusionTable
37 {
38 /* specified parameters */
39 FblurModelType model_type;
40 gfloat model_radius;
41 gfloat model_rotate;
42 gfloat model_fill;
43 gfloat model_softness;
44 gfloat shine_radius;
45 /* sub value */
46 FblurBrush *brush;
47 /* pre-computed values */
48 gfloat model_fill_float;
49 gint model_radius_int;
50 /* main data */
51 gsize centeroffset;
52 gsize rowstride;
53 gsize blocksize;
54 gfloat *distribution[FBLUR_DIFFUSION_NTABLES];
55 gfloat density[FBLUR_DIFFUSION_NTABLES];
56 gfloat density_max;
57 };
58
59
60 /*---- Functions ----*/
61
62 gboolean focusblur_diffusion_update (FblurDiffusionTable **diffusion,
63 FblurFftBuffer *fft,
64 FblurStoreParam *store,
65 gchar *brush_name);
66 void focusblur_diffusion_destroy (FblurDiffusionTable **diffusion);
67 gfloat focusblur_diffusion_get (FblurDiffusionTable *diffusion,
68 gint level,
69 gint pos_x,
70 gint pos_y,
71 gint x,
72 gint y);
73 gfloat focusblur_diffusion_getf (FblurDiffusionTable *diffusion,
74 gint level,
75 gfloat fx,
76 gfloat fy);
77 gfloat focusblur_diffusion_get_shine (FblurDiffusionTable *diffusion,
78 gint depth_level,
79 gint shine_level);
80
81 G_END_DECLS
82
83 #endif /* __FOCUSBLUR_DIFFUSION_H__ */
+0
-820
focus-blur/focusblur-3.2.6/src/fftblur.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <libgimp/gimp.h>
24 #include <libgimp/gimpui.h>
25
26 #include "libgimp/stdplugins-intl.h"
27
28 #include "fftblur.h"
29 #include "fftblurbuffer.h"
30 #include "fftblurproc.h"
31
32 #include "focusblurparam.h"
33 #include "diffusion.h"
34 #include "depthmap.h"
35 #include "shine.h"
36
37
38 /*---- Types ----*/
39
40
41 /*---- Prototypes ----*/
42
43 static gboolean focusblur_fft_render (FblurParam *param,
44 gboolean progress_bar);
45 static gboolean focusblur_fft_render_depth_map (FblurParam *param,
46 gboolean progress_bar);
47 static gboolean focusblur_fft_render_depth_precedence (FblurParam *param,
48 gboolean progress_bar);
49
50
51 /*---- Temporary structure for iterator ----*/
52
53 typedef struct _ConvertShineSet ConvertShineSet;
54
55 struct _ConvertShineSet
56 {
57 FblurDiffusionTable *diffusion;
58 FblurShineData *shine;
59 gint level;
60 };
61
62
63 /*---- Functions for iterator ----*/
64
65 inline static gfloat
66 convf_shine_sub (ConvertShineSet *ss,
67 gint x,
68 gint y)
69 {
70 gint s1 = focusblur_shine_get (ss->shine, x, y);
71 return focusblur_diffusion_get_shine (ss->diffusion, ss->level, s1);
72 }
73
74 static void
75 convf_shine0 (gfloat *workp,
76 gint x,
77 gint y,
78 gpointer data)
79 {
80 *workp = convf_shine_sub ((ConvertShineSet *) data, x, y);
81 }
82
83 static void
84 convf_shinex (gfloat *workp,
85 gint x,
86 gint y,
87 gpointer data)
88 {
89 *workp *= convf_shine_sub ((ConvertShineSet *) data, x, y);
90 }
91
92 static void
93 convf_alpha0 (gfloat *workp,
94 guchar *sourcep)
95 {
96 const gfloat color_fnum = 1.0f / 255.0f;
97 *workp = color_fnum * *sourcep;
98 }
99
100 static void
101 convf_alphax (gfloat *workp,
102 guchar *sourcep)
103 {
104 const gfloat color_fnum = 1.0f / 255.0f;
105 *workp *= color_fnum * *sourcep;
106 }
107
108 static void
109 convf_color0 (gfloat *workp,
110 guchar *sourcep)
111 {
112 *workp = *sourcep;
113 }
114
115 static void
116 convf_colorx (gfloat *workp,
117 guchar *sourcep)
118 {
119 *workp *= *sourcep;
120 }
121
122 static void
123 setf_alphax (gfloat *workp,
124 gfloat *realp,
125 guchar *sourcep)
126 {
127 gint val = rintf (255.0f * *workp / *realp);
128 *sourcep = CLAMP0255 (val);
129 }
130
131 static void
132 setf_alpha (gfloat *dummy,
133 gfloat *realp,
134 guchar *sourcep)
135 {
136 gint val = rintf (255.0f * *realp);
137 *sourcep = CLAMP0255 (val);
138 }
139
140 static void
141 setf_colorx (gfloat *workp,
142 gfloat *realp,
143 guchar *sourcep)
144 {
145 gint val = rintf (*workp / *realp);
146 *sourcep = CLAMP0255 (val);
147 }
148
149 static void
150 setf_color (gfloat *workp,
151 gfloat *dummy,
152 guchar *sourcep)
153 {
154 gint val = rintf (*workp);
155 *sourcep = CLAMP0255 (val);
156 }
157
158 static void
159 convf_radd (gfloat *workp,
160 gfloat *realp)
161 {
162 *realp += *workp;
163 }
164
165 static void
166 convf_mul (gfloat *workp,
167 gfloat *realp)
168 {
169 *workp *= *realp;
170 }
171
172 static void
173 convf_transit0 (gfloat *workp,
174 gfloat *realp)
175 {
176 gfloat through;
177 if (*workp > 0.0f &&
178 *realp < 1.0f)
179 {
180 through = 1.0f - *realp;
181 if (through >= *workp)
182 *workp = 1.0f;
183 else
184 *workp = through / *workp;
185 }
186 else
187 *workp = 0.0f;
188 }
189
190 static void
191 convf_fill0 (gfloat *workp,
192 gfloat *realp)
193 {
194 if (*workp > 0.0001f &&
195 *realp > 0.0001f &&
196 *realp < 1.0f)
197 *workp = (1.0f - *realp) / *workp;
198 else
199 *workp = 0.0f;
200 }
201
202 static void
203 convf_fill5 (guchar *sourcep,
204 gint bpp,
205 gint offset,
206 gpointer data)
207 {
208 gfloat **sum = (gfloat **) data;
209 gfloat fval;
210 gint c;
211
212 if (sum[5][offset] > 0.0f)
213 {
214 fval = sum[bpp][offset] / sum[5][offset];
215 for (c = 0; c < bpp; c ++)
216 sum[c][offset] *= fval;
217 }
218 }
219
220 static void
221 setf_suma (guchar *sourcep,
222 gint bpp,
223 gint offset,
224 gpointer data)
225 {
226 gfloat **sum = (gfloat **) data;
227 gint val, ch, c;
228
229 ch = bpp - 1;
230 if (sum[bpp][offset] > 0.0001f &&
231 (val = rintf (255.0f * sum[ch][offset] / sum[bpp][offset]),
232 val = CLAMP0255 (val)))
233 {
234 sourcep[ch] = val;
235 for (c = 0; c < ch; c ++)
236 {
237 val = rintf (sum[c][offset] / sum[ch][offset]);
238 sourcep[c] = CLAMP0255 (val);
239 }
240 }
241 else
242 for (c = 0; c < bpp; c ++)
243 sourcep[c] = 0;
244 }
245
246 static void
247 setf_sum (guchar *sourcep,
248 gint bpp,
249 gint offset,
250 gpointer data)
251 {
252 gfloat **sum = (gfloat **) data;
253 gint val, c;
254
255 if (sum[bpp][offset] > 0.0001f)
256 for (c = 0; c < bpp; c ++)
257 {
258 val = rintf (sum[c][offset] / sum[bpp][offset]);
259 sourcep[c] = CLAMP0255 (val);
260 }
261 else
262 for (c = 0; c < bpp; c ++)
263 sourcep[c] = 0;
264 }
265
266
267 /*---- Functions ----*/
268
269
270 gboolean
271 focusblur_fft_execute (FblurParam *param,
272 FblurQualityType quality,
273 GimpPreview *preview)
274 {
275 gboolean progress_bar;
276 gboolean success;
277
278 g_return_val_if_fail (param->store.model_radius > 0.0f, FALSE);
279
280 if (! focusblur_fft_buffer_update (&(param->fft), param, quality, preview))
281 return FALSE;
282
283 progress_bar = preview ? FALSE : TRUE;
284
285 if (progress_bar)
286 {
287 gimp_progress_init (_("Focus Blur..."));
288 gimp_progress_update (0.0001);
289 }
290
291 /* with depth map */
292 if (! param->store.enable_depth_map)
293 success = focusblur_fft_render (param, progress_bar);
294 else if (quality != FBLUR_QUALITY_DEFECTIVE &&
295 param->store.enable_depth_precedence)
296 success = focusblur_fft_render_depth_precedence (param, progress_bar);
297 else
298 success = focusblur_fft_render_depth_map (param, progress_bar);
299
300 if (success)
301 focusblur_fft_buffer_draw (param->fft);
302
303 if (progress_bar)
304 gimp_progress_update (1.0);
305
306 focusblur_fft_work_free_buffers (param->fft);
307
308 return success;
309 }
310
311
312 static gboolean
313 focusblur_fft_render (FblurParam *param,
314 gboolean progress_bar)
315 {
316 FblurFftBuffer *fft = param->fft;
317 gint bpp = fft->source.bpp;
318 gint channels = fft->source.channels;
319 gboolean has_alpha = fft->source.has_alpha;
320 gboolean enable_shine;
321
322 gfloat *alpha1 = NULL;
323 gfloat *shine0 = NULL;
324 gfloat *shine1 = NULL;
325 const gint level = FBLUR_DEPTH_MAX;
326 gint progress = 0, full_progress = 0;
327 gint c;
328
329 g_assert (param->store.enable_depth_map == FALSE);
330
331 enable_shine = focusblur_shine_check_enabled (&(param->store));
332
333 if (progress_bar)
334 {
335 full_progress = 2;
336 full_progress += bpp;
337 if (enable_shine)
338 full_progress ++;
339 }
340
341 if (has_alpha)
342 {
343 alpha1 = focusblur_fft_work_add_buffer (fft);
344 if (! alpha1)
345 return FALSE;
346 }
347
348 if (enable_shine)
349 {
350 if (has_alpha)
351 {
352 shine1 = focusblur_fft_work_add_buffer (fft);
353 if (! shine1)
354 return FALSE;
355 /* alpha1 will be used instead of shine0 */
356 }
357 else
358 {
359 shine0 = focusblur_fft_work_add_buffer (fft);
360 shine1 = focusblur_fft_work_add_buffer (fft);
361 if (! shine0 || ! shine1 )
362 return FALSE;
363 }
364 }
365
366 focusblur_fft_buffer_make_kernel (fft, param->diffusion, level);
367
368 if (progress_bar)
369 gimp_progress_update ((gdouble) ++ progress / full_progress);
370
371 /* has alpha, with shine */
372 if (has_alpha)
373 if (enable_shine)
374 {
375 gfloat *alpha0;
376 ConvertShineSet shine_set = { param->diffusion, param->shine, level };
377
378 /* shine */
379 focusblur_fft_convert_coords2work (fft, convf_shine0, &shine_set);
380 focusblur_fft_work_treat_outside (fft);
381
382 focusblur_fft_work_store (fft, alpha1); /* as shine0 */
383 focusblur_fft_work_apply (fft);
384 focusblur_fft_work_store (fft, shine1);
385 if (progress_bar)
386 gimp_progress_update ((gdouble) ++ progress / full_progress);
387
388 /* alpha */
389 focusblur_fft_work_restore (fft, alpha1);
390 focusblur_fft_convert_source2work (fft, convf_alphax, channels);
391 focusblur_fft_work_treat_outside (fft);
392
393 focusblur_fft_work_store (fft, alpha1); /* as alpha0 */
394 focusblur_fft_work_apply (fft);
395 if (progress_bar)
396 gimp_progress_update ((gdouble) ++ progress / full_progress);
397
398 focusblur_fft_convert_work2source (fft, shine1, setf_alphax, channels);
399
400 /* renameing for code reading */
401 alpha0 = alpha1;
402 alpha1 = shine1;
403 //shine1 = alpha0; pointers are in list for freed.
404 focusblur_fft_work_store (fft, alpha1);
405
406 /* color */
407 for (c = 0; c < channels; c ++)
408 {
409 focusblur_fft_work_restore (fft, alpha0);
410 focusblur_fft_convert_source2work (fft, convf_colorx, c);
411 focusblur_fft_work_treat_outside (fft);
412
413 focusblur_fft_work_apply (fft);
414 if (progress_bar)
415 gimp_progress_update ((gdouble) ++ progress / full_progress);
416
417 focusblur_fft_convert_work2source (fft, alpha1, setf_colorx, c);
418 }
419 }
420
421 /* has alpha, withwout shine */
422 else
423 {
424 focusblur_fft_convert_source2work (fft, convf_alpha0, channels);
425 focusblur_fft_work_treat_outside (fft);
426
427 focusblur_fft_work_apply (fft);
428 focusblur_fft_work_store (fft, alpha1);
429
430 if (progress_bar)
431 gimp_progress_update ((gdouble) ++ progress / full_progress);
432
433 for (c = 0; c < channels; c ++)
434 {
435 focusblur_fft_convert_source2work (fft, convf_alpha0, c);
436 focusblur_fft_convert_source2work (fft, convf_colorx, channels);
437 focusblur_fft_work_treat_outside (fft);
438
439 focusblur_fft_work_apply (fft);
440 if (progress_bar)
441 gimp_progress_update ((gdouble) ++ progress / full_progress);
442
443 focusblur_fft_convert_work2source (fft, alpha1, setf_colorx, c);
444 }
445
446 focusblur_fft_convert_work2source (fft, alpha1, setf_alpha, channels);
447 }
448
449 /* no alpha, with shine */
450 else
451 if (enable_shine)
452 {
453 ConvertShineSet shine_set = { param->diffusion, param->shine, level };
454
455 focusblur_fft_convert_coords2work (fft, convf_shine0, &shine_set);
456 focusblur_fft_work_treat_outside (fft);
457
458 focusblur_fft_work_store (fft, shine0);
459 focusblur_fft_work_apply (fft);
460 focusblur_fft_work_store (fft, shine1);
461 if (progress_bar)
462 gimp_progress_update ((gdouble) ++ progress / full_progress);
463
464 for (c = 0; c < channels; c ++)
465 {
466 focusblur_fft_work_restore (fft, shine0);
467 focusblur_fft_convert_source2work (fft, convf_colorx, c);
468 focusblur_fft_work_treat_outside (fft);
469
470 focusblur_fft_work_apply (fft);
471 if (progress_bar)
472 gimp_progress_update ((gdouble) ++ progress / full_progress);
473
474 focusblur_fft_convert_work2source (fft, shine1, setf_colorx, c);
475 }
476 }
477
478 /* no alpha, without shine */
479 else
480 {
481 for (c = 0; c < channels; c ++)
482 {
483 focusblur_fft_convert_source2work (fft, convf_color0, c);
484 focusblur_fft_work_treat_outside (fft);
485
486 focusblur_fft_work_apply (fft);
487 if (progress_bar)
488 gimp_progress_update ((gdouble) ++ progress / full_progress);
489
490 focusblur_fft_convert_work2source (fft, NULL, setf_color, c);
491 }
492 }
493
494 return TRUE;
495 }
496
497
498 static gboolean
499 focusblur_fft_render_depth_map (FblurParam *param,
500 gboolean progress_bar)
501 {
502 FblurFftBuffer *fft = param->fft;
503 gint bpp = fft->source.bpp;
504 gint channels = fft->source.channels;
505 gboolean has_alpha = fft->source.has_alpha;
506 gboolean enable_shine;
507
508 gfloat *slice0 = NULL;
509 gfloat *sum[5] = { NULL, NULL, NULL, NULL, NULL };
510 gfloat *alpha0 = NULL;
511 gint depth, depth_count, level;
512 gint progress = 0, full_progress = 0;
513 gint c;
514
515 g_assert (param->store.enable_depth_map == TRUE);
516
517 enable_shine = focusblur_shine_check_enabled (&(param->store));
518
519 if (progress_bar)
520 full_progress = 2 + fft->depth.count;
521
522 slice0 = focusblur_fft_work_add_buffer (fft);
523 if (! slice0)
524 return FALSE;
525
526 for (c = 0; c <= bpp; c ++)
527 {
528 sum[c] = focusblur_fft_work_add_buffer_zero (fft);
529 if (! sum[c])
530 return FALSE;
531 }
532
533 if (has_alpha)
534 {
535 alpha0 = focusblur_fft_work_add_buffer (fft);
536 if (! alpha0)
537 return FALSE;
538 }
539
540 for (depth = 0, depth_count = fft->depth.count; depth_count --; depth ++)
541 {
542 while (! fft->depth.check[depth])
543 depth ++;
544
545 level = focusblur_depth_map_get_level (param->depth_map, depth);
546 focusblur_fft_buffer_make_kernel (fft, param->diffusion, level);
547 focusblur_fft_buffer_make_depth_slice (fft, param->depth_map, depth);
548
549 if (enable_shine)
550 {
551 ConvertShineSet shine_set =
552 { param->diffusion, param->shine, level };
553
554 focusblur_fft_convert_coords2work (fft, convf_shinex, &shine_set);
555 }
556 focusblur_fft_work_store (fft, slice0);
557
558 if (has_alpha)
559 {
560 focusblur_fft_convert_source2work (fft, convf_alphax, channels);
561 focusblur_fft_work_store (fft, alpha0);
562
563 for (c = 0; c < channels; c ++)
564 {
565 focusblur_fft_convert_source2work (fft, convf_colorx, c);
566 focusblur_fft_work_apply (fft);
567 focusblur_fft_convert_work (fft, convf_radd, sum[c]);
568 focusblur_fft_work_restore (fft, alpha0);
569 }
570
571 focusblur_fft_work_apply (fft);
572 focusblur_fft_convert_work (fft, convf_radd, sum[channels]);
573 focusblur_fft_work_restore (fft, slice0);
574 }
575 else
576 {
577 for (c = 0; c < channels; c ++)
578 {
579 focusblur_fft_convert_source2work (fft, convf_colorx, c);
580 focusblur_fft_work_apply (fft);
581 focusblur_fft_convert_work (fft, convf_radd, sum[c]);
582 focusblur_fft_work_restore (fft, slice0);
583 }
584 }
585
586 focusblur_fft_work_apply (fft);
587 focusblur_fft_convert_work (fft, convf_radd, sum[bpp]);
588
589 if (progress_bar)
590 gimp_progress_update ((gdouble) ++ progress / full_progress);
591 }
592
593 /* finish */
594 if (has_alpha)
595 focusblur_fft_convert_source (fft, setf_suma, sum);
596 else
597 focusblur_fft_convert_source (fft, setf_sum, sum);
598
599 if (progress_bar)
600 gimp_progress_update ((gdouble) ++ progress / full_progress);
601
602 return TRUE;
603 }
604
605
606 static gboolean
607 focusblur_fft_render_depth_precedence (FblurParam *param,
608 gboolean progress_bar)
609 {
610 FblurFftBuffer *fft = param->fft;
611 gint bpp = fft->source.bpp;
612 gint channels = fft->source.channels;
613 gboolean has_alpha = fft->source.has_alpha;
614 gboolean enable_shine;
615
616 gfloat *transit = NULL;
617 gfloat *slice0 = NULL, *slice1 = NULL;
618 gfloat *sum[7] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL };
619 gint depth, depth_count, level;
620 gint progress = 0, full_progress = 0;
621 gint c;
622
623 g_assert (param->store.enable_depth_map == TRUE);
624 g_assert (param->store.enable_depth_precedence == TRUE);
625
626 enable_shine = focusblur_shine_check_enabled (&(param->store));
627
628 if (progress_bar)
629 full_progress = 2 + fft->depth.count;
630 /* fill behind */
631 full_progress += 1;
632
633 transit = focusblur_fft_work_add_buffer (fft);
634 if (! transit)
635 return FALSE;
636
637 slice0 = focusblur_fft_work_add_buffer (fft);
638 slice1 = focusblur_fft_work_add_buffer (fft);
639 if (! slice0 || ! slice1)
640 return FALSE;
641
642 for (c = 0; c <= bpp; c ++)
643 {
644 sum[c] = focusblur_fft_work_add_buffer_zero (fft);
645 if (! sum[c])
646 return FALSE;
647 }
648
649 if (enable_shine)
650 {
651 sum[5] = focusblur_fft_work_add_buffer_zero (fft);
652 if (! sum[5])
653 return FALSE;
654
655 if (has_alpha)
656 {
657 sum[6] = focusblur_fft_work_add_buffer_zero (fft);
658 if (! sum[6])
659 return FALSE;
660 }
661 }
662
663 for (depth = 0, depth_count = fft->depth.count; depth_count --; depth ++)
664 {
665 while (! fft->depth.check[depth])
666 depth ++;
667
668 level = focusblur_depth_map_get_level (param->depth_map, depth);
669 focusblur_fft_buffer_make_kernel (fft, param->diffusion, level);
670 focusblur_fft_buffer_make_depth_slice (fft, param->depth_map, depth);
671
672 /* make transit value */
673
674 focusblur_fft_work_treat_outside (fft);
675 focusblur_fft_work_store (fft, slice0);
676 focusblur_fft_work_apply (fft);
677 focusblur_fft_work_store (fft, slice1);
678
679 if (has_alpha)
680 {
681 focusblur_fft_work_restore (fft, slice0);
682 focusblur_fft_convert_source2work (fft, convf_alphax, channels);
683 focusblur_fft_work_treat_outside (fft);
684
685 if (! enable_shine)
686 focusblur_fft_work_store (fft, slice0);
687
688 focusblur_fft_work_apply (fft);
689 focusblur_fft_convert_work (fft, convf_transit0, sum[channels]);
690 }
691 else
692 {
693 focusblur_fft_convert_work (fft, convf_transit0, sum[bpp]);
694 }
695 focusblur_fft_work_store (fft, transit);
696
697 focusblur_fft_convert_work (fft, convf_mul, slice1);
698 focusblur_fft_convert_work (fft, convf_radd, sum[bpp]);
699
700 if (has_alpha)
701 {
702 focusblur_fft_work_restore (fft, slice0);
703 //focusblur_fft_work_treat_outside (fft);
704 focusblur_fft_work_apply (fft);
705 focusblur_fft_convert_work (fft, convf_mul, transit);
706 focusblur_fft_convert_work (fft, convf_radd, sum[channels]);
707 }
708
709 if (enable_shine)
710 {
711 ConvertShineSet shine_set =
712 { param->diffusion, param->shine, level };
713
714 focusblur_fft_work_restore (fft, slice0);
715 focusblur_fft_convert_coords2work (fft, convf_shinex, &shine_set);
716 focusblur_fft_work_treat_outside (fft);
717 focusblur_fft_work_store (fft, slice0);
718 focusblur_fft_work_apply (fft);
719 focusblur_fft_convert_work (fft, convf_mul, transit);
720 focusblur_fft_convert_work (fft, convf_radd, sum[5]);
721
722 if (has_alpha)
723 {
724 focusblur_fft_work_restore (fft, slice0);
725 focusblur_fft_convert_source2work (fft, convf_alphax, channels);
726 focusblur_fft_work_treat_outside (fft);
727 focusblur_fft_work_store (fft, slice0);
728 focusblur_fft_work_apply (fft);
729 focusblur_fft_convert_work (fft, convf_mul, transit);
730 focusblur_fft_convert_work (fft, convf_radd, sum[6]);
731 }
732 }
733
734 for (c = 0; c < channels; c ++)
735 {
736 focusblur_fft_work_restore (fft, slice0);
737 focusblur_fft_convert_source2work (fft, convf_colorx, c);
738 focusblur_fft_work_treat_outside (fft);
739 focusblur_fft_work_apply (fft);
740 focusblur_fft_convert_work (fft, convf_mul, transit);
741 focusblur_fft_convert_work (fft, convf_radd, sum[c]);
742 }
743
744 if (progress_bar)
745 gimp_progress_update ((gdouble) ++ progress / full_progress);
746 }
747
748 if (enable_shine &&
749 has_alpha)
750 focusblur_fft_work_copy (fft, sum[channels], sum[6]);
751
752 /* fill behind */
753 level = FBLUR_DEPTH_MAX;
754 focusblur_fft_buffer_make_kernel (fft, param->diffusion, level);
755
756 /* this is imperfect */
757 focusblur_fft_buffer_make_depth_behind (fft, param->depth_map);
758
759 focusblur_fft_work_treat_outside (fft);
760 focusblur_fft_work_store (fft, slice0);
761
762 focusblur_fft_work_apply (fft);
763 focusblur_fft_work_store (fft, slice1);
764
765 if (has_alpha)
766 /* need to more tests */
767 focusblur_fft_convert_work (fft, convf_fill0, sum[channels]);
768 else
769 focusblur_fft_convert_work (fft, convf_fill0, sum[bpp]);
770
771 focusblur_fft_work_store (fft, transit);
772
773 focusblur_fft_work_restore (fft, slice1);
774 focusblur_fft_convert_work (fft, convf_mul, transit);
775 focusblur_fft_convert_work (fft, convf_radd, sum[bpp]);
776
777 if (enable_shine)
778 {
779 focusblur_fft_convert_work (fft, convf_radd, sum[5]);
780 }
781
782 if (has_alpha)
783 {
784 focusblur_fft_work_restore (fft, slice0);
785 focusblur_fft_convert_source2work (fft, convf_alphax, channels);
786 focusblur_fft_work_treat_outside (fft);
787 focusblur_fft_work_store (fft, slice0);
788 focusblur_fft_work_apply (fft);
789 focusblur_fft_convert_work (fft, convf_mul, transit);
790 focusblur_fft_convert_work (fft, convf_radd, sum[channels]);
791 }
792
793 for (c = 0; c < channels; c ++)
794 {
795 focusblur_fft_work_restore (fft, slice0);
796 focusblur_fft_convert_source2work (fft, convf_colorx, c);
797 focusblur_fft_work_treat_outside (fft);
798 focusblur_fft_work_apply (fft);
799 focusblur_fft_convert_work (fft, convf_mul, transit);
800 focusblur_fft_convert_work (fft, convf_radd, sum[c]);
801 }
802
803 /* end of fill behind */
804 if (progress_bar)
805 gimp_progress_update ((gdouble) ++ progress / full_progress);
806
807 if (enable_shine)
808 focusblur_fft_convert_source (fft, convf_fill5, sum);
809
810 if (has_alpha)
811 focusblur_fft_convert_source (fft, setf_suma, sum);
812 else
813 focusblur_fft_convert_source (fft, setf_sum, sum);
814
815 if (progress_bar)
816 gimp_progress_update ((gdouble) ++ progress / full_progress);
817
818 return TRUE;
819 }
+0
-44
focus-blur/focusblur-3.2.6/src/fftblur.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_FFTBLUR_H__
22 #define __FOCUSBLUR_FFTBLUR_H__
23
24
25 #include <glib/gmacros.h>
26 #include <glib/gtypes.h>
27 #include <libgimpwidgets/gimpwidgetstypes.h>
28
29 #include "focusblurparam.h"
30
31
32 G_BEGIN_DECLS
33
34
35 gboolean focusblur_fft_execute (FblurParam *param,
36 FblurQualityType quality,
37 GimpPreview *preview);
38
39
40
41 G_END_DECLS
42
43 #endif /* __FOCUSBLUR_FFTBLUR_H__ */
+0
-812
focus-blur/focusblur-3.2.6/src/fftblurbuffer.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <string.h>
24 #ifdef HAVE_COMPLEX_H
25 # include <complex.h>
26 # include <math.h>
27 #endif
28 #include <fftw3.h>
29 #include <libgimp/gimp.h>
30 #include <libgimp/gimpui.h>
31
32 #include "libgimp/stdplugins-intl.h"
33
34 #include "focusblurenums.h"
35 #include "focusblurtypes.h"
36 #include "focusblurparam.h"
37 #include "gimpplugin.h"
38 #include "diffusion.h"
39 #include "depthmap.h"
40 #include "shine.h"
41 #include "fftblurbuffer.h"
42 #include "fftblurproc.h"
43
44
45 /*---- Prototypes ----*/
46
47 static gboolean
48 focusblur_fft_buffer_update_source (FblurFftBuffer *fft,
49 GimpDrawable *drawable,
50 GimpPreview *preview);
51 static gboolean
52 focusblur_fft_buffer_update_work (FblurFftBuffer *fft,
53 gint radius);
54 static void
55 focusblur_fft_buffer_update_depth_division
56 (FblurFftBuffer *fft,
57 FblurQualityType quality,
58 gint radius,
59 gint focal_depth);
60 static void
61 focusblur_fft_buffer_update_depth_table (FblurFftBuffer *fft,
62 gint division,
63 gint slide);
64 static void
65 focusblur_fft_buffer_update_depth_count (FblurFftBuffer *fft,
66 FblurDepthMap *map);
67
68 static void focusblur_fft_buffer_clear_source (FblurFftBuffer *fft);
69 static void focusblur_fft_buffer_clear_work (FblurFftBuffer *fft);
70 static void focusblur_fft_buffer_clear_depth (FblurFftBuffer *fft);
71
72
73 /*---- Functions for structures ----*/
74
75 gboolean
76 focusblur_fft_buffer_update (FblurFftBuffer **fft,
77 FblurParam *param,
78 FblurQualityType quality,
79 GimpPreview *preview)
80 {
81 gint width, height;
82 gint radius, range;
83 gint x1, x2, y1, y2;
84
85
86 /* check condition */
87 if (quality == FBLUR_QUALITY_BEST)
88 return FALSE;
89
90 if (! focusblur_diffusion_update (&(param->diffusion), *fft,
91 &(param->store), param->brush_name))
92 {
93 gimp_message (_("Failed to update diffusion table."));
94
95 focusblur_fft_buffer_destroy (fft);
96 return FALSE;
97 }
98
99 radius = ceilf (param->diffusion->model_radius); // without softness
100 range = param->diffusion->model_radius_int;
101
102 if (radius < 3 ||
103 (quality == FBLUR_QUALITY_NORMAL &&
104 param->store.enable_depth_map &&
105 radius > 63)) // needs more tune
106 return FALSE;
107
108 gimp_drawable_mask_bounds (param->drawable_ID, &x1, &y1, &x2, &y2);
109
110 if (preview)
111 {
112 gint px1, px2, py1, py2;
113 gint pw, ph;
114
115 gimp_preview_get_position (GIMP_PREVIEW (preview), &px1, &py1);
116 gimp_preview_get_size (GIMP_PREVIEW (preview), &pw, &ph);
117 px2 = px1 + pw;
118 py2 = py1 + ph;
119
120 /* it is not need for GimpDrawablePreview */
121 if (x1 >= px2 || x2 <= px1 ||
122 y1 >= py2 || y2 <= py1)
123 return TRUE;
124
125 x1 = MAX (px1, x1);
126 x2 = MIN (px2, x2);
127 y1 = MAX (py1, y1);
128 y2 = MIN (py2, y2);
129 }
130
131 width = x2 - x1;
132 height = y2 - y1;
133
134 if (width < range ||
135 height < range)
136 return FALSE;
137
138 if (! *fft)
139 {
140 *fft = g_new0 (FblurFftBuffer, 1);
141
142 if (! *fft)
143 {
144 gimp_message (_("Failed to allocate memory."));
145
146 return FALSE;
147 }
148 }
149
150 //focusblur_source_destroy (&(param->source));
151
152 /* fftsource must be updated before to update work and depth */
153 if (! focusblur_fft_buffer_update_source (*fft, param->drawable, preview))
154 {
155 gimp_message (_("Failed to update source buffer."));
156
157 focusblur_fft_buffer_destroy (fft);
158 return FALSE;
159 }
160
161 if (param->store.enable_depth_map)
162 {
163 if (! focusblur_depth_map_update (&(param->depth_map), *fft,
164 &(param->store), quality))
165 {
166 gimp_message (_("Failed to update depth info."));
167
168 focusblur_fft_buffer_destroy (fft);
169 return FALSE;
170 }
171 else
172 {
173 gint d = focusblur_depth_map_focal_depth (param->depth_map);
174 focusblur_fft_buffer_update_depth_division (*fft, quality, range, d);
175
176 focusblur_fft_buffer_update_depth_count (*fft, param->depth_map);
177 }
178 }
179
180 if (! focusblur_fft_buffer_update_work (*fft, range))
181 {
182 gimp_message (_("Failed to update working buffer."));
183
184 focusblur_fft_buffer_destroy (fft);
185 return FALSE;
186 }
187
188 if (! focusblur_shine_update (&(param->shine), param->drawable,
189 &(param->store)))
190 {
191 gimp_message (_("Failed to update shine data."));
192
193 focusblur_fft_buffer_destroy (fft);
194 return FALSE;
195 }
196
197 return TRUE;
198 }
199
200
201 void
202 focusblur_fft_buffer_destroy (FblurFftBuffer **fft)
203 {
204 if (*fft)
205 {
206 focusblur_fft_buffer_clear_source (*fft);
207 focusblur_fft_buffer_clear_work (*fft);
208 focusblur_fft_buffer_clear_depth (*fft);
209
210 g_free (*fft);
211 *fft = NULL;
212 }
213 }
214
215
216 void
217 focusblur_fft_buffer_draw (FblurFftBuffer *fft)
218 {
219 GimpDrawablePreview *preview;
220 gboolean dirty;
221 guint8 *data;
222 GimpPixelRgn pr;
223
224 if (! fft->source.preview)
225 {
226 preview = NULL;
227 dirty = TRUE;
228 data = fft->source.data;
229 }
230 else
231 {
232 preview = GIMP_DRAWABLE_PREVIEW (fft->source.preview);
233 g_assert (preview != NULL);
234
235 dirty = FALSE;
236 data = fft->source.data_preview;
237 }
238
239 g_assert (data != NULL);
240
241 gimp_pixel_rgn_init (&pr, fft->source.drawable,
242 fft->source.x1, fft->source.y1,
243 fft->source.width, fft->source.height, dirty, TRUE);
244 gimp_pixel_rgn_set_rect (&pr, data,
245 fft->source.x1, fft->source.y1,
246 fft->source.width, fft->source.height);
247
248 if (! preview)
249 {
250 gimp_drawable_flush (fft->source.drawable);
251 gimp_drawable_merge_shadow (fft->source.drawable->drawable_id, TRUE);
252 gimp_drawable_update (fft->source.drawable->drawable_id,
253 fft->source.x1, fft->source.y1,
254 fft->source.width, fft->source.height);
255
256 /* this buffer has been dirty */
257 focusblur_fft_buffer_clear_source (fft);
258 }
259 else
260 {
261 gimp_drawable_preview_draw_region (preview, &pr);
262
263 }
264 }
265
266
267 void
268 focusblur_fft_buffer_make_kernel (FblurFftBuffer *fft,
269 FblurDiffusionTable *diffusion,
270 gint level)
271 {
272 gfloat *o0, *o1, *o2, *o3;
273 gfloat *dlp, *dp;
274 gint row, col;
275 gint n, r;
276 gint x, y;
277 gfloat norm;
278
279 if (level == fft->work.level)
280 return;
281
282 norm = 1.0f / (fft->work.row * fft->work.col);
283
284 if (level)
285 {
286 row = fft->work.row;
287 col = fft->work.col;
288 n = fft->work.col_padded;
289 r = MIN (diffusion->model_radius_int, fft->work.space);
290
291 o0 = (gfloat *) fft->work.image;
292 o1 = o0 + col - r;
293 o2 = o0 + (row - r) * n;
294 o3 = o2 + col - r;
295
296 focusblur_fft_work_fill_zero (fft);
297
298 for (x = 0, dlp = o0; x <= r; x ++, dlp += n)
299 for (y = 0, dp = dlp; y <= r; y ++, dp ++)
300 *dp = norm *
301 focusblur_diffusion_get (diffusion, level, 0, 0, x, y);
302
303 for (x = 0, dlp = o1; x <= r; x ++, dlp += n)
304 for (y = -r, dp = dlp; y < 0; y ++, dp ++)
305 *dp = norm *
306 focusblur_diffusion_get (diffusion, level, 0, 0, x, y);
307
308 for (x = -r, dlp = o2; x < 0; x ++, dlp += n)
309 for (y = 0, dp = dlp; y <= r; y ++, dp ++)
310 *dp = norm *
311 focusblur_diffusion_get (diffusion, level, 0, 0, x, y);
312
313 for (x = -r, dlp = o3; x < 0; x ++, dlp += n)
314 for (y = -r, dp = dlp; y < 0; y ++, dp ++)
315 *dp = norm *
316 focusblur_diffusion_get (diffusion, level, 0, 0, x, y);
317
318 fftwf_execute (fft->work.plan_r2c);
319
320 focusblur_fft_work_store_in_kernel (fft);
321 }
322
323 fft->work.level = level;
324 }
325
326
327 void
328 focusblur_fft_buffer_make_depth_slice (FblurFftBuffer *fft,
329 FblurDepthMap *depth_map,
330 gint look)
331 {
332 FblurFftDepthTable *table;
333 gfloat *dlp, *dp;
334 gint depth, x, y;
335
336 focusblur_fft_work_fill_zero (fft);
337
338 dlp = (gfloat *) fft->work.image + fft->work.origin;
339
340 if (fft->depth.quality == FBLUR_QUALITY_NORMAL)
341 for (y = fft->source.y1; y < fft->source.y2; y ++, dlp ++)
342 for (x = fft->source.x1, dp = dlp; x < fft->source.x2;
343 x ++, dp += fft->work.col_padded)
344 {
345 depth = focusblur_depth_map_get_depth (depth_map, x, y);
346 table = &(fft->depth.table[depth]);
347
348 if (table->floor == look)
349 *dp = 1.0f - table->diff;
350
351 else if (table->ceil == look)
352 *dp = table->diff;
353 }
354
355 else /* quality < normal */
356 for (y = fft->source.y1; y < fft->source.y2; y ++, dlp ++)
357 for (x = fft->source.x1, dp = dlp; x < fft->source.x2;
358 x ++, dp += fft->work.col_padded)
359 {
360 depth = focusblur_depth_map_get_depth (depth_map, x, y);
361 table = &(fft->depth.table[depth]);
362
363 if (table->round == look)
364 *dp = 1.0f;
365 }
366 }
367
368
369 void
370 focusblur_fft_buffer_make_depth_behind (FblurFftBuffer *fft,
371 FblurDepthMap *depth_map)
372 {
373 FblurFftDepthTable *table;
374 gfloat *dlp, *dp;
375 gint depth, look;
376 gint x, y;
377
378 /* this is imperfect to fill behind,
379 because fftblur works in a whole picture,
380 it can't work adaptive at each pixels. */
381
382 look = focusblur_depth_map_focal_depth (depth_map);
383
384 focusblur_fft_work_fill_zero (fft);
385
386 dlp = (gfloat *) fft->work.image + fft->work.origin;
387
388 for (y = fft->source.y1; y < fft->source.y2; y ++, dlp ++)
389 for (x = fft->source.x1, dp = dlp; x < fft->source.x2;
390 x ++, dp += fft->work.col_padded)
391 {
392 depth = focusblur_depth_map_get_depth (depth_map, x, y);
393 table = &(fft->depth.table[depth]);
394
395 /* problem: floods focused field */
396 if (table->round >= look)
397 *dp = 1.0f;
398 }
399 }
400
401
402 void
403 focusblur_fft_buffer_invalidate_depth_map (FblurFftBuffer *fft)
404 {
405 if (fft)
406 {
407 fft->depth.count = 0;
408 }
409 }
410
411
412 void
413 focusblur_fft_buffer_invalidate_diffusion (FblurFftBuffer *fft)
414 {
415 if (fft)
416 {
417 fft->work.level = 0;
418 }
419 }
420
421
422 static gboolean
423 focusblur_fft_buffer_update_source (FblurFftBuffer *fft,
424 GimpDrawable *drawable,
425 GimpPreview *preview)
426 {
427 GimpPixelRgn pr;
428 gsize size;
429 gint x1, x2, y1, y2;
430 gint width, height;
431 gint ntiles;
432
433 fft->source.drawable = drawable;
434 fft->source.preview = preview;
435
436 gimp_drawable_mask_bounds (drawable->drawable_id, &x1, &y1, &x2, &y2);
437
438 if (preview)
439 {
440 gint px1, px2, py1, py2;
441 gint pw, ph;
442
443 gimp_preview_get_position (GIMP_PREVIEW (preview), &px1, &py1);
444 gimp_preview_get_size (GIMP_PREVIEW (preview), &pw, &ph);
445 px2 = px1 + pw;
446 py2 = py1 + ph;
447
448 x1 = MAX (px1, x1);
449 x2 = MIN (px2, x2);
450 y1 = MAX (py1, y1);
451 y2 = MIN (py2, y2);
452 }
453
454 g_assert (x1 < x2);
455 g_assert (y1 < y2);
456
457 width = x2 - x1;
458 height = y2 - y1;
459
460 ntiles = 1 + x2 / TILE_WIDTH - x1 / TILE_WIDTH;
461 gimp_tile_cache_ntiles (ntiles);
462
463 fft->source.has_alpha = gimp_drawable_has_alpha (drawable->drawable_id);
464 fft->source.bpp = drawable->bpp;
465 fft->source.channels = drawable->bpp - (fft->source.has_alpha ? 1 : 0);
466 fft->source.rowstride = drawable->bpp * width;
467
468 size = fft->source.rowstride * height;
469
470 if (fft->source.data_preview)
471 {
472 if (! preview)
473 {
474 g_free (fft->source.data_preview);
475 fft->source.data_preview = NULL;
476 }
477 else if (size != fft->source.size)
478 {
479 g_free (fft->source.data_preview);
480 goto allocate2;
481 }
482 }
483 else
484 {
485 allocate2:
486 if (preview)
487 {
488 fft->source.data_preview = g_malloc (size);
489 if (! fft->source.data_preview)
490 return FALSE;
491 }
492 }
493
494 if (fft->source.data)
495 {
496 if (size != fft->source.size)
497 {
498 g_free (fft->source.data);
499 goto allocate;
500 }
501 }
502 else
503 {
504 allocate:
505 fft->source.size = size;
506 fft->source.data = g_malloc (size);
507 if (! fft->source.data)
508 return FALSE;
509 goto reload;
510 }
511
512 if (x1 == fft->source.x1 &&
513 x2 == fft->source.x2 &&
514 y1 == fft->source.y1 &&
515 y2 == fft->source.y2)
516 return TRUE;
517
518 reload:
519 fft->source.x1 = x1;
520 fft->source.x2 = x2;
521 fft->source.y1 = y1;
522 fft->source.y2 = y2;
523 fft->source.width = width;
524 fft->source.height = height;
525
526 /* need to recount */
527 fft->depth.count = 0;
528
529 /* load */
530 gimp_pixel_rgn_init (&pr, drawable, x1, y1, width, height, FALSE, FALSE);
531 gimp_pixel_rgn_get_rect (&pr, fft->source.data,
532 fft->source.x1, fft->source.y1,
533 fft->source.width, fft->source.height);
534
535 return TRUE;
536 }
537
538
539 static gboolean
540 focusblur_fft_buffer_update_work (FblurFftBuffer *fft,
541 gint radius)
542 {
543 gint row, col;
544
545 row = fft->source.width + 2 * radius;
546 col = fft->source.height + 2 * radius;
547
548 if (fft->work.buffers)
549 {
550 g_warning ("buffer hadn't been cleared.");
551 focusblur_fft_work_free_buffers (fft);
552 }
553
554 if (fft->work.image &&
555 row == fft->work.row &&
556 col == fft->work.col)
557 {
558 if (radius != fft->work.space)
559 {
560 fft->work.space = radius;
561 fft->work.origin = (fft->work.col_padded + 1) * radius;
562 fft->work.level = 0;
563 }
564 return TRUE;
565 }
566
567 focusblur_fft_buffer_clear_work (fft);
568
569 fft->work.row = row;
570 fft->work.col = col;
571 fft->work.col_padded = (col + 2) & ~1;
572
573 fft->work.nelements = row * fft->work.col_padded;
574 fft->work.complex_nelements = fft->work.nelements / 2;
575 fft->work.size = sizeof (fftwf_complex) * fft->work.complex_nelements;
576
577 /* 32-bytes pair (4x complex or 8x real) processing */
578 fft->work.size += 31;
579 fft->work.size &= ~31;
580
581 /* fftwf_malloc() (or distributed package) is broken. */
582 fft->work.image = fftwf_malloc (fft->work.size);
583 fft->work.kernel = fftwf_malloc (fft->work.size);
584 if (! fft->work.image || ! fft->work.kernel)
585 {
586 focusblur_fft_buffer_clear_work (fft);
587 return FALSE;
588 }
589
590 fft->work.plan_r2c = fftwf_plan_dft_r2c_2d
591 (row, col, (gfloat *) fft->work.image, fft->work.image, FFTW_ESTIMATE);
592
593 fft->work.plan_c2r = fftwf_plan_dft_c2r_2d
594 (row, col, fft->work.image, (gfloat *) fft->work.image, FFTW_ESTIMATE);
595
596 if (! fft->work.plan_r2c || ! fft->work.plan_c2r)
597 {
598 focusblur_fft_buffer_clear_work (fft);
599 return FALSE;
600 }
601
602 fft->work.space = radius;
603 fft->work.origin = (fft->work.col_padded + 1) * radius;
604 fft->work.level = 0;
605
606 return TRUE;
607 }
608
609
610 static void
611 focusblur_fft_buffer_update_depth_division (FblurFftBuffer *fft,
612 FblurQualityType quality,
613 gint radius,
614 gint focal_depth)
615 {
616 gint division;
617 gint slide;
618
619 fft->depth.quality = quality;
620
621 division = radius;
622 switch (quality)
623 {
624 case FBLUR_QUALITY_NORMAL:
625 division = MIN (radius, FBLUR_DEPTH_MAX);
626 slide = focal_depth;
627 break;
628
629 case FBLUR_QUALITY_LOW:
630 division = MIN (radius, 15);
631 slide = 0;
632 break;
633
634 case FBLUR_QUALITY_DEFECTIVE:
635 division = MIN (radius, 7);
636 slide = 0;
637 break;
638
639 default:
640 g_assert_not_reached ();
641 }
642
643 focusblur_fft_buffer_update_depth_table (fft, division, slide);
644 }
645
646
647 static void
648 focusblur_fft_buffer_update_depth_table (FblurFftBuffer *fft,
649 gint division,
650 gint slide)
651 {
652 FblurFftDepthTable *table;
653 gfloat dfac, fval;
654 gfloat r, f, c;
655 gint ri, fi, ci;
656 gint i;
657
658 g_assert (division > 0);
659
660 if (division == fft->depth.division &&
661 slide == fft->depth.slide)
662 return;
663
664 dfac = (gfloat) FBLUR_DEPTH_MAX / division;
665
666 for (i = 0; i <= FBLUR_DEPTH_MAX; i ++)
667 {
668 table = &(fft->depth.table[i]);
669 fval = (gfloat) (i - slide) / dfac;
670
671 r = rintf (fval);
672
673 ri = rintf (r * dfac) + slide;
674 ri = CLAMP (ri, 0, FBLUR_DEPTH_MAX);
675
676 table->round = ri;
677
678 if (fabsf (r - fval) < 0.001f)
679 {
680 table->floor = table->ceil = ri;
681 table->diff = 0.0f;
682 }
683 else
684 {
685 f = floorf (fval);
686 c = ceilf (fval);
687
688 fi = rintf (f * dfac) + slide;
689 ci = rintf (c * dfac) + slide;
690
691 fi = CLAMP (fi, 0, FBLUR_DEPTH_MAX);
692 ci = CLAMP (ci, 0, FBLUR_DEPTH_MAX);
693
694 table->floor = fi;
695 table->ceil = ci;
696
697 table->diff = (ci > fi) ? (gfloat) (i - fi) / (ci - fi) : 0.0f;
698 }
699 }
700
701 fft->depth.division = division;
702 fft->depth.slide = slide;
703 fft->depth.count = 0;
704 }
705
706
707 static void
708 focusblur_fft_buffer_update_depth_count (FblurFftBuffer *fft,
709 FblurDepthMap *depth_map)
710 {
711 FblurFftDepthTable *table;
712 gint orig, depth;
713 gint x, y;
714
715 if (fft->depth.count)
716 return;
717
718 /* count layer of depth */
719 memset (fft->depth.check, 0, sizeof fft->depth.check);
720
721 if (fft->depth.quality == FBLUR_QUALITY_NORMAL)
722 {
723 for (y = fft->source.y1; y < fft->source.y2; y ++)
724 for (x = fft->source.x1; x < fft->source.x2; x ++)
725 {
726 orig = focusblur_depth_map_get_depth (depth_map, x, y);
727 table = &(fft->depth.table[orig]);
728
729 depth = table->floor;
730
731 if (! fft->depth.check[depth])
732 {
733 fft->depth.check[depth] = TRUE;
734 fft->depth.count ++;
735 }
736
737 depth = table->ceil;
738
739 if (! fft->depth.check[depth])
740 {
741 fft->depth.check[depth] = TRUE;
742 fft->depth.count ++;
743 }
744 }
745 }
746 else
747 {
748 for (y = fft->source.y1; y < fft->source.y2; y ++)
749 for (x = fft->source.x1; x < fft->source.x2; x ++)
750 {
751 orig = focusblur_depth_map_get_depth (depth_map, x, y);
752 table = &(fft->depth.table[orig]);
753
754 depth = table->round;
755
756 if (! fft->depth.check[depth])
757 {
758 fft->depth.check[depth] = TRUE;
759 fft->depth.count ++;
760 }
761 }
762 }
763 }
764
765
766 static void
767 focusblur_fft_buffer_clear_source (FblurFftBuffer *fft)
768 {
769 g_assert (fft != NULL);
770
771 if (fft->source.data)
772 g_free (fft->source.data);
773
774 if (fft->source.data_preview)
775 g_free (fft->source.data_preview);
776
777 memset (&(fft->source), 0, sizeof (FblurFftSource));
778 }
779
780
781 static void
782 focusblur_fft_buffer_clear_work (FblurFftBuffer *fft)
783 {
784 g_assert (fft != NULL);
785
786 if (fft->work.buffers)
787 focusblur_fft_work_free_buffers (fft);
788
789 if (fft->work.plan_r2c)
790 fftwf_destroy_plan (fft->work.plan_r2c);
791
792 if (fft->work.plan_c2r)
793 fftwf_destroy_plan (fft->work.plan_c2r);
794
795 if (fft->work.image)
796 fftwf_free (fft->work.image);
797
798 if (fft->work.kernel)
799 fftwf_free (fft->work.kernel);
800
801 memset (&(fft->work), 0, sizeof (FblurFftWork));
802 }
803
804
805 static void
806 focusblur_fft_buffer_clear_depth (FblurFftBuffer *fft)
807 {
808 g_assert (fft != NULL);
809
810 memset (&(fft->depth), 0, sizeof (FblurFftDepth));
811 }
+0
-143
focus-blur/focusblur-3.2.6/src/fftblurbuffer.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_FFTBLUR_BUFFER_H__
22 #define __FOCUSBLUR_FFTBLUR_BUFFER_H__
23
24 #ifdef HAVE_COMPLEX_H
25 # include <complex.h>
26 # include <math.h>
27 #endif
28 #include <fftw3.h>
29
30 #include <glib/gmacros.h>
31 #include <glib/gtypes.h>
32 #include <gtk/gtkstyle.h>
33 #include <libgimp/gimptypes.h>
34 #include <libgimpwidgets/gimpwidgetstypes.h>
35
36 #include "focusblur.h"
37 #include "focusblurtypes.h"
38 #include "focusblurenums.h"
39
40
41 G_BEGIN_DECLS
42
43
44 /*---- Types ----*/
45
46 typedef struct _FblurFftSource FblurFftSource;
47 typedef struct _FblurFftWork FblurFftWork;
48 typedef struct _FblurFftDepth FblurFftDepth;
49 typedef struct _FblurFftDepthTable FblurFftDepthTable;
50
51
52 /*---- Structure ----*/
53
54 struct _FblurFftBuffer
55 {
56 /* for source image */
57 struct _FblurFftSource
58 {
59 GimpDrawable *drawable;
60 GimpPreview *preview;
61
62 gint bpp;
63 gint rowstride;
64 gint channels;
65 gboolean has_alpha;
66 gint x1, x2;
67 gint y1, y2;
68 gint width, height;
69
70 gsize size;
71 guchar *data;
72 guchar *data_preview;
73 } source;
74
75 /* for fftw works */
76 struct _FblurFftWork
77 {
78 gint row, col;
79 gint col_padded;
80 gint nelements;
81 gint complex_nelements;
82
83 gsize size;
84 GSList *buffers;
85 fftwf_complex *image;
86 fftwf_complex *kernel;
87 fftwf_plan plan_r2c;
88 fftwf_plan plan_c2r;
89
90 gint space;
91 gint origin;
92 gint level;
93 } work;
94
95 /* for depth map */
96 struct _FblurFftDepth
97 {
98 FblurQualityType quality;
99
100 gint division;
101 gint slide;
102
103 struct _FblurFftDepthTable
104 {
105 gint round;
106 gint floor;
107 gint ceil;
108 gfloat diff;
109 } table[FBLUR_DEPTH_MAX + 1];
110
111 gint count;
112 gboolean check[FBLUR_DEPTH_MAX + 1];
113 } depth;
114 };
115
116
117 /*---- Functions for structure ----*/
118
119 gboolean focusblur_fft_buffer_update (FblurFftBuffer **fft,
120 FblurParam *param,
121 FblurQualityType quality,
122 GimpPreview *preview);
123 void focusblur_fft_buffer_destroy (FblurFftBuffer **fft);
124 void focusblur_fft_buffer_draw (FblurFftBuffer *fft);
125
126 void focusblur_fft_buffer_make_kernel (FblurFftBuffer *fft,
127 FblurDiffusionTable *diffusio,
128 gint level);
129 void focusblur_fft_buffer_make_depth_slice (FblurFftBuffer *fft,
130 FblurDepthMap *depth_map,
131 gint look);
132 void focusblur_fft_buffer_make_depth_behind (FblurFftBuffer *fft,
133 FblurDepthMap *depth_map);
134
135 void focusblur_fft_buffer_invalidate_depth_map (FblurFftBuffer *fft);
136 void focusblur_fft_buffer_invalidate_diffusion (FblurFftBuffer *fft);
137
138
139 G_END_DECLS
140
141
142 #endif /* __FOCUSBLUR_FFTBLUR_BUFFER_H__ */
+0
-426
focus-blur/focusblur-3.2.6/src/fftblurproc.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <string.h>
24 #include <stdlib.h>
25 #ifdef HAVE_COMPLEX_H
26 # include <complex.h>
27 # include <math.h>
28 #endif
29 #include <fftw3.h>
30
31 #include <glib.h>
32
33 #include "fftblurbuffer.h"
34 #include "fftblurproc.h"
35
36
37 /*---- Prototypes ----*/
38
39 static void focusblur_fft_real_fill (gfloat *dest,
40 gfloat value,
41 gsize count);
42 static void focusblur_fft_real_copy (gfloat *dest,
43 gfloat *source,
44 gsize count);
45 static void focusblur_fft_real_treat_outside (gfloat *workbuf,
46 gint origin,
47 gint space,
48 gint insiderow,
49 gint insidecol,
50 gint rowstride);
51 static void focusblur_fft_complex_mul (fftwf_complex *dest,
52 fftwf_complex *source,
53 gint count);
54
55
56 /*---- Functions ----*/
57
58
59 gfloat*
60 focusblur_fft_work_add_buffer (FblurFftBuffer *fft)
61 {
62 gfloat* buf;
63
64 buf = fftwf_malloc (fft->work.size);
65
66 if (buf)
67 fft->work.buffers = g_slist_append (fft->work.buffers, buf);
68
69 return buf;
70 }
71
72
73 gfloat*
74 focusblur_fft_work_add_buffer_zero (FblurFftBuffer *fft)
75
76 {
77 gfloat *buf;
78
79 buf = focusblur_fft_work_add_buffer (fft);
80
81 if (buf)
82 focusblur_fft_real_fill (buf, 0.0f, fft->work.nelements);
83
84 return buf;
85 }
86
87
88 void
89 focusblur_fft_work_free_buffers (FblurFftBuffer *fft)
90 {
91 GSList *list, *next;
92
93 for (list = fft->work.buffers; list; list = next)
94 {
95 next = list->next;
96
97 if (list->data)
98 fftwf_free (list->data);
99
100 g_slist_free_1 (list);
101 }
102
103 fft->work.buffers = NULL;
104 }
105
106 void
107 focusblur_fft_work_store_in_kernel (FblurFftBuffer *fft)
108 {
109 focusblur_fft_real_copy ((gfloat *) fft->work.kernel,
110 (gfloat *) fft->work.image,
111 fft->work.nelements);
112 }
113
114
115 void
116 focusblur_fft_work_fill_zero (FblurFftBuffer *fft)
117 {
118 focusblur_fft_real_fill ((gfloat *) fft->work.image, 0.0f,
119 fft->work.nelements);
120 }
121
122
123 void
124 focusblur_fft_work_store (FblurFftBuffer *fft,
125 gfloat *buf)
126 {
127 focusblur_fft_real_copy (buf, (gfloat *) fft->work.image,
128 fft->work.nelements);
129 }
130
131
132 void
133 focusblur_fft_work_restore (FblurFftBuffer *fft,
134 gfloat *buf)
135 {
136 focusblur_fft_real_copy ((gfloat *) fft->work.image, buf,
137 fft->work.nelements);
138 }
139
140
141 void
142 focusblur_fft_work_copy (FblurFftBuffer *fft,
143 gfloat *dest,
144 gfloat *source)
145 {
146 focusblur_fft_real_copy (dest, source, fft->work.nelements);
147 }
148
149
150 void
151 focusblur_fft_work_treat_outside (FblurFftBuffer *fft)
152 {
153 /* width and height are turned in real buffer */
154 focusblur_fft_real_treat_outside ((gfloat *) fft->work.image,
155 fft->work.origin, fft->work.space,
156 fft->source.width, fft->source.height,
157 fft->work.col_padded);
158 }
159
160
161 void
162 focusblur_fft_work_apply (FblurFftBuffer *fft)
163 {
164 if (! fft->work.level)
165 return;
166
167 fftwf_execute (fft->work.plan_r2c);
168 focusblur_fft_complex_mul (fft->work.image, fft->work.kernel,
169 fft->work.complex_nelements);
170 fftwf_execute (fft->work.plan_c2r);
171 }
172
173
174 static void
175 focusblur_fft_complex_mul (fftwf_complex *dest,
176 fftwf_complex *source,
177 gint count)
178 {
179 gint n;
180
181 for (n = 0; n < count; n ++)
182 {
183 #ifdef HAVE_COMPLEX_H
184 /* C99 */
185 dest[n] *= source[n];
186 #else
187 float r, i;
188 r = dest[n][0] * source[n][0] - dest[n][1] * source[n][1];
189 i = dest[n][0] * source[n][1] + dest[n][1] * source[n][0];
190 dest[n][0] = r;
191 dest[n][1] = i;
192 #endif
193 }
194 }
195
196
197 /*---- Iterator ----*/
198
199 void
200 focusblur_fft_convert_source2work (FblurFftBuffer *fft,
201 FblurFftConvertFunc func,
202 gint channel)
203 {
204 gfloat *work;
205 guchar *sp, *slp;
206 gint offset_line, offset;
207 gint x, y;
208
209 g_assert (channel < fft->source.bpp);
210
211 work = (gfloat *) fft->work.image;
212 slp = fft->source.data + channel;
213 offset_line = fft->work.origin;
214
215 for (x = fft->source.x1; x < fft->source.x2; x ++)
216 {
217 offset = offset_line;
218 sp = slp;
219 for (y = fft->source.y1; y < fft->source.y2; y ++)
220 {
221 func (&(work[offset]), sp);
222
223 offset ++;
224 sp += fft->source.rowstride;
225 }
226 offset_line += fft->work.col_padded;
227 slp += fft->source.bpp;
228 }
229
230 }
231
232
233 void
234 focusblur_fft_convert_coords2work (FblurFftBuffer *fft,
235 FblurFftConvertFuncCoords func,
236 gpointer data)
237 {
238 gfloat *wlp, *wp;
239 gint x, y;
240
241 wlp = (gfloat *) fft->work.image + fft->work.origin;
242
243 for (y = fft->source.y1; y < fft->source.y2; y ++)
244 {
245 wp = wlp;
246 for (x = fft->source.x1; x < fft->source.x2; x ++)
247 {
248 func (wp, x, y, data);
249
250 wp += fft->work.col_padded;
251 }
252 wlp ++;
253 }
254 }
255
256
257 void
258 focusblur_fft_convert_work2source (FblurFftBuffer *fft,
259 gfloat *real,
260 FblurFftConvertFuncMix func,
261 gint channel)
262 {
263 gfloat *work;
264 guchar *sp, *slp;
265 gint offset_line, offset;
266 gint x, y;
267
268 g_assert (channel < fft->source.bpp);
269
270 work = (gfloat *) fft->work.image;
271 offset_line = fft->work.origin;
272
273 if (fft->source.data_preview)
274 slp = fft->source.data_preview + channel;
275 else
276 slp = fft->source.data + channel;
277
278 for (x = fft->source.x1; x < fft->source.x2; x ++)
279 {
280 offset = offset_line;
281 sp = slp;
282 for (y = fft->source.y1; y < fft->source.y2; y ++)
283 {
284 func (&(work[offset]), &(real[offset]), sp);
285
286 offset ++;
287 sp += fft->source.rowstride;
288 }
289 offset_line += fft->work.col_padded;
290 slp += fft->source.bpp;
291 }
292 }
293
294
295 void
296 focusblur_fft_convert_work (FblurFftBuffer *fft,
297 FblurFftConvertFuncWork func,
298 gfloat *real)
299 {
300 gfloat *work;
301 gint offset_line, offset;
302 gint x, y;
303
304 work = (gfloat *) fft->work.image;
305 offset_line = fft->work.origin;
306
307 for (x = fft->source.x1; x < fft->source.x2; x ++)
308 {
309 offset = offset_line;
310 for (y = fft->source.y1; y < fft->source.y2; y ++)
311 {
312 func (&(work[offset]), &(real[offset]));
313
314 offset ++;
315 }
316 offset_line += fft->work.col_padded;
317 }
318 }
319
320
321 void
322 focusblur_fft_convert_source (FblurFftBuffer *fft,
323 FblurFftConvertFuncSource func,
324 gpointer data)
325 {
326 guchar *sp;
327 gint offset_line, offset;
328 gint x, y;
329
330 offset_line = fft->work.origin;
331 if (fft->source.data_preview)
332 sp = fft->source.data_preview;
333 else
334 sp = fft->source.data;
335
336 for (y = fft->source.y1; y < fft->source.y2; y ++)
337 {
338 offset = offset_line;
339 for (x = fft->source.x1; x < fft->source.x2; x ++)
340 {
341 func (sp, fft->source.bpp, offset, data);
342
343 offset += fft->work.col_padded;
344 sp += fft->source.bpp;
345 }
346 offset_line ++;
347 }
348 }
349
350
351 /*---- memset, memcpy ----*/
352
353 static void
354 focusblur_fft_real_fill (gfloat *dest,
355 gfloat value,
356 gsize count)
357 {
358 while (count --)
359 *dest ++ = value;
360 }
361
362
363 static void
364 focusblur_fft_real_copy (gfloat *dest,
365 gfloat *source,
366 gsize count)
367 {
368 while (count --)
369 *dest ++ = *source ++;
370 }
371
372
373 static void
374 focusblur_fft_real_treat_outside (gfloat *real,
375 gint origin,
376 gint space,
377 gint insiderow,
378 gint insidecol,
379 gint rowstride)
380 {
381 gfloat *op, *rp;
382 gint leftrow, leftcol;
383 gint copyrow, copycol;
384 gsize linesize;
385 gint row, col;
386
387 linesize = sizeof (gfloat) * rowstride;
388
389 op = real + origin;
390 leftrow = leftcol = space;
391
392 while (leftrow || leftcol)
393 {
394 copyrow = MIN (leftrow, insiderow);
395 copycol = MIN (leftcol, insidecol);
396
397 rp = op;
398
399 for (row = 0; row < insiderow; row ++, rp += rowstride)
400 for (col = 0; col < copycol; col ++)
401 {
402 rp[- (col + 1)] = rp[col];
403 rp[insidecol + col] = rp[insidecol - (col + 1)];
404 }
405
406 op -= copycol;
407 rp = op;
408
409 for (row = 0; row < copyrow; row ++)
410 {
411 memcpy (&(rp[rowstride * -(row + 1)]),
412 &(rp[rowstride * row]), linesize);
413 memcpy (&(rp[rowstride * (insiderow + row)]),
414 &(rp[rowstride * (insiderow - (row + 1))]), linesize);
415 }
416
417 op -= copyrow * rowstride;
418
419 leftrow -= copyrow;
420 leftcol -= copycol;
421
422 insiderow += copyrow + copyrow;
423 insidecol += copycol + copycol;
424 }
425 }
+0
-95
focus-blur/focusblur-3.2.6/src/fftblurproc.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_FFTBLUR_PROC_H__
22 #define __FOCUSBLUR_FFTBLUR_PROC_H__
23
24
25 #include <glib/gmacros.h>
26 #include <glib/gtypes.h>
27
28 #include "focusblurtypes.h"
29
30
31 G_BEGIN_DECLS
32
33
34 /*---- Types ----*/
35
36 typedef void (*FblurFftConvertFunc) (gfloat *workp,
37 guchar *sourcep);
38
39 typedef void (*FblurFftConvertFuncCoords) (gfloat *workp,
40 gint x,
41 gint y,
42 gpointer data);
43
44 typedef void (*FblurFftConvertFuncMix) (gfloat *workp,
45 gfloat *realp,
46 guchar *sourcep);
47
48 typedef void (*FblurFftConvertFuncWork) (gfloat *workp,
49 gfloat *realp);
50
51 typedef void (*FblurFftConvertFuncSource) (guchar *sourcep,
52 gint bpp,
53 gint offset,
54 gpointer data);
55
56
57 /*---- Functions for processing ----*/
58
59 gfloat* focusblur_fft_work_add_buffer (FblurFftBuffer *fft);
60 gfloat* focusblur_fft_work_add_buffer_zero (FblurFftBuffer *fft);
61 void focusblur_fft_work_free_buffers (FblurFftBuffer *fft);
62 void focusblur_fft_work_store_in_kernel (FblurFftBuffer *fft);
63 void focusblur_fft_work_fill_zero (FblurFftBuffer *fft);
64 void focusblur_fft_work_store (FblurFftBuffer *fft,
65 gfloat *buf);
66 void focusblur_fft_work_restore (FblurFftBuffer *fft,
67 gfloat *buf);
68 void focusblur_fft_work_copy (FblurFftBuffer *fft,
69 gfloat *dest,
70 gfloat *source);
71 void focusblur_fft_work_treat_outside (FblurFftBuffer *fft);
72 void focusblur_fft_work_apply (FblurFftBuffer *fft);
73
74 void focusblur_fft_convert_source2work (FblurFftBuffer *fft,
75 FblurFftConvertFunc func,
76 gint channel);
77 void focusblur_fft_convert_coords2work (FblurFftBuffer *fft,
78 FblurFftConvertFuncCoords func,
79 gpointer data);
80 void focusblur_fft_convert_work2source (FblurFftBuffer *fft,
81 gfloat *real,
82 FblurFftConvertFuncMix func,
83 gint channel);
84 void focusblur_fft_convert_work (FblurFftBuffer *fft,
85 FblurFftConvertFuncWork func,
86 gfloat *real);
87 void focusblur_fft_convert_source (FblurFftBuffer *fft,
88 FblurFftConvertFuncSource func,
89 gpointer data);
90
91 G_END_DECLS
92
93
94 #endif /* __FOCUSBLUR_FFTBLUR_PROC_H__ */
+0
-41
focus-blur/focusblur-3.2.6/src/focusblur.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_H__
22 #define __FOCUSBLUR_H__
23
24 #include <glib/gmacros.h>
25
26 G_BEGIN_DECLS
27
28
29 #define FBLUR_MAX_NUM_THREADS 16
30 #define FBLUR_RADIUS_MAX 127
31 /* do not set over the precision of 1 byte (255),
32 and it is hard-coded in [012]depthmap.c, fftblur*.c */
33 #define FBLUR_DEPTH_MAX 127
34 #define FBLUR_DIFFUSION_NTABLES (1 + FBLUR_DEPTH_MAX)
35 #define FBLUR_GAUSSIAN_FACTOR 0.3003866304f
36
37
38 G_END_DECLS
39
40 #endif /* __FOCUSBLUR_H__ */
+0
-135
focus-blur/focusblur-3.2.6/src/focusblurenums.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <glib-object.h>
24 #include <libgimpbase/gimpbasetypes.h>
25
26 #include "libgimp/stdplugins-intl.h"
27
28 #include "focusblurenums.h"
29
30
31 GType
32 focusblur_model_type_get_type (void)
33 {
34 static GType type = 0;
35
36 if (! type)
37 {
38 static const GEnumValue values[] =
39 {
40 { FBLUR_MODEL_FLAT, "FBLUR_MODEL_FLAT", "flat" },
41 { FBLUR_MODEL_SPHERICAL, "FBLUR_MODEL_SPHERICAL", "spherical" },
42 { FBLUR_MODEL_GAUSSIAN, "FBLUR_MODEL_GAUSSIAN", "gaussian" },
43 { FBLUR_MODEL_RING, "FBLUR_MODEL_RING", "ring" },
44 { FBLUR_MODEL_CONCAVE, "FBLUR_MODEL_CONCAVE", "concave" },
45 { FBLUR_MODEL_BRUSH, "FBLUR_MODEL_BRUSH", "brush" },
46 { 0, NULL, NULL }
47 };
48 static const GimpEnumDesc descs[] =
49 {
50 { FBLUR_MODEL_FLAT, N_("Flat"), NULL },
51 { FBLUR_MODEL_SPHERICAL, N_("Spherical"), NULL },
52 { FBLUR_MODEL_GAUSSIAN, N_("Gaussian"), NULL },
53 { FBLUR_MODEL_RING, N_("Ring"), NULL },
54 { FBLUR_MODEL_CONCAVE, N_("Concave"), NULL },
55 { FBLUR_MODEL_BRUSH, N_("Brush"), NULL },
56 { 0, NULL, NULL }
57 };
58
59 type = g_enum_register_static ("FblurModelType", values);
60 #ifdef ENABLE_NLS
61 gimp_type_set_translation_domain (type, GETTEXT_PACKAGE);
62 #endif
63 gimp_enum_set_value_descriptions (type, descs);
64 }
65
66 return type;
67 }
68
69
70 GType
71 focusblur_shine_type_get_type (void)
72 {
73 static GType type = 0;
74
75 if (! type)
76 {
77 static const GEnumValue values[] =
78 {
79 { FBLUR_SHINE_LUMINOSITY, "FBLUR_SHINE_LUMINOSITY", "luminosity" },
80 { FBLUR_SHINE_SATURATION, "FBLUR_SHINE_SATURATION", "saturation" },
81 { 0, NULL, NULL }
82 };
83 static const GimpEnumDesc descs[] =
84 {
85 { FBLUR_SHINE_LUMINOSITY, N_("Luminosity"), NULL },
86 { FBLUR_SHINE_SATURATION, N_("Saturation"), NULL },
87 { 0, NULL, NULL }
88 };
89
90 type = g_enum_register_static ("FblurShineType", values);
91 #ifdef ENABLE_NLS
92 gimp_type_set_translation_domain (type, GETTEXT_PACKAGE);
93 #endif
94 gimp_enum_set_value_descriptions (type, descs);
95 }
96
97 return type;
98 }
99
100
101 GType
102 focusblur_quality_type_get_type (void)
103 {
104 static GType type = 0;
105
106 if (! type)
107 {
108 static const GEnumValue values[] =
109 {
110 { FBLUR_QUALITY_BEST, "FBLUR_QUALITY_BEST", "best" },
111 { FBLUR_QUALITY_NORMAL, "FBLUR_QUALITY_NORMAL", "normal" },
112 { FBLUR_QUALITY_LOW, "FBLUR_QUALITY_LOW", "low" },
113 { FBLUR_QUALITY_DEFECTIVE, "FBLUR_QUALITY_DEFECTIVE", "defective" },
114 { 0, NULL, NULL }
115 };
116 static const GimpEnumDesc descs[] =
117 {
118 { FBLUR_QUALITY_BEST, N_("Best"), NULL },
119 { FBLUR_QUALITY_NORMAL, N_("Normal"), NULL },
120 { FBLUR_QUALITY_LOW, N_("Low"), NULL },
121 { FBLUR_QUALITY_DEFECTIVE, N_("Defective"), NULL },
122 { 0, NULL, NULL }
123 };
124
125 type = g_enum_register_static ("FblurQualityType", values);
126 #ifdef ENABLE_NLS
127 gimp_type_set_translation_domain (type, GETTEXT_PACKAGE);
128 #endif
129 gimp_enum_set_value_descriptions (type, descs);
130 }
131
132 return type;
133 }
134
+0
-76
focus-blur/focusblur-3.2.6/src/focusblurenums.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_ENUMS_H__
22 #define __FOCUSBLUR_ENUMS_H__
23
24 #include <glib-object.h>
25
26 G_BEGIN_DECLS
27
28
29 #define FBLUR_TYPE_MODEL_TYPE (focusblur_model_type_get_type ())
30 GType focusblur_model_type_get_type (void) G_GNUC_CONST;
31 typedef enum
32 {
33 FBLUR_MODEL_FLAT,
34 FBLUR_MODEL_SPHERICAL,
35 FBLUR_MODEL_GAUSSIAN,
36 FBLUR_MODEL_RING,
37 FBLUR_MODEL_CONCAVE,
38 FBLUR_MODEL_BRUSH
39 } FblurModelType;
40
41
42 #define FBLUR_TYPE_SHINE_TYPE (focusblur_shine_type_get_type ())
43 GType focusblur_shine_type_get_type (void) G_GNUC_CONST;
44 typedef enum
45 {
46 FBLUR_SHINE_NONE, /* not used */
47 FBLUR_SHINE_LUMINOSITY,
48 FBLUR_SHINE_SATURATION
49 } FblurShineType;
50
51
52 #define FBLUR_TYPE_QUALITY_TYPE (focusblur_quality_type_get_type ())
53 GType focusblur_quality_type_get_type (void) G_GNUC_CONST;
54 typedef enum
55 {
56 FBLUR_QUALITY_BEST = 0, /* do not use FFT */
57 FBLUR_QUALITY_NORMAL, /* reduce depth division,
58 but interpolated */
59 FBLUR_QUALITY_LOW, /* reduce depth division */
60 FBLUR_QUALITY_DEFECTIVE /* use coarsely depth division,
61 depth fakes is not appeared */
62 } FblurQualityType;
63
64
65 typedef enum
66 {
67 FBLUR_WIDGET_MODEL_TYPE,
68 FBLUR_WIDGET_FOCAL_DEPTH,
69 FBLUR_WIDGET_MAX
70 } FblurWidgets;
71
72
73 G_END_DECLS
74
75 #endif /* __FOCUSBLUR_ENUMS_H__ */
+0
-273
focus-blur/focusblur-3.2.6/src/focusblurparam.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <libgimp/gimp.h>
24
25 #include "libgimp/stdplugins-intl.h"
26
27 #include "focusblurparam.h"
28 #include "focusblurrc.h"
29 #include "gimpplugin.h"
30 #include "source.h"
31 #include "diffusion.h"
32 #include "depthmap.h"
33 #include "shine.h"
34 #include "interface.h"
35 #include "render.h"
36 #ifdef HAVE_FFTW3
37 # include "fftblurbuffer.h"
38 #endif
39
40 /*---- Variable ----*/
41
42 const FblurStoreParam fblur_init_param = {
43 FBLUR_MODEL_FLAT, /* model of focus */
44 FBLUR_SHINE_SATURATION, /* shine type */
45 FALSE, /* use depth map */
46 FALSE, /* use depth precedence */
47 FALSE, /* use depth anti-anti-alias */
48 FALSE, /* use brush balance */
49 -1, /* depth map id */
50 0.0, /* focal depth */
51 5.0, /* radius for blurring */
52 0.0, /* rotation degrees */
53 0.0, /* model filling inside */
54 0.0, /* model softness */
55 0.0, /* shine flooding radius */
56 2.0, /* threshold for shine */
57 100.0, /* shine level */
58 1.00 /* shine curve */
59 };
60
61
62 /*---- Functions ----*/
63
64 FblurParam*
65 focusblur_param_new (gint32 drawable_ID)
66 {
67 FblurParam *param;
68
69 param = g_new0 (FblurParam, 1);
70
71 if (! param)
72 return NULL;
73
74 param->store = fblur_init_param;
75
76 focusblur_rc_load_preferences (&(param->pref));
77
78 param->drawable_ID = drawable_ID;
79 param->drawable = gimp_drawable_get (drawable_ID);
80
81 if (! param->drawable)
82 {
83 g_free (param);
84 return NULL;
85 }
86
87 param->brush_name = gimp_context_get_brush ();
88
89 return param;
90 }
91
92
93 gboolean
94 focusblur_param_set (FblurParam *param,
95 gint gimp_nparams,
96 const GimpParam *gimp_param)
97 {
98 g_assert (param);
99 g_assert (gimp_param);
100
101 if (gimp_nparams == 9)
102 {
103 param->store.model_type =
104 CLAMP (gimp_param[3].data.d_int32,
105 FBLUR_MODEL_FLAT, FBLUR_MODEL_BRUSH);
106 param->store.model_radius =
107 CLAMP (gimp_param[4].data.d_float, 0.0, FBLUR_RADIUS_MAX);
108 param->store.focal_depth =
109 CLAMP (gimp_param[5].data.d_float, 0.0, 100.0);
110 param->store.enable_depth_map =
111 (gimp_param[6].data.d_int32 != -1) ? TRUE : FALSE;
112 param->store.depth_map_ID = gimp_param[6].data.d_int32;
113
114 param->store.shine_radius =
115 CLAMP (gimp_param[7].data.d_float, 0.0, FBLUR_RADIUS_MAX);
116 param->store.shine_threshold =
117 CLAMP (gimp_param[8].data.d_float, 0.0, 100.0);
118
119 /* These parameter is not used with non-interactive */
120 param->store.enable_depth_precedence = FALSE;
121 param->store.model_fill = 0.0;
122 param->store.model_softness = 0.0;
123 param->store.shine_level = 100.0;
124 param->store.shine_curve = 1.0;
125
126 return TRUE;
127 }
128
129 else
130 return FALSE;
131 }
132
133
134 gboolean
135 focusblur_param_prepare (FblurParam *param,
136 FblurQualityType quality)
137 {
138 gint max_threads;
139
140 g_assert (param);
141
142 #ifdef ENABLE_MP
143 if (param->pref.disable_mp)
144 {
145 max_threads = 0;
146 }
147 else
148 {
149 gchar *str = gimp_gimprc_query ("num-processors");
150 gint num;
151
152 num = g_ascii_strtoll (str, (gchar **) NULL, 10);
153 max_threads = CLAMP (num, 1, FBLUR_MAX_NUM_THREADS) - 1;
154 g_free (str);
155 }
156
157 if (max_threads != param->max_threads)
158 {
159 param->max_threads = max_threads;
160 if (max_threads)
161 {
162 if (! param->thread_pool)
163 param->thread_pool = g_thread_pool_new
164 (focusblur_execute_thread, param, max_threads, FALSE, NULL);
165 else
166 g_thread_pool_set_max_threads
167 (param->thread_pool, max_threads, NULL);
168 }
169 }
170 #endif
171
172 if (! param->source &&
173 ! focusblur_source_update (&(param->source), param->drawable))
174 {
175 gimp_message (_("Failed to update source buffer."));
176
177 return FALSE;
178 }
179
180 if (! focusblur_diffusion_update (&(param->diffusion),
181 NULL, &(param->store), param->brush_name))
182 return FALSE;
183
184 if (! focusblur_depth_map_update (&(param->depth_map),
185 NULL, &(param->store), quality))
186 {
187 gimp_message (_("Failed to update depth info."));
188
189 return FALSE;
190 }
191
192 if (! focusblur_shine_update (&(param->shine),
193 param->drawable, &(param->store)))
194 {
195 gimp_message (_("Failed to update shine data."));
196
197 return FALSE;
198 }
199
200 return TRUE;
201 }
202
203
204 void
205 focusblur_param_store (FblurParam *param)
206 {
207 const gchar* identifier = PLUG_IN_PROC;
208 const gsize size = sizeof (FblurStoreParam);
209
210 g_assert (param);
211
212 gimp_procedural_db_set_data (identifier, &(param->store), size);
213 }
214
215
216 gboolean
217 focusblur_param_restore (FblurParam *param)
218 {
219 const gchar* identifier = PLUG_IN_PROC;
220 const gsize size = sizeof (FblurStoreParam);
221
222 g_assert (param);
223
224 if (gimp_procedural_db_get_data_size (identifier) == size &&
225 gimp_procedural_db_get_data (identifier, &(param->store)))
226
227 return TRUE;
228
229 else
230
231 return FALSE;
232 }
233
234
235 void
236 focusblur_param_destroy (FblurParam **param)
237 {
238 g_assert (param);
239
240 if (*param)
241 {
242 if ((*param)->source)
243 focusblur_source_destroy (&((*param)->source));
244
245 if ((*param)->diffusion)
246 focusblur_diffusion_destroy (&((*param)->diffusion));
247
248 #ifdef HAVE_FFTW3
249 if ((*param)->fft)
250 focusblur_fft_buffer_destroy (&((*param)->fft));
251 #endif
252
253 #ifdef ENABLE_MP
254 if ((*param)->thread_pool)
255 g_thread_pool_free ((*param)->thread_pool, TRUE, FALSE);
256 #endif
257
258 if ((*param)->depth_map)
259 focusblur_depth_map_destroy (&((*param)->depth_map));
260
261 if ((*param)->shine)
262 focusblur_shine_destroy (&((*param)->shine));
263
264 g_free ((*param)->brush_name);
265
266 if ((*param)->drawable)
267 gimp_drawable_detach ((*param)->drawable);
268
269 g_free (*param);
270 *param = NULL;
271 }
272 }
+0
-104
focus-blur/focusblur-3.2.6/src/focusblurparam.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_PARAM_H__
22 #define __FOCUSBLUR_PARAM_H__
23
24 #include <glib/gmacros.h>
25 #include <glib/gtypes.h>
26 #include <gtk/gtkstyle.h>
27 #include <libgimp/gimptypes.h>
28
29 #include "focusblurtypes.h"
30 #include "focusblurenums.h"
31 #include "focusblurrc.h"
32
33
34 G_BEGIN_DECLS
35
36
37 /*---- Structures ----*/
38
39 struct _FblurStoreParam
40 {
41 FblurModelType model_type;
42 FblurShineType shine_type;
43 gboolean enable_depth_map;
44 gboolean enable_depth_precedence;
45 gboolean enable_depth_aaa;
46 gboolean enable_brush_balance;
47 gint32 depth_map_ID;
48 gfloat focal_depth;
49 gfloat model_radius;
50 gfloat model_rotate;
51 gfloat model_fill;
52 gfloat model_softness;
53 gfloat shine_radius;
54 gfloat shine_threshold;
55 gfloat shine_level;
56 gfloat shine_curve;
57 };
58
59 struct _FblurParam
60 {
61 FblurStoreParam store;
62 FblurPreferences pref;
63 GimpDrawable *drawable;
64 FblurSourceImage *source;
65 FblurDiffusionTable *diffusion;
66 FblurFftBuffer *fft;
67 FblurDepthMap *depth_map;
68 FblurShineData *shine;
69
70 #ifdef ENABLE_MP
71 GThreadPool *thread_pool;
72 gint max_threads;
73 #endif
74
75 GtkWidget *widgets[FBLUR_WIDGET_MAX];
76
77 gchar *brush_name;
78 gint32 drawable_ID;
79 };
80
81
82 /*---- Variable ----*/
83
84 const FblurStoreParam fblur_init_param;
85
86
87 /*---- Functions ----*/
88
89 FblurParam* focusblur_param_new (gint32 drawable_ID);
90 gboolean focusblur_param_set (FblurParam *param,
91 gint gimp_nparams,
92 const GimpParam *gimp_param);
93 gboolean focusblur_param_prepare (FblurParam *param,
94 FblurQualityType quality);
95 void focusblur_param_store (FblurParam *param);
96 gboolean focusblur_param_restore (FblurParam *param);
97 void focusblur_param_destroy (FblurParam **param);
98
99
100 G_END_DECLS
101
102
103 #endif /* __FOCUSBLUR_PARAM_H__ */
+0
-435
focus-blur/focusblur-3.2.6/src/focusblurrc.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <fcntl.h>
24 #include <sys/stat.h>
25 #include <unistd.h>
26 #include <glib/gstdio.h>
27 #include <glib/gprintf.h>
28 #include <libgimp/gimp.h>
29
30 #include "libgimp/stdplugins-intl.h"
31
32 #include "focusblur.h"
33 #include "focusblurrc.h"
34 #include "focusblurparam.h"
35
36
37 /*---- Variables ----*/
38
39 const FblurPreferences fblur_init_preferences = {
40 FBLUR_QUALITY_NORMAL, /* rendering quality at result */
41 FBLUR_QUALITY_LOW, /* rendering quality in preview */
42 FALSE /* disable multi-processors */
43 };
44
45
46 /****************/
47 /* read gtkrc.c */
48 /****************/
49
50 static const GScannerConfig fblur_rc_scanner_config =
51 {
52 " \t\r\n", /* cset_skip_characters */
53
54 G_CSET_a_2_z
55 "_"
56 G_CSET_A_2_Z, /* cset_identifier_first */
57
58 G_CSET_a_2_z
59 "_-"
60 G_CSET_DIGITS
61 G_CSET_A_2_Z, /* cset_identifier_nth */
62
63 ";\n", /* cpair_comment_single */
64
65 FALSE, /* case_sensitive */
66
67 FALSE, /* skip_comment_multi */
68 TRUE, /* skip_comment_single */
69 FALSE, /* scan_comment_multi */
70
71 TRUE, /* scan_identifier */
72 FALSE, /* scan_identifier_1char */
73 FALSE, /* scan_identifier_NULL */
74
75 TRUE, /* scan_symbols */
76 FALSE, /* scan_binary */
77 FALSE, /* scan_octal */
78 TRUE, /* scan_float */
79 FALSE, /* scan_hex */
80 FALSE, /* scan_hex_dollar */
81 FALSE, /* scan_string_sq */
82 FALSE, /* scan_string_dq */
83
84 FALSE, /* numbers_2_int */
85 TRUE, /* int_2_float */
86 FALSE, /* identifier_2_string */
87 TRUE, /* char_2_token */
88 TRUE, /* symbol_2_token */
89 FALSE, /* scope_0_fallback */
90 FALSE, /* store_int64 */
91 };
92
93
94 typedef enum {
95 FBLUR_RC_TOKEN_BOOLEAN_NO = G_TOKEN_LAST,
96 FBLUR_RC_TOKEN_BOOLEAN_YES,
97
98 FBLUR_RC_TOKEN_QUALITY_TYPE_BEST,
99 FBLUR_RC_TOKEN_QUALITY_TYPE_NORMAL,
100 FBLUR_RC_TOKEN_QUALITY_TYPE_LOW,
101 FBLUR_RC_TOKEN_QUALITY_TYPE_DEFECTIVE,
102
103 FBLUR_RC_TOKEN_QUALITY_RENDER,
104 FBLUR_RC_TOKEN_QUALITY_PREVIEW,
105 FBLUR_RC_TOKEN_DISABLE_MP,
106 } FblurRcTokenType;
107
108
109 static const struct
110 {
111 gchar *name;
112 gint token;
113 } symbols[] = {
114 /* values */
115 { "no", FBLUR_RC_TOKEN_BOOLEAN_NO },
116 { "yes", FBLUR_RC_TOKEN_BOOLEAN_YES },
117
118 { "best", FBLUR_RC_TOKEN_QUALITY_TYPE_BEST },
119 { "normal", FBLUR_RC_TOKEN_QUALITY_TYPE_NORMAL },
120 { "low", FBLUR_RC_TOKEN_QUALITY_TYPE_LOW },
121 { "defective", FBLUR_RC_TOKEN_QUALITY_TYPE_DEFECTIVE },
122
123 /* accepted parameters */
124 { "rendering-quality", FBLUR_RC_TOKEN_QUALITY_RENDER },
125 { "preview-quality", FBLUR_RC_TOKEN_QUALITY_PREVIEW },
126 { "disable-mp", FBLUR_RC_TOKEN_DISABLE_MP },
127 };
128
129
130 /*---- Prototypes ----*/
131
132 static gint focusblur_rc_ignore (GScanner *scanner);
133 static gint focusblur_rc_parse_statement (GScanner *scanner,
134 FblurPreferences *pref);
135 static gint focusblur_rc_get_quality_type (GScanner *scanner,
136 FblurQualityType *quality);
137 static gint focusblur_rc_get_boolean (GScanner *scanner,
138 gboolean *bool);
139
140 /*---- Parser ----*/
141
142 static gint
143 focusblur_rc_ignore (GScanner *scanner)
144 {
145 gint errors = 0;
146
147 /* jump to end of statement */
148
149 while (g_scanner_get_next_token (scanner) != G_TOKEN_RIGHT_PAREN)
150 {
151 switch (scanner->token)
152 {
153 case G_TOKEN_EOF:
154 g_scanner_error
155 (scanner, "reached to end of file with not closed parentheses.\n");
156 return -1;
157
158 default:
159 errors ++;
160 }
161 }
162
163 return errors;
164 }
165
166
167 static gint
168 focusblur_rc_get_quality_type (GScanner *scanner,
169 FblurQualityType *quality)
170 {
171 GTokenType cur, next;
172 gint errors = 0;
173 gint ret;
174
175 cur = g_scanner_get_next_token (scanner);
176 if (cur != FBLUR_RC_TOKEN_QUALITY_TYPE_BEST &&
177 cur != FBLUR_RC_TOKEN_QUALITY_TYPE_NORMAL &&
178 cur != FBLUR_RC_TOKEN_QUALITY_TYPE_LOW &&
179 cur != FBLUR_RC_TOKEN_QUALITY_TYPE_DEFECTIVE)
180 {
181 g_scanner_error
182 (scanner, "chose one of the best, normal, low or defective.");
183 errors ++;
184 }
185
186 next = g_scanner_get_next_token (scanner);
187 if (next != G_TOKEN_RIGHT_PAREN)
188 {
189 g_scanner_error (scanner, "tow tokens must be in this parentheses.");
190 errors ++;
191 }
192
193 if (errors)
194 {
195 ret = focusblur_rc_ignore (scanner);
196 if (ret == -1)
197 return -1;
198 return errors + ret;
199 }
200
201 switch (cur)
202 {
203 case FBLUR_RC_TOKEN_QUALITY_TYPE_BEST:
204 *quality = FBLUR_QUALITY_BEST;
205 break;
206 case FBLUR_RC_TOKEN_QUALITY_TYPE_NORMAL:
207 *quality = FBLUR_QUALITY_NORMAL;
208 break;
209 case FBLUR_RC_TOKEN_QUALITY_TYPE_LOW:
210 *quality = FBLUR_QUALITY_LOW;
211 break;
212 case FBLUR_RC_TOKEN_QUALITY_TYPE_DEFECTIVE:
213 *quality = FBLUR_QUALITY_DEFECTIVE;
214 break;
215 default:
216 g_assert_not_reached ();
217 }
218
219 return 0;
220 }
221
222
223 static gint
224 focusblur_rc_get_boolean (GScanner *scanner,
225 gboolean *bool)
226 {
227 GTokenType cur, next;
228 gint errors = 0;
229 gint ret;
230
231 cur = g_scanner_get_next_token (scanner);
232 if (cur != FBLUR_RC_TOKEN_BOOLEAN_YES &&
233 cur != FBLUR_RC_TOKEN_BOOLEAN_NO)
234 {
235 g_scanner_error
236 (scanner, "chose yes or no.");
237 errors ++;
238 }
239
240 next = g_scanner_get_next_token (scanner);
241 if (next != G_TOKEN_RIGHT_PAREN)
242 {
243 g_scanner_error (scanner, "tow tokens must be in this parentheses.");
244 errors ++;
245 }
246
247 if (errors)
248 {
249 ret = focusblur_rc_ignore (scanner);
250 if (ret == -1)
251 return -1;
252 return errors + ret;
253 }
254
255 switch (cur)
256 {
257 case FBLUR_RC_TOKEN_BOOLEAN_YES:
258 *bool = TRUE;
259 break;
260 case FBLUR_RC_TOKEN_BOOLEAN_NO:
261 *bool = FALSE;
262 break;
263 default:
264 g_assert_not_reached ();
265 }
266
267 return 0;
268 }
269
270
271 static gint
272 focusblur_rc_parse_statement (GScanner *scanner,
273 FblurPreferences *pref)
274 {
275 gint errors = 0;
276 gint ret = 0;
277
278 while (g_scanner_get_next_token (scanner) != G_TOKEN_EOF)
279 {
280 switch (scanner->token)
281 {
282 case G_TOKEN_LEFT_PAREN:
283 ret = focusblur_rc_parse_statement (scanner, pref);
284 if (ret == -1)
285 return -1;
286 errors += ret;
287 break;
288 case G_TOKEN_RIGHT_PAREN:
289 return errors;
290
291 case FBLUR_RC_TOKEN_QUALITY_RENDER:
292 ret = focusblur_rc_get_quality_type (scanner, &(pref->quality));
293 goto fin;
294
295 case FBLUR_RC_TOKEN_QUALITY_PREVIEW:
296 ret = focusblur_rc_get_quality_type (scanner,&(pref->quality_preview));
297 goto fin;
298
299 case FBLUR_RC_TOKEN_DISABLE_MP:
300 ret = focusblur_rc_get_boolean (scanner, &(pref->disable_mp));
301 goto fin;
302
303 default:
304 g_scanner_unexp_token (scanner, G_TOKEN_IDENTIFIER,
305 "variable", NULL, NULL, NULL, FALSE);
306 errors ++;
307 ret = focusblur_rc_ignore (scanner);
308 goto fin;
309 }
310 }
311
312 fin:
313 if (ret == -1)
314 return -1;
315 errors += ret;
316
317 return errors;
318 }
319
320
321 /*---- Functions ----*/
322
323 void
324 focusblur_rc_load_preferences (FblurPreferences *pref)
325 {
326 GScanner *scanner = NULL;
327 gchar *rc_file;
328 gint fd = -1;
329 gint errors = 0;
330 gint i, ret;
331
332 *pref = fblur_init_preferences;
333
334 rc_file = gimp_personal_rc_file ("focusblurrc");
335 if (! rc_file)
336 goto fin;
337
338 if (! g_file_test (rc_file, G_FILE_TEST_EXISTS) ||
339 g_file_test (rc_file, G_FILE_TEST_IS_DIR))
340 goto fin;
341
342 fd = g_open (rc_file, O_RDONLY, S_IRUSR);
343 if (fd == -1)
344 goto fin;
345
346 scanner = g_scanner_new (&fblur_rc_scanner_config);
347 g_scanner_input_file (scanner, fd);
348 scanner->input_name = rc_file;
349
350 for (i = 0; i < G_N_ELEMENTS (symbols); i ++)
351 g_scanner_scope_add_symbol
352 (scanner, 0, symbols[i].name, GINT_TO_POINTER (symbols[i].token));
353
354 while (g_scanner_get_next_token (scanner) != G_TOKEN_EOF)
355 {
356 switch (scanner->token)
357 {
358 case G_TOKEN_LEFT_PAREN:
359 ret = focusblur_rc_parse_statement (scanner, pref);
360 break;
361 default:
362 g_scanner_unexp_token (scanner, G_TOKEN_LEFT_PAREN,
363 NULL, NULL, NULL, NULL, TRUE);
364 ret = -1;
365 }
366 if (ret == -1)
367 break;
368 errors += ret;
369 }
370
371 if (errors)
372 {
373 gimp_message (_("Resource file is invalid."));
374
375 *pref = fblur_init_preferences;
376 }
377
378 fin:
379
380 if (scanner)
381 g_scanner_destroy (scanner);
382
383 if (fd != -1)
384 close (fd);
385
386 if (rc_file)
387 g_free (rc_file);
388 }
389
390
391 void
392 focusblur_rc_save_preferences (FblurPreferences *pref)
393 {
394 const gchar const *fblur_quality_type_names[] = {
395 "best", "normal", "low", "defective"
396 };
397
398 FILE *fp = NULL;
399 gchar *rc_file;
400
401 rc_file = gimp_personal_rc_file ("focusblurrc");
402 if (! rc_file)
403 goto fin;
404
405 if (g_file_test (rc_file, G_FILE_TEST_IS_DIR))
406 goto fin;
407
408 fp = g_fopen (rc_file, "w");
409 if (! fp)
410 goto fin;
411
412 g_fprintf (fp, "; Focus Blur plug-in resource file\n");
413
414 /* store only different values */
415
416 if (pref->quality != fblur_init_preferences.quality)
417 g_fprintf (fp, "(rendering-quality %s)\n",
418 fblur_quality_type_names[pref->quality]);
419
420 if (pref->quality_preview != fblur_init_preferences.quality_preview)
421 g_fprintf (fp, "(preview-quality %s)\n",
422 fblur_quality_type_names[pref->quality_preview]);
423
424 if (pref->disable_mp != fblur_init_preferences.disable_mp)
425 g_fprintf (fp, "(disable-mp %s)\n", pref->disable_mp ? "yes" : "no");
426
427 fin:
428
429 if (fp)
430 fclose (fp);
431
432 if (rc_file)
433 g_free (rc_file);
434 }
+0
-55
focus-blur/focusblur-3.2.6/src/focusblurrc.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_CONFIG_H__
22 #define __FOCUSBLUR_CONFIG_H__
23
24 #include "focusblurtypes.h"
25 #include "focusblurenums.h"
26
27
28 G_BEGIN_DECLS
29
30
31 /*---- Structures ----*/
32
33 struct _FblurPreferences
34 {
35 FblurQualityType quality;
36 FblurQualityType quality_preview;
37 gboolean disable_mp;
38 };
39
40 /*---- Variables ----*/
41
42 const FblurPreferences fblur_init_preferences;
43
44
45 /*---- Functions ----*/
46
47 void focusblur_rc_load_preferences (FblurPreferences *pref);
48 void focusblur_rc_save_preferences (FblurPreferences *pref);
49
50
51 G_END_DECLS
52
53
54 #endif /* __FOCUSBLUR_CONFIG_H__ */
+0
-192
focus-blur/focusblur-3.2.6/src/focusblurstock.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <gtk/gtk.h>
24 #include <libgimp/gimp.h>
25
26 #include "libgimp/stdplugins-intl.h"
27
28 #include "pixmaps/pixbufs.h"
29 #include "focusblurstock.h"
30
31
32 /* Stock ID */
33
34 #define FBLUR_STOCK_MODEL_FLAT "focusblur-model-flat"
35 #define FBLUR_STOCK_MODEL_SPHERICAL "focusblur-model-spherical"
36 #define FBLUR_STOCK_MODEL_GAUSSIAN "focusblur-model-gaussian"
37 #define FBLUR_STOCK_MODEL_RING "focusblur-model-ring"
38 #define FBLUR_STOCK_MODEL_CONCAVE "focusblur-model-concave"
39 #define FBLUR_STOCK_MODEL_BRUSH "focusblur-model-brush"
40
41
42 /*---- Variables ----*/
43
44 static GtkIconFactory *fblur_stock_factory = NULL;
45
46 static const GtkStockItem fblur_stock_items[] =
47 {
48 { FBLUR_STOCK_MODEL_FLAT, N_("Flat"), 0, 0, GETTEXT_PACKAGE },
49 { FBLUR_STOCK_MODEL_SPHERICAL, N_("Spherical"), 0, 0, GETTEXT_PACKAGE },
50 { FBLUR_STOCK_MODEL_GAUSSIAN, N_("Gaussian"), 0, 0, GETTEXT_PACKAGE },
51 { FBLUR_STOCK_MODEL_RING, N_("Ring"), 0, 0, GETTEXT_PACKAGE },
52 { FBLUR_STOCK_MODEL_CONCAVE, N_("Concave"), 0, 0, GETTEXT_PACKAGE },
53 { FBLUR_STOCK_MODEL_BRUSH, N_("Brush"), 0, 0, GETTEXT_PACKAGE },
54 };
55
56 const struct
57 {
58 const gchar *stock_id;
59 const GdkPixdata *pixdata;
60 } fblur_stock_pixbufs[] =
61 {
62 { FBLUR_STOCK_MODEL_FLAT, &focusblur_model_flat },
63 { FBLUR_STOCK_MODEL_SPHERICAL, &focusblur_model_spherical },
64 { FBLUR_STOCK_MODEL_GAUSSIAN, &focusblur_model_gaussian },
65 { FBLUR_STOCK_MODEL_RING, &focusblur_model_ring },
66 { FBLUR_STOCK_MODEL_CONCAVE, &focusblur_model_concave },
67 };
68
69
70 /*---- Prototype ----*/
71
72 static GdkPixbuf* focusblur_pixbuf_new_from_gimp_brush (const gchar *name);
73
74
75 /*---- Function ----*/
76
77 void
78 focusblur_stock_init (void)
79 {
80 GtkIconSet *set;
81 GdkPixbuf *pixbuf;
82 gint i;
83
84 if (fblur_stock_factory)
85 return;
86
87 fblur_stock_factory = gtk_icon_factory_new ();
88
89 for (i = 0; i < G_N_ELEMENTS (fblur_stock_pixbufs); i++)
90 {
91 pixbuf =
92 gdk_pixbuf_from_pixdata (fblur_stock_pixbufs[i].pixdata, TRUE, NULL);
93 g_assert (pixbuf != NULL);
94
95 set = gtk_icon_set_new_from_pixbuf (pixbuf);
96 gtk_icon_factory_add
97 (fblur_stock_factory, fblur_stock_pixbufs[i].stock_id, set);
98
99 gtk_icon_set_unref (set);
100 g_object_unref (pixbuf);
101 }
102
103 /* brush */
104 focusblur_stock_update_modelbrush (NULL);
105
106 gtk_icon_factory_add_default (fblur_stock_factory);
107 gtk_stock_add_static (fblur_stock_items, G_N_ELEMENTS (fblur_stock_items));
108 }
109
110
111 void
112 focusblur_stock_update_modelbrush (const gchar *brush_name)
113 {
114 GtkIconSet *set;
115 GdkPixbuf *pixbuf;
116
117 g_return_if_fail (fblur_stock_factory != NULL);
118
119 pixbuf = focusblur_pixbuf_new_from_gimp_brush (brush_name);
120 set = gtk_icon_set_new_from_pixbuf (pixbuf);
121 gtk_icon_factory_add (fblur_stock_factory, FBLUR_STOCK_MODEL_BRUSH, set);
122
123 gtk_icon_set_unref (set);
124 g_object_unref (pixbuf);
125 }
126
127
128 static GdkPixbuf*
129 focusblur_pixbuf_new_from_gimp_brush (const gchar *brush_name)
130 {
131 GdkPixbuf *pixbuf;
132 guint8 *data;
133 const gint bpp = 3;
134 gint width, height, rowstride;
135 gint size;
136 guint8 *dlp, *dp, *mp, *cp;
137 gint x, y;
138
139 gboolean ret;
140 gint mask_bpp, num_mask_bytes;
141 gint color_bpp, num_color_bytes;
142 guint8 *mask_bytes, *color_bytes;
143
144 if (! brush_name || ! brush_name[0])
145 brush_name = gimp_context_get_brush ();
146
147 ret = gimp_brush_get_pixels (brush_name, &width, &height,
148 &mask_bpp, &num_mask_bytes, &mask_bytes,
149 &color_bpp, &num_color_bytes, &color_bytes);
150 if (! ret)
151 return NULL;
152
153 rowstride = (bpp * width + 3) & ~3;
154 size = rowstride * height;
155 dp = dlp = data = g_malloc0 (size);
156 mp = mask_bytes;
157 cp = color_bytes;
158
159 if (color_bytes)
160 {
161 g_assert (mask_bpp == 1);
162 g_assert (color_bpp == 3);
163
164 for (y = 0; y < height; y ++, dlp += rowstride)
165 for (x = 0, dp = dlp; x < width; x ++,
166 dp += bpp, mp += mask_bpp, cp += color_bpp)
167 {
168 dp[0] = cp[0] * mp[0] / 255;
169 dp[1] = cp[1] * mp[0] / 255;
170 dp[2] = cp[2] * mp[0] / 255;
171 }
172 }
173 else
174 {
175 g_assert (mask_bpp == 1);
176
177 for (y = 0; y < height; y ++, dlp += rowstride)
178 for (x = 0, dp = dlp; x < width; x ++, dp += bpp, mp += mask_bpp)
179 dp[0] = dp[1] = dp[2] = mp[0];
180 }
181
182 g_free (mask_bytes);
183 g_free (color_bytes);
184
185 pixbuf = gdk_pixbuf_new_from_data (data,
186 GDK_COLORSPACE_RGB, FALSE,
187 8, width, height, rowstride,
188 (GdkPixbufDestroyNotify) g_free, NULL);
189
190 return pixbuf;
191 }
+0
-36
focus-blur/focusblur-3.2.6/src/focusblurstock.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_STOCK_H__
22 #define __FOCUSBLUR_STOCK_H__
23
24 #include <glib/gtypes.h>
25
26 G_BEGIN_DECLS
27
28
29 void focusblur_stock_init (void);
30 void focusblur_stock_update_modelbrush (const gchar *brush_name);
31
32
33 G_END_DECLS
34
35 #endif /* __FOCUSBLUR_STOCK_H__ */
+0
-45
focus-blur/focusblur-3.2.6/src/focusblurtypes.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_TYPES_H__
22 #define __FOCUSBLUR_TYPES_H__
23
24 #include <glib/gmacros.h>
25
26
27 G_BEGIN_DECLS
28
29
30 typedef struct _FblurStoreParam FblurStoreParam;
31 typedef struct _FblurPreferences FblurPreferences;
32 typedef struct _FblurParam FblurParam;
33
34 typedef struct _FblurSourceImage FblurSourceImage;
35 typedef struct _FblurDiffusionTable FblurDiffusionTable;
36 typedef struct _FblurBrush FblurBrush;
37 typedef struct _FblurFftBuffer FblurFftBuffer;
38 typedef struct _FblurDepthMap FblurDepthMap;
39 typedef struct _FblurShineData FblurShineData;
40
41
42 G_END_DECLS
43
44 #endif /* __FOCUSBLUR_TYPES_H__ */
+0
-197
focus-blur/focusblur-3.2.6/src/gimpplugin.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <libgimp/gimp.h>
24
25 #include "libgimp/stdplugins-intl.h"
26
27 #include "gimpplugin.h"
28 #include "focusblurparam.h"
29 #include "interface.h"
30 #include "render.h"
31
32
33 /*---- Prototypes ----*/
34
35 static void query (void);
36
37 static void run (const gchar *name,
38 gint nparams,
39 const GimpParam *param,
40 gint *nreturn_vals,
41 GimpParam **return_vals);
42
43
44 /*---- Variables ----*/
45
46 const GimpPlugInInfo PLUG_IN_INFO =
47 {
48 NULL, /* init_proc */
49 NULL, /* quit_proc */
50 query, /* query_proc */
51 run, /* run_proc */
52 };
53
54
55 /*---- Functions ----*/
56
57 MAIN ()
58
59
60 static void
61 query (void)
62 {
63 static const GimpParamDef args[] =
64 {
65 {GIMP_PDB_INT32, "run_mode", "Interactive, non-interactive"},
66 {GIMP_PDB_IMAGE, "image", "Input image"},
67 {GIMP_PDB_DRAWABLE, "drawable", "Input drawable"},
68 {GIMP_PDB_INT32, "model", "Model of blurring: (0:Flat, 1:Spherical, 2:Gaussian, 3:Ring, 4:Concave, 5:Brush)"},
69 {GIMP_PDB_FLOAT, "radius", "Radius for blurring: (0.0 < radius))"},
70 {GIMP_PDB_FLOAT, "focus", "Focal depth: (0.0 <= focus <= 100.0)"},
71 {GIMP_PDB_INT32, "map_id", "Depth map drawable id: (drawable_ID or -1 unused)"},
72 {GIMP_PDB_FLOAT, "s_radius", "Radius for shining: (0.0 <= shine, 0 unused, -1 full shined)"},
73 {GIMP_PDB_FLOAT, "threshold", "Threshold for shining: (0.0 <= threshold <= 100.0 in %, 0 unused)"},
74 };
75
76 gimp_install_procedure (PLUG_IN_PROC,
77 N_("Make a out of focus with luminosity and depth, "
78 "like a sight or lenses"),
79 "This plug-in makes a out of focus with luminosity "
80 "and depth, like a sight or lenses. It can be used "
81 "with depth map, depth fakes and shining effect. "
82 "Also it works as a simple and applicable blur.",
83 "Kyoichiro Suda <das atmark dream dot japan>",
84 "Kyoichiro Suda",
85 "2002-2008",
86 N_("_Focus Blur..."),
87 "RGB*, GRAY*",
88 GIMP_PLUGIN,
89 G_N_ELEMENTS (args), 0,
90 args, NULL);
91
92 gimp_plugin_menu_register (PLUG_IN_PROC, "<Image>/Filters/Blur");
93 #ifdef ENABLE_NLS
94 gimp_plugin_domain_register (GETTEXT_PACKAGE, NULL);
95 #endif
96 }
97
98 static void
99 run (const gchar *name,
100 gint nparams,
101 const GimpParam *param,
102 gint *nreturn_vals,
103 GimpParam **return_vals)
104 {
105 static GimpParam values[1];
106 GimpRunMode run_mode;
107 GimpPDBStatusType status;
108 //gint32 image_ID;
109 gint32 drawable_ID;
110 FblurParam *fblur_param;
111
112 /* Get the specified values */
113 run_mode = param[0].data.d_int32;
114 //image_ID = param[1].data.d_image;
115 drawable_ID = param[2].data.d_drawable;
116
117 #ifdef ENABLE_MP
118 if (! g_thread_supported ())
119 g_thread_init (NULL);
120 #endif
121
122 INIT_I18N ();
123
124 /* Check image type */
125 if (! gimp_drawable_is_rgb (drawable_ID) &&
126 ! gimp_drawable_is_gray (drawable_ID))
127 {
128 status = GIMP_PDB_EXECUTION_ERROR;
129 goto focusblur_exit;
130 }
131
132 /* Initialize parameters */
133 fblur_param = focusblur_param_new (drawable_ID);
134 if (! fblur_param)
135 {
136 status = GIMP_PDB_EXECUTION_ERROR;
137 goto focusblur_exit;
138 }
139
140 switch (run_mode)
141 {
142 case GIMP_RUN_INTERACTIVE:
143 /* Possibly retrieve data */
144 focusblur_param_restore (fblur_param);
145
146 /* Get information from the dialog */
147 if (! focusblur_dialog (fblur_param))
148 {
149 status = GIMP_PDB_SUCCESS;
150 goto focusblur_exit;
151 }
152 break;
153
154 case GIMP_RUN_NONINTERACTIVE:
155 /* Make sure all the arguments are present */
156 if (! focusblur_param_set (fblur_param, nparams, param))
157 {
158 status = GIMP_PDB_CALLING_ERROR;
159 goto focusblur_exit;
160 }
161 break;
162
163 case GIMP_RUN_WITH_LAST_VALS:
164 /* Possibly retrieve data */
165 if (! focusblur_param_restore (fblur_param))
166 {
167 status = GIMP_PDB_CALLING_ERROR;
168 goto focusblur_exit;
169 }
170 break;
171 }
172
173 if (focusblur_execute (fblur_param, NULL))
174 status = GIMP_PDB_SUCCESS;
175 else
176 status = GIMP_PDB_EXECUTION_ERROR;
177
178 /* If run mode is interactive, flush displays */
179 if (run_mode != GIMP_RUN_NONINTERACTIVE)
180 gimp_displays_flush ();
181
182 /* Store data */
183 if (run_mode == GIMP_RUN_INTERACTIVE)
184 focusblur_param_store (fblur_param);
185
186 focusblur_exit:
187
188 if (run_mode == GIMP_RUN_INTERACTIVE)
189 focusblur_rc_save_preferences (&(fblur_param->pref));
190
191 focusblur_param_destroy (&fblur_param);
192 values[0].type = GIMP_PDB_STATUS;
193 values[0].data.d_status = status;
194 *nreturn_vals = G_N_ELEMENTS (values);
195 *return_vals = values;
196 }
+0
-39
focus-blur/focusblur-3.2.6/src/gimpplugin.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __GIMPPLUGIN_H__
22 #define __GIMPPLUGIN_H__
23
24 #include <libgimp/gimp.h>
25
26 G_BEGIN_DECLS
27
28
29 #define PLUG_IN_BINARY "focusblur"
30 #define PLUG_IN_PROC "plug-in-focusblur"
31
32 #define TILE_WIDTH gimp_tile_width()
33 #define TILE_HEIGHT gimp_tile_height()
34
35
36 G_END_DECLS
37
38 #endif /* __GIMPPLUGIN_H__ */
+0
-754
focus-blur/focusblur-3.2.6/src/interface.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <libgimp/gimp.h>
24 #include <libgimp/gimpui.h>
25
26 #include "libgimp/stdplugins-intl.h"
27
28 #include "focusblur.h"
29 #include "focusblurparam.h"
30 #include "focusblurstock.h"
31 #include "gimpplugin.h"
32 #include "interface.h"
33 #include "render.h"
34
35
36 /*---- Prototypes ----*/
37
38 static GtkWidget* focusblur_notebook_append_vbox (GtkNotebook *notebook,
39 gchar *label_text);
40 static GtkWidget* focusblur_notebook_append_table (GtkNotebook *notebook,
41 gchar *label_text,
42 gint rows);
43
44 static void focusblur_preview_invalidate (GimpPreview *gimppreview,
45 FblurParam *param);
46 static void focusblur_widget_pickup_focal_depth (FblurParam *param,
47 gint x,
48 gint y);
49 static void focusblur_preview_button_press (GtkWidget *widget,
50 GdkEvent *event,
51 FblurParam *param);
52 static gboolean focusblur_map_constraint (gint32 image_ID,
53 gint32 drawable_ID,
54 gpointer data);
55 static void focusblur_change_brush_name (GObject *object,
56 GParamSpec *arg1,
57 gpointer user_data);
58 static void focusblur_update_enumcombobox_text (GimpEnumComboBox *combo,
59 gint index,
60 const gchar *text);
61 static void focusblur_update_widget_brushmodel (GObject *object,
62 GParamSpec *arg1,
63 gpointer user_data);
64
65
66 /*---- Funcs ----*/
67
68 gboolean
69 focusblur_dialog (FblurParam *param)
70 {
71 GtkWidget *dialog;
72 GtkWidget *main_vbox;
73 GtkWidget *preview;
74 GtkWidget *notebook;
75 GtkWidget *nb_vbox;
76 GtkWidget *vbox;
77 GtkWidget *hbox;
78 GtkWidget *label;
79 GtkWidget *button;
80 GtkWidget *spinbutton;
81 GtkObject *adj;
82 GtkWidget *combo_box;
83 GtkWidget *toggle;
84 GtkWidget *table;
85 GtkListStore *enum_store;
86 gchar *text;
87 gint row;
88 gboolean run;
89
90 gimp_ui_init (PLUG_IN_BINARY, FALSE);
91 focusblur_stock_init ();
92
93 /* Main dialogue */
94
95 dialog = gimp_dialog_new (_("Focus Blur"), PLUG_IN_BINARY,
96 NULL, 0,
97 gimp_standard_help_func, PLUG_IN_PROC,
98
99 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
100 GTK_STOCK_OK, GTK_RESPONSE_OK,
101
102 NULL);
103
104 gtk_dialog_set_alternative_button_order (GTK_DIALOG (dialog),
105 GTK_RESPONSE_OK,
106 GTK_RESPONSE_CANCEL,
107 -1);
108
109 gimp_window_set_transient (GTK_WINDOW (dialog));
110 gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
111
112 main_vbox = gtk_vbox_new (FALSE, 12);
113 gtk_container_set_border_width (GTK_CONTAINER (main_vbox), 12);
114 gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), main_vbox);
115 gtk_widget_show (main_vbox);
116
117 /* Preview */
118
119 preview = gimp_drawable_preview_new (param->drawable, NULL);
120 gtk_box_pack_start (GTK_BOX (main_vbox), preview, FALSE, TRUE, 0);
121 gtk_widget_show (preview);
122
123 g_signal_connect (G_OBJECT (preview), "invalidated",
124 G_CALLBACK (focusblur_preview_invalidate),
125 param);
126 g_signal_connect (G_OBJECT (gimp_preview_get_area (GIMP_PREVIEW (preview))),
127 "button_press_event",
128 G_CALLBACK (focusblur_preview_button_press),
129 param);
130
131
132 /* Notebook to select options */
133
134 notebook = gtk_notebook_new ();
135 gtk_box_pack_start (GTK_BOX (main_vbox), notebook, TRUE, TRUE, 0);
136 gtk_widget_show (notebook);
137 /* bind to "Ctrl + Next" and "Ctrl + Prev" */
138 g_signal_connect_swapped (G_OBJECT (dialog), "key-press-event",
139 G_CALLBACK (GTK_WIDGET_CLASS (G_OBJECT_GET_CLASS (notebook))->key_press_event),
140 notebook);
141
142
143 /* Basic parameters */
144
145 nb_vbox = focusblur_notebook_append_vbox (GTK_NOTEBOOK (notebook),
146 _("_Basic"));
147
148 /* Diffusion Radius */
149
150 vbox = gtk_vbox_new (FALSE, 6);
151 gtk_box_pack_start (GTK_BOX (nb_vbox), vbox, FALSE, FALSE, 0);
152 gtk_widget_show (vbox);
153
154 hbox = gtk_hbox_new (FALSE, 0);
155 gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
156 gtk_widget_show (hbox);
157
158 label = gtk_label_new_with_mnemonic (_("Diffusion Model and _Radius:"));
159 gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5);
160 gtk_box_pack_start_defaults (GTK_BOX (hbox), label);
161 gtk_widget_show (label);
162
163 spinbutton = gimp_spin_button_new (&adj, param->store.model_radius,
164 0.0, 100.0, 1.0, 10.0, 0.0, 1.0, 2);
165 gtk_label_set_mnemonic_widget (GTK_LABEL (label), spinbutton);
166 g_signal_connect (G_OBJECT (adj), "value-changed",
167 G_CALLBACK (gimp_float_adjustment_update),
168 &(param->store.model_radius));
169 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
170 G_CALLBACK (gimp_preview_invalidate),
171 preview);
172 gtk_box_pack_start (GTK_BOX (hbox), spinbutton, FALSE, FALSE, 0);
173 gtk_widget_show (spinbutton);
174
175 /* Diffusion Model */
176
177 combo_box = gimp_enum_combo_box_new (FBLUR_TYPE_MODEL_TYPE);
178 gimp_enum_combo_box_set_stock_prefix
179 (GIMP_ENUM_COMBO_BOX (combo_box), "focusblur-model");
180 /* change label */
181 text = g_strdup_printf (_("Brush:%s"), param->brush_name);
182 focusblur_update_enumcombobox_text (GIMP_ENUM_COMBO_BOX (combo_box),
183 FBLUR_MODEL_BRUSH, text);
184 g_free (text);
185
186 gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo_box),
187 param->store.model_type,
188 G_CALLBACK (gimp_int_combo_box_get_active),
189 &(param->store.model_type));
190 g_signal_connect_swapped (G_OBJECT (combo_box), "changed",
191 G_CALLBACK (gimp_preview_invalidate),
192 preview);
193 gtk_box_pack_start (GTK_BOX (vbox), combo_box, FALSE, FALSE, 0);
194 gtk_widget_show (combo_box);
195 param->widgets[FBLUR_WIDGET_MODEL_TYPE] = combo_box;
196
197 /* Shining radius */
198
199 table = gtk_table_new (1, 2, FALSE);
200 gtk_table_set_col_spacings (GTK_TABLE (table), 6);
201 gtk_box_pack_start (GTK_BOX (nb_vbox), table, FALSE, FALSE, 0);
202 gtk_widget_show (table);
203
204 spinbutton = gimp_spin_button_new (&adj, param->store.shine_radius,
205 0.0, 100.0, 1.0, 10.0, 0.0, 1.0, 2);
206 g_signal_connect (G_OBJECT (adj), "value-changed",
207 G_CALLBACK (gimp_float_adjustment_update),
208 &(param->store.shine_radius));
209 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
210 G_CALLBACK (gimp_preview_invalidate),
211 preview);
212 gtk_table_attach (GTK_TABLE (table), spinbutton, 1, 2, 2, 3,
213 GTK_FILL, GTK_FILL, 0, 0);
214 gtk_widget_show (spinbutton);
215
216 label = gtk_label_new_with_mnemonic (_("Pea_k radius for Shining:"));
217 gtk_label_set_mnemonic_widget (GTK_LABEL (label), spinbutton);
218 gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5);
219 gtk_table_attach_defaults (GTK_TABLE (table), label, 0, 1, 2, 3);
220 gtk_widget_show (label);
221
222 /* Depth Map */
223
224 vbox = gtk_vbox_new (FALSE, 6);
225 gtk_box_pack_start (GTK_BOX (nb_vbox), vbox, FALSE, FALSE, 0);
226 gtk_widget_show (vbox);
227
228 toggle = gtk_check_button_new_with_mnemonic (_("_Use Depth map:"));
229 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle),
230 param->store.enable_depth_map);
231 g_signal_connect (G_OBJECT (toggle), "toggled",
232 G_CALLBACK (gimp_toggle_button_update),
233 &(param->store.enable_depth_map));
234 g_signal_connect_swapped (G_OBJECT (toggle), "toggled",
235 G_CALLBACK (gimp_preview_invalidate),
236 preview);
237 gtk_box_pack_start (GTK_BOX (vbox), toggle, FALSE, FALSE, 0);
238 gtk_widget_show (toggle);
239
240 combo_box = gimp_drawable_combo_box_new (focusblur_map_constraint, NULL);
241 gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo_box),
242 param->store.depth_map_ID,
243 G_CALLBACK (gimp_int_combo_box_get_active),
244 &(param->store.depth_map_ID));
245 g_signal_connect_swapped (G_OBJECT (combo_box), "changed",
246 G_CALLBACK (gimp_preview_invalidate),
247 preview);
248 gtk_widget_set_sensitive (combo_box, param->store.enable_depth_map);
249 g_object_set_data (G_OBJECT (toggle), "set_sensitive", combo_box);
250 gtk_box_pack_start (GTK_BOX (vbox), combo_box, FALSE, FALSE, 0);
251
252 gtk_widget_show (combo_box);
253
254 /* Focal Depth */
255
256 table = gtk_table_new (1, 3, FALSE);
257 gtk_table_set_col_spacings (GTK_TABLE (table), 6);
258 gtk_table_set_row_spacings (GTK_TABLE (table), 6);
259 gtk_widget_set_sensitive (table, param->store.enable_depth_map);
260 g_object_set_data (G_OBJECT (combo_box), "set_sensitive", table);
261 gtk_box_pack_start (GTK_BOX (vbox), table, FALSE, FALSE, 0);
262 gtk_widget_show (table);
263
264 adj = gimp_scale_entry_new (GTK_TABLE (table), 0, 0,
265 _("Foc_al depth:"), 100, 0,
266 param->store.focal_depth,
267 0.0, 100.0, 1.0, 10.0, 2, TRUE, 0, 0,
268 NULL, NULL);
269 g_signal_connect (G_OBJECT (adj), "value-changed",
270 G_CALLBACK (gimp_float_adjustment_update),
271 &(param->store.focal_depth));
272 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
273 G_CALLBACK (gimp_preview_invalidate),
274 preview);
275 param->widgets[FBLUR_WIDGET_FOCAL_DEPTH] = GIMP_SCALE_ENTRY_SPINBUTTON (adj);
276
277
278 /* Model parameters */
279
280 table = focusblur_notebook_append_table (GTK_NOTEBOOK (notebook),
281 _("_Model"), 5);
282 row = 0;
283
284 /* Brush select button */
285
286 button = gimp_brush_select_button_new (NULL, param->brush_name, -1, -1, -1);
287 gtk_table_attach (GTK_TABLE (table), button, 0, 3, row, row + 1,
288 GTK_FILL, GTK_FILL, 0, 0);
289 g_signal_connect (G_OBJECT (button), "notify::brush-name",
290 G_CALLBACK (focusblur_change_brush_name),
291 &(param->brush_name));
292 g_signal_connect (G_OBJECT (button), "notify::brush-name",
293 G_CALLBACK (focusblur_update_widget_brushmodel),
294 param->widgets[FBLUR_WIDGET_MODEL_TYPE]);
295 g_signal_connect_swapped (G_OBJECT (button), "notify::brush-name",
296 G_CALLBACK (gimp_preview_invalidate),
297 preview);
298 gtk_widget_show (button);
299 row ++;
300
301 /* Brush balance */
302
303 toggle = gtk_check_button_new_with_mnemonic (_("Make a ba_lance of brush"));
304 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle),
305 param->store.enable_brush_balance);
306 g_signal_connect (G_OBJECT (toggle), "toggled",
307 G_CALLBACK (gimp_toggle_button_update),
308 &(param->store.enable_brush_balance));
309 g_signal_connect_swapped (G_OBJECT (toggle), "toggled",
310 G_CALLBACK (gimp_preview_invalidate),
311 preview);
312 gtk_table_attach_defaults (GTK_TABLE (table), toggle, 0, 3, row, row + 1);
313 row ++;
314 gtk_widget_show (toggle);
315
316 /* Model rotation */
317
318 adj = gimp_scale_entry_new (GTK_TABLE (table), 0, row ++,
319 _("_Rotation:"), 100, 0,
320 param->store.model_rotate,
321 0.0, 360.0, 1.0, 10.0, 2, TRUE, 0, 0,
322 NULL, NULL);
323 g_signal_connect (G_OBJECT (adj), "value-changed",
324 G_CALLBACK (gimp_float_adjustment_update),
325 &(param->store.model_rotate));
326 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
327 G_CALLBACK (gimp_preview_invalidate),
328 preview);
329
330 /* Model filling */
331
332 adj = gimp_scale_entry_new (GTK_TABLE (table), 0, row ++,
333 _("F_illing inside:"), 100, 0,
334 param->store.model_fill,
335 0.0, 100.0, 1.0, 10.0, 2, TRUE, 0, 0,
336 NULL, NULL);
337 g_signal_connect (G_OBJECT (adj), "value-changed",
338 G_CALLBACK (gimp_float_adjustment_update),
339 &(param->store.model_fill));
340 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
341 G_CALLBACK (gimp_preview_invalidate),
342 preview);
343
344 /* Model softness */
345
346 adj = gimp_scale_entry_new (GTK_TABLE (table), 0, row ++,
347 _("Sof_tness:"), 100, 0,
348 param->store.model_softness,
349 0.0, 100.0, 1.0, 10.0, 2, TRUE, 0, 0,
350 NULL, NULL);
351 g_signal_connect (G_OBJECT (adj), "value-changed",
352 G_CALLBACK (gimp_float_adjustment_update),
353 &(param->store.model_softness));
354 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
355 G_CALLBACK (gimp_preview_invalidate),
356 preview);
357
358
359 /* Shine parameters */
360
361 table = focusblur_notebook_append_table (GTK_NOTEBOOK (notebook),
362 _("_Shine"), 4);
363 row = 0;
364
365 /* Shine type */
366
367 combo_box = gimp_enum_combo_box_new (FBLUR_TYPE_SHINE_TYPE);
368 gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo_box),
369 param->store.shine_type,
370 G_CALLBACK (gimp_int_combo_box_get_active),
371 &(param->store.shine_type));
372 g_signal_connect_swapped (G_OBJECT (combo_box), "changed",
373 G_CALLBACK (gimp_preview_invalidate),
374 preview);
375 label = gimp_table_attach_aligned (GTK_TABLE (table), 0, row ++,
376 _("Sensing t_ype:"), 0.0, 0.5,
377 combo_box, 2, FALSE);
378 gtk_widget_show (combo_box);
379
380 /* Shine Threshold */
381
382 adj = gimp_scale_entry_new (GTK_TABLE (table), 0, row ++,
383 _("T_hreshold:"), 100, 0,
384 param->store.shine_threshold,
385 0.0, 100.0, 1.0, 10.0, 2, TRUE, 0, 0,
386 NULL, NULL);
387 g_signal_connect (G_OBJECT (adj), "value-changed",
388 G_CALLBACK (gimp_float_adjustment_update),
389 &(param->store.shine_threshold));
390 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
391 G_CALLBACK (gimp_preview_invalidate),
392 preview);
393
394 /* Shine level */
395
396 adj = gimp_scale_entry_new (GTK_TABLE (table), 0, row ++,
397 _("_Level:"), 100, 0,
398 param->store.shine_level,
399 0.0, 100.0, 1.0, 10.0, 2, TRUE, 0, 0,
400 NULL, NULL);
401 g_signal_connect (G_OBJECT (adj), "value-changed",
402 G_CALLBACK (gimp_float_adjustment_update),
403 &(param->store.shine_level));
404 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
405 G_CALLBACK (gimp_preview_invalidate),
406 preview);
407
408 /* Shine curve */
409
410 adj = gimp_scale_entry_new (GTK_TABLE (table), 0, row ++,
411 _("C_urve:"), 100, 0,
412 param->store.shine_curve,
413 0.0, 10.0, 0.1, 1.0, 3, TRUE, 0, 0,
414 NULL, NULL);
415 gimp_scale_entry_set_logarithmic (adj, TRUE);
416 g_signal_connect (G_OBJECT (adj), "value-changed",
417 G_CALLBACK (gimp_float_adjustment_update),
418 &(param->store.shine_curve));
419 g_signal_connect_swapped (G_OBJECT (adj), "value-changed",
420 G_CALLBACK (gimp_preview_invalidate),
421 preview);
422
423
424 /* Depth parameters */
425
426 table = focusblur_notebook_append_table (GTK_NOTEBOOK (notebook),
427 _("_Depth"), 2);
428 row = 0;
429
430 /* Depth Precedence */
431
432 toggle = gtk_check_button_new_with_mnemonic (_("Depth with p_recedence"));
433 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle),
434 param->store.enable_depth_precedence);
435 g_signal_connect (G_OBJECT (toggle), "toggled",
436 G_CALLBACK (gimp_toggle_button_update),
437 &(param->store.enable_depth_precedence));
438 g_signal_connect_swapped (G_OBJECT (toggle), "toggled",
439 G_CALLBACK (gimp_preview_invalidate),
440 preview);
441 gtk_table_attach_defaults (GTK_TABLE (table), toggle, 0, 3, row, row + 1);
442 row ++;
443 gtk_widget_show (toggle);
444
445 /* Anti-anti-alias */
446
447 toggle = gtk_check_button_new_with_mnemonic (_("Evade _anti-alias"));
448 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle),
449 param->store.enable_depth_aaa);
450 g_signal_connect (G_OBJECT (toggle), "toggled",
451 G_CALLBACK (gimp_toggle_button_update),
452 &(param->store.enable_depth_aaa));
453 g_signal_connect_swapped (G_OBJECT (toggle), "toggled",
454 G_CALLBACK (gimp_preview_invalidate),
455 preview);
456 gtk_table_attach_defaults (GTK_TABLE (table), toggle, 0, 3, row, row + 1);
457 row ++;
458 gtk_widget_show (toggle);
459
460
461 #if defined HAVE_FFTW3 || defined ENABLE_MP
462
463 /* Recordable parameters */
464
465 table = focusblur_notebook_append_table (GTK_NOTEBOOK (notebook),
466 _("Pre_ferences"), 3);
467 row = 0;
468
469 # ifdef HAVE_FFTW3
470
471 /* Rendering quality */
472
473 enum_store = gimp_enum_store_new_with_range
474 (FBLUR_TYPE_QUALITY_TYPE, FBLUR_QUALITY_BEST, FBLUR_QUALITY_LOW);
475 combo_box =
476 gimp_enum_combo_box_new_with_model (GIMP_ENUM_STORE (enum_store));
477 g_object_unref (enum_store);
478 gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo_box),
479 param->pref.quality,
480 G_CALLBACK (gimp_int_combo_box_get_active),
481 &(param->pref.quality));
482 label = gimp_table_attach_aligned (GTK_TABLE (table), 0, row ++,
483 _("Rendering _quality:"), 0.0, 0.5,
484 combo_box, 2, FALSE);
485 gtk_widget_show (combo_box);
486
487 /* Preview quality */
488
489 enum_store = gimp_enum_store_new_with_range
490 (FBLUR_TYPE_QUALITY_TYPE, FBLUR_QUALITY_NORMAL, FBLUR_QUALITY_DEFECTIVE);
491 combo_box =
492 gimp_enum_combo_box_new_with_model (GIMP_ENUM_STORE (enum_store));
493 g_object_unref (enum_store);
494 gimp_int_combo_box_connect (GIMP_INT_COMBO_BOX (combo_box),
495 param->pref.quality_preview,
496 G_CALLBACK (gimp_int_combo_box_get_active),
497 &(param->pref.quality_preview));
498 label = gimp_table_attach_aligned (GTK_TABLE (table), 0, row ++,
499 _("Pre_view quality:"), 0.0, 0.5,
500 combo_box, 2, FALSE);
501 gtk_widget_show (combo_box);
502
503 # endif /* HAVE_FFTW3 */
504
505 # ifdef ENABLE_MP
506
507 /* Disable multi-threads */
508
509 if (row)
510 gtk_table_set_row_spacing (GTK_TABLE (table), row - 1, 12);
511
512 toggle = gtk_check_button_new_with_mnemonic (_("Dis_able support for multi-threads"));
513 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle),
514 param->pref.disable_mp);
515 g_signal_connect (toggle, "toggled",
516 G_CALLBACK (gimp_toggle_button_update),
517 &(param->pref.disable_mp));
518 gtk_table_attach_defaults (GTK_TABLE (table), toggle, 0, 3, row, row + 1);
519 row ++;
520 gtk_widget_show (toggle);
521
522 # endif /* ENABLE_MP */
523
524 #endif /* defined HAVE_FFTW3 || defined ENABLE_MP */
525
526
527 /* get parameters */
528
529 gtk_widget_show (dialog);
530 run = (gimp_dialog_run (GIMP_DIALOG (dialog)) == GTK_RESPONSE_OK);
531 gtk_widget_destroy (dialog);
532
533 return run;
534 }
535
536
537 static GtkWidget*
538 focusblur_notebook_append_vbox (GtkNotebook *notebook,
539 gchar *label_text)
540 {
541 GtkWidget *vbox;
542
543 vbox = gtk_vbox_new (FALSE, 12);
544 gtk_container_set_border_width (GTK_CONTAINER (vbox), 12);
545 gtk_notebook_append_page (notebook, vbox,
546 gtk_label_new_with_mnemonic (label_text));
547 gtk_widget_show (vbox);
548
549 return vbox;
550 }
551
552
553 static GtkWidget*
554 focusblur_notebook_append_table (GtkNotebook *notebook,
555 gchar *label_text,
556 gint rows)
557 {
558 GtkWidget *vbox;
559 GtkWidget *table;
560
561 vbox = focusblur_notebook_append_vbox (notebook, label_text);
562
563 table = gtk_table_new (rows, 3, FALSE);
564 gtk_table_set_col_spacings (GTK_TABLE (table), 6);
565 gtk_table_set_row_spacings (GTK_TABLE (table), 6);
566
567 gtk_box_pack_start (GTK_BOX (vbox), table, FALSE, FALSE, 0);
568 gtk_widget_show (table);
569
570 return table;
571 }
572
573
574 static void
575 focusblur_preview_invalidate (GimpPreview *gimppreview,
576 FblurParam *param)
577 {
578 focusblur_execute (param, gimppreview);
579 }
580
581
582 static void
583 focusblur_widget_pickup_focal_depth (FblurParam *param,
584 gint x,
585 gint y)
586 {
587 GtkSpinButton *spin;
588 gfloat focal_depth;
589 gint depth;
590 guchar *pixel;
591 gint num_channels;
592
593 g_return_if_fail (param->store.enable_depth_map);
594 g_return_if_fail (x >= 0 && y >= 0);
595
596 if (! gimp_drawable_is_valid (param->store.depth_map_ID))
597 {
598 gimp_message (_("Specified depth map is invalid."));
599 return;
600 }
601
602 x %= gimp_drawable_width (param->store.depth_map_ID);
603 y %= gimp_drawable_height (param->store.depth_map_ID);
604
605 pixel = gimp_drawable_get_pixel
606 (param->store.depth_map_ID, x, y, &num_channels);
607
608 switch (gimp_drawable_type (param->store.depth_map_ID))
609 {
610 case GIMP_GRAYA_IMAGE:
611 g_assert (num_channels == 2);
612 if (! pixel[1])
613 goto exit;
614
615 case GIMP_GRAY_IMAGE:
616 g_assert (num_channels >= 1);
617 depth = FBLUR_DEPTH_MAX * pixel[0] / 255;
618 break;
619
620 case GIMP_RGBA_IMAGE:
621 g_assert (num_channels == 4);
622 if (! pixel[4])
623 goto exit;
624
625 case GIMP_RGB_IMAGE:
626 g_assert (num_channels >= 3);
627 depth = FBLUR_DEPTH_MAX * (pixel[0] + pixel[1] + pixel[2]) / (3 * 255);
628 break;
629
630 default:
631 g_assert_not_reached ();
632 }
633
634 focal_depth = (100.0f / (gfloat) FBLUR_DEPTH_MAX) * depth;
635 spin = GTK_SPIN_BUTTON (param->widgets[FBLUR_WIDGET_FOCAL_DEPTH]);
636 gtk_spin_button_set_value (spin, focal_depth);
637
638 exit:
639 g_free (pixel);
640 }
641
642
643 static void
644 focusblur_preview_button_press (GtkWidget *widget,
645 GdkEvent *event,
646 FblurParam *param)
647 {
648 if (event->button.button == 2)
649 {
650 GimpPreviewArea *area;
651 gint x, y;
652
653 if (! param->store.enable_depth_map ||
654 ! gimp_drawable_is_valid (param->store.depth_map_ID))
655 return;
656
657 area = GIMP_PREVIEW_AREA (widget);
658 x = area->offset_x + event->button.x;
659 y = area->offset_y + event->button.y;
660
661 /* checks for padding */
662 if (area->width < widget->allocation.width)
663 {
664 x -= (widget->allocation.width - area->width) / 2;
665 if (x < 0 || x >= area->max_width)
666 return;
667 }
668 if (area->height < widget->allocation.height)
669 {
670 y -= (widget->allocation.height - area->height) / 2;
671 if (y < 0 || y >= area->max_height)
672 return;
673 }
674
675 focusblur_widget_pickup_focal_depth (param, x, y);
676 return;
677 }
678 }
679
680
681 static gboolean
682 focusblur_map_constraint (gint32 image_ID,
683 gint32 drawable_ID,
684 gpointer data)
685 {
686 if (drawable_ID == -1)
687 return FALSE;
688
689 return (gimp_drawable_is_rgb (drawable_ID) ||
690 gimp_drawable_is_gray (drawable_ID));
691 }
692
693
694 static void
695 focusblur_change_brush_name (GObject *object,
696 GParamSpec *arg1,
697 gpointer user_data)
698 {
699 gchar **fblur_brush_name = (gchar **) user_data;
700 gchar *gimp_brush_name = NULL;
701
702 g_return_if_fail (GIMP_IS_BRUSH_SELECT_BUTTON (object));
703 g_return_if_fail (fblur_brush_name != NULL);
704
705 g_object_get (object, "brush-name", &gimp_brush_name, NULL);
706
707 if (gimp_brush_name)
708 {
709 g_free (*fblur_brush_name);
710 *fblur_brush_name = g_strdup (gimp_brush_name);
711 }
712 }
713
714 static void
715 focusblur_update_enumcombobox_text (GimpEnumComboBox *combo_box,
716 gint index,
717 const gchar *text)
718 {
719 GimpEnumStore *model;
720 GtkTreeIter iter;
721 gboolean ret;
722
723 g_object_get (GIMP_ENUM_COMBO_BOX (combo_box), "model", &model, NULL);
724
725 ret = gimp_int_store_lookup_by_value (GTK_TREE_MODEL (model), index, &iter);
726
727 if (ret)
728 gtk_list_store_set (GTK_LIST_STORE (model), &iter,
729 GIMP_INT_STORE_LABEL, text,
730 -1);
731 }
732
733
734 static void
735 focusblur_update_widget_brushmodel (GObject *object,
736 GParamSpec *arg1,
737 gpointer user_data)
738 {
739 gchar *gimp_brush_name = NULL;
740 gchar *text;
741
742 g_return_if_fail (GIMP_IS_BRUSH_SELECT_BUTTON (object));
743 g_return_if_fail (GIMP_IS_ENUM_COMBO_BOX (user_data));
744
745 g_object_get (object, "brush-name", &gimp_brush_name, NULL);
746
747 focusblur_stock_update_modelbrush (gimp_brush_name);
748
749 text = g_strdup_printf (_("Brush:%s"), gimp_brush_name);
750 focusblur_update_enumcombobox_text (GIMP_ENUM_COMBO_BOX (user_data),
751 FBLUR_MODEL_BRUSH, text);
752 g_free (text);
753 }
+0
-37
focus-blur/focusblur-3.2.6/src/interface.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_INTERFACE_H__
22 #define __FOCUSBLUR_INTERFACE_H__
23
24 #include <glib/gtypes.h>
25
26 #include "focusblurtypes.h"
27
28 G_BEGIN_DECLS
29
30
31 gboolean focusblur_dialog (FblurParam *param);
32
33
34 G_END_DECLS
35
36 #endif /* __FOCUSBLUR_INTERFACE_H__ */
+0
-569
focus-blur/focusblur-3.2.6/src/render.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2008 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <libgimp/gimp.h>
24
25 #include "libgimp/stdplugins-intl.h"
26
27 #include "gimpplugin.h"
28 #include "focusblurparam.h"
29 #include "source.h"
30 #include "diffusion.h"
31 #include "depthmap.h"
32 #include "shine.h"
33 #include "render.h"
34 #ifdef HAVE_FFTW3
35 # include "fftblur.h"
36 #endif
37
38
39 /*---- Types ----*/
40
41 #ifdef ENABLE_MP
42 typedef struct _FblurThreadSet FblurThreadSet;
43 struct _FblurThreadSet
44 {
45 GimpPixelRgn *region;
46 volatile gint *waiting;
47 gint number;
48 };
49 #endif
50
51
52 /*---- Prototypes ----*/
53
54 static void focusblur_execute_region (FblurParam *param,
55 GimpPixelRgn *region,
56 gint number);
57 static void focusblur_render_pixel (gint pos_x,
58 gint pos_y,
59 guchar *dest_pixel,
60 gint dest_bpp,
61 FblurParam *param);
62
63
64 static inline void
65 cutoff_in_bound (gint bound,
66 gint *point,
67 gint *cutoff)
68 {
69 gint tmp = bound - *point;
70 if (tmp > 0)
71 *point = bound;
72 else
73 tmp = 0;
74
75 if (cutoff)
76 *cutoff = tmp;
77 }
78
79
80 static inline void
81 cutoff_out_bound (gint bound,
82 gint *point,
83 gint *cutoff)
84 {
85 gint tmp = *point - bound;
86 if (tmp > 0)
87 *point = bound;
88 else
89 tmp = 0;
90
91 if (cutoff)
92 *cutoff = tmp;
93 }
94
95
96 /*---- main function ----*/
97
98 gboolean
99 focusblur_execute (FblurParam *param,
100 GimpPreview *preview)
101 {
102 FblurQualityType quality;
103 GimpPixelRgn dest_rgn;
104 gpointer reg_rgn;
105 gdouble progress, full_progress;
106 gint x1, x2, y1, y2;
107 gint width, height;
108
109 /* Nothing to do */
110 if (param->store.model_radius <= 0.0f)
111 return TRUE;
112
113 quality = preview ? param->pref.quality_preview : param->pref.quality;
114
115 #ifdef HAVE_FFTW3
116 if (focusblur_fft_execute (param, quality, preview))
117 return TRUE;
118 #endif
119
120 if (! focusblur_param_prepare (param, quality))
121 return FALSE;
122
123 if (! preview)
124 {
125 x1 = param->source->x1;
126 x2 = param->source->x2;
127 y1 = param->source->y1;
128 y2 = param->source->y2;
129 }
130 else
131 {
132 gimp_preview_get_position (GIMP_PREVIEW (preview), &x1, &y1);
133 gimp_preview_get_size (GIMP_PREVIEW (preview), &width, &height);
134 x2 = x1 + width;
135 y2 = y1 + height;
136
137 /* it is not need for GimpDrawablePreview */
138 if (param->source->x1 >= x2 || param->source->x2 <= x1 ||
139 param->source->y1 >= y2 || param->source->y2 <= y1)
140 return TRUE;
141
142 x1 = MAX (x1, param->source->x1);
143 x2 = MIN (x2, param->source->x2);
144 y1 = MAX (y1, param->source->y1);
145 y2 = MIN (y2, param->source->y2);
146 }
147 width = x2 - x1;
148 height = y2 - y1;
149
150 gimp_tile_cache_ntiles (16);
151
152 /* Destined image */
153 gimp_pixel_rgn_init (&dest_rgn, param->drawable,
154 x1, y1, width, height, (preview == NULL), TRUE);
155
156 progress = full_progress = 0.0;
157 if (! preview)
158 {
159 full_progress = width * height;
160 progress = 0.0;
161 gimp_progress_init (_("Focus Blur..."));
162 gimp_progress_update (0.0001);
163 }
164
165 for (reg_rgn = gimp_pixel_rgns_register (1, &dest_rgn);
166 reg_rgn != NULL; reg_rgn = gimp_pixel_rgns_process (reg_rgn))
167 {
168 #ifdef ENABLE_MP
169 if (param->max_threads)
170 {
171 volatile gint num = param->max_threads;
172 FblurThreadSet set[param->max_threads];
173 gint i;
174
175 //param->thread_pool->func = focusblur_execute_thread;
176
177 for (i = 0; i < param->max_threads; i ++)
178 {
179 set[i].region = &dest_rgn;
180 set[i].waiting = &num;
181 set[i].number = i;
182 g_thread_pool_push (param->thread_pool, &(set[i]), NULL);
183 }
184 focusblur_execute_region (param, &dest_rgn, param->max_threads);
185 while (g_atomic_int_get (&num))
186 g_thread_yield ();
187 }
188 else
189 #endif /* ENABLE_MP */
190 focusblur_execute_region (param, &dest_rgn, 0);
191
192 if (! preview)
193 {
194 progress += (dest_rgn.w * dest_rgn.h);
195 gimp_progress_update (progress / full_progress);
196 }
197 else
198 {
199 gimp_drawable_preview_draw_region (GIMP_DRAWABLE_PREVIEW (preview),
200 &dest_rgn);
201 }
202 }
203
204 if (! preview)
205 {
206 /* update the blurred region */
207 gimp_drawable_flush (param->drawable);
208 gimp_drawable_merge_shadow (param->drawable_ID, TRUE);
209 gimp_drawable_update (param->drawable_ID, x1, y1, width, height);
210 }
211
212 return TRUE;
213 }
214
215
216 #ifdef ENABLE_MP
217 void
218 focusblur_execute_thread (gpointer data,
219 gpointer user_data)
220 {
221 FblurThreadSet *thread_set = data;
222 FblurParam *param = user_data;
223
224 focusblur_execute_region (param, thread_set->region, thread_set->number);
225 g_atomic_int_add (thread_set->waiting, -1);
226 }
227 #endif /* ENABLE_MP */
228
229
230 static void
231 focusblur_execute_region (FblurParam *param,
232 GimpPixelRgn *region,
233 gint number)
234 {
235 guchar *blp, *bp;
236 gint bpp = param->drawable->bpp;
237 gint rowstride = region->rowstride;
238 gint x1, x2, x;
239 gint y1, y2, y;
240
241 blp = region->data;
242
243 x1 = region->x;
244 x2 = x1 + region->w;
245
246 y1 = region->y;
247 y2 = y1 + region->h;
248
249 #ifdef ENABLE_MP
250 if (param->max_threads)
251 {
252 gint h, h0, y3;
253 g_assert (number <= param->max_threads);
254
255 h = (region->h + param->max_threads) / (param->max_threads + 1);
256 h0 = number * h;
257 y1 += h0;
258 blp += h0 * rowstride;
259 y3 = y1 + h;
260 if (y3 < y2)
261 y2 = y3;
262 }
263 #endif
264
265 for (y = y1; y < y2; y ++, blp += rowstride)
266 for (x = x1, bp = blp; x < x2; x ++, bp += bpp)
267 focusblur_render_pixel (x, y, bp, bpp, param);
268 }
269
270
271 static void
272 focusblur_render_pixel (gint pos_x,
273 gint pos_y,
274 guchar *dest_pixel,
275 gint dest_bpp,
276 FblurParam *param)
277 {
278 const gfloat color_fnum = 1.0f / 255.0f;
279 const gint depth_ntables = FBLUR_DEPTH_MAX + 1;
280 guchar src_pixel[4];
281 gfloat distribution, val_shone, val_alpha;
282 gfloat sum_alpha, sum_pixel, sum_color[3];
283 gfloat assume_pixel;
284 gfloat tsum_alpha[depth_ntables], tsum_pixel[depth_ntables];
285 gfloat transit[depth_ntables], tsum_color[depth_ntables][3];
286 gfloat through;
287 gfloat separate_ratio;
288 gboolean enable_depth_precedence;
289 gboolean enable_depth_aaa, depth_aaa_do;
290 gboolean enable_shine;
291 gint shine;
292 gint depth, level;
293 gint depth_aaa_next_depth;
294 gint x1, x2, y1, y2;
295 gint x1c, x2c, y1c, y2c;
296 gint x, y, c, d;
297
298 sum_alpha = 0.0f;
299 sum_pixel = 0.0f;
300 sum_color[0] = sum_color[1] = sum_color[2] = 0.0f;
301
302 enable_depth_precedence = param->store.enable_depth_map &&
303 param->store.enable_depth_precedence;
304 enable_depth_aaa = param->store.enable_depth_map &&
305 focusblur_depth_map_has_aaa (param->depth_map);
306
307 depth_aaa_do = FALSE;
308 separate_ratio = 0.0f;
309 depth_aaa_next_depth = 0;
310
311 if (enable_depth_precedence)
312 {
313 for (d = 0; d < depth_ntables; d ++)
314 tsum_alpha[d] = 0.0f;
315 for (d = 0; d < depth_ntables; d ++)
316 tsum_pixel[d] = 0.0f;
317 for (d = 0; d < depth_ntables; d ++)
318 transit[d] = 0.0f;
319 for (d = 0; d < depth_ntables; d ++)
320 tsum_color[d][0] = tsum_color[d][1] = tsum_color[d][2] = 0.0f;
321 }
322
323 /* Sets farthest distance when depth map is not specified */
324 depth = 0;
325 level = FBLUR_DEPTH_MAX;
326 enable_shine = focusblur_shine_check_enabled (&(param->store));
327
328 x1 = pos_x - param->diffusion->model_radius_int;
329 x2 = pos_x + param->diffusion->model_radius_int + 1;
330 y1 = pos_y - param->diffusion->model_radius_int;
331 y2 = pos_y + param->diffusion->model_radius_int + 1;
332
333 cutoff_in_bound (param->source->x1, &x1, &x1c);
334 cutoff_out_bound (param->source->x2, &x2, &x2c);
335 cutoff_in_bound (param->source->y1, &y1, &y1c);
336 cutoff_out_bound (param->source->y2, &y2, &y2c);
337
338 for (y = y1; y < y2; y ++)
339 for (x = x1; x < x2; x ++)
340 {
341 if (param->store.enable_depth_map)
342 {
343 depth = focusblur_depth_map_get_depth (param->depth_map, x, y);
344 depth_aaa_next:
345 level = focusblur_depth_map_get_level (param->depth_map, depth);
346 }
347
348 distribution = focusblur_diffusion_get
349 (param->diffusion, level, pos_x, pos_y, x, y);
350
351 if (distribution <= 0.0f)
352 continue;
353
354 focusblur_source_get (param->source, x, y, src_pixel);
355
356 val_shone = distribution;
357 if (enable_shine)
358 {
359 shine = focusblur_shine_get (param->shine, x, y);
360 if (shine)
361 {
362 val_shone *= focusblur_diffusion_get_shine
363 (param->diffusion, level, shine);
364 }
365 }
366
367 val_alpha = val_shone;
368 if (param->source->has_alpha)
369 {
370 gfloat aval = color_fnum * src_pixel[param->source->channels];
371 val_alpha *= aval;
372 distribution *= aval; // for precedence
373 }
374
375 if (enable_depth_aaa && ! depth_aaa_do)
376 separate_ratio = focusblur_depth_map_get_aaa
377 (param->depth_map, x, y, &depth_aaa_next_depth);
378
379 if (! separate_ratio)
380 {
381 if (! enable_depth_precedence)
382 {
383 for (c = 0; c < param->source->channels; c ++)
384 sum_color[c] += val_alpha * src_pixel[c];
385 sum_alpha += val_alpha;
386 sum_pixel += val_shone;
387 }
388 else
389 {
390 for (c = 0; c < param->source->channels; c ++)
391 tsum_color[depth][c] += val_alpha * src_pixel[c];
392 tsum_alpha[depth] += val_alpha;
393 tsum_pixel[depth] += val_shone;
394 transit[depth] += distribution;
395 }
396 }
397 /* separates anti-aliased pixel to tow values */
398 else
399 {
400 separate_ratio = 1.0f - separate_ratio;
401 g_assert (separate_ratio < 1.0f);
402 g_assert (separate_ratio > 0.0f);
403
404 if (! enable_depth_precedence)
405 {
406 for (c = 0; c < param->source->channels; c ++)
407 sum_color[c] += separate_ratio * val_alpha * src_pixel[c];
408 sum_alpha += separate_ratio * val_alpha;
409 sum_pixel += separate_ratio * val_shone;
410 }
411 else
412 {
413 for (c = 0; c < param->source->channels; c ++)
414 tsum_color[depth][c] += separate_ratio * val_alpha * src_pixel[c];
415 tsum_alpha[depth] += separate_ratio * val_alpha;
416 tsum_pixel[depth] += separate_ratio * val_shone;
417 transit[depth] += separate_ratio * distribution;
418 }
419
420 if (! depth_aaa_do)
421 {
422 depth = depth_aaa_next_depth;
423 depth_aaa_do = TRUE;
424 goto depth_aaa_next;
425 }
426 depth_aaa_do = FALSE;
427 }
428
429 }
430
431 if (enable_depth_precedence)
432 {
433 gdouble aval, fval;
434 through = 1.0f;
435 for (d = 0; d < depth_ntables; d ++)
436 {
437 if (transit[d] > 0.0f)
438 {
439 aval = transit[d];
440 fval = MIN (aval, through);
441 through -= fval;
442 fval /= aval;
443 sum_alpha += fval * tsum_alpha[d];
444 sum_pixel += fval * tsum_pixel[d];
445 for (c = 0; c < param->source->channels; c ++)
446 sum_color[c] += fval * tsum_color[d][c];
447
448 if (through < color_fnum)
449 break;
450 }
451 }
452
453 /* easy fake for out of frame */
454 assume_pixel = sum_pixel;
455 if (x1c || x2c || y1c || y2c)
456 {
457 gint inpix, outpix;
458 gfloat fval;
459
460 inpix = (x2 - x1) * (y2 - y1);
461 outpix = (x1c + x2c) * (y2 - y1)
462 + (y1c + y2c) * ((x2 + x2c) - (x1 - x1c));
463 fval = (gfloat) outpix / inpix;
464
465 assume_pixel *= 1.0f + fval;
466 }
467
468 /* fill behind */
469 if (assume_pixel < 1.0f)
470 {
471 gint depth_pos;
472 gint depth_nearest;
473 gfloat depth_fuzzy;
474 gfloat bsum_alpha, bsum_pixel, bsum_color[3];
475
476 bsum_alpha = 0.0f;
477 bsum_pixel = 0.0f;
478 bsum_color[0] = bsum_color[1] = bsum_color[2] = 0.0f;
479
480 depth_pos = focusblur_depth_map_get_depth
481 (param->depth_map, pos_x, pos_y);
482 level = focusblur_depth_map_get_level (param->depth_map, depth_pos);
483
484 /* fuzzy depth */
485 depth_fuzzy = 0.0f;
486 depth_nearest = depth_pos;
487 for (y = y1; y < y2; y ++)
488 for (x = x1; x < x2; x ++)
489 {
490 distribution = focusblur_diffusion_get
491 (param->diffusion, level, pos_x, pos_y, x, y);
492
493 if (distribution <= 0.0f)
494 continue;
495
496 depth = focusblur_depth_map_get_depth (param->depth_map, x, y);
497 if (depth < depth_nearest)
498 depth_nearest = depth;
499 }
500 if (depth_pos > depth_nearest)
501 depth_fuzzy = 1.0f / (depth_pos - depth_nearest);
502
503 for (y = y1; y < y2; y ++)
504 for (x = x1; x < x2; x ++)
505 {
506 distribution = focusblur_diffusion_get
507 (param->diffusion, level, pos_x, pos_y, x, y);
508 if (distribution <= 0.0f)
509 continue;
510
511 depth = focusblur_depth_map_get_depth (param->depth_map, x, y);
512 if (depth <= depth_pos)
513 {
514 if (depth_fuzzy)
515 distribution *= depth_fuzzy * (depth - depth_nearest);
516 else
517 continue;
518 }
519
520 focusblur_source_get (param->source, x, y, src_pixel);
521
522 val_alpha = distribution;
523 if (param->source->has_alpha)
524 val_alpha *= color_fnum * src_pixel[param->source->channels];
525
526 for (c = 0; c < param->source->channels; c ++)
527 bsum_color[c] += val_alpha * src_pixel[c];
528 bsum_alpha += val_alpha;
529 bsum_pixel += distribution;
530 }
531
532 if (bsum_pixel > color_fnum)
533 {
534 through = 1.0f - assume_pixel;
535 through /= bsum_pixel;
536 sum_alpha += through * bsum_alpha;
537 sum_pixel += through * bsum_pixel;
538 for (c = 0; c < param->source->channels; c ++)
539 sum_color[c] += through * bsum_color[c];
540 }
541 }
542 } /* end of depth precedence */
543
544 if (! sum_pixel ||
545 sum_alpha / sum_pixel < color_fnum)
546 {
547 for (c = 0; c < param->drawable->bpp; c ++)
548 dest_pixel[c] = 0;
549 }
550 else
551 {
552 gfloat val;
553 gint col;
554 for (c = 0; c < param->source->channels; c ++)
555 {
556 val = sum_color[c] / sum_alpha;
557 col = rintf (val);
558 dest_pixel[c] = CLAMP0255 (col);
559 }
560 if (param->source->has_alpha)
561 {
562 val = 255 * sum_alpha / sum_pixel;
563 col = rintf (val);
564 dest_pixel[param->source->channels] = CLAMP0255 (col);
565 }
566 }
567 }
568
+0
-47
focus-blur/focusblur-3.2.6/src/render.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_RENDER_H__
22 #define __FOCUSBLUR_RENDER_H__
23
24 #include "config.h"
25
26 #include <glib/gtypes.h>
27 //#include <libgimp/gimp.h>
28 #include <libgimp/gimpui.h>
29
30 #include "focusblurtypes.h"
31
32
33 G_BEGIN_DECLS
34
35
36 gboolean focusblur_execute (FblurParam *param,
37 GimpPreview *preview);
38 #ifdef ENABLE_MP
39 void focusblur_execute_thread (gpointer data,
40 gpointer user_data);
41 #endif
42
43
44 G_END_DECLS
45
46 #endif /* __FOCUSBLUR_RENDER_H__ */
+0
-447
focus-blur/focusblur-3.2.6/src/shine.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <libgimp/gimp.h>
24
25 #include "focusblurparam.h"
26 #include "shine.h"
27
28
29 /*---- Structure ----*/
30
31 struct _FblurShineData
32 {
33 /* specified parameters */
34 FblurShineType shine_type;
35 gfloat shine_threshold;
36 gfloat shine_level;
37 gfloat shine_curve;
38 /* pre-computed value */
39
40 /* main data */
41 gint x1, x2, y1, y2;
42 gint width, height;
43 guchar *data;
44 };
45
46
47 /*---- Prototypes ----*/
48
49 static gint focusblur_shine_filter_luminosity (guchar *pixel,
50 gint gate,
51 gfloat scale,
52 gfloat level,
53 gfloat curve);
54 static gint focusblur_shine_filter_luminosity_alpha (guchar *pixel,
55 gint gate,
56 gfloat scale,
57 gfloat level,
58 gfloat curve);
59 static gint focusblur_shine_filter_saturation (guchar *pixel,
60 gint gate,
61 gfloat scale,
62 gfloat level,
63 gfloat curve);
64 static gint focusblur_shine_filter_saturation_alpha (guchar *pixel,
65 gint gate,
66 gfloat scale,
67 gfloat level,
68 gfloat curve);
69 static gint focusblur_shine_filter_gray (guchar *pixel,
70 gint gate,
71 gfloat scale,
72 gfloat level,
73 gfloat curve);
74 static gint focusblur_shine_filter_gray_alpha (guchar *pixel,
75 gint gate,
76 gfloat scale,
77 gfloat level,
78 gfloat curve);
79 static gint focusblur_shine_filter_sub (gfloat fval,
80 gfloat level,
81 gfloat curve);
82
83
84 /*---- Functions ----*/
85
86 gboolean
87 focusblur_shine_update (FblurShineData **shine,
88 GimpDrawable *drawable,
89 FblurStoreParam *store)
90 {
91 GimpPixelRgn pr;
92 gpointer p;
93 gint light_width;
94 gint shine_threshold_gate;
95 gfloat shine_threshold_scale;
96 gfloat shine_level_float;
97 gfloat shine_curve_float;
98 guchar *slp, *sp;
99 guchar *dlp, *dp;
100 gint x, y;
101
102 g_return_val_if_fail (drawable != NULL, FALSE);
103
104 if (! focusblur_shine_check_enabled (store))
105 return TRUE;
106
107 if (*shine)
108 {
109 if (store->shine_type == (*shine)->shine_type &&
110 store->shine_threshold == (*shine)->shine_threshold &&
111 store->shine_level == (*shine)->shine_level &&
112 store->shine_curve == (*shine)->shine_curve)
113 {
114 /* not changed */
115 return TRUE;
116 }
117 }
118
119 else
120 {
121 *shine = g_new0 (FblurShineData, 1);
122 gimp_drawable_mask_bounds (drawable->drawable_id,
123 &((*shine)->x1), &((*shine)->y1),
124 &((*shine)->x2), &((*shine)->y2));
125 (*shine)->width = (*shine)->x2 - (*shine)->x1;
126 (*shine)->height = (*shine)->y2 - (*shine)->y1;
127 (*shine)->data = g_new (guchar, (*shine)->width * (*shine)->height);
128 }
129
130 /* copy running values */
131 (*shine)->shine_type = store->shine_type;
132 (*shine)->shine_threshold = store->shine_threshold;
133 (*shine)->shine_level = store->shine_level;
134 (*shine)->shine_curve = store->shine_curve;
135
136 /* pre-computed value */
137 /* none */
138
139 light_width = rintf (255 * (*shine)->shine_threshold / 100.0f);
140 shine_threshold_gate = 255 - light_width;
141 shine_threshold_scale = (light_width > 0) ? (1.0f / light_width) : 0.0f;
142 shine_level_float = (*shine)->shine_level / 100.0f;
143 shine_curve_float =
144 ((*shine)->shine_curve > 0.0001f) ? (1.0f / (*shine)->shine_curve) : 0.0f;
145
146 gimp_pixel_rgn_init (&pr, drawable, (*shine)->x1, (*shine)->y1,
147 (*shine)->width, (*shine)->height, FALSE, FALSE);
148 p = gimp_pixel_rgns_register (1, &pr);
149
150 if (gimp_drawable_is_rgb (drawable->drawable_id))
151 {
152 switch ((*shine)->shine_type)
153 {
154 case FBLUR_SHINE_LUMINOSITY:
155 if (gimp_drawable_has_alpha (drawable->drawable_id))
156 for (; p; p = gimp_pixel_rgns_process (p))
157 for (y = pr.h, slp = pr.data,
158 dlp = (*shine)->data + (pr.y - (*shine)->y1)
159 * (*shine)->width + (pr.x - (*shine)->x1);
160 y --; slp += pr.rowstride, dlp += (*shine)->width)
161 for (x = pr.w, sp = slp, dp = dlp; x --; sp += pr.bpp, dp ++)
162 *dp = focusblur_shine_filter_luminosity_alpha
163 (sp, shine_threshold_gate, shine_threshold_scale,
164 shine_level_float, shine_curve_float);
165 else
166 for (; p; p = gimp_pixel_rgns_process (p))
167 for (y = pr.h, slp = pr.data,
168 dlp = (*shine)->data + (pr.y - (*shine)->y1)
169 * (*shine)->width + (pr.x - (*shine)->x1);
170 y --; slp += pr.rowstride, dlp += (*shine)->width)
171 for (x = pr.w, sp = slp, dp = dlp; x --; sp += pr.bpp, dp ++)
172 *dp = focusblur_shine_filter_luminosity
173 (sp, shine_threshold_gate, shine_threshold_scale,
174 shine_level_float, shine_curve_float);
175 break;
176
177 case FBLUR_SHINE_SATURATION:
178 if (gimp_drawable_has_alpha (drawable->drawable_id))
179 for (; p; p = gimp_pixel_rgns_process (p))
180 for (y = pr.h, slp = pr.data,
181 dlp = (*shine)->data + (pr.y - (*shine)->y1)
182 * (*shine)->width + (pr.x - (*shine)->x1);
183 y --; slp += pr.rowstride, dlp += (*shine)->width)
184 for (x = pr.w, sp = slp, dp = dlp; x --; sp += pr.bpp, dp ++)
185 *dp = focusblur_shine_filter_saturation_alpha
186 (sp, shine_threshold_gate, shine_threshold_scale,
187 shine_level_float, shine_curve_float);
188 else
189 for (; p; p = gimp_pixel_rgns_process (p))
190 for (y = pr.h, slp = pr.data,
191 dlp = (*shine)->data + (pr.y - (*shine)->y1)
192 * (*shine)->width + (pr.x - (*shine)->x1);
193 y --; slp += pr.rowstride, dlp += (*shine)->width)
194 for (x = pr.w, sp = slp, dp = dlp; x --; sp += pr.bpp, dp ++)
195 *dp = focusblur_shine_filter_saturation
196 (sp, shine_threshold_gate, shine_threshold_scale,
197 shine_level_float, shine_curve_float);
198 break;
199
200 default:
201 g_assert_not_reached ();
202 }
203 }
204 else
205 {
206 if (gimp_drawable_has_alpha (drawable->drawable_id))
207 for (; p; p = gimp_pixel_rgns_process (p))
208 for (y = pr.h, slp = pr.data,
209 dlp = (*shine)->data + (pr.y - (*shine)->y1)
210 * (*shine)->width + (pr.x - (*shine)->x1);
211 y --; slp += pr.rowstride, dlp += (*shine)->width)
212 for (x = pr.w, sp = slp, dp = dlp; x --; sp += pr.bpp, dp ++)
213 *dp = focusblur_shine_filter_gray_alpha
214 (sp, shine_threshold_gate, shine_threshold_scale,
215 shine_level_float, shine_curve_float);
216 else
217 for (; p; p = gimp_pixel_rgns_process (p))
218 for (y = pr.h, slp = pr.data,
219 dlp = (*shine)->data + (pr.y - (*shine)->y1)
220 * (*shine)->width + (pr.x - (*shine)->x1);
221 y --; slp += pr.rowstride, dlp += (*shine)->width)
222 for (x = pr.w, sp = slp, dp = dlp; x --; sp += pr.bpp, dp ++)
223 *dp = focusblur_shine_filter_gray
224 (sp, shine_threshold_gate, shine_threshold_scale,
225 shine_level_float, shine_curve_float);
226 }
227
228 return TRUE;
229 }
230
231
232 void
233 focusblur_shine_destroy (FblurShineData **shine)
234 {
235 if (*shine)
236 {
237 if ((*shine)->data)
238 g_free ((*shine)->data);
239
240 g_free (*shine);
241 *shine = NULL;
242 }
243 }
244
245
246 gint
247 focusblur_shine_get (FblurShineData *shine,
248 gint x,
249 gint y)
250 {
251 gint val;
252
253 x -= shine->x1;
254 y -= shine->y1;
255
256 g_assert (x >= 0);
257 g_assert (x < shine->width);
258 g_assert (y >= 0);
259 g_assert (y < shine->height);
260
261 val = shine->data[y * shine->width + x];
262
263 return val;
264 }
265
266
267 static gint
268 focusblur_shine_filter_luminosity (guchar *pixel,
269 gint gate,
270 gfloat scale,
271 gfloat level,
272 gfloat curve)
273 {
274 gfloat fval;
275 gint r, g, b;
276 gint val;
277
278 r = pixel[0];
279 g = pixel[1];
280 b = pixel[2];
281
282 fval = GIMP_RGB_LUMINANCE ((gfloat) r, (gfloat) g, (gfloat) b);
283 fval -= gate;
284 fval *= scale;
285 fval = CLAMP (fval, 0.0f, 1.0f);
286 val = focusblur_shine_filter_sub (fval, level, curve);
287
288 return val;
289 }
290
291
292 static gint
293 focusblur_shine_filter_luminosity_alpha (guchar *pixel,
294 gint gate,
295 gfloat scale,
296 gfloat level,
297 gfloat curve)
298 {
299 const gfloat color_fnum = 1.0f / 255.0f;
300 gfloat fval;
301 gint r, g, b;
302 gint val;
303
304 r = pixel[0];
305 g = pixel[1];
306 b = pixel[2];
307
308 fval = GIMP_RGB_LUMINANCE ((gfloat) r, (gfloat) g, (gfloat) b);
309 fval -= gate;
310 fval *= scale;
311 fval = CLAMP (fval, 0.0f, 1.0f);
312 fval *= color_fnum * pixel[3];
313 val = focusblur_shine_filter_sub (fval, level, curve);
314
315 return val;
316 }
317
318
319 static gint
320 focusblur_shine_filter_saturation (guchar *pixel,
321 gint gate,
322 gfloat scale,
323 gfloat level,
324 gfloat curve)
325 {
326 gfloat fr, fg, fb;
327 gfloat fval;
328 gint r, g, b;
329 gint val;
330
331 r = pixel[0];
332 g = pixel[1];
333 b = pixel[2];
334
335 r -= gate;
336 g -= gate;
337 b -= gate;
338
339 fr = CLAMP0255 (r) * scale;
340 fg = CLAMP0255 (g) * scale;
341 fb = CLAMP0255 (b) * scale;
342
343 fval = GIMP_RGB_LUMINANCE (fr, fg, fb);
344 val = focusblur_shine_filter_sub (fval, level, curve);
345
346 return val;
347 }
348
349
350 static gint
351 focusblur_shine_filter_saturation_alpha (guchar *pixel,
352 gint gate,
353 gfloat scale,
354 gfloat level,
355 gfloat curve)
356 {
357 const gfloat color_fnum = 1.0f / 255.0f;
358 gfloat fr, fg, fb;
359 gfloat fval;
360 gint r, g, b;
361 gint val;
362
363 r = pixel[0];
364 g = pixel[1];
365 b = pixel[2];
366
367 r -= gate;
368 g -= gate;
369 b -= gate;
370
371 fr = CLAMP0255 (r) * scale;
372 fg = CLAMP0255 (g) * scale;
373 fb = CLAMP0255 (b) * scale;
374
375 fval = GIMP_RGB_LUMINANCE (fr, fg, fb);
376 fval *= color_fnum * pixel[3];
377 val = focusblur_shine_filter_sub (fval, level, curve);
378
379 return val;
380 }
381
382
383 static gint
384 focusblur_shine_filter_gray (guchar *pixel,
385 gint gate,
386 gfloat scale,
387 gfloat level,
388 gfloat curve)
389 {
390 gfloat fval;
391 gint gray;
392 gint val;
393
394 gray = pixel[0];
395 gray -= gate;
396 fval = CLAMP0255 (gray) * scale;
397 val = focusblur_shine_filter_sub (fval, level, curve);
398
399 return val;
400 }
401
402
403 static gint
404 focusblur_shine_filter_gray_alpha (guchar *pixel,
405 gint gate,
406 gfloat scale,
407 gfloat level,
408 gfloat curve)
409 {
410 const gfloat color_fnum = 1.0f / 255.0f;
411 gfloat fval;
412 gint gray;
413 gint val;
414
415 gray = pixel[0];
416 gray -= gate;
417 fval = CLAMP0255 (gray) * scale;
418 fval *= color_fnum * pixel[1];
419 val = focusblur_shine_filter_sub (fval, level, curve);
420
421 return val;
422 }
423
424
425 static gint
426 focusblur_shine_filter_sub (gfloat fval,
427 gfloat level,
428 gfloat curve)
429 {
430 gint val;
431
432 /* effect level and curve */
433 if (curve > 0.0f)
434 {
435 fval = powf (fval, curve);
436 g_assert (finite (fval));
437 }
438 else if (fval < 0.99999f)
439 return 0;
440
441 fval *= level;
442
443 val = rintf (255.0f * fval);
444
445 return val;
446 }
+0
-59
focus-blur/focusblur-3.2.6/src/shine.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_SHINE_H__
22 #define __FOCUSBLUR_SHINE_H__
23
24 #include <glib/gtypes.h>
25 #include <libgimp/gimptypes.h>
26
27 #include "focusblurtypes.h"
28 #include "focusblurenums.h"
29
30
31 G_BEGIN_DECLS
32
33
34 gboolean focusblur_shine_update (FblurShineData **shine,
35 GimpDrawable *drawable,
36 FblurStoreParam *store);
37 void focusblur_shine_destroy (FblurShineData **shine);
38 gint focusblur_shine_get (FblurShineData *shine,
39 gint x,
40 gint y);
41
42 static inline gboolean
43 focusblur_shine_check_enabled (FblurStoreParam *store)
44 {
45 gboolean enable_shine;
46
47 enable_shine = (store->shine_radius &&
48 (store->shine_level >= 0.5f * 100.0f / 255)
49 ) ? TRUE : FALSE;
50
51 return enable_shine;
52 }
53
54
55 G_END_DECLS
56
57
58 #endif /* __FOCUSBLUR_SHINE_H__ */
+0
-134
focus-blur/focusblur-3.2.6/src/source.c less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #include "config.h"
22
23 #include <libgimp/gimp.h>
24
25 #include "focusblurparam.h"
26 #include "source.h"
27
28
29 /*---- Prototypes ----*/
30
31 static guchar* focusblur_source_getp (FblurSourceImage *source,
32 gint x,
33 gint y);
34
35
36 /*---- Functions ----*/
37
38 gboolean
39 focusblur_source_update (FblurSourceImage **source,
40 GimpDrawable *drawable)
41 {
42 GimpPixelRgn pr;
43 gint x1, x2, y1, y2;
44 gint width, height;
45
46 if (*source)
47 return TRUE;
48
49 *source = g_new0 (FblurSourceImage, 1);
50
51 /* Get selection rectangle */
52 (*source)->has_selection =
53 gimp_drawable_mask_bounds (drawable->drawable_id, &x1, &y1, &x2, &y2);
54
55 (*source)->x1 = x1;
56 (*source)->x2 = x2;
57 (*source)->y1 = y1;
58 (*source)->y2 = y2;
59
60 width = x2 - x1;
61 height = y2 - y1;
62
63 (*source)->bpp = drawable->bpp;
64 (*source)->rowstride = (*source)->bpp * width;
65 (*source)->data = g_new (guchar, (*source)->rowstride * height);
66
67 if (! (*source)->data)
68 {
69 focusblur_source_destroy (source);
70 return FALSE;
71 }
72
73 gimp_pixel_rgn_init (&pr, drawable, x1, y1, width, height,
74 FALSE, FALSE);
75 gimp_pixel_rgn_get_rect (&pr, (*source)->data, x1, y1, width, height);
76
77 (*source)->has_alpha = gimp_drawable_has_alpha (drawable->drawable_id);
78 (*source)->is_rgb = gimp_drawable_is_rgb (drawable->drawable_id);
79 (*source)->channels = drawable->bpp - ((*source)->has_alpha ? 1 : 0);
80
81 return TRUE;
82 }
83
84
85 void
86 focusblur_source_destroy (FblurSourceImage **source)
87 {
88 if (*source)
89 {
90 if ((*source)->data)
91 g_free ((*source)->data);
92
93 g_free (*source);
94 *source = NULL;
95 }
96 }
97
98
99 void
100 focusblur_source_get (FblurSourceImage *source,
101 gint x,
102 gint y,
103 guchar *pixel_ret)
104 {
105 guchar *pixelp;
106 gint c;
107
108 pixelp = focusblur_source_getp (source, x, y);
109
110 for (c = 0; c < source->bpp; c ++)
111 pixel_ret[c] = pixelp[c];
112 }
113
114
115 static guchar*
116 focusblur_source_getp (FblurSourceImage *source,
117 gint x,
118 gint y)
119 {
120 gsize offset;
121
122 g_assert (x >= source->x1);
123 g_assert (x < source->x2);
124 g_assert (y >= source->y1);
125 g_assert (y < source->y2);
126
127 x -= source->x1;
128 y -= source->y1;
129
130 offset = y * source->rowstride + x * source->bpp;
131
132 return source->data + offset;
133 }
+0
-62
focus-blur/focusblur-3.2.6/src/source.h less more
0 /* Focus Blur -- blur with focus plug-in.
1 * Copyright (C) 2002-2007 Kyoichiro Suda
2 *
3 * GIMP - The GNU Image Manipulation Program
4 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 */
20
21 #ifndef __FOCUSBLUR_SOURCE_H__
22 #define __FOCUSBLUR_SOURCE_H__
23
24 #include "config.h"
25
26 #include <glib/gtypes.h>
27 #include <libgimp/gimptypes.h>
28
29 #include "focusblurtypes.h"
30 #include "focusblurenums.h"
31
32
33 G_BEGIN_DECLS
34
35
36 struct _FblurSourceImage
37 {
38 guchar *data;
39 gint bpp;
40 gsize rowstride;
41 gint channels;
42 gint x1, x2, y1, y2;
43 gboolean has_selection;
44 gboolean is_rgb;
45 gboolean has_alpha;
46 };
47
48
49 gboolean focusblur_source_update (FblurSourceImage **source,
50 GimpDrawable *drawable);
51 void focusblur_source_destroy (FblurSourceImage **shine);
52 void focusblur_source_get (FblurSourceImage *source,
53 gint x,
54 gint y,
55 guchar *pixel_ret);
56
57
58 G_END_DECLS
59
60
61 #endif /* __FOCUSBLUR_SOURCE_H__ */
+0
-1
focus-blur/src less more
0 focusblur-3.2.6