Codebase list virt-viewer / upstream/9.0
New upstream version 9.0 Guido Günther 3 years ago
252 changed file(s) with 43184 addition(s) and 40717 deletion(s). Raw diff Collapse all Expand all
1010
1111 With additional patches & translations from:
1212
13 Aleksei Nikiforov <darktemplar@basealt.ru>
1314 Andrea Bolognani <abologna@redhat.com>
1415 Ben Mathews <beniam@yahoo.com>
1516 Charles Arnold <carnold@suse.com>
2122 Doug Goldstein <cardoe@cardoe.com>
2223 Eduardo Lima (Etrunko) <etrunko@redhat.com>
2324 Fabiano Fidêncio <fidencio@redhat.com>
25 Francesco Giudici <fgiudici@redhat.com>
2426 Frediano Ziglio <fziglio@redhat.com>
2527 Guannan Ren <gren@redhat.com>
2628 Guido Günther <agx@sigxcpu.org>
2729 Hans de Goede <hdegoede@redhat.com>
2830 Jiri Denemark <Jiri.Denemark@gmail.com>
2931 Jonathon Jongsma <jjongsma@redhat.com>
32 Julien ROPE <jrope@redhat.com>
33 Julien Ropé <jrope@redhat.com>
3034 Ján Tomko <jtomko@redhat.com>
35 Kevin Pouget <kpouget@redhat.com>
3136 Lukas Venhoda <lvenhoda@redhat.com>
3237 Lukáš Venhoda <lvenhoda@redhat.com>
3338 Marc-André Lureau <marcandre.lureau@redhat.com>
3641 Paul Donohue <virt-tools@PaulSD.com>
3742 Pavel Grunt <pgrunt@redhat.com>
3843 Pavel Hrdina <phrdina@redhat.com>
44 Pavel Moseev <mars@altlinux.org>
3945 Pavel Raiskup <praiskup@redhat.com>
4046 Qiu Wenbo <qiuwenbo@kylinos.com.cn>
4147 Rex Dieter <rdieter@math.unl.edu>
0 2020-05-01 Daniel P. Berrangé <berrange@redhat.com>
1
2 Update NEWS for 9.0 release
3
4 2020-04-09 Ján Tomko <jtomko@redhat.com>
5
6 README: prefer https over http
7
8 2020-04-03 Daniel P. Berrangé <berrange@redhat.com>
9
10 gitlab: introduce minimal CI job for checking DCO signoff
11
12 docs: update to point users to gitlab.com project
13 The project primary git repo has moved from pagure.io to
14 gitlab.com/virt-viewer/virt-viewer. We want users to submit
15 code contributions, bug reports and support questions to the
16 gitlab project, not the mailing list, nor bugzilla, nor the
17 virt-manager.org site.
18
19 We're still using virt-manager.org for hosting downloads of
20 source and pagure.io for MSIs, but we'll aim to change that
21 too.
22
23 2020-04-03 Julien Ropé <jrope@redhat.com>
24
25 Fix potential file descriptor leaks found by Coverity.
26 The error code returned by virt_viewer_session_open_fd() and
27 virt_viewer_session_channel_open_fd() were not checked. The file
28 descriptor passed to them could then be left opened even if the function
29 failed, causing a leak of resources.
30
31 This was reported by a Coverity scan, logged under
32 https://bugzilla.redhat.com/show_bug.cgi?id=1655792
33
34 Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
35
36 2020-02-19 Julien ROPE <jrope@redhat.com>
37
38 remote-viewer: add a default extension to screenshot filenames
39 When doing a screenshot, if the user provides a filename without a file
40 extension, an error occurs because the image format could not be determined.
41 This patch adds a .png extension to such filenames, so that there is a default
42 file format for screenshots.
43
44 Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1752514
45
46 Reviewed-by: Victor Toso <victortoso@redhat.com>
47
48 2020-02-07 Julien Ropé <jrope@redhat.com>
49
50 Remember monitor mapping on close.
51 When the application is stopped, if the windows are in fullscreen, their
52 position on the client will be remembered.
53
54 This change uses the existing option 'monitor-mapping' in the settings
55 file to save the position and reuse it on next launch.
56
57 This implements part of the requirement from
58 https://bugzilla.redhat.com/show_bug.cgi?id=1179070
59
60 NOTE: this feature is effective only with GTK >= 3.22
61
62 Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
63
64 2020-01-17 Francesco Giudici <fgiudici@redhat.com>
65
66 remote-viewer: add handler for SIGINT signal
67 When remote-viewer is started from terminal, CTRL-C sends a SIGINT
68 signal to the program causing immediate termination. On linux clients
69 usb redirected devices are left without any kernel driver attached,
70 causing them to appear as no more available to the host.
71 Add a SIGINT handler to allow a clean exit, in particular to allow
72 the kernel to attach back the host driver.
73 The issue is present on linux only.
74
75 To perform usb device redirection, virt-viewer leverages spice-gtk
76 library, which in turn relies on usbredir library, which uses libusb.
77 In order to take control of the usb device the auto-loaded kernel
78 driver must be detached. This is achieved (in the very end) with
79 libusb_detach_kernel_driver(). Then the device interfaces can be claimed
80 with libusb_claim_interface() and get in control to the application.
81 During normal application termination, the usb channel is teared down,
82 performing a reset of the usb device and giving back the control of the
83 device to the kernel (libusb_attach_kernel_driver()).
84 If the application quits without doing this, the device interfaces will
85 end up with no driver attached, making them not usable in the host
86 system.
87
88 Note that enabling libusb_set_auto_detach_kernel_driver() does not solve
89 the issue, as this is just a convenient API from libusb: libusb will
90 take care of detaching/attaching the driver to the interfaces of the usb
91 device each time a call to libusb_release_interface() and
92 libusb_claim_interface() is performed. An unexpected quit of the
93 application will skip the libusb_release_interface() call too, leaving
94 the interfaces without any driver attached.
95
96 Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1713311
97
98 Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
99
100 2019-12-16 Daniel P. Berrangé <berrange@redhat.com>
101
102 po: refresh translations from zanata
103
104 2019-10-11 Eduardo Lima (Etrunko) <etrunko@redhat.com>
105
106 remote-viewer: Prefer ca-cert from display instead of proxy
107 Since oVirt engine version 4.3.2.1, the API returns certificate data for
108 display connection in the VM XML, so users do not need to specify it
109 from the command line anymore. The certificate obtained from the XML
110 gets precedence over the one from the command line, which is still kept
111 to keep compatibility of older versions of oVirt.
112
113 Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1402909
114
115 2019-10-04 Victor Toso <me@victortoso.com>
116
117 remote-viewer: fix free on dangling pointer
118 On remote_viewer_session_connected() we are passing a dup of URI of
119 connection and freeing it afterwards. Problem is, we don't disconnect
120 from listening "session-connected" and on an eventual second emission
121 of this signal, remote-viewer crashes as seen in the backtrace below.
122
123 This can happen over switch-host migration message from
124 SpiceMainChannel.
125
126 A fix trying to use VirtViewerApp URI avoid the crash but introduces
127 regression while running remote-viewer with ovirt so, keeping the
128 changes to a minimum to avoid it, just use g_intern_string() for now.
129
130 Found it while improving migrate.py from spice/tests (server):
131 | Invalid free() / delete / delete[] / realloc()
132 | at 0x4839A0C: free (vg_replace_malloc.c:540)
133 | by 0x56EBD8C: g_free (in /usr/lib64/libglib-2.0.so.0.6000.6)
134 | by 0x11DED0: remote_viewer_session_connected (remote-viewer.c:658)
135 | by 0x564D741: g_closure_invoke (in /usr/lib64/libgobject-2.0.so.0.6000.6)
136 | by 0x56614F3: ??? (in /usr/lib64/libgobject-2.0.so.0.6000.6)
137 | by 0x566A34D: g_signal_emit_valist (in /usr/lib64/libgobject-2.0.so.0.6000.6)
138 | by 0x566AF68: g_signal_emit_by_name (in /usr/lib64/libgobject-2.0.so.0.6000.6)
139 | by 0x135E5D: virt_viewer_session_spice_main_channel_event (virt-viewer-session-spice.c:699)
140 | by 0x564D741: g_closure_invoke (in /usr/lib64/libgobject-2.0.so.0.6000.6)
141 | by 0x56614F3: ??? (in /usr/lib64/libgobject-2.0.so.0.6000.6)
142 | by 0x566A34D: g_signal_emit_valist (in /usr/lib64/libgobject-2.0.so.0.6000.6)
143 | by 0x53149E3: emit_main_context (gio-coroutine.c:198)
144 | Address 0x18f1ecc0 is 0 bytes inside a block of size 23 free'd
145 | at 0x4839A0C: free (vg_replace_malloc.c:540)
146 | by 0x56EBD8C: g_free (in /usr/lib64/libglib-2.0.so.0.6000.6)
147 | by 0x11DED0: remote_viewer_session_connected (remote-viewer.c:658)
148 | by 0x564D741: g_closure_invoke (in /usr/lib64/libgobject-2.0.so.0.6000.6)
149 | by 0x56614F3: ??? (in /usr/lib64/libgobject-2.0.so.0.6000.6)
150 | by 0x566A34D: g_signal_emit_valist (in /usr/lib64/libgobject-2.0.so.0.6000.6)
151 | by 0x566AF68: g_signal_emit_by_name (in /usr/lib64/libgobject-2.0.so.0.6000.6)
152 | by 0x135E5D: virt_viewer_session_spice_main_channel_event (virt-viewer-session-spice.c:699)
153 | by 0x564D741: g_closure_invoke (in /usr/lib64/libgobject-2.0.so.0.6000.6)
154 | by 0x56614F3: ??? (in /usr/lib64/libgobject-2.0.so.0.6000.6)
155 | by 0x566A34D: g_signal_emit_valist (in /usr/lib64/libgobject-2.0.so.0.6000.6)
156 | by 0x53149E3: emit_main_context (gio-coroutine.c:198)
157 | Block was alloc'd at
158 | at 0x483880B: malloc (vg_replace_malloc.c:309)
159 | by 0x56EBC98: g_malloc (in /usr/lib64/libglib-2.0.so.0.6000.6)
160 | by 0x5705C43: g_strdup (in /usr/lib64/libglib-2.0.so.0.6000.6)
161 | by 0x11EB80: remote_viewer_initial_connect (remote-viewer.c:696)
162 | by 0x11EB80: remote_viewer_start (remote-viewer.c:790)
163 | by 0x1250D3: virt_viewer_app_start (virt-viewer-app.c:1727)
164 | by 0x127108: virt_viewer_app_on_application_startup (virt-viewer-app.c:1870)
165 | by 0x564D741: g_closure_invoke (in /usr/lib64/libgobject-2.0.so.0.6000.6)
166 | by 0x5661638: ??? (in /usr/lib64/libgobject-2.0.so.0.6000.6)
167 | by 0x566A34D: g_signal_emit_valist (in /usr/lib64/libgobject-2.0.so.0.6000.6)
168 | by 0x566A972: g_signal_emit (in /usr/lib64/libgobject-2.0.so.0.6000.6)
169 | by 0x553ECA1: g_application_register (in /usr/lib64/libgio-2.0.so.0.6000.6)
170 | by 0x553F41D: g_application_run (in /usr/lib64/libgio-2.0.so.0.6000.6)
171
172 Acked-by: Eduardo Lima (Etrunko) <etrunko@redhat.com>
173
174 2019-08-30 Eduardo Lima (Etrunko) <etrunko@redhat.com>
175
176 ovirt-foreign-menu: Plug memory leak
177 Error caught by valgrind, the OvirtCollection object created in function
178 ovirt_foreign_menu_fetch_vm_async() was never freed.
179
180 433 (40 direct, 393 indirect) bytes in 1 blocks are definitely lost in loss record 16,708 of 17,677
181 at 0x5868FDF: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.6000.6)
182 by 0x584B42C: ??? (in /usr/lib64/libgobject-2.0.so.0.6000.6)
183 by 0x584D347: g_object_new_valist (in /usr/lib64/libgobject-2.0.so.0.6000.6)
184 by 0x584D69C: g_object_new (in /usr/lib64/libgobject-2.0.so.0.6000.6)
185 by 0x558E823: ovirt_collection_new (ovirt-collection.c:304)
186 by 0x558E98C: ovirt_sub_collection_new_from_resource_search (ovirt-collection.c:375)
187 by 0x42D510: ovirt_foreign_menu_fetch_vm_async (ovirt-foreign-menu.c:994)
188 by 0x42D510: ovirt_foreign_menu_next_async_step (ovirt-foreign-menu.c:316)
189 by 0x42D70D: api_fetched_cb (ovirt-foreign-menu.c:1025)
190 by 0x570BC19: ??? (in /usr/lib64/libgio-2.0.so.0.6000.6)
191 by 0x570C7EC: ??? (in /usr/lib64/libgio-2.0.so.0.6000.6)
192 by 0x559005D: call_async_cb (ovirt-proxy.c:279)
193 by 0x55B5A07: ??? (in /usr/lib64/librest-0.7.so.0.0.0)
194
195 Acked-by: Victor Toso <victortoso@redhat.com>
196
197 2019-08-26 Eduardo Lima (Etrunko) <etrunko@redhat.com>
198
199 ovirt-foreign-menu: Factor out code to set file collection
200 Acked-by: Victor Toso <victortoso@redhat.com>
201
202 2019-08-21 Eduardo Lima (Etrunko) <etrunko@redhat.com>
203
204 ovirt-foreign-menu: Only set domain_valid once
205 In the case of having a valid storage domain without any ISO files, this
206 variable can be reset to FALSE again in the next iteration of the loop,
207 resulting in a misleading error message presented to the user.
208
209 Acked-by: Victor Toso <victortoso@redhat.com>
210
211 2019-08-15 Fabiano Fidêncio <fidencio@redhat.com>
212
213 ovirt-foreign-menu: Fix warnings on Rawhide
214 gmaovirt-foreign-menu.c: In function 'storage_domains_fetched_cb':
215 ovirt-foreign-menu.c:721:9: error: format not a string literal and no format arguments [-Werror=format-security]
216 721 | g_debug(msg);
217 | ^~~~~~~
218 ovirt-foreign-menu.c:722:9: error: format not a string literal and no format arguments [-Werror=format-security]
219 722 | g_task_return_new_error(task, OVIRT_ERROR, OVIRT_ERROR_FAILED, msg);
220 | ^~~~~~~~~~~~~~~~~~~~~~~
221 cc1: some warnings being treated as errors
222 gmake[3]: *** [Makefile:963: libvirt_viewer_la-ovirt-foreign-menu.lo] Error 1
223 gmake[2]: *** [Makefile:647: all] Error 2
224 gmake[1]: *** [Makefile:482: all-recursive] Error 1
225 make: *** [Makefile:410: all] Error 2
226 error: Bad exit status from /var/tmp/rpm-tmp.f14Lmj (%build)
227
228 Errors have been caught by https://ci.centos.org/job/virt-viewer-rpm/systems=libvirt-fedora-rawhide/589/
229
230 Acked-by: Eduardo Lima (Etrunko) <etrunko@redhat.com>
231
232 2019-08-12 Eduardo Lima (Etrunko) <etrunko@redhat.com>
233
234 ovirt-foreign-menu: Fix endpoint for storage domains query
235 Instead of fetching toplevel REST API query, we use the one relative
236 from the data center, which returns more detailed information,
237 especially the status of the storage domain.
238
239 This fixes https://bugzilla.redhat.com/show_bug.cgi?id=1427467
240
241 Acked-by: Victor Toso <victortoso@redhat.com>
242
243 2019-08-08 Kevin Pouget <kpouget@redhat.com>
244
245 virt-viewer-file-transfer-dialog: improve error message
246 This patch improves the error shown to the user when a file transfer
247 fails.
248
249 The previous behavior was to create a simple message dialog box, with
250 the error description and the full list of the files that failed to be
251 transferred. When the list of files was long, the dialog box would
252 grow bigger than the screen.
253
254 Now, the file list is inserted inside a scrollable widget, whose
255 height is limited to 170px.
256
257 NB: these two calls would be more adapted, but they require GTK >=
258 3.22:
259
260 > gtk_scrolled_window_set_max_content_height(GTK_SCROLLED_WINDOW(scrolled_window), 170);
261 > gtk_scrolled_window_set_propagate_natural_height(GTK_SCROLLED_WINDOW(scrolled_window), TRUE);
262
263 Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1496356
264
265 Acked-by: Victor Toso <victortoso@redhat.com>
266
267 2019-06-19 Michal Privoznik <mprivozn@redhat.com>
268
269 Introduce bash completion
270 With this change one can get list of domains on the command line:
271
272 $ virt-viewer -c qemu:///system <TAB><TAB>
273 dom1 dom2 ... domN
274
275 The list of domains is fetched using virsh, hence the dependency
276 on libvirt-client recorded in the spec file. I think it's fair
277 to assume that Linux hosts with virt-viewer will have virsh
278 available too. If they don't, nothing breaks and no error message
279 is printed.
280
281 The completer script is inspired by libvirt.
282
283 Reviewed-by: Fabiano Fidêncio <fidencio@redhat.com>
284 Reviewed-by: Jonathon Jongsma <jjongsma@redhat.com>
285
286 2019-05-31 Eduardo Lima (Etrunko) <etrunko@redhat.com>
287
288 configure: Fix check for govirt functions
289 Use saved CFLAGS and LIBS to avoid errors in the check programs.
290
291 Acked-by: Victor Toso <victortoso@redhat.com>
292
293 2019-05-28 Pavel Moseev <mars@altlinux.org>
294
295 virt-viewer add translatable string
296 Acked-by: Eduardo Lima (Etrunko) <etrunko@redhat.com>
297
298 2019-04-16 Jonathon Jongsma <jjongsma@redhat.com>
299
300 Fix a regression when initial connection fails
301 Due to changes in commit 65ef66e4, when the initial connection fails,
302 virt-viewer just sat quietly and didn't indicate what was wrong. It also
303 did not exit as it did before. This is because we were using
304 virt_viewer_session_spice_channel_destroy() incorrectly. This function
305 was intended to be a callback that is called to clean up the VV session
306 when the SpiceSession tells us that a channel has been destroyed. It
307 does not actually destroy the channel, it only cleans up references to
308 that channel within virt-viewer. After calling this function, the
309 channel is not affected in any way. If the channel object was valid
310 before calling the function, it will be valid and unchanged after
311 calling the function as well.
312
313 The problem is that before commit 65ef66e4, this function
314 (_channel_destroy()) also had a side-effect of emitting a signal that
315 made us think that the SpiceSession was disconnected when it was not.
316 The application responded to this signal by exiting even though the
317 session was not properly disconnected and cleaned up.
318
319 We now no longer exit the application until the SpiceSession is properly
320 disconnected and cleaned up. So we need to make sure that this happens
321 when our initial connection fails. Therefore, when the main channel
322 receives an error channel-event, we should not call
323 virt_viewer_session_spice_channel_destroy(). This function should only
324 be called when a channel has actually been destroyed, and the channel is
325 not destroyed at this point. We should instead explicitly disconnect
326 the session, which will result in the channels being destroyed properly.
327 After the session destroys all of the channels, the 'channel-destroy' signal
328 will be emitted by SpiceSession, so the _channel_destroy() function will
329 eventually get called by the signal handler.
330
331 To make the proper use of the function more obvious, I also changed the
332 function name from _channel_destroy() to _channel_destroyed() and added
333 a comment.
334
335 Fixes: rhbz#1666869
336 Acked-by: Christophe Fergeau <cfergeau@redhat.com>
337
338 2019-03-15 Christophe Fergeau <cfergeau@redhat.com>
339
340 Mark PrintScreen as translatable
341 It's for example ImprÉcran on French keyboards.
342
343
344 https://bugzilla.redhat.com/show_bug.cgi?id=1510411
345 Fabiano Fidêncio <fidencio@redhat.com>
346
347 2019-03-12 Daniel P. Berrangé <berrange@redhat.com>
348
349 po: refresh translations from zanata
350
351 po: minimize uk ur vi wba yo zh_CN zh_HK zh_TW zu
352
353 po: minimize sq sr@latin sr sv ta te tg th tr tw
354
355 po: minimize or pa pl pt_BR pt ro ru si sk sl
356
357 po: minimize mn mr ms nb nds ne nl nn nso
358
359 po: minimize kw_GB kw@kkcor kw kw@uccor ky lt lv mai mk ml
360
361 po: minimize id ilo is it ja ka kk km kn ko
362
363 po: minimize fr gl gu he hi hr hu ia
364
365 po: minimize de_CH de el en_GB eo es et eu fa fi
366
367 po: minimize bn_IN bn bo br brx bs ca cs cy da
368
369 po: minimize af am anp ar as ast bal be bg
370
371 po: minimize & canonicalize translations stored in git
372 Similar to the virt-viewer.pot, .po files contain line numbers and file
373 names identifying where in the source a translatable string comes from.
374 The source locations in the .po files are thrown away and replaced with
375 content from the virt-viewer.pot whenever msgmerge is run, so this is not
376 precious information that needs to be stored in git.
377
378 When msgmerge processes a .po file, it will add in any msgids from the
379 virt-viewer.pot that were not already present. Thus, if a particular msgid
380 currently has no translation, it can be considered redundant and again
381 does not need storing in git.
382
383 When msgmerge processes a .po file and can't find an exact existing
384 translation match, it will try todo fuzzy matching instead, marking such
385 entries with a "# fuzzy" comment to alert the translator to take a
386 look and either discard, edit or accept the match. Looking at the
387 existing fuzzy matches in .po files shows that the quality is awful,
388 with many having a completely different set of printf format specifiers
389 between the msgid and fuzzy msgstr entry. Fortunately when msgfmt
390 generates the .gmo, the fuzzy entries are all ignored anyway. The fuzzy
391 entries could be useful to translators if they were working on the .po
392 files directly from git, but Virt-Viewer outsourced translation to the
393 Fedora Zanata system, so keeping fuzzy matches in git is not much help.
394
395 Finally, by default msgids are sorted based on source location. Thus, if
396 a bit of code with translatable text is moved from one file to another,
397 it may shift around in the .po file, despite the msgid not itself changing.
398 If the msgids were sorted alphabetically, the .po files would have
399 stable ordering when code is refactored.
400
401 This patch takes advantage of the above observations to canonicalize
402 and minimize the content stored for .po files in git. Instead of storing
403 the real .po files, we now store .mini.po files.
404
405 The .mini.po files are the same file format as .po files, but have no
406 source location comments, are sorted alphabetically, and all fuzzy
407 msgstrs and msgids with no translation are discarded. This cuts the size
408 of content in the po directory.
409
410 Users working from a virt-viewer git checkout who need the full .po files
411 can run "make update-po", which merges the virt-viewer.pot and .mini.po
412 file to create a .po file containing all the content previously stored
413 in git.
414
415 Conversely if a full .po file has been modified, for example, by
416 downloading new content from Zanata, the .mini.po files can be updated
417 by running "make update-mini-po". The resulting diffs of the .mini.po
418 file will clearly show the changed translations without any of the noise
419 that previously obscured content. Being able to see content changes
420 clearly actually identified a bug in the zanata python client where it
421 was adding bogus "fuzzy" annotations to many messages:
422
423 https://bugzilla.redhat.com/show_bug.cgi?id=1564497
424
425 Users working from virt-viewer releases should not see any difference in
426 behaviour, since the tarballs only contain the full .po files, not the
427 .mini.po files.
428
429 As an added benefit, generating tarballs with "make dist", will no
430 longer cause creation of dirty files in git, since it won't touch the
431 .mini.po files, only the .po files which are no longer kept in git.
432
433 The languages are minimized in the following commit since it is a
434 large mechanical process.
435
436 po: add rules for integration with zanata
437 Add rules to handle pushing virt-viewer.pot to zanata, and refreshing .po
438 files with new content from zanata.
439
440 po: remove language list from zanata configuration
441 The <locales> element in zanata.xml is no longer relevant as this info
442 is recorded server side.
443
444 po: provide custom make rules for po file management
445 Historically we have relied on intltool to install a standard
446 po/Makefile.in.in which has very limited scope for customization.
447 intltool is deprecated in favour of standard gettextize tools,
448 but these share the same disadvantages.
449
450 Writing make rules for po file management is no more difficult
451 than any other rules virt-viewer has, so stop using intltool
452 and don't use gettextize ether.
453
454 po: fix syntax error in plural forms for lt language
455
456 2019-03-07 Aleksei Nikiforov <darktemplar@basealt.ru>
457
458 remote-viewer: Allow toggling shared clipboard
459 Message-Id: <20190304143712.27989-1-darktemplar@basealt.ru>
460
461 2019-03-04 Daniel P. Berrangé <berrange@redhat.com>
462
463 Add a git-publish configuration file
464
0465 2019-03-01 Daniel P. Berrangé <berrange@redhat.com>
466
467 rpm: remove obsolete Group tag purged from Fedora RPMs
468
469 Post release verson bump to 9.0
1470
2471 Update NEWS for 8.0 release
3472
11
22 ACLOCAL_AMFLAGS = -I m4
33
4 SUBDIRS = icons src man po data tests
4 SUBDIRS = bash-completion icons src man po data tests
55
66 AM_DISTCHECK_CONFIGURE_FLAGS = --disable-update-mimedb
77 EXTRA_DIST = \
88 $(PACKAGE).spec $(PACKAGE).spec.in \
99 mingw-$(PACKAGE).spec.in \
10 intltool-extract.in \
11 intltool-merge.in \
12 intltool-update.in \
1310 GNUmakefile \
1411 maint.mk \
1512 cfg.mk \
2320 DISTCLEAN_FILES = \
2421 $(PACKAGE).spec \
2522 mingw-$(PACKAGE).spec \
26 intltool-extract \
27 intltool-merge \
28 intltool-update \
2923 $(NULL)
3024
3125 MAINTAINERCLEANFILES = \
3327 $(srcdir)/INSTALL \
3428 $(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \
3529 $(GITIGNORE_MAINTAINERCLEANFILES_M4_LIBTOOL) \
36 $(srcdir)/m4/intltool.m4 \
3730 $(NULL)
3831
3932 dist-hook: gen-ChangeLog gen-AUTHORS
9191 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
9292 $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
9393 $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
94 $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
94 $(top_srcdir)/m4/virt-bash-completion.m4 \
95 $(top_srcdir)/m4/virt-nls.m4 $(top_srcdir)/acinclude.m4 \
96 $(top_srcdir)/configure.ac
9597 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
9698 $(ACLOCAL_M4)
9799 DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
212214 | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
213215 distcleancheck_listfiles = find . -type f -print
214216 ACLOCAL = @ACLOCAL@
215 ALL_LINGUAS = @ALL_LINGUAS@
216217 AMTAR = @AMTAR@
217218 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
218219 AR = @AR@
220221 AUTOHEADER = @AUTOHEADER@
221222 AUTOMAKE = @AUTOMAKE@
222223 AWK = @AWK@
224 BASH_COMPLETIONS_DIR = @BASH_COMPLETIONS_DIR@
225 BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
226 BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
227 BASH_COMPLETION_REQUIRED = @BASH_COMPLETION_REQUIRED@
223228 BUILDID = @BUILDID@
224 CATALOGS = @CATALOGS@
225 CATOBJEXT = @CATOBJEXT@
226229 CC = @CC@
227230 CCDEPMODE = @CCDEPMODE@
228231 CFLAGS = @CFLAGS@
229232 CPP = @CPP@
230233 CPPFLAGS = @CPPFLAGS@
231234 CYGPATH_W = @CYGPATH_W@
232 DATADIRNAME = @DATADIRNAME@
233235 DEFS = @DEFS@
234236 DEPDIR = @DEPDIR@
235237 DLLTOOL = @DLLTOOL@
247249 GLIB2_REQUIRED = @GLIB2_REQUIRED@
248250 GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@
249251 GLIB_MKENUMS = @GLIB_MKENUMS@
250 GMOFILES = @GMOFILES@
251 GMSGFMT = @GMSGFMT@
252252 GOVIRT_REQUIRED = @GOVIRT_REQUIRED@
253253 GREP = @GREP@
254254 GTK_CFLAGS = @GTK_CFLAGS@
263263 INSTALL_PROGRAM = @INSTALL_PROGRAM@
264264 INSTALL_SCRIPT = @INSTALL_SCRIPT@
265265 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
266 INSTOBJEXT = @INSTOBJEXT@
267 INTLLIBS = @INTLLIBS@
268 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
269 INTLTOOL_MERGE = @INTLTOOL_MERGE@
270 INTLTOOL_PERL = @INTLTOOL_PERL@
271 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
272 INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@
273 INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
274 INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
275 INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
276 INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
277266 LD = @LD@
278267 LDFLAGS = @LDFLAGS@
279268 LIBOBJS = @LIBOBJS@
293282 MAKEINFO = @MAKEINFO@
294283 MANIFEST_TOOL = @MANIFEST_TOOL@
295284 MKDIR_P = @MKDIR_P@
296 MKINSTALLDIRS = @MKINSTALLDIRS@
297285 MSGFMT = @MSGFMT@
298 MSGFMT_OPTS = @MSGFMT_OPTS@
299286 MSGMERGE = @MSGMERGE@
300287 NM = @NM@
301288 NMEDIT = @NMEDIT@
316303 PKG_CONFIG = @PKG_CONFIG@
317304 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
318305 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
319 POFILES = @POFILES@
320 POSUB = @POSUB@
321 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
322 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
323306 RANLIB = @RANLIB@
324307 REST_REQUIRED = @REST_REQUIRED@
325308 SED = @SED@
333316 SPICE_PROTOCOL_REQUIRED = @SPICE_PROTOCOL_REQUIRED@
334317 STRIP = @STRIP@
335318 UPDATE_MIME_DATABASE = @UPDATE_MIME_DATABASE@
336 USE_NLS = @USE_NLS@
337319 VERSION = @VERSION@
338320 VTE_CFLAGS = @VTE_CFLAGS@
339321 VTE_LIBS = @VTE_LIBS@
375357 includedir = @includedir@
376358 infodir = @infodir@
377359 install_sh = @install_sh@
378 intltool__v_merge_options_ = @intltool__v_merge_options_@
379 intltool__v_merge_options_0 = @intltool__v_merge_options_0@
380360 libdir = @libdir@
381361 libexecdir = @libexecdir@
382362 localedir = @localedir@
398378 top_srcdir = @top_srcdir@
399379 NULL =
400380 ACLOCAL_AMFLAGS = -I m4
401 SUBDIRS = icons src man po data tests
381 SUBDIRS = bash-completion icons src man po data tests
402382 AM_DISTCHECK_CONFIGURE_FLAGS = --disable-update-mimedb
403383 EXTRA_DIST = \
404384 $(PACKAGE).spec $(PACKAGE).spec.in \
405385 mingw-$(PACKAGE).spec.in \
406 intltool-extract.in \
407 intltool-merge.in \
408 intltool-update.in \
409386 GNUmakefile \
410387 maint.mk \
411388 cfg.mk \
419396 DISTCLEAN_FILES = \
420397 $(PACKAGE).spec \
421398 mingw-$(PACKAGE).spec \
422 intltool-extract \
423 intltool-merge \
424 intltool-update \
425399 $(NULL)
426400
427401 MAINTAINERCLEANFILES = \
429403 $(srcdir)/INSTALL \
430404 $(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \
431405 $(GITIGNORE_MAINTAINERCLEANFILES_M4_LIBTOOL) \
432 $(srcdir)/m4/intltool.m4 \
433406 $(NULL)
434407
435408 all: config.h
00 Virt Viewer News
11 ================
2
3 9.0: May 1, 2020
4 -----------------
5
6 - Project moved to https://gitlab.com/virt-viewer/virt-viewer
7 - Allow toggling shared clipboard in remote-viewer
8 - Fix handling when initial spice connection fails
9 - Fix check for govirt library
10 - Add bash completion of cli args
11 - Improve errors in file transfer dialog
12 - Fix ovirt foreign menu storage domains query
13 - Prefer TLS certs from oVirt instead of CLI
14 - Improve USB device cleanup when Ctrl-C is used
15 - Remember monitor mappings across restarts
16 - Add a default file extension to screenshots
17 - Updated translations
18 - Fix misc memory leaks
219
320 8.0: Mar 1, 2019
421 -----------------
2626 Virt Viewer uses libvirt to lookup information about the
2727 guest OS display. This is available from
2828
29 http://libvirt.org/
29 https://libvirt.org/
3030
31 Further information about the Virt Viewer application can be
32 found on the Virt Manager website:
31 Bug reports / support questions should be submitted to
3332
34 http://virt-manager.org/
33 https://gitlab.com/virt-viewer/virt-viewer/-/issues
3534
36 Feedback should be directed to the mailing list at
35 Code contributions should be submitted as merge requests to
3736
38 http://www.redhat.com/mailman/listinfo/virt-tools-list
37 https://gitlab.com/virt-viewer/virt-viewer/-/merge_requests
1818 You have another version of autoconf. It may work, but is not guaranteed to.
1919 If you have problems, you may need to regenerate the build system entirely.
2020 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
21
22 # Copyright (C) 1995-2002 Free Software Foundation, Inc.
23 # Copyright (C) 2001-2003,2004 Red Hat, Inc.
24 #
25 # This file is free software, distributed under the terms of the GNU
26 # General Public License. As a special exception to the GNU General
27 # Public License, this file may be distributed as part of a program
28 # that contains a configuration script generated by Autoconf, under
29 # the same distribution terms as the rest of that program.
30 #
31 # This file can be copied and used freely without restrictions. It can
32 # be used in projects which are not available under the GNU Public License
33 # but which still want to provide support for the GNU gettext functionality.
34 #
35 # Macro to add for using GNU gettext.
36 # Ulrich Drepper <drepper@cygnus.com>, 1995, 1996
37 #
38 # Modified to never use included libintl.
39 # Owen Taylor <otaylor@redhat.com>, 12/15/1998
40 #
41 # Major rework to remove unused code
42 # Owen Taylor <otaylor@redhat.com>, 12/11/2002
43 #
44 # Added better handling of ALL_LINGUAS from GNU gettext version
45 # written by Bruno Haible, Owen Taylor <otaylor.redhat.com> 5/30/3002
46 #
47 # Modified to require ngettext
48 # Matthias Clasen <mclasen@redhat.com> 08/06/2004
49
50 # Increment this whenever this file is changed.
51 #serial 1
52
53 # We need this here as well, since someone might use autoconf-2.5x
54 # to configure GLib then an older version to configure a package
55 # using AM_GLIB_GNU_GETTEXT
56 AC_PREREQ(2.53)
57
58 dnl
59 dnl We go to great lengths to make sure that aclocal won't
60 dnl try to pull in the installed version of these macros
61 dnl when running aclocal in the glib directory.
62 dnl
63 m4_copy([AC_DEFUN],[glib_DEFUN])
64 m4_copy([AC_REQUIRE],[glib_REQUIRE])
65 dnl
66 dnl At the end, if we're not within glib, we'll define the public
67 dnl definitions in terms of our private definitions.
68 dnl
69
70 # GLIB_LC_MESSAGES
71 #--------------------
72 glib_DEFUN([GLIB_LC_MESSAGES],
73 [AC_CHECK_HEADERS([locale.h])
74 if test $ac_cv_header_locale_h = yes; then
75 AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
76 [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
77 am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
78 if test $am_cv_val_LC_MESSAGES = yes; then
79 AC_DEFINE(HAVE_LC_MESSAGES, 1,
80 [Define if your <locale.h> file defines LC_MESSAGES.])
81 fi
82 fi])
83
84 # GLIB_PATH_PROG_WITH_TEST
85 #----------------------------
86 dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
87 dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
88 glib_DEFUN([GLIB_PATH_PROG_WITH_TEST],
89 [# Extract the first word of "$2", so it can be a program name with args.
90 set dummy $2; ac_word=[$]2
91 AC_MSG_CHECKING([for $ac_word])
92 AC_CACHE_VAL(ac_cv_path_$1,
93 [case "[$]$1" in
94 /*)
95 ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
96 ;;
97 *)
98 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
99 for ac_dir in ifelse([$5], , $PATH, [$5]); do
100 test -z "$ac_dir" && ac_dir=.
101 if test -f $ac_dir/$ac_word; then
102 if [$3]; then
103 ac_cv_path_$1="$ac_dir/$ac_word"
104 break
105 fi
106 fi
107 done
108 IFS="$ac_save_ifs"
109 dnl If no 4th arg is given, leave the cache variable unset,
110 dnl so AC_PATH_PROGS will keep looking.
111 ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
112 ])dnl
113 ;;
114 esac])dnl
115 $1="$ac_cv_path_$1"
116 if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
117 AC_MSG_RESULT([$]$1)
118 else
119 AC_MSG_RESULT(no)
120 fi
121 AC_SUBST($1)dnl
122 ])
123
124 dnl Checks for special options needed on Mac OS X.
125 dnl Defines INTL_MACOSX_LIBS.
126 dnl
127 dnl Copied from intlmacosx.m4 in gettext, GPL.
128 dnl Copyright (C) 2004-2013 Free Software Foundation, Inc.
129 glib_DEFUN([glib_gt_INTL_MACOSX],
130 [
131 dnl Check for API introduced in Mac OS X 10.2.
132 AC_CACHE_CHECK([for CFPreferencesCopyAppValue],
133 [gt_cv_func_CFPreferencesCopyAppValue],
134 [gt_save_LIBS="$LIBS"
135 LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
136 AC_LINK_IFELSE(
137 [AC_LANG_PROGRAM(
138 [[#include <CoreFoundation/CFPreferences.h>]],
139 [[CFPreferencesCopyAppValue(NULL, NULL)]])],
140 [gt_cv_func_CFPreferencesCopyAppValue=yes],
141 [gt_cv_func_CFPreferencesCopyAppValue=no])
142 LIBS="$gt_save_LIBS"])
143 if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
144 AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], [1],
145 [Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in the CoreFoundation framework.])
146 fi
147 dnl Check for API introduced in Mac OS X 10.3.
148 AC_CACHE_CHECK([for CFLocaleCopyCurrent], [gt_cv_func_CFLocaleCopyCurrent],
149 [gt_save_LIBS="$LIBS"
150 LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation"
151 AC_LINK_IFELSE(
152 [AC_LANG_PROGRAM(
153 [[#include <CoreFoundation/CFLocale.h>]],
154 [[CFLocaleCopyCurrent();]])],
155 [gt_cv_func_CFLocaleCopyCurrent=yes],
156 [gt_cv_func_CFLocaleCopyCurrent=no])
157 LIBS="$gt_save_LIBS"])
158 if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
159 AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], [1],
160 [Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the CoreFoundation framework.])
161 fi
162 INTL_MACOSX_LIBS=
163 if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then
164 INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
165 fi
166 AC_SUBST([INTL_MACOSX_LIBS])
167 ])
168
169 # GLIB_WITH_NLS
170 #-----------------
171 glib_DEFUN([GLIB_WITH_NLS],
172 dnl NLS is obligatory
173 [USE_NLS=yes
174 AC_SUBST(USE_NLS)
175
176 gt_cv_have_gettext=no
177
178 CATOBJEXT=NONE
179 XGETTEXT=:
180 INTLLIBS=
181
182 glib_gt_INTL_MACOSX
183
184 AC_CHECK_HEADER(libintl.h,
185 [gt_cv_func_dgettext_libintl="no"
186 libintl_extra_libs=""
187
188 #
189 # First check in libc
190 #
191 AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc,
192 [AC_TRY_LINK([
193 #include <libintl.h>
194 ],
195 [return !ngettext ("","", 1)],
196 gt_cv_func_ngettext_libc=yes,
197 gt_cv_func_ngettext_libc=no)
198 ])
199
200 if test "$gt_cv_func_ngettext_libc" = "yes" ; then
201 AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
202 [AC_TRY_LINK([
203 #include <libintl.h>
204 ],
205 [return !dgettext ("","")],
206 gt_cv_func_dgettext_libc=yes,
207 gt_cv_func_dgettext_libc=no)
208 ])
209 fi
210
211 if test "$gt_cv_func_ngettext_libc" = "yes" ; then
212 AC_CHECK_FUNCS(bind_textdomain_codeset)
213 fi
214
215 #
216 # If we don't have everything we want, check in libintl
217 #
218 if test "$gt_cv_func_dgettext_libc" != "yes" \
219 || test "$gt_cv_func_ngettext_libc" != "yes" \
220 || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
221
222 AC_CHECK_LIB(intl, bindtextdomain,
223 [AC_CHECK_LIB(intl, ngettext,
224 [AC_CHECK_LIB(intl, dgettext,
225 gt_cv_func_dgettext_libintl=yes)])])
226
227 if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
228 AC_MSG_CHECKING([if -liconv is needed to use gettext])
229 AC_MSG_RESULT([])
230 AC_CHECK_LIB(intl, ngettext,
231 [AC_CHECK_LIB(intl, dcgettext,
232 [gt_cv_func_dgettext_libintl=yes
233 libintl_extra_libs=-liconv],
234 :,-liconv)],
235 :,-liconv)
236 fi
237
238 #
239 # If we found libintl, then check in it for bind_textdomain_codeset();
240 # we'll prefer libc if neither have bind_textdomain_codeset(),
241 # and both have dgettext and ngettext
242 #
243 if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
244 glib_save_LIBS="$LIBS"
245 LIBS="$LIBS -lintl $libintl_extra_libs"
246 unset ac_cv_func_bind_textdomain_codeset
247 AC_CHECK_FUNCS(bind_textdomain_codeset)
248 LIBS="$glib_save_LIBS"
249
250 if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
251 gt_cv_func_dgettext_libc=no
252 else
253 if test "$gt_cv_func_dgettext_libc" = "yes" \
254 && test "$gt_cv_func_ngettext_libc" = "yes"; then
255 gt_cv_func_dgettext_libintl=no
256 fi
257 fi
258 fi
259 fi
260
261 if test "$gt_cv_func_dgettext_libc" = "yes" \
262 || test "$gt_cv_func_dgettext_libintl" = "yes"; then
263 gt_cv_have_gettext=yes
264 fi
265
266 if test "$gt_cv_func_dgettext_libintl" = "yes"; then
267 INTLLIBS="-lintl $libintl_extra_libs $INTL_MACOSX_LIBS"
268 fi
269
270 if test "$gt_cv_have_gettext" = "yes"; then
271 AC_DEFINE(HAVE_GETTEXT,1,
272 [Define if the GNU gettext() function is already present or preinstalled.])
273 GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
274 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
275 if test "$MSGFMT" != "no"; then
276 glib_save_LIBS="$LIBS"
277 LIBS="$LIBS $INTLLIBS"
278 AC_CHECK_FUNCS(dcgettext)
279 MSGFMT_OPTS=
280 AC_MSG_CHECKING([if msgfmt accepts -c])
281 GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[
282 msgid ""
283 msgstr ""
284 "Content-Type: text/plain; charset=UTF-8\n"
285 "Project-Id-Version: test 1.0\n"
286 "PO-Revision-Date: 2007-02-15 12:01+0100\n"
287 "Last-Translator: test <foo@bar.xx>\n"
288 "Language-Team: C <LL@li.org>\n"
289 "MIME-Version: 1.0\n"
290 "Content-Transfer-Encoding: 8bit\n"
291 ], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])])
292 AC_SUBST(MSGFMT_OPTS)
293 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
294 GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
295 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
296 AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
297 return _nl_msg_cat_cntr],
298 [CATOBJEXT=.gmo
299 DATADIRNAME=share],
300 [case $host in
301 *-*-solaris*)
302 dnl On Solaris, if bind_textdomain_codeset is in libc,
303 dnl GNU format message catalog is always supported,
304 dnl since both are added to the libc all together.
305 dnl Hence, we'd like to go with DATADIRNAME=share and
306 dnl and CATOBJEXT=.gmo in this case.
307 AC_CHECK_FUNC(bind_textdomain_codeset,
308 [CATOBJEXT=.gmo
309 DATADIRNAME=share],
310 [CATOBJEXT=.mo
311 DATADIRNAME=lib])
312 ;;
313 *-*-openbsd*)
314 CATOBJEXT=.mo
315 DATADIRNAME=share
316 ;;
317 *)
318 CATOBJEXT=.mo
319 DATADIRNAME=lib
320 ;;
321 esac])
322 LIBS="$glib_save_LIBS"
323 INSTOBJEXT=.mo
324 else
325 gt_cv_have_gettext=no
326 fi
327 fi
328 ])
329
330 if test "$gt_cv_have_gettext" = "yes" ; then
331 AC_DEFINE(ENABLE_NLS, 1,
332 [always defined to indicate that i18n is enabled])
333 fi
334
335 dnl Test whether we really found GNU xgettext.
336 if test "$XGETTEXT" != ":"; then
337 dnl If it is not GNU xgettext we define it as : so that the
338 dnl Makefiles still can work.
339 if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
340 : ;
341 else
342 AC_MSG_RESULT(
343 [found xgettext program is not GNU xgettext; ignore it])
344 XGETTEXT=":"
345 fi
346 fi
347
348 # We need to process the po/ directory.
349 POSUB=po
350
351 AC_OUTPUT_COMMANDS(
352 [case "$CONFIG_FILES" in *po/Makefile.in*)
353 sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
354 esac])
355
356 dnl These rules are solely for the distribution goal. While doing this
357 dnl we only have to keep exactly one list of the available catalogs
358 dnl in configure.ac.
359 for lang in $ALL_LINGUAS; do
360 GMOFILES="$GMOFILES $lang.gmo"
361 POFILES="$POFILES $lang.po"
362 done
363
364 dnl Make all variables we use known to autoconf.
365 AC_SUBST(CATALOGS)
366 AC_SUBST(CATOBJEXT)
367 AC_SUBST(DATADIRNAME)
368 AC_SUBST(GMOFILES)
369 AC_SUBST(INSTOBJEXT)
370 AC_SUBST(INTLLIBS)
371 AC_SUBST(PO_IN_DATADIR_TRUE)
372 AC_SUBST(PO_IN_DATADIR_FALSE)
373 AC_SUBST(POFILES)
374 AC_SUBST(POSUB)
375 ])
376
377 # AM_GLIB_GNU_GETTEXT
378 # -------------------
379 # Do checks necessary for use of gettext. If a suitable implementation
380 # of gettext is found in either in libintl or in the C library,
381 # it will set INTLLIBS to the libraries needed for use of gettext
382 # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable
383 # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST()
384 # on various variables needed by the Makefile.in.in installed by
385 # glib-gettextize.
386 dnl
387 AU_DEFUN([GLIB_GNU_GETTEXT],
388 [AC_REQUIRE([AC_PROG_CC])dnl
389
390 GLIB_LC_MESSAGES
391 GLIB_WITH_NLS
392
393 if test "$gt_cv_have_gettext" = "yes"; then
394 if test "x$ALL_LINGUAS" = "x"; then
395 LINGUAS=
396 else
397 AC_MSG_CHECKING(for catalogs to be installed)
398 NEW_LINGUAS=
399 for presentlang in $ALL_LINGUAS; do
400 useit=no
401 if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
402 desiredlanguages="$LINGUAS"
403 else
404 desiredlanguages="$ALL_LINGUAS"
405 fi
406 for desiredlang in $desiredlanguages; do
407 # Use the presentlang catalog if desiredlang is
408 # a. equal to presentlang, or
409 # b. a variant of presentlang (because in this case,
410 # presentlang can be used as a fallback for messages
411 # which are not translated in the desiredlang catalog).
412 case "$desiredlang" in
413 "$presentlang"*) useit=yes;;
414 esac
415 done
416 if test $useit = yes; then
417 NEW_LINGUAS="$NEW_LINGUAS $presentlang"
418 fi
419 done
420 LINGUAS=$NEW_LINGUAS
421 AC_MSG_RESULT($LINGUAS)
422 fi
423
424 dnl Construct list of names of catalog files to be constructed.
425 if test -n "$LINGUAS"; then
426 for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
427 fi
428 fi
429
430 dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
431 dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
432 dnl Try to locate is.
433 MKINSTALLDIRS=
434 if test -n "$ac_aux_dir"; then
435 MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
436 fi
437 if test -z "$MKINSTALLDIRS"; then
438 MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
439 fi
440 AC_SUBST(MKINSTALLDIRS)
441
442 dnl Generate list of files to be processed by xgettext which will
443 dnl be included in po/Makefile.
444 test -d po || mkdir po
445 if test "x$srcdir" != "x."; then
446 if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
447 posrcprefix="$srcdir/"
448 else
449 posrcprefix="../$srcdir/"
450 fi
451 else
452 posrcprefix="../"
453 fi
454 rm -f po/POTFILES
455 sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
456 < $srcdir/po/POTFILES.in > po/POTFILES
457 ],
458 [[$0: This macro is deprecated. You should use upstream gettext instead.]])
459
460 # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE)
461 # -------------------------------
462 # Define VARIABLE to the location where catalog files will
463 # be installed by po/Makefile.
464 glib_DEFUN([GLIB_DEFINE_LOCALEDIR],
465 [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl
466 glib_save_prefix="$prefix"
467 glib_save_exec_prefix="$exec_prefix"
468 glib_save_datarootdir="$datarootdir"
469 test "x$prefix" = xNONE && prefix=$ac_default_prefix
470 test "x$exec_prefix" = xNONE && exec_prefix=$prefix
471 datarootdir=`eval echo "${datarootdir}"`
472 if test "x$CATOBJEXT" = "x.mo" ; then
473 localedir=`eval echo "${libdir}/locale"`
474 else
475 localedir=`eval echo "${datadir}/locale"`
476 fi
477 prefix="$glib_save_prefix"
478 exec_prefix="$glib_save_exec_prefix"
479 datarootdir="$glib_save_datarootdir"
480 AC_DEFINE_UNQUOTED($1, "$localedir",
481 [Define the location where the catalogs will be installed])
482 ])
483
484 dnl
485 dnl Now the definitions that aclocal will find
486 dnl
487 ifdef(glib_configure_ac,[],[
488 AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)])
489 AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)])
490 ])dnl
491
492 # GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL])
493 #
494 # Create a temporary file with TEST-FILE as its contents and pass the
495 # file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with
496 # 0 and perform ACTION-IF-FAIL for any other exit status.
497 AC_DEFUN([GLIB_RUN_PROG],
498 [cat >conftest.foo <<_ACEOF
499 $2
500 _ACEOF
501 if AC_RUN_LOG([$1 conftest.foo]); then
502 m4_ifval([$3], [$3], [:])
503 m4_ifvaln([$4], [else $4])dnl
504 echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD
505 sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD
506 fi])
507
508
509
510 dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml])
511 # serial 42 IT_PROG_INTLTOOL
512 AC_DEFUN([IT_PROG_INTLTOOL], [
513 AC_PREREQ([2.50])dnl
514 AC_REQUIRE([AM_NLS])dnl
515
516 case "$am__api_version" in
517 1.[01234])
518 AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool])
519 ;;
520 *)
521 ;;
522 esac
523
524 INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
525 INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3`
526 INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
527 if test -n "$1"; then
528 AC_MSG_CHECKING([for intltool >= $1])
529 AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found])
530 test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" ||
531 AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.])
532 fi
533
534 AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update])
535 AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge])
536 AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract])
537 if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then
538 AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.])
539 fi
540
541 if test -z "$AM_DEFAULT_VERBOSITY"; then
542 AM_DEFAULT_VERBOSITY=1
543 fi
544 AC_SUBST([AM_DEFAULT_VERBOSITY])
545
546 INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))'
547 INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))'
548 INTLTOOL__v_MERGE_0='@echo " ITMRG " [$]@;'
549 AC_SUBST(INTLTOOL_V_MERGE)
550 AC_SUBST(INTLTOOL__v_MERGE_)
551 AC_SUBST(INTLTOOL__v_MERGE_0)
552
553 INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))'
554 intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))'
555 intltool__v_merge_options_0='-q'
556 AC_SUBST(INTLTOOL_V_MERGE_OPTIONS)
557 AC_SUBST(intltool__v_merge_options_)
558 AC_SUBST(intltool__v_merge_options_0)
559
560 INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
561 INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
562 INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
563 INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
564 INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< [$]@'
565 INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
566 INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
567 INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
568 INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
569 INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
570 INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
571 if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then
572 INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< [$]@'
573 else
574 INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.[$][$]RANDOM && mkdir [$][$]_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u [$][$]_it_tmp_dir $< [$]@ && rmdir [$][$]_it_tmp_dir'
575 fi
576 INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
577 INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
578 INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
579 INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
580 INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
581 INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
582 INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
583
584 _IT_SUBST(INTLTOOL_DESKTOP_RULE)
585 _IT_SUBST(INTLTOOL_DIRECTORY_RULE)
586 _IT_SUBST(INTLTOOL_KEYS_RULE)
587 _IT_SUBST(INTLTOOL_PROP_RULE)
588 _IT_SUBST(INTLTOOL_OAF_RULE)
589 _IT_SUBST(INTLTOOL_PONG_RULE)
590 _IT_SUBST(INTLTOOL_SERVER_RULE)
591 _IT_SUBST(INTLTOOL_SHEET_RULE)
592 _IT_SUBST(INTLTOOL_SOUNDLIST_RULE)
593 _IT_SUBST(INTLTOOL_UI_RULE)
594 _IT_SUBST(INTLTOOL_XAM_RULE)
595 _IT_SUBST(INTLTOOL_KBD_RULE)
596 _IT_SUBST(INTLTOOL_XML_RULE)
597 _IT_SUBST(INTLTOOL_XML_NOMERGE_RULE)
598 _IT_SUBST(INTLTOOL_CAVES_RULE)
599 _IT_SUBST(INTLTOOL_SCHEMAS_RULE)
600 _IT_SUBST(INTLTOOL_THEME_RULE)
601 _IT_SUBST(INTLTOOL_SERVICE_RULE)
602 _IT_SUBST(INTLTOOL_POLICY_RULE)
603
604 # Check the gettext tools to make sure they are GNU
605 AC_PATH_PROG(XGETTEXT, xgettext)
606 AC_PATH_PROG(MSGMERGE, msgmerge)
607 AC_PATH_PROG(MSGFMT, msgfmt)
608 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
609 if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then
610 AC_MSG_ERROR([GNU gettext tools not found; required for intltool])
611 fi
612 xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`"
613 mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`"
614 mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`"
615 if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then
616 AC_MSG_ERROR([GNU gettext tools not found; required for intltool])
617 fi
618
619 AC_PATH_PROG(INTLTOOL_PERL, perl)
620 if test -z "$INTLTOOL_PERL"; then
621 AC_MSG_ERROR([perl not found])
622 fi
623 AC_MSG_CHECKING([for perl >= 5.8.1])
624 $INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1
625 if test $? -ne 0; then
626 AC_MSG_ERROR([perl 5.8.1 is required for intltool])
627 else
628 IT_PERL_VERSION=`$INTLTOOL_PERL -e "printf '%vd', $^V"`
629 AC_MSG_RESULT([$IT_PERL_VERSION])
630 fi
631 if test "x$2" != "xno-xml"; then
632 AC_MSG_CHECKING([for XML::Parser])
633 if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then
634 AC_MSG_RESULT([ok])
635 else
636 AC_MSG_ERROR([XML::Parser perl module is required for intltool])
637 fi
638 fi
639
640 # Substitute ALL_LINGUAS so we can use it in po/Makefile
641 AC_SUBST(ALL_LINGUAS)
642
643 IT_PO_SUBDIR([po])
644
645 ])
646
647
648 # IT_PO_SUBDIR(DIRNAME)
649 # ---------------------
650 # All po subdirs have to be declared with this macro; the subdir "po" is
651 # declared by IT_PROG_INTLTOOL.
652 #
653 AC_DEFUN([IT_PO_SUBDIR],
654 [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS.
655 dnl
656 dnl The following CONFIG_COMMANDS should be executed at the very end
657 dnl of config.status.
658 AC_CONFIG_COMMANDS_PRE([
659 AC_CONFIG_COMMANDS([$1/stamp-it], [
660 if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then
661 AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.])
662 fi
663 rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp"
664 >"$1/stamp-it.tmp"
665 [sed '/^#/d
666 s/^[[].*] *//
667 /^[ ]*$/d
668 '"s|^| $ac_top_srcdir/|" \
669 "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES"
670 ]
671 [sed '/^POTFILES =/,/[^\\]$/ {
672 /^POTFILES =/!d
673 r $1/POTFILES
674 }
675 ' "$1/Makefile.in" >"$1/Makefile"]
676 rm -f "$1/Makefile.tmp"
677 mv "$1/stamp-it.tmp" "$1/stamp-it"
678 ])
679 ])dnl
680 ])
681
682 # _IT_SUBST(VARIABLE)
683 # -------------------
684 # Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST
685 #
686 AC_DEFUN([_IT_SUBST],
687 [
688 AC_SUBST([$1])
689 m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])])
690 ]
691 )
692
693 # deprecated macros
694 AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL])
695 # A hint is needed for aclocal from Automake <= 1.9.4:
696 # AC_DEFUN([AC_PROG_INTLTOOL], ...)
697
698
699 # nls.m4 serial 5 (gettext-0.18)
700 dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014, 2016 Free Software
701 dnl Foundation, Inc.
702 dnl This file is free software; the Free Software Foundation
703 dnl gives unlimited permission to copy and/or distribute it,
704 dnl with or without modifications, as long as this notice is preserved.
705 dnl
706 dnl This file can be used in projects which are not available under
707 dnl the GNU General Public License or the GNU Library General Public
708 dnl License but which still want to provide support for the GNU gettext
709 dnl functionality.
710 dnl Please note that the actual code of the GNU gettext library is covered
711 dnl by the GNU Library General Public License, and the rest of the GNU
712 dnl gettext package is covered by the GNU General Public License.
713 dnl They are *not* in the public domain.
714
715 dnl Authors:
716 dnl Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
717 dnl Bruno Haible <haible@clisp.cons.org>, 2000-2003.
718
719 AC_PREREQ([2.50])
720
721 AC_DEFUN([AM_NLS],
722 [
723 AC_MSG_CHECKING([whether NLS is requested])
724 dnl Default is enabled NLS
725 AC_ARG_ENABLE([nls],
726 [ --disable-nls do not use Native Language Support],
727 USE_NLS=$enableval, USE_NLS=yes)
728 AC_MSG_RESULT([$USE_NLS])
729 AC_SUBST([USE_NLS])
730 ])
73121
73222 # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
73323 # serial 11 (pkg-config-0.29.1)
21911481 m4_include([m4/ltsugar.m4])
21921482 m4_include([m4/ltversion.m4])
21931483 m4_include([m4/lt~obsolete.m4])
1484 m4_include([m4/virt-bash-completion.m4])
1485 m4_include([m4/virt-nls.m4])
21941486 m4_include([acinclude.m4])
0 EXTRA_DIST = \
1 $(PACKAGE)
2
3 install-data-local: install-bash-completion
4
5 uninstall-local: uninstall-bash-completion
6
7 if WITH_BASH_COMPLETION
8 install-bash-completion:
9 $(MKDIR_P) "$(DESTDIR)$(BASH_COMPLETIONS_DIR)"
10 $(INSTALL_SCRIPT) $(srcdir)/$(PACKAGE) \
11 "$(DESTDIR)$(BASH_COMPLETIONS_DIR)/$(PACKAGE)"
12
13 uninstall-bash-completion:
14 rm -f $(DESTDIR)$(BASH_COMPLETIONS_DIR)/$(PACKAGE)
15 rmdir $(DESTDIR)$(BASH_COMPLETIONS_DIR) ||:
16 else ! WITH_BASH_COMPLETION
17 install-bash-completion:
18 uninstall-bash-completion:
19 endif ! WITH_BASH_COMPLETION
0 # Makefile.in generated by automake 1.16.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2018 Free Software Foundation, Inc.
4
5 # This Makefile.in is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 # PARTICULAR PURPOSE.
13
14 @SET_MAKE@
15 VPATH = @srcdir@
16 am__is_gnu_make = { \
17 if test -z '$(MAKELEVEL)'; then \
18 false; \
19 elif test -n '$(MAKE_HOST)'; then \
20 true; \
21 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
22 true; \
23 else \
24 false; \
25 fi; \
26 }
27 am__make_running_with_option = \
28 case $${target_option-} in \
29 ?) ;; \
30 *) echo "am__make_running_with_option: internal error: invalid" \
31 "target option '$${target_option-}' specified" >&2; \
32 exit 1;; \
33 esac; \
34 has_opt=no; \
35 sane_makeflags=$$MAKEFLAGS; \
36 if $(am__is_gnu_make); then \
37 sane_makeflags=$$MFLAGS; \
38 else \
39 case $$MAKEFLAGS in \
40 *\\[\ \ ]*) \
41 bs=\\; \
42 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
43 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
44 esac; \
45 fi; \
46 skip_next=no; \
47 strip_trailopt () \
48 { \
49 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
50 }; \
51 for flg in $$sane_makeflags; do \
52 test $$skip_next = yes && { skip_next=no; continue; }; \
53 case $$flg in \
54 *=*|--*) continue;; \
55 -*I) strip_trailopt 'I'; skip_next=yes;; \
56 -*I?*) strip_trailopt 'I';; \
57 -*O) strip_trailopt 'O'; skip_next=yes;; \
58 -*O?*) strip_trailopt 'O';; \
59 -*l) strip_trailopt 'l'; skip_next=yes;; \
60 -*l?*) strip_trailopt 'l';; \
61 -[dEDm]) skip_next=yes;; \
62 -[JT]) skip_next=yes;; \
63 esac; \
64 case $$flg in \
65 *$$target_option*) has_opt=yes; break;; \
66 esac; \
67 done; \
68 test $$has_opt = yes
69 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
70 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
71 pkgdatadir = $(datadir)/@PACKAGE@
72 pkgincludedir = $(includedir)/@PACKAGE@
73 pkglibdir = $(libdir)/@PACKAGE@
74 pkglibexecdir = $(libexecdir)/@PACKAGE@
75 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
76 install_sh_DATA = $(install_sh) -c -m 644
77 install_sh_PROGRAM = $(install_sh) -c
78 install_sh_SCRIPT = $(install_sh) -c
79 INSTALL_HEADER = $(INSTALL_DATA)
80 transform = $(program_transform_name)
81 NORMAL_INSTALL = :
82 PRE_INSTALL = :
83 POST_INSTALL = :
84 NORMAL_UNINSTALL = :
85 PRE_UNINSTALL = :
86 POST_UNINSTALL = :
87 build_triplet = @build@
88 host_triplet = @host@
89 subdir = bash-completion
90 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
91 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
92 $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
93 $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
94 $(top_srcdir)/m4/virt-bash-completion.m4 \
95 $(top_srcdir)/m4/virt-nls.m4 $(top_srcdir)/acinclude.m4 \
96 $(top_srcdir)/configure.ac
97 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
98 $(ACLOCAL_M4)
99 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
100 mkinstalldirs = $(install_sh) -d
101 CONFIG_HEADER = $(top_builddir)/config.h
102 CONFIG_CLEAN_FILES =
103 CONFIG_CLEAN_VPATH_FILES =
104 AM_V_P = $(am__v_P_@AM_V@)
105 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
106 am__v_P_0 = false
107 am__v_P_1 = :
108 AM_V_GEN = $(am__v_GEN_@AM_V@)
109 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
110 am__v_GEN_0 = @echo " GEN " $@;
111 am__v_GEN_1 =
112 AM_V_at = $(am__v_at_@AM_V@)
113 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
114 am__v_at_0 = @
115 am__v_at_1 =
116 SOURCES =
117 DIST_SOURCES =
118 am__can_run_installinfo = \
119 case $$AM_UPDATE_INFO_DIR in \
120 n|no|NO) false;; \
121 *) (install-info --version) >/dev/null 2>&1;; \
122 esac
123 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
124 am__DIST_COMMON = $(srcdir)/Makefile.in
125 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
126 ACLOCAL = @ACLOCAL@
127 AMTAR = @AMTAR@
128 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
129 AR = @AR@
130 AUTOCONF = @AUTOCONF@
131 AUTOHEADER = @AUTOHEADER@
132 AUTOMAKE = @AUTOMAKE@
133 AWK = @AWK@
134 BASH_COMPLETIONS_DIR = @BASH_COMPLETIONS_DIR@
135 BASH_COMPLETION_CFLAGS = @BASH_COMPLETION_CFLAGS@
136 BASH_COMPLETION_LIBS = @BASH_COMPLETION_LIBS@
137 BASH_COMPLETION_REQUIRED = @BASH_COMPLETION_REQUIRED@
138 BUILDID = @BUILDID@
139 CC = @CC@
140 CCDEPMODE = @CCDEPMODE@
141 CFLAGS = @CFLAGS@
142 CPP = @CPP@
143 CPPFLAGS = @CPPFLAGS@
144 CYGPATH_W = @CYGPATH_W@
145 DEFS = @DEFS@
146 DEPDIR = @DEPDIR@
147 DLLTOOL = @DLLTOOL@
148 DSYMUTIL = @DSYMUTIL@
149 DUMPBIN = @DUMPBIN@
150 ECHO_C = @ECHO_C@
151 ECHO_N = @ECHO_N@
152 ECHO_T = @ECHO_T@
153 EGREP = @EGREP@
154 EXEEXT = @EXEEXT@
155 FGREP = @FGREP@
156 GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
157 GLIB2_CFLAGS = @GLIB2_CFLAGS@
158 GLIB2_LIBS = @GLIB2_LIBS@
159 GLIB2_REQUIRED = @GLIB2_REQUIRED@
160 GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@
161 GLIB_MKENUMS = @GLIB_MKENUMS@
162 GOVIRT_REQUIRED = @GOVIRT_REQUIRED@
163 GREP = @GREP@
164 GTK_CFLAGS = @GTK_CFLAGS@
165 GTK_LIBS = @GTK_LIBS@
166 GTK_REQUIRED = @GTK_REQUIRED@
167 GTK_VNC_CFLAGS = @GTK_VNC_CFLAGS@
168 GTK_VNC_LIBS = @GTK_VNC_LIBS@
169 GTK_VNC_REQUIRED = @GTK_VNC_REQUIRED@
170 ICOTOOL = @ICOTOOL@
171 INSTALL = @INSTALL@
172 INSTALL_DATA = @INSTALL_DATA@
173 INSTALL_PROGRAM = @INSTALL_PROGRAM@
174 INSTALL_SCRIPT = @INSTALL_SCRIPT@
175 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
176 LD = @LD@
177 LDFLAGS = @LDFLAGS@
178 LIBOBJS = @LIBOBJS@
179 LIBS = @LIBS@
180 LIBTOOL = @LIBTOOL@
181 LIBVIRT_CFLAGS = @LIBVIRT_CFLAGS@
182 LIBVIRT_GLIB_REQUIRED = @LIBVIRT_GLIB_REQUIRED@
183 LIBVIRT_LIBS = @LIBVIRT_LIBS@
184 LIBVIRT_REQUIRED = @LIBVIRT_REQUIRED@
185 LIBXML2_CFLAGS = @LIBXML2_CFLAGS@
186 LIBXML2_LIBS = @LIBXML2_LIBS@
187 LIBXML2_REQUIRED = @LIBXML2_REQUIRED@
188 LIPO = @LIPO@
189 LN_S = @LN_S@
190 LTLIBOBJS = @LTLIBOBJS@
191 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
192 MAKEINFO = @MAKEINFO@
193 MANIFEST_TOOL = @MANIFEST_TOOL@
194 MKDIR_P = @MKDIR_P@
195 MSGFMT = @MSGFMT@
196 MSGMERGE = @MSGMERGE@
197 NM = @NM@
198 NMEDIT = @NMEDIT@
199 OBJDUMP = @OBJDUMP@
200 OBJEXT = @OBJEXT@
201 OTOOL = @OTOOL@
202 OTOOL64 = @OTOOL64@
203 OVIRT_CFLAGS = @OVIRT_CFLAGS@
204 OVIRT_LIBS = @OVIRT_LIBS@
205 PACKAGE = @PACKAGE@
206 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
207 PACKAGE_NAME = @PACKAGE_NAME@
208 PACKAGE_STRING = @PACKAGE_STRING@
209 PACKAGE_TARNAME = @PACKAGE_TARNAME@
210 PACKAGE_URL = @PACKAGE_URL@
211 PACKAGE_VERSION = @PACKAGE_VERSION@
212 PATH_SEPARATOR = @PATH_SEPARATOR@
213 PKG_CONFIG = @PKG_CONFIG@
214 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
215 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
216 RANLIB = @RANLIB@
217 REST_REQUIRED = @REST_REQUIRED@
218 SED = @SED@
219 SET_MAKE = @SET_MAKE@
220 SHELL = @SHELL@
221 SPICE_GTK_CFLAGS = @SPICE_GTK_CFLAGS@
222 SPICE_GTK_LIBS = @SPICE_GTK_LIBS@
223 SPICE_GTK_REQUIRED = @SPICE_GTK_REQUIRED@
224 SPICE_PROTOCOL_CFLAGS = @SPICE_PROTOCOL_CFLAGS@
225 SPICE_PROTOCOL_LIBS = @SPICE_PROTOCOL_LIBS@
226 SPICE_PROTOCOL_REQUIRED = @SPICE_PROTOCOL_REQUIRED@
227 STRIP = @STRIP@
228 UPDATE_MIME_DATABASE = @UPDATE_MIME_DATABASE@
229 VERSION = @VERSION@
230 VTE_CFLAGS = @VTE_CFLAGS@
231 VTE_LIBS = @VTE_LIBS@
232 WARN_CFLAGS = @WARN_CFLAGS@
233 WINDOWS_PRODUCTVERSION = @WINDOWS_PRODUCTVERSION@
234 WINDRES = @WINDRES@
235 WIXL_ARCH = @WIXL_ARCH@
236 XGETTEXT = @XGETTEXT@
237 abs_builddir = @abs_builddir@
238 abs_srcdir = @abs_srcdir@
239 abs_top_builddir = @abs_top_builddir@
240 abs_top_srcdir = @abs_top_srcdir@
241 ac_ct_AR = @ac_ct_AR@
242 ac_ct_CC = @ac_ct_CC@
243 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
244 am__include = @am__include@
245 am__leading_dot = @am__leading_dot@
246 am__quote = @am__quote@
247 am__tar = @am__tar@
248 am__untar = @am__untar@
249 bindir = @bindir@
250 build = @build@
251 build_alias = @build_alias@
252 build_cpu = @build_cpu@
253 build_os = @build_os@
254 build_vendor = @build_vendor@
255 builddir = @builddir@
256 datadir = @datadir@
257 datarootdir = @datarootdir@
258 docdir = @docdir@
259 dvidir = @dvidir@
260 exec_prefix = @exec_prefix@
261 host = @host@
262 host_alias = @host_alias@
263 host_cpu = @host_cpu@
264 host_os = @host_os@
265 host_vendor = @host_vendor@
266 htmldir = @htmldir@
267 includedir = @includedir@
268 infodir = @infodir@
269 install_sh = @install_sh@
270 libdir = @libdir@
271 libexecdir = @libexecdir@
272 localedir = @localedir@
273 localstatedir = @localstatedir@
274 mandir = @mandir@
275 mkdir_p = @mkdir_p@
276 oldincludedir = @oldincludedir@
277 pdfdir = @pdfdir@
278 prefix = @prefix@
279 program_transform_name = @program_transform_name@
280 psdir = @psdir@
281 sbindir = @sbindir@
282 sharedstatedir = @sharedstatedir@
283 srcdir = @srcdir@
284 sysconfdir = @sysconfdir@
285 target_alias = @target_alias@
286 top_build_prefix = @top_build_prefix@
287 top_builddir = @top_builddir@
288 top_srcdir = @top_srcdir@
289 EXTRA_DIST = \
290 $(PACKAGE)
291
292 all: all-am
293
294 .SUFFIXES:
295 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
296 @for dep in $?; do \
297 case '$(am__configure_deps)' in \
298 *$$dep*) \
299 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
300 && { if test -f $@; then exit 0; else break; fi; }; \
301 exit 1;; \
302 esac; \
303 done; \
304 echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign bash-completion/Makefile'; \
305 $(am__cd) $(top_srcdir) && \
306 $(AUTOMAKE) --foreign bash-completion/Makefile
307 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
308 @case '$?' in \
309 *config.status*) \
310 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
311 *) \
312 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
313 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
314 esac;
315
316 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
317 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
318
319 $(top_srcdir)/configure: $(am__configure_deps)
320 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
321 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
322 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
323 $(am__aclocal_m4_deps):
324
325 mostlyclean-libtool:
326 -rm -f *.lo
327
328 clean-libtool:
329 -rm -rf .libs _libs
330 tags TAGS:
331
332 ctags CTAGS:
333
334 cscope cscopelist:
335
336
337 distdir: $(BUILT_SOURCES)
338 $(MAKE) $(AM_MAKEFLAGS) distdir-am
339
340 distdir-am: $(DISTFILES)
341 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
342 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
343 list='$(DISTFILES)'; \
344 dist_files=`for file in $$list; do echo $$file; done | \
345 sed -e "s|^$$srcdirstrip/||;t" \
346 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
347 case $$dist_files in \
348 */*) $(MKDIR_P) `echo "$$dist_files" | \
349 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
350 sort -u` ;; \
351 esac; \
352 for file in $$dist_files; do \
353 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
354 if test -d $$d/$$file; then \
355 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
356 if test -d "$(distdir)/$$file"; then \
357 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
358 fi; \
359 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
360 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
361 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
362 fi; \
363 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
364 else \
365 test -f "$(distdir)/$$file" \
366 || cp -p $$d/$$file "$(distdir)/$$file" \
367 || exit 1; \
368 fi; \
369 done
370 check-am: all-am
371 check: check-am
372 all-am: Makefile
373 installdirs:
374 install: install-am
375 install-exec: install-exec-am
376 install-data: install-data-am
377 uninstall: uninstall-am
378
379 install-am: all-am
380 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
381
382 installcheck: installcheck-am
383 install-strip:
384 if test -z '$(STRIP)'; then \
385 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
386 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
387 install; \
388 else \
389 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
390 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
391 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
392 fi
393 mostlyclean-generic:
394
395 clean-generic:
396
397 distclean-generic:
398 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
399 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
400
401 maintainer-clean-generic:
402 @echo "This command is intended for maintainers to use"
403 @echo "it deletes files that may require special tools to rebuild."
404 clean: clean-am
405
406 clean-am: clean-generic clean-libtool mostlyclean-am
407
408 distclean: distclean-am
409 -rm -f Makefile
410 distclean-am: clean-am distclean-generic
411
412 dvi: dvi-am
413
414 dvi-am:
415
416 html: html-am
417
418 html-am:
419
420 info: info-am
421
422 info-am:
423
424 install-data-am: install-data-local
425
426 install-dvi: install-dvi-am
427
428 install-dvi-am:
429
430 install-exec-am:
431
432 install-html: install-html-am
433
434 install-html-am:
435
436 install-info: install-info-am
437
438 install-info-am:
439
440 install-man:
441
442 install-pdf: install-pdf-am
443
444 install-pdf-am:
445
446 install-ps: install-ps-am
447
448 install-ps-am:
449
450 installcheck-am:
451
452 maintainer-clean: maintainer-clean-am
453 -rm -f Makefile
454 maintainer-clean-am: distclean-am maintainer-clean-generic
455
456 mostlyclean: mostlyclean-am
457
458 mostlyclean-am: mostlyclean-generic mostlyclean-libtool
459
460 pdf: pdf-am
461
462 pdf-am:
463
464 ps: ps-am
465
466 ps-am:
467
468 uninstall-am: uninstall-local
469
470 .MAKE: install-am install-strip
471
472 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
473 cscopelist-am ctags-am distclean distclean-generic \
474 distclean-libtool distdir dvi dvi-am html html-am info info-am \
475 install install-am install-data install-data-am \
476 install-data-local install-dvi install-dvi-am install-exec \
477 install-exec-am install-html install-html-am install-info \
478 install-info-am install-man install-pdf install-pdf-am \
479 install-ps install-ps-am install-strip installcheck \
480 installcheck-am installdirs maintainer-clean \
481 maintainer-clean-generic mostlyclean mostlyclean-generic \
482 mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
483 uninstall-am uninstall-local
484
485 .PRECIOUS: Makefile
486
487
488 install-data-local: install-bash-completion
489
490 uninstall-local: uninstall-bash-completion
491
492 @WITH_BASH_COMPLETION_TRUE@install-bash-completion:
493 @WITH_BASH_COMPLETION_TRUE@ $(MKDIR_P) "$(DESTDIR)$(BASH_COMPLETIONS_DIR)"
494 @WITH_BASH_COMPLETION_TRUE@ $(INSTALL_SCRIPT) $(srcdir)/$(PACKAGE) \
495 @WITH_BASH_COMPLETION_TRUE@ "$(DESTDIR)$(BASH_COMPLETIONS_DIR)/$(PACKAGE)"
496
497 @WITH_BASH_COMPLETION_TRUE@uninstall-bash-completion:
498 @WITH_BASH_COMPLETION_TRUE@ rm -f $(DESTDIR)$(BASH_COMPLETIONS_DIR)/$(PACKAGE)
499 @WITH_BASH_COMPLETION_TRUE@ rmdir $(DESTDIR)$(BASH_COMPLETIONS_DIR) ||:
500 @WITH_BASH_COMPLETION_FALSE@install-bash-completion:
501 @WITH_BASH_COMPLETION_FALSE@uninstall-bash-completion:
502
503 # Tell versions [3.59,3.63) of GNU make to not export all variables.
504 # Otherwise a system limit (for SysV at least) may be exceeded.
505 .NOEXPORT:
0 #
1 # virt-viewer completer
2 #
3
4 _virt_viewer_complete()
5 {
6 local words cword c w cur URI CMDLINE MODE DOMS
7
8 # Here, $COMP_WORDS is an array of words on the bash
9 # command line that user wants to complete. However, when
10 # parsing command line, the default set of word breaks is
11 # applied. This doesn't work for us as it mangles virt-viewer
12 # arguments, e.g. connection URI (with the default set it's
13 # split into multiple items within the array). Fortunately,
14 # there's a fixup function for the array.
15 _get_comp_words_by_ref -n "\"'><=;|&(:" -w words -i cword
16 COMP_WORDS=( "${words[@]}" )
17 COMP_CWORD=${cword}
18 cur=${COMP_WORDS[$COMP_CWORD]}
19
20 MODE="--name"
21 ALL="--all"
22 # See what URI is user trying to connect to. Honour that.
23 for ((c=1; c<=${COMP_CWORD}; c++)); do
24 case "${COMP_WORDS[c]}" in
25 -c|--connect)
26 if [[ -n "${COMP_WORDS[c+1]}" ]]; then
27 URI="${COMP_WORDS[c+1]}"
28 c=$((++c))
29 fi
30 ;;
31
32 --connect=*)
33 w=${COMP_WORDS[c]#*=}
34 if [[ -z "$w" ]] ; then
35 return
36 fi
37 URI=$w
38 ;;
39
40 --domain-name)
41 # Generate list of domain names which is done below
42 MODE="--name"
43 ALL="--all"
44 ;;
45
46 --uuid)
47 # Generate list of domain UUIDs which is done below
48 MODE="--uuid"
49 ALL="--all"
50 ;;
51
52 --id)
53 # Generate list of domain IDs which is done below
54 MODE=""
55 ALL=""
56 ;;
57 esac
58 done
59
60 case "$cur" in
61 --connect=*)
62 # Nada
63 return
64 ;;
65
66 --display=*)
67 cur=${cur#*=}
68 DISPLAYS=$(cd /tmp/.X11-unix && for x in X*; do echo ":${x#X}"; done)
69 COMPREPLY=($(compgen -W '${DISPLAYS}' -- "$cur"))
70 __ltrim_colon_completions "$cur"
71 return
72 ;;
73
74 --kiosk-quit=*)
75 cur=${cur#*=}
76 COMPREPLY=($(compgen -W 'never on-disconnect' -- "$cur"))
77 return
78 ;;
79
80 -*)
81 # If the current option already ends with '=' then don't generate
82 # any more --options
83 if [[ $cur == *= ]] ; then
84 return
85 fi
86 COMPREPLY=($(compgen -W '$( _parse_help "$1" -h )' -- "$cur"))
87 if [[ $COMPREPLY == *= ]] ; then
88 compopt -o nospace
89 fi
90 return
91 ;;
92 esac
93
94 CMDLINE=
95 if [ -n "${URI}" ]; then
96 CMDLINE="${CMDLINE} -c ${URI}"
97 fi
98
99 DOMS=($(virsh -q -r ${CMDLINE} list ${ALL} ${MODE} 2>/dev/null | awk '{print $1;}' ))
100
101 COMPREPLY=($(compgen -W "${DOMS[*]%--}" -- ${cur}))
102
103 __ltrim_colon_completions "${cur}"
104 return
105 } &&
106 complete -F _virt_viewer_complete virt-viewer
107
108 # vim: ft=sh:et:ts=4:sw=4:tw=80
11 # Attempt to guess a canonical system name.
22 # Copyright 1992-2018 Free Software Foundation, Inc.
33
4 timestamp='2018-03-08'
4 timestamp='2018-08-29'
55
66 # This file is free software; you can redistribute it and/or modify it
77 # under the terms of the GNU General Public License as published by
8383 exit 1
8484 fi
8585
86 trap 'exit 1' 1 2 15
87
8886 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
8987 # compiler to aid in system detection is discouraged as it requires
9088 # temporary files to be created and, as you can see below, it is a
9593
9694 # Portable tmp directory creation inspired by the Autoconf team.
9795
98 set_cc_for_build='
99 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
100 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
101 : ${TMPDIR=/tmp} ;
102 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
103 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
104 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
105 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
106 dummy=$tmp/dummy ;
107 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
108 case $CC_FOR_BUILD,$HOST_CC,$CC in
109 ,,) echo "int x;" > "$dummy.c" ;
110 for c in cc gcc c89 c99 ; do
111 if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
112 CC_FOR_BUILD="$c"; break ;
113 fi ;
114 done ;
115 if test x"$CC_FOR_BUILD" = x ; then
116 CC_FOR_BUILD=no_compiler_found ;
117 fi
118 ;;
119 ,,*) CC_FOR_BUILD=$CC ;;
120 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
121 esac ; set_cc_for_build= ;'
96 tmp=
97 # shellcheck disable=SC2172
98 trap 'test -z "$tmp" || rm -fr "$tmp"' 1 2 13 15
99 trap 'exitcode=$?; test -z "$tmp" || rm -fr "$tmp"; exit $exitcode' 0
100
101 set_cc_for_build() {
102 : "${TMPDIR=/tmp}"
103 # shellcheck disable=SC2039
104 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
105 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } ||
106 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } ||
107 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; }
108 dummy=$tmp/dummy
109 case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in
110 ,,) echo "int x;" > "$dummy.c"
111 for driver in cc gcc c89 c99 ; do
112 if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
113 CC_FOR_BUILD="$driver"
114 break
115 fi
116 done
117 if test x"$CC_FOR_BUILD" = x ; then
118 CC_FOR_BUILD=no_compiler_found
119 fi
120 ;;
121 ,,*) CC_FOR_BUILD=$CC ;;
122 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
123 esac
124 }
122125
123126 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
124127 # (ghazi@noc.rutgers.edu 1994-08-24)
125 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
128 if test -f /.attbin/uname ; then
126129 PATH=$PATH:/.attbin ; export PATH
127130 fi
128131
137140 # We could probably try harder.
138141 LIBC=gnu
139142
140 eval "$set_cc_for_build"
143 set_cc_for_build
141144 cat <<-EOF > "$dummy.c"
142145 #include <features.h>
143146 #if defined(__UCLIBC__)
198201 os=netbsdelf
199202 ;;
200203 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
201 eval "$set_cc_for_build"
204 set_cc_for_build
202205 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
203206 | grep -q __ELF__
204207 then
236239 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
237240 # contains redundant information, the shorter form:
238241 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
239 echo "$machine-${os}${release}${abi}"
242 echo "$machine-${os}${release}${abi-}"
240243 exit ;;
241244 *:Bitrig:*:*)
242245 UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
388391 echo i386-pc-auroraux"$UNAME_RELEASE"
389392 exit ;;
390393 i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
391 eval "$set_cc_for_build"
392 SUN_ARCH=i386
393 # If there is a compiler, see if it is configured for 64-bit objects.
394 # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
395 # This test works for both compilers.
396 if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
397 if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
398 (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
399 grep IS_64BIT_ARCH >/dev/null
400 then
401 SUN_ARCH=x86_64
402 fi
403 fi
404 echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
394 UNAME_REL="`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
395 case `isainfo -b` in
396 32)
397 echo i386-pc-solaris2"$UNAME_REL"
398 ;;
399 64)
400 echo x86_64-pc-solaris2"$UNAME_REL"
401 ;;
402 esac
405403 exit ;;
406404 sun4*:SunOS:6*:*)
407405 # According to config.sub, this is the proper way to canonicalize
481479 echo clipper-intergraph-clix"$UNAME_RELEASE"
482480 exit ;;
483481 mips:*:*:UMIPS | mips:*:*:RISCos)
484 eval "$set_cc_for_build"
482 set_cc_for_build
485483 sed 's/^ //' << EOF > "$dummy.c"
486484 #ifdef __cplusplus
487485 #include <stdio.h> /* for printf() prototype */
578576 exit ;;
579577 *:AIX:2:3)
580578 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
581 eval "$set_cc_for_build"
579 set_cc_for_build
582580 sed 's/^ //' << EOF > "$dummy.c"
583581 #include <sys/systemcfg.h>
584582
659657 esac
660658 fi
661659 if [ "$HP_ARCH" = "" ]; then
662 eval "$set_cc_for_build"
660 set_cc_for_build
663661 sed 's/^ //' << EOF > "$dummy.c"
664662
665663 #define _HPUX_SOURCE
699697 esac
700698 if [ "$HP_ARCH" = hppa2.0w ]
701699 then
702 eval "$set_cc_for_build"
700 set_cc_for_build
703701
704702 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
705703 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
725723 echo ia64-hp-hpux"$HPUX_REV"
726724 exit ;;
727725 3050*:HI-UX:*:*)
728 eval "$set_cc_for_build"
726 set_cc_for_build
729727 sed 's/^ //' << EOF > "$dummy.c"
730728 #include <unistd.h>
731729 int
839837 *:BSD/OS:*:*)
840838 echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
841839 exit ;;
840 arm:FreeBSD:*:*)
841 UNAME_PROCESSOR=`uname -p`
842 set_cc_for_build
843 if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
844 | grep -q __ARM_PCS_VFP
845 then
846 echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi
847 else
848 echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf
849 fi
850 exit ;;
842851 *:FreeBSD:*:*)
843852 UNAME_PROCESSOR=`/usr/bin/uname -p`
844853 case "$UNAME_PROCESSOR" in
893902 # other systems with GNU libc and userland
894903 echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
895904 exit ;;
896 i*86:Minix:*:*)
897 echo "$UNAME_MACHINE"-pc-minix
905 *:Minix:*:*)
906 echo "$UNAME_MACHINE"-unknown-minix
898907 exit ;;
899908 aarch64:Linux:*:*)
900909 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
921930 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
922931 exit ;;
923932 arm*:Linux:*:*)
924 eval "$set_cc_for_build"
933 set_cc_for_build
925934 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
926935 | grep -q __ARM_EABI__
927936 then
970979 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
971980 exit ;;
972981 mips:Linux:*:* | mips64:Linux:*:*)
973 eval "$set_cc_for_build"
982 set_cc_for_build
974983 sed 's/^ //' << EOF > "$dummy.c"
975984 #undef CPU
976985 #undef ${UNAME_MACHINE}
12841293 exit ;;
12851294 *:Darwin:*:*)
12861295 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1287 eval "$set_cc_for_build"
1296 set_cc_for_build
12881297 if test "$UNAME_PROCESSOR" = unknown ; then
12891298 UNAME_PROCESSOR=powerpc
12901299 fi
13571366 # "uname -m" is not consistent, so use $cputype instead. 386
13581367 # is converted to i386 for consistency with other x86
13591368 # operating systems.
1369 # shellcheck disable=SC2154
13601370 if test "$cputype" = 386; then
13611371 UNAME_MACHINE=i386
13621372 else
11 # Configuration validation subroutine script.
22 # Copyright 1992-2018 Free Software Foundation, Inc.
33
4 timestamp='2018-05-05'
4 timestamp='2018-08-29'
55
66 # This file is free software; you can redistribute it and/or modify it
77 # under the terms of the GNU General Public License as published by
109109 exit 1;;
110110 esac
111111
112 # Spilt fields of configuration type
112 # Split fields of configuration type
113113 IFS="-" read -r field1 field2 field3 field4 <<EOF
114114 $1
115115 EOF
116116
117117 # Separate into logical components for further validation
118118 case $1 in
119 *-*-*-*-*)
120 echo Invalid configuration \`"$1"\': more than four components >&2
121 exit 1
122 ;;
119123 *-*-*-*)
120124 basic_machine=$field1-$field2
121 os=-$field3-$field4
125 os=$field3-$field4
122126 ;;
123127 *-*-*)
124128 # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
131135 | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
132136 | storm-chaos* | os2-emx* | rtmk-nova*)
133137 basic_machine=$field1
134 os=-$maybe_os
138 os=$maybe_os
135139 ;;
136140 android-linux)
137141 basic_machine=$field1-unknown
138 os=-linux-android
142 os=linux-android
139143 ;;
140144 *)
141145 basic_machine=$field1-$field2
142 os=-$field3
146 os=$field3
143147 ;;
144148 esac
145149 ;;
146150 *-*)
147 basic_machine=$field1
148 os=-$field2
151 # A lone config we happen to match not fitting any patern
152 case $field1-$field2 in
153 decstation-3100)
154 basic_machine=mips-dec
155 os=
156 ;;
157 *-*)
158 # Second component is usually, but not always the OS
159 case $field2 in
160 # Prevent following clause from handling this valid os
161 sun*os*)
162 basic_machine=$field1
163 os=$field2
164 ;;
165 # Manufacturers
166 dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
167 | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
168 | unicom* | ibm* | next | hp | isi* | apollo | altos* \
169 | convergent* | ncr* | news | 32* | 3600* | 3100* \
170 | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \
171 | ultra | tti* | harris | dolphin | highlevel | gould \
172 | cbm | ns | masscomp | apple | axis | knuth | cray \
173 | microblaze* | sim | cisco \
174 | oki | wec | wrs | winbond)
175 basic_machine=$field1-$field2
176 os=
177 ;;
178 *)
179 basic_machine=$field1
180 os=$field2
181 ;;
182 esac
183 ;;
184 esac
149185 ;;
150186 *)
151 basic_machine=$1
152 os=
187 # Convert single-component short-hands not valid as part of
188 # multi-component configurations.
189 case $field1 in
190 386bsd)
191 basic_machine=i386-pc
192 os=bsd
193 ;;
194 a29khif)
195 basic_machine=a29k-amd
196 os=udi
197 ;;
198 adobe68k)
199 basic_machine=m68010-adobe
200 os=scout
201 ;;
202 alliant)
203 basic_machine=fx80-alliant
204 os=
205 ;;
206 altos | altos3068)
207 basic_machine=m68k-altos
208 os=
209 ;;
210 am29k)
211 basic_machine=a29k-none
212 os=bsd
213 ;;
214 amdahl)
215 basic_machine=580-amdahl
216 os=sysv
217 ;;
218 amiga)
219 basic_machine=m68k-unknown
220 os=
221 ;;
222 amigaos | amigados)
223 basic_machine=m68k-unknown
224 os=amigaos
225 ;;
226 amigaunix | amix)
227 basic_machine=m68k-unknown
228 os=sysv4
229 ;;
230 apollo68)
231 basic_machine=m68k-apollo
232 os=sysv
233 ;;
234 apollo68bsd)
235 basic_machine=m68k-apollo
236 os=bsd
237 ;;
238 aros)
239 basic_machine=i386-pc
240 os=aros
241 ;;
242 aux)
243 basic_machine=m68k-apple
244 os=aux
245 ;;
246 balance)
247 basic_machine=ns32k-sequent
248 os=dynix
249 ;;
250 blackfin)
251 basic_machine=bfin-unknown
252 os=linux
253 ;;
254 cegcc)
255 basic_machine=arm-unknown
256 os=cegcc
257 ;;
258 convex-c1)
259 basic_machine=c1-convex
260 os=bsd
261 ;;
262 convex-c2)
263 basic_machine=c2-convex
264 os=bsd
265 ;;
266 convex-c32)
267 basic_machine=c32-convex
268 os=bsd
269 ;;
270 convex-c34)
271 basic_machine=c34-convex
272 os=bsd
273 ;;
274 convex-c38)
275 basic_machine=c38-convex
276 os=bsd
277 ;;
278 cray)
279 basic_machine=j90-cray
280 os=unicos
281 ;;
282 crds | unos)
283 basic_machine=m68k-crds
284 os=
285 ;;
286 da30)
287 basic_machine=m68k-da30
288 os=
289 ;;
290 decstation | pmax | pmin | dec3100 | decstatn)
291 basic_machine=mips-dec
292 os=
293 ;;
294 delta88)
295 basic_machine=m88k-motorola
296 os=sysv3
297 ;;
298 dicos)
299 basic_machine=i686-pc
300 os=dicos
301 ;;
302 djgpp)
303 basic_machine=i586-pc
304 os=msdosdjgpp
305 ;;
306 ebmon29k)
307 basic_machine=a29k-amd
308 os=ebmon
309 ;;
310 es1800 | OSE68k | ose68k | ose | OSE)
311 basic_machine=m68k-ericsson
312 os=ose
313 ;;
314 gmicro)
315 basic_machine=tron-gmicro
316 os=sysv
317 ;;
318 go32)
319 basic_machine=i386-pc
320 os=go32
321 ;;
322 h8300hms)
323 basic_machine=h8300-hitachi
324 os=hms
325 ;;
326 h8300xray)
327 basic_machine=h8300-hitachi
328 os=xray
329 ;;
330 h8500hms)
331 basic_machine=h8500-hitachi
332 os=hms
333 ;;
334 harris)
335 basic_machine=m88k-harris
336 os=sysv3
337 ;;
338 hp300)
339 basic_machine=m68k-hp
340 ;;
341 hp300bsd)
342 basic_machine=m68k-hp
343 os=bsd
344 ;;
345 hp300hpux)
346 basic_machine=m68k-hp
347 os=hpux
348 ;;
349 hppaosf)
350 basic_machine=hppa1.1-hp
351 os=osf
352 ;;
353 hppro)
354 basic_machine=hppa1.1-hp
355 os=proelf
356 ;;
357 i386mach)
358 basic_machine=i386-mach
359 os=mach
360 ;;
361 vsta)
362 basic_machine=i386-pc
363 os=vsta
364 ;;
365 isi68 | isi)
366 basic_machine=m68k-isi
367 os=sysv
368 ;;
369 m68knommu)
370 basic_machine=m68k-unknown
371 os=linux
372 ;;
373 magnum | m3230)
374 basic_machine=mips-mips
375 os=sysv
376 ;;
377 merlin)
378 basic_machine=ns32k-utek
379 os=sysv
380 ;;
381 mingw64)
382 basic_machine=x86_64-pc
383 os=mingw64
384 ;;
385 mingw32)
386 basic_machine=i686-pc
387 os=mingw32
388 ;;
389 mingw32ce)
390 basic_machine=arm-unknown
391 os=mingw32ce
392 ;;
393 monitor)
394 basic_machine=m68k-rom68k
395 os=coff
396 ;;
397 morphos)
398 basic_machine=powerpc-unknown
399 os=morphos
400 ;;
401 moxiebox)
402 basic_machine=moxie-unknown
403 os=moxiebox
404 ;;
405 msdos)
406 basic_machine=i386-pc
407 os=msdos
408 ;;
409 msys)
410 basic_machine=i686-pc
411 os=msys
412 ;;
413 mvs)
414 basic_machine=i370-ibm
415 os=mvs
416 ;;
417 nacl)
418 basic_machine=le32-unknown
419 os=nacl
420 ;;
421 ncr3000)
422 basic_machine=i486-ncr
423 os=sysv4
424 ;;
425 netbsd386)
426 basic_machine=i386-pc
427 os=netbsd
428 ;;
429 netwinder)
430 basic_machine=armv4l-rebel
431 os=linux
432 ;;
433 news | news700 | news800 | news900)
434 basic_machine=m68k-sony
435 os=newsos
436 ;;
437 news1000)
438 basic_machine=m68030-sony
439 os=newsos
440 ;;
441 necv70)
442 basic_machine=v70-nec
443 os=sysv
444 ;;
445 nh3000)
446 basic_machine=m68k-harris
447 os=cxux
448 ;;
449 nh[45]000)
450 basic_machine=m88k-harris
451 os=cxux
452 ;;
453 nindy960)
454 basic_machine=i960-intel
455 os=nindy
456 ;;
457 mon960)
458 basic_machine=i960-intel
459 os=mon960
460 ;;
461 nonstopux)
462 basic_machine=mips-compaq
463 os=nonstopux
464 ;;
465 os400)
466 basic_machine=powerpc-ibm
467 os=os400
468 ;;
469 OSE68000 | ose68000)
470 basic_machine=m68000-ericsson
471 os=ose
472 ;;
473 os68k)
474 basic_machine=m68k-none
475 os=os68k
476 ;;
477 paragon)
478 basic_machine=i860-intel
479 os=osf
480 ;;
481 parisc)
482 basic_machine=hppa-unknown
483 os=linux
484 ;;
485 pw32)
486 basic_machine=i586-unknown
487 os=pw32
488 ;;
489 rdos | rdos64)
490 basic_machine=x86_64-pc
491 os=rdos
492 ;;
493 rdos32)
494 basic_machine=i386-pc
495 os=rdos
496 ;;
497 rom68k)
498 basic_machine=m68k-rom68k
499 os=coff
500 ;;
501 sa29200)
502 basic_machine=a29k-amd
503 os=udi
504 ;;
505 sei)
506 basic_machine=mips-sei
507 os=seiux
508 ;;
509 sequent)
510 basic_machine=i386-sequent
511 os=
512 ;;
513 sps7)
514 basic_machine=m68k-bull
515 os=sysv2
516 ;;
517 st2000)
518 basic_machine=m68k-tandem
519 os=
520 ;;
521 stratus)
522 basic_machine=i860-stratus
523 os=sysv4
524 ;;
525 sun2)
526 basic_machine=m68000-sun
527 os=
528 ;;
529 sun2os3)
530 basic_machine=m68000-sun
531 os=sunos3
532 ;;
533 sun2os4)
534 basic_machine=m68000-sun
535 os=sunos4
536 ;;
537 sun3)
538 basic_machine=m68k-sun
539 os=
540 ;;
541 sun3os3)
542 basic_machine=m68k-sun
543 os=sunos3
544 ;;
545 sun3os4)
546 basic_machine=m68k-sun
547 os=sunos4
548 ;;
549 sun4)
550 basic_machine=sparc-sun
551 os=
552 ;;
553 sun4os3)
554 basic_machine=sparc-sun
555 os=sunos3
556 ;;
557 sun4os4)
558 basic_machine=sparc-sun
559 os=sunos4
560 ;;
561 sun4sol2)
562 basic_machine=sparc-sun
563 os=solaris2
564 ;;
565 sun386 | sun386i | roadrunner)
566 basic_machine=i386-sun
567 os=
568 ;;
569 sv1)
570 basic_machine=sv1-cray
571 os=unicos
572 ;;
573 symmetry)
574 basic_machine=i386-sequent
575 os=dynix
576 ;;
577 t3e)
578 basic_machine=alphaev5-cray
579 os=unicos
580 ;;
581 t90)
582 basic_machine=t90-cray
583 os=unicos
584 ;;
585 toad1)
586 basic_machine=pdp10-xkl
587 os=tops20
588 ;;
589 tpf)
590 basic_machine=s390x-ibm
591 os=tpf
592 ;;
593 udi29k)
594 basic_machine=a29k-amd
595 os=udi
596 ;;
597 ultra3)
598 basic_machine=a29k-nyu
599 os=sym1
600 ;;
601 v810 | necv810)
602 basic_machine=v810-nec
603 os=none
604 ;;
605 vaxv)
606 basic_machine=vax-dec
607 os=sysv
608 ;;
609 vms)
610 basic_machine=vax-dec
611 os=vms
612 ;;
613 vxworks960)
614 basic_machine=i960-wrs
615 os=vxworks
616 ;;
617 vxworks68)
618 basic_machine=m68k-wrs
619 os=vxworks
620 ;;
621 vxworks29k)
622 basic_machine=a29k-wrs
623 os=vxworks
624 ;;
625 xbox)
626 basic_machine=i686-pc
627 os=mingw32
628 ;;
629 ymp)
630 basic_machine=ymp-cray
631 os=unicos
632 ;;
633 *)
634 basic_machine=$1
635 os=
636 ;;
637 esac
153638 ;;
154639 esac
155640
156 ### Let's recognize common machines as not being operating systems so
157 ### that things like config.sub decstation-3100 work. We also
158 ### recognize some manufacturers as not being operating systems, so we
159 ### can provide default operating systems below.
160 case $os in
161 -sun*os*)
162 # Prevent following clause from handling this invalid input.
163 ;;
164 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
165 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
166 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
167 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
168 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
169 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
170 -apple | -axis | -knuth | -cray | -microblaze*)
171 os=
172 basic_machine=$1
173 ;;
174 -bluegene*)
175 os=-cnk
176 ;;
177 -sim | -cisco | -oki | -wec | -winbond)
178 os=
179 basic_machine=$1
180 ;;
181 -scout)
182 ;;
183 -wrs)
184 os=-vxworks
185 basic_machine=$1
186 ;;
187 -chorusos*)
188 os=-chorusos
189 basic_machine=$1
190 ;;
191 -chorusrdb)
192 os=-chorusrdb
193 basic_machine=$1
194 ;;
195 -hiux*)
196 os=-hiuxwe2
197 ;;
198 -sco6)
199 os=-sco5v6
200 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
201 ;;
202 -sco5)
203 os=-sco3.2v5
204 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
205 ;;
206 -sco4)
207 os=-sco3.2v4
208 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
209 ;;
210 -sco3.2.[4-9]*)
211 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
212 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
213 ;;
214 -sco3.2v[4-9]*)
215 # Don't forget version if it is 3.2v4 or newer.
216 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
217 ;;
218 -sco5v6*)
219 # Don't forget version if it is 3.2v4 or newer.
220 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
221 ;;
222 -sco*)
223 os=-sco3.2v2
224 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
225 ;;
226 -udk*)
227 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
228 ;;
229 -isc)
230 os=-isc2.2
231 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
232 ;;
233 -clix*)
234 basic_machine=clipper-intergraph
235 ;;
236 -isc*)
237 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
238 ;;
239 -lynx*178)
240 os=-lynxos178
241 ;;
242 -lynx*5)
243 os=-lynxos5
244 ;;
245 -lynx*)
246 os=-lynxos
247 ;;
248 -ptx*)
249 basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
250 ;;
251 -psos*)
252 os=-psos
253 ;;
254 -mint | -mint[0-9]*)
255 basic_machine=m68k-atari
256 os=-mint
257 ;;
258 esac
259
260 # Decode aliases for certain CPU-COMPANY combinations.
641 # Decode 1-component or ad-hoc basic machines
261642 case $basic_machine in
262 # Recognize the basic CPU types without company name.
263 # Some are omitted here because they have special meanings below.
264 1750a | 580 \
265 | a29k \
266 | aarch64 | aarch64_be \
267 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
268 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
269 | am33_2.0 \
270 | arc | arceb \
271 | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv6m | armv[78][arm] \
272 | avr | avr32 \
273 | ba \
274 | be32 | be64 \
275 | bfin \
276 | c4x | c8051 | clipper | csky \
277 | d10v | d30v | dlx | dsp16xx \
278 | e2k | epiphany \
279 | fido | fr30 | frv | ft32 \
280 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
281 | hexagon \
282 | i370 | i860 | i960 | ia16 | ia64 \
283 | ip2k | iq2000 \
284 | k1om \
285 | le32 | le64 \
286 | lm32 \
287 | m32c | m32r | m32rle | m68000 | m68k | m88k \
288 | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
289 | mips | mipsbe | mipseb | mipsel | mipsle \
290 | mips16 \
291 | mips64 | mips64el \
292 | mips64octeon | mips64octeonel \
293 | mips64orion | mips64orionel \
294 | mips64r5900 | mips64r5900el \
295 | mips64vr | mips64vrel \
296 | mips64vr4100 | mips64vr4100el \
297 | mips64vr4300 | mips64vr4300el \
298 | mips64vr5000 | mips64vr5000el \
299 | mips64vr5900 | mips64vr5900el \
300 | mipsisa32 | mipsisa32el \
301 | mipsisa32r2 | mipsisa32r2el \
302 | mipsisa32r6 | mipsisa32r6el \
303 | mipsisa64 | mipsisa64el \
304 | mipsisa64r2 | mipsisa64r2el \
305 | mipsisa64r6 | mipsisa64r6el \
306 | mipsisa64sb1 | mipsisa64sb1el \
307 | mipsisa64sr71k | mipsisa64sr71kel \
308 | mipsr5900 | mipsr5900el \
309 | mipstx39 | mipstx39el \
310 | mn10200 | mn10300 \
311 | moxie \
312 | mt \
313 | msp430 \
314 | nds32 | nds32le | nds32be \
315 | nfp \
316 | nios | nios2 | nios2eb | nios2el \
317 | ns16k | ns32k \
318 | open8 | or1k | or1knd | or32 \
319 | pdp10 | pj | pjl \
320 | powerpc | powerpc64 | powerpc64le | powerpcle \
321 | pru \
322 | pyramid \
323 | riscv32 | riscv64 \
324 | rl78 | rx \
325 | score \
326 | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
327 | sh64 | sh64le \
328 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
329 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
330 | spu \
331 | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
332 | ubicom32 \
333 | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
334 | visium \
335 | wasm32 \
336 | x86 | xc16x | xstormy16 | xtensa \
337 | z8k | z80)
338 basic_machine=$basic_machine-unknown
339 ;;
340 c54x)
341 basic_machine=tic54x-unknown
342 ;;
343 c55x)
344 basic_machine=tic55x-unknown
345 ;;
346 c6x)
347 basic_machine=tic6x-unknown
643 # Here we handle the default manufacturer of certain CPU types. It is in
644 # some cases the only manufacturer, in others, it is the most popular.
645 w89k)
646 cpu=hppa1.1
647 vendor=winbond
648 ;;
649 op50n)
650 cpu=hppa1.1
651 vendor=oki
652 ;;
653 op60c)
654 cpu=hppa1.1
655 vendor=oki
656 ;;
657 ibm*)
658 cpu=i370
659 vendor=ibm
660 ;;
661 orion105)
662 cpu=clipper
663 vendor=highlevel
664 ;;
665 mac | mpw | mac-mpw)
666 cpu=m68k
667 vendor=apple
668 ;;
669 pmac | pmac-mpw)
670 cpu=powerpc
671 vendor=apple
672 ;;
673
674 # Recognize the various machine names and aliases which stand
675 # for a CPU type and a company and sometimes even an OS.
676 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
677 cpu=m68000
678 vendor=att
679 ;;
680 3b*)
681 cpu=we32k
682 vendor=att
683 ;;
684 bluegene*)
685 cpu=powerpc
686 vendor=ibm
687 os=cnk
688 ;;
689 decsystem10* | dec10*)
690 cpu=pdp10
691 vendor=dec
692 os=tops10
693 ;;
694 decsystem20* | dec20*)
695 cpu=pdp10
696 vendor=dec
697 os=tops20
698 ;;
699 delta | 3300 | motorola-3300 | motorola-delta \
700 | 3300-motorola | delta-motorola)
701 cpu=m68k
702 vendor=motorola
703 ;;
704 dpx2*)
705 cpu=m68k
706 vendor=bull
707 os=sysv3
708 ;;
709 encore | umax | mmax)
710 cpu=ns32k
711 vendor=encore
712 ;;
713 elxsi)
714 cpu=elxsi
715 vendor=elxsi
716 os=${os:-bsd}
717 ;;
718 fx2800)
719 cpu=i860
720 vendor=alliant
721 ;;
722 genix)
723 cpu=ns32k
724 vendor=ns
725 ;;
726 h3050r* | hiux*)
727 cpu=hppa1.1
728 vendor=hitachi
729 os=hiuxwe2
730 ;;
731 hp3k9[0-9][0-9] | hp9[0-9][0-9])
732 cpu=hppa1.0
733 vendor=hp
734 ;;
735 hp9k2[0-9][0-9] | hp9k31[0-9])
736 cpu=m68000
737 vendor=hp
738 ;;
739 hp9k3[2-9][0-9])
740 cpu=m68k
741 vendor=hp
742 ;;
743 hp9k6[0-9][0-9] | hp6[0-9][0-9])
744 cpu=hppa1.0
745 vendor=hp
746 ;;
747 hp9k7[0-79][0-9] | hp7[0-79][0-9])
748 cpu=hppa1.1
749 vendor=hp
750 ;;
751 hp9k78[0-9] | hp78[0-9])
752 # FIXME: really hppa2.0-hp
753 cpu=hppa1.1
754 vendor=hp
755 ;;
756 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
757 # FIXME: really hppa2.0-hp
758 cpu=hppa1.1
759 vendor=hp
760 ;;
761 hp9k8[0-9][13679] | hp8[0-9][13679])
762 cpu=hppa1.1
763 vendor=hp
764 ;;
765 hp9k8[0-9][0-9] | hp8[0-9][0-9])
766 cpu=hppa1.0
767 vendor=hp
768 ;;
769 i*86v32)
770 cpu=`echo "$1" | sed -e 's/86.*/86/'`
771 vendor=pc
772 os=sysv32
773 ;;
774 i*86v4*)
775 cpu=`echo "$1" | sed -e 's/86.*/86/'`
776 vendor=pc
777 os=sysv4
778 ;;
779 i*86v)
780 cpu=`echo "$1" | sed -e 's/86.*/86/'`
781 vendor=pc
782 os=sysv
783 ;;
784 i*86sol2)
785 cpu=`echo "$1" | sed -e 's/86.*/86/'`
786 vendor=pc
787 os=solaris2
788 ;;
789 j90 | j90-cray)
790 cpu=j90
791 vendor=cray
792 os=${os:-unicos}
793 ;;
794 iris | iris4d)
795 cpu=mips
796 vendor=sgi
797 case $os in
798 irix*)
799 ;;
800 *)
801 os=irix4
802 ;;
803 esac
804 ;;
805 miniframe)
806 cpu=m68000
807 vendor=convergent
808 ;;
809 *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
810 cpu=m68k
811 vendor=atari
812 os=mint
813 ;;
814 news-3600 | risc-news)
815 cpu=mips
816 vendor=sony
817 os=newsos
818 ;;
819 next | m*-next)
820 cpu=m68k
821 vendor=next
822 case $os in
823 nextstep* )
824 ;;
825 ns2*)
826 os=nextstep2
827 ;;
828 *)
829 os=nextstep3
830 ;;
831 esac
832 ;;
833 np1)
834 cpu=np1
835 vendor=gould
836 ;;
837 op50n-* | op60c-*)
838 cpu=hppa1.1
839 vendor=oki
840 os=proelf
841 ;;
842 pa-hitachi)
843 cpu=hppa1.1
844 vendor=hitachi
845 os=hiuxwe2
846 ;;
847 pbd)
848 cpu=sparc
849 vendor=tti
850 ;;
851 pbb)
852 cpu=m68k
853 vendor=tti
854 ;;
855 pc532)
856 cpu=ns32k
857 vendor=pc532
858 ;;
859 pn)
860 cpu=pn
861 vendor=gould
862 ;;
863 power)
864 cpu=power
865 vendor=ibm
866 ;;
867 ps2)
868 cpu=i386
869 vendor=ibm
870 ;;
871 rm[46]00)
872 cpu=mips
873 vendor=siemens
874 ;;
875 rtpc | rtpc-*)
876 cpu=romp
877 vendor=ibm
878 ;;
879 sde)
880 cpu=mipsisa32
881 vendor=sde
882 os=${os:-elf}
883 ;;
884 simso-wrs)
885 cpu=sparclite
886 vendor=wrs
887 os=vxworks
888 ;;
889 tower | tower-32)
890 cpu=m68k
891 vendor=ncr
892 ;;
893 vpp*|vx|vx-*)
894 cpu=f301
895 vendor=fujitsu
896 ;;
897 w65)
898 cpu=w65
899 vendor=wdc
900 ;;
901 w89k-*)
902 cpu=hppa1.1
903 vendor=winbond
904 os=proelf
905 ;;
906 none)
907 cpu=none
908 vendor=none
348909 ;;
349910 leon|leon[3-9])
350 basic_machine=sparc-$basic_machine
351 ;;
352 m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
353 basic_machine=$basic_machine-unknown
354 os=-none
355 ;;
356 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
357 ;;
358 m9s12z | m68hcs12z | hcs12z | s12z)
359