Browse Source

New upstream version 6.7.0

upstream/latest upstream/6.7.0
Andrea Bolognani 3 years ago
parent
commit
0d7a347cab
  1. 6
      .ctags
  2. 1
      .ctags.d/libvirt.ctags
  3. 20
      .dir-locals.el
  4. 21
      .editorconfig
  5. 79
      .mailmap
  6. 49
      AUTHORS
  7. 2
      AUTHORS.in
  8. 9
      CONTRIBUTING.rst
  9. 15
      ChangeLog
  10. 74
      GNUmakefile
  11. 180
      Makefile.am
  12. 1333
      Makefile.in
  13. 102
      NEWS.rst
  14. 75
      README
  15. 3
      README.rst
  16. 1586
      aclocal.m4
  17. 53
      autogen.sh
  18. 10
      build-aux/Makefile.in
  19. 0
      build-aux/Makefile.nonreentrant
  20. 348
      build-aux/compile
  21. 1676
      build-aux/config.guess
  22. 1814
      build-aux/config.sub
  23. 791
      build-aux/depcomp
  24. 518
      build-aux/install-sh
  25. 11210
      build-aux/ltmain.sh
  26. 49
      build-aux/meson.build
  27. 215
      build-aux/missing
  28. 194
      build-aux/syntax-check.mk
  29. 148
      build-aux/test-driver
  30. 6
      ci/Makefile
  31. 59
      ci/README.rst
  32. 24
      ci/cirrus/build.yml
  33. 9
      ci/cirrus/libvirt-freebsd-12.vars
  34. 9
      ci/cirrus/libvirt-macos-1015.vars
  35. 22
      ci/cirrus/refresh
  36. 14
      ci/containers/README.rst
  37. 139
      ci/containers/libvirt-centos-7.Dockerfile
  38. 113
      ci/containers/libvirt-centos-8.Dockerfile
  39. 114
      ci/containers/libvirt-centos-stream.Dockerfile
  40. 140
      ci/containers/libvirt-debian-10-cross-aarch64.Dockerfile
  41. 139
      ci/containers/libvirt-debian-10-cross-armv6l.Dockerfile
  42. 140
      ci/containers/libvirt-debian-10-cross-armv7l.Dockerfile
  43. 139
      ci/containers/libvirt-debian-10-cross-i686.Dockerfile
  44. 139
      ci/containers/libvirt-debian-10-cross-mips.Dockerfile
  45. 139
      ci/containers/libvirt-debian-10-cross-mips64el.Dockerfile
  46. 139
      ci/containers/libvirt-debian-10-cross-mipsel.Dockerfile
  47. 139
      ci/containers/libvirt-debian-10-cross-ppc64le.Dockerfile
  48. 139
      ci/containers/libvirt-debian-10-cross-s390x.Dockerfile
  49. 117
      ci/containers/libvirt-debian-10.Dockerfile
  50. 138
      ci/containers/libvirt-debian-sid-cross-aarch64.Dockerfile
  51. 137
      ci/containers/libvirt-debian-sid-cross-armv6l.Dockerfile
  52. 138
      ci/containers/libvirt-debian-sid-cross-armv7l.Dockerfile
  53. 137
      ci/containers/libvirt-debian-sid-cross-i686.Dockerfile
  54. 137
      ci/containers/libvirt-debian-sid-cross-mips64el.Dockerfile
  55. 137
      ci/containers/libvirt-debian-sid-cross-mipsel.Dockerfile
  56. 137
      ci/containers/libvirt-debian-sid-cross-ppc64le.Dockerfile
  57. 137
      ci/containers/libvirt-debian-sid-cross-s390x.Dockerfile
  58. 115
      ci/containers/libvirt-debian-sid.Dockerfile
  59. 114
      ci/containers/libvirt-fedora-31.Dockerfile
  60. 112
      ci/containers/libvirt-fedora-32.Dockerfile
  61. 95
      ci/containers/libvirt-fedora-rawhide-cross-mingw32.Dockerfile
  62. 95
      ci/containers/libvirt-fedora-rawhide-cross-mingw64.Dockerfile
  63. 113
      ci/containers/libvirt-fedora-rawhide.Dockerfile
  64. 111
      ci/containers/libvirt-opensuse-151.Dockerfile
  65. 119
      ci/containers/libvirt-ubuntu-1804.Dockerfile
  66. 118
      ci/containers/libvirt-ubuntu-2004.Dockerfile
  67. 42
      ci/containers/refresh
  68. 58
      config-post.h
  69. 67
      config.h
  70. 1003
      config.h.in
  71. 16
      configmake.h.in
  72. 36766
      configure
  73. 1063
      configure.ac
  74. 522
      docs/Makefile.am
  75. 1572
      docs/Makefile.in
  76. 543
      docs/aclperms.htmlinc
  77. 15
      docs/advanced-tests.rst
  78. 9
      docs/api_extension.html.in
  79. 239
      docs/architecture.svg
  80. 16
      docs/auth.html.in
  81. 5
      docs/best-practices.rst
  82. 13
      docs/committer-guidelines.rst
  83. 42
      docs/compiling.html.in
  84. 29
      docs/drvxen.html.in
  85. 24
      docs/fonts/meson.build
  86. 9849
      docs/formatdomain.html.in
  87. 7507
      docs/formatdomain.rst
  88. 2
      docs/generic.css
  89. 28
      docs/gitdm/aliases
  90. 11
      docs/gitdm/companies/canonical
  91. 2
      docs/gitdm/companies/datto
  92. 4
      docs/gitdm/companies/dreamhost
  93. 7
      docs/gitdm/companies/ibm
  94. 2
      docs/gitdm/companies/nec
  95. 109
      docs/gitdm/companies/others
  96. 6
      docs/gitdm/companies/redhat
  97. 7
      docs/gitdm/companies/suse
  98. 2
      docs/gitdm/companies/virtuozzo
  99. 17
      docs/gitdm/groups/education
  100. 14
      docs/gitdm/groups/opensource

6
.ctags

@ -0,0 +1,6 @@
--recurse
--exclude=*.orig
--exclude=*.html
--exclude=*.html.in
--langmap=c:+.h.in
--c-kinds=+p

1
.ctags.d/libvirt.ctags

@ -0,0 +1 @@
../.ctags

20
.dir-locals.el

@ -0,0 +1,20 @@
(
(c-mode . (
(c-file-style . "K&R")
(indent-tabs-mode . nil)
(c-indent-level . 4)
(c-basic-offset . 4)
))
(html-mode . (
(indent-tabs-mode . nil)
))
(sh-mode . (
(indent-tabs-mode . nil)
))
(nxml-mode . (
(indent-tabs-mode . nil)
))
(perl-mode . (
(indent-tabs-mode . nil)
))
)

21
.editorconfig

@ -0,0 +1,21 @@
# EditorConfig is a file format and collection of text editor plugins
# for maintaining consistent coding styles between different editors
# and IDEs. Most popular editors support this either natively or via
# plugin.
#
# Check https://editorconfig.org for details.
root = true
[*]
end_of_line = lf
insert_final_newline = true
charset = utf-8
[*.c]
indent_style = space
indent_size = 4
[*.{rng,xml}]
indent_style = space
indent_size = 2

79
.mailmap

@ -0,0 +1,79 @@
# 'git shortlog --help' and look for mailmap for the format of each line
# Email consolidation:
# <Preferred address in AUTHORS> <other alias used by same author>
<bozzolan@gmail.com> <redshift@gmx.com>
<charles_duffy@messageone.com> <charles@dyfis.net>
<claudio.bley@gmail.com> <cbley@av-test.de>
<dfj@redhat.com> <dfj@dfj.bne.redhat.com>
<dpkshetty@gmail.com> <deepakcs@linux.vnet.ibm.com>
<dpkshetty@gmail.com> <deepakcs@redhat.com>
<eblake@redhat.com> <ebb9@byu.net>
<gdolley@arpnetworks.com> <gdolley@ucla.edu>
<gerhard.stenzel@de.ibm.com> <gstenzel@linux.vnet.ibm.com>
<jamie@canonical.com> <jamie@ubuntu.com>
<laine@redhat.com> <laine@laine.org>
<meyering@redhat.com> <jim@meyering.net>
<socketpair@gmail.com> <socketpair gmail com>
<soren@linux2go.dk> <soren@ubuntu.com>
<jfehlig@suse.com> <jfehlig@novell.com>
<jfehlig@suse.com> <jfehlig@linux-ypgk.site>
<jclift@redhat.com> <justin@salasaga.org>
<soren@linux2go.dk> <soren@canonical.com>
<cfergeau@redhat.com> <teuf@gnome.org>
<wency@cn.fujitsu.com> <wency cn fujitsu com>
<cardoe@cardoe.com> <cardoe@gentoo.org>
<fsimonce@redhat.com> <federico.simoncelli@gmail.com>
<marcandre.lureau@redhat.com> <marcandre.lureau@gmail.com>
<supriyak@linux.vnet.ibm.com> <supriyak@in.ibm.com>
<neil@aldur.co.uk> <neil@brightbox.co.uk>
<stefanb@us.ibm.com> <stefanb@linux.vnet.ibm.com>
<stefanb@us.ibm.com> <stefannb@linux.vnet.ibm.com>
<josh.durgin@inktank.com> <joshd@hq.newdream.net>
<josh.durgin@inktank.com> <josh.durgin@dreamhost.com>
<gerd@egidy.de> <lists@egidy.de>
<gerd@egidy.de> <gerd.von.egidy@intra2net.com>
<benoar@dolka.fr> <benjamin.cama@telecom-bretagne.eu>
<zhlcindy@linux.vnet.ibm.com> <zhlcindy@gmail.com>
<serge.hallyn@canonical.com> <serue@us.ibm.com>
<pritesh.kothari@sun.com> <Pritesh.Kothari@Sun.COM>
<cbosdonnat@suse.com> <cedric.bosdonnat@free.fr>
<mnestratov@virtuozzo.com> <mnestratov@parallels.com>
<nshirokovskiy@virtuozzo.com> <nshirokovskiy@parallels.com>
<jyang@redhat.com> <osier@yunify.com>
<kkoukiou@redhat.com> <k.koukiou@googlemail.com>
<intrigeri@boum.org> <intrigeri+libvirt@boum.org>
<fidencio@redhat.com> <fabiano@fidencio.org>
<shi_lei@massclouds.com> <shilei.massclouds@gmx.com>
<adrian.brzezinski@eo.pl> <redhat@adrb.pl>
# Name consolidation:
# Preferred author spelling <preferred email>
Alex Jia <ajia@redhat.com>
Royce Lv <lvroyce@linux.vnet.ibm.com>
Daniel J Walsh <dwalsh@redhat.com>
Ján Tomko <jtomko@redhat.com>
Gerd von Egidy <gerd@egidy.de>
MATSUDA Daiki <matsudadik@intellilink.co.jp>
Tang Chen <tangchen@cn.fujitsu.com>
Peng Zhou <ailvpeng25@gmail.com>
Dirk Herrendoerfer <d.herrendoerfer@herrendoerfer.name>
Thibault VINCENT <thibault.vincent@smartjog.com>
Aurelien Rougemont <beorn@binaries.fr>
Serge E. Hallyn <serge.hallyn@canonical.com>
Henrik Persson E <henrik.e.persson@ericsson.com>
Philipp Hahn <hahn@univention.de>
Pritesh Kothari <pritesh.kothari@sun.com>
Wang Yufei (James) <james.wangyufei@huawei.com>
Deepak C Shetty <dpkshetty@gmail.com>
Dave Allan <dallan@redhat.com>
Richard W.M. Jones <rjones@redhat.com>
# Non-trivial consolidation:
# see git documentation for information about the format
Daniel P. Berrangé <berrange@redhat.com>
Daniel P. Berrangé <berrange@redhat.com> <dan@berrange.com>
Michal Prívozník <mprivozn@redhat.com>
Michal Prívozník <mprivozn@redhat.com> <miso.privoznik@gmail.com>
Marco Bozzolan <bozzolan@gmail.com> <redshift@gmx.com>

49
AUTHORS

@ -99,6 +99,7 @@ Adrian Brzezinski <adrian.brzezinski@eo.pl>
Akarshan Biswas <akarshan.biswas@gmail.com>
Alan Pevec <apevec@redhat.com>
Ales Musil <amusil@redhat.com>
Alex Jia <ajia@redhat.com>
Alex Williamson <alex.williamson@redhat.com>
Alexander Burluka <aburluka@parallels.com>
Alexander Burluka <aburluka@virtuozzo.com>
@ -113,11 +114,13 @@ Alvaro Polo <apoloval@gmail.com>
Amy Fong <amy.fong@windriver.com>
Amy Griffis <amy.griffis@hp.com>
Anatole Denis <natolumin@gmail.com>
Andrea Bolognani <abologna@redhat.com>
Andres Lagar-Cavilla <andres@lagarcavilla.org>
Andrew Miloradovsky <andrew@interpretmath.pw>
Ani Sinha <ani.sinha@nutanix.com>
Anirban Chakraborty <abchak@juniper.net>
Ansis Atteka <aatteka@nicira.com>
Anthony Liguori <aliguori@us.ibm.com>
Anthony PERARD <anthony.perard@citrix.com>
Antoine Millet <antoine.millet@tdf.fr>
Anton Khramov <anton@endocode.com>
@ -132,6 +135,7 @@ Ashish Mittal <Ashish.Mittal@veritas.com>
Ashish Mittal <ashmit602@gmail.com>
Ata E Husain Bohra <ata.husain@hotmail.com>
Atsushi Kumagai <kumagai-atsushi@mxc.nes.nec.co.jp>
Atsushi SAKAI <sakaia@jp.fujitsu.com>
Aurelien Rougemont <beorn@binaries.fr>
Balázs Meskó <meskobalazs@mailbox.org>
Bamvor Jian Zhang <bamv2005@gmail.com>
@ -142,6 +146,7 @@ Ben Gray <ben.r.gray@gmail.com>
Benjamin Cama <benoar@dolka.fr>
Bharata B Rao <bharata@linux.vnet.ibm.com>
Bihong Yu <yubihong@huawei.com>
Binfeng Wu <wubinfeng@huawei.com>
Bing Bu Cao <mars@linux.vnet.ibm.com>
Bing Niu <bing.niu@intel.com>
Bjoern Walk <bwalk@linux.ibm.com>
@ -171,31 +176,38 @@ Cheng Lin <cheng.lin130@zte.com.cn>
Chris Coulson <chris.coulson@canonical.com>
Chris J Arges <chris.j.arges@canonical.com>
Chris Jester-Young <cky@cky.nz>
Chris Lalancette <clalance@redhat.com>
Chris St. Pierre <chris.a.st.pierre@gmail.com>
Chris Venteicher <cventeic@redhat.com>
Chris Wong <wongc-redhat@hoku.net>
Chris Wright <chrisw@redhat.com>
Christian Benvenuti <benve@cisco.com>
Christian Ehrhardt <christian.ehrhardt@canonical.com>
Christian Franke <nobody@nowhere.ws>
Christian Loehle <cloehle@linutronix.de>
Christian Schoenebeck <qemu_oss@crudebyte.com>
Christoffer Dall <cdall@linaro.org>
Christophe Fergeau <cfergeau@redhat.com>
Chuck Short <chuck.short@canonical.com>
Chuck Short <zulcss@gmail.com>
Chunhe Li <lichunhe@huawei.com>
Chunyan Liu <cyliu@suse.com>
Clark Laughlin <clark.laughlin@linaro.org>
Claudio André <claudioandre.br@gmail.com>
Claudio Bley <claudio.bley@gmail.com>
Clementine Hayat <clem@lse.epita.fr>
Cole Robinson <crobinso@redhat.com>
Collin L. Walling <walling@linux.vnet.ibm.com>
Collin Walling <walling@linux.ibm.com>
Conrad Meyer <cse.cem@gmail.com>
Corey S. McQuay <csmcquay@linux.vnet.ibm.com>
Cornelia Huck <cohuck@redhat.com>
Cristian Klein <cristiklein@gmail.com>
Cédric Bosdonnat <cbosdonnat@suse.com>
Côme Borsoi <fedora@borsoi.fr>
Dan Horák <dan@danny.cz>
Dan Kenigsberg <danken@redhat.com>
Dan Smith <danms@us.ibm.com>
Dan Zheng <dzheng@redhat.com>
Daniel Berteaud <daniel@firewall-services.com>
Daniel Gollub <gollub@b1-systems.de>
@ -204,9 +216,12 @@ Daniel Henrique Barboza <danielhb413@gmail.com>
Daniel J Walsh <dwalsh@redhat.com>
Daniel Liu <srwx4096@gmail.com>
Daniel Nicoletti <dantti12@gmail.com>
Daniel P. Berrangé <berrange@redhat.com>
Daniel Veillard <veillard@redhat.com>
Dario Faggioli <dario.faggioli@citrix.com>
Dario Faggioli <dfaggioli@suse.com>
Darryl L. Pierce <dpierce@redhat.com>
Dave Allan <dallan@redhat.com>
David Dai <zdai@linux.vnet.ibm.com>
David Jorm <dfj@redhat.com>
David Kiarie <davidkiarie4@gmail.com>
@ -230,6 +245,7 @@ Diego Woitasen <diego.woitasen@vhgroup.net>
Dipankar Sarma <dipankar@in.ibm.com>
Dirk Herrendoerfer <d.herrendoerfer@herrendoerfer.name>
Dmitry Andreev <dandreev@virtuozzo.com>
Dmitry Guryanov <dguryanov@parallels.com>
Dmitry Mishin <dim@virtuozzo.com>
Dmitry Nesterenko <dmitry.nesterenko@virtuozzo.com>
Dominick Grift <dac.override@gmail.com>
@ -250,12 +266,15 @@ Eduardo Otubo <otubo@linux.vnet.ibm.com>
Eiichi Tsukata <eiichi.tsukata.xh@hitachi.com>
Eli Qiao <liyong.qiao@intel.com>
Eli Qiao <taget@linux.vnet.ibm.com>
Eric Blake <eblake@redhat.com>
Eric Farman <farman@linux.ibm.com>
Eric Farman <farman@linux.vnet.ibm.com>
Eric W. Biederman <ebiederm@xmission.com>
Erik Skultety <eskultet@redhat.com>
Ersek Laszlo <lacos@caesar.elte.hu>
Eugen Feller <eugen.feller@inria.fr>
Fabian Freyer <fabian.freyer@physik.tu-berlin.de>
Fabiano Fidêncio <fidencio@redhat.com>
Fangge Jin <fjin@redhat.com>
Farhan Ali <alifm@linux.ibm.com>
Farhan Ali <alifm@linux.vnet.ibm.com>
@ -288,7 +307,9 @@ Giuseppe Scrivano <gscrivan@redhat.com>
Gordon Messmer <gordon@dragonsdawn.net>
Gregor Kopka <gregor@kopka.net>
Guan Qiang <hzguanqiang@corp.netease.com>
Guannan Ren <gren@redhat.com>
Gui Jianfeng <guijianfeng@cn.fujitsu.com>
Guido Günther <agx@sigxcpu.org>
Han Cheng <hanc.fnst@cn.fujitsu.com>
Han Han <hhan@redhat.com>
Hao Liu <hliu@redhat.com>
@ -347,6 +368,8 @@ Jianwei Hu <jiahu@redhat.com>
Jidong Xia <xiajidong@cmss.chinamobile.com>
Jie Wang <wangjie88@huawei.com>
JieWang <wangjie88@huawei.com>
Jim Fehlig <jfehlig@suse.com>
Jim Meyering <meyering@redhat.com>
Jim Paris <jim@jtan.com>
Jin Yan <jinyan12@huawei.com>
Jincheng Miao <jmiao@redhat.com>
@ -356,6 +379,8 @@ Joao Martins <joao.m.martins@oracle.com>
Joel SIMOES <joel.simoes@laposte.net>
Johannes Holmberg <johannes.holmberg@dataductus.se>
John Eckersberg <jeckersb@redhat.com>
John Ferlan <jferlan@redhat.com>
John Levon <john.levon@sun.com>
John Morrissey <jwm@horde.net>
John Williams <john.williams@petalogix.com>
Jonas Eriksson <jonas.j.eriksson@ericsson.com>
@ -370,12 +395,17 @@ Juerg Haefliger <juerg.haefliger@hp.com>
Julien Humbert <julroy67@gmail.com>
Julio Faracco <jcfaracco@gmail.com>
Jun Koi <junkoi2004@gmail.com>
Justin Clift <jclift@redhat.com>
Ján Tomko <jtomko@redhat.com>
KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Kai Kang <kai.kang@windriver.com>
Karel Zak <kzak@redhat.com>
Kashyap Chamarthy <kchamart@redhat.com>
Katerina Koukiou <kkoukiou@redhat.com>
Kay Schubert <kayegypt@web.de>
Ken ICHIKAWA <ichikawa.ken@jp.fujitsu.com>
Kenneth Nagin <NAGIN@il.ibm.com>
Kevin Locke <kevin@kevinlocke.name>
Kiarie Kahurani <davidkiarie4@gmail.com>
Klaus Ethgen <Klaus@Ethgen.de>
Konrad Rzeszutek Wilk <konrad@kernel.org>
@ -385,6 +415,7 @@ Kyle DeFrancia <kdef@linux.vnet.ibm.com>
Kyle Mestery <kmestery@cisco.com>
Ladi Prosek <lprosek@redhat.com>
Lai Jiangshan <laijs@cn.fujitsu.com>
Laine Stump <laine@redhat.com>
LanceLiu <liu.lance.89@gmail.com>
Laszlo Ersek <lersek@redhat.com>
Laurent Bigonville <bigon@bigon.be>
@ -423,14 +454,17 @@ Marek Marczykowski <marmarek@invisiblethingslab.com>
Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Marian Neagul <marian@info.uvt.ro>
Mark Asselstine <mark.asselstine@windriver.com>
Mark McLoughlin <markmc@redhat.com>
Mark Wu <dwu@redhat.com>
Marko Myllynen <myllynen@redhat.com>
Markus Groß <gross@univention.de>
Marti Raudsepp <marti@juffo.org>
Martin Kletzander <mkletzan@redhat.com>
Martin Pietsch <martin.pietsch@tu-dresden.de>
Martin Wilck <mwilck@suse.de>
Matthew Booth <mbooth@redhat.com>
Matthew Rosato <mjrosato@linux.vnet.ibm.com>
Matthias Bolte <matthias.bolte@googlemail.com>
Matthias Dahl <mdvirt@designassembly.de>
Matthias Gatto <matthias.gatto@outscale.com>
Matthieu Coudron <mattator@gmail.com>
@ -438,6 +472,7 @@ Mattias Bolte <matthias.bolte@googlemail.com>
Matwey V. Kornilov <matwey.kornilov@gmail.com>
Mauro S. M. Rodrigues <maurosr@linux.vnet.ibm.com>
Maxim Kozin <kolomaxes@gmail.com>
Maxim Nestratov <mnestratov@virtuozzo.com>
Maxim Perevedentsev <mperevedentsev@virtuozzo.com>
Maxime Leroy <maxime.leroy@6wind.com>
Maximilian Wilhelm <max@rfc2324.org>
@ -455,6 +490,7 @@ Michael Wood <esiotrot@gmail.com>
Michal Dubiel <md@semihalf.com>
Michal Koutný <mkoutny@suse.com>
Michal Novotny <minovotn@redhat.com>
Michal Prívozník <mprivozn@redhat.com>
Michał Łomnicki <michal.lomnicki@gmail.com>
Michel Normand <normand@linux.vnet.ibm.com>
Michele Paolino <m.paolino@virtualopensystems.com>
@ -478,6 +514,7 @@ Neil Wilson <neil@aldur.co.uk>
Nguyen Anh Quynh <aquynh@gmail.com>
Nicolas Brignone <nmbrignone@gmail.com>
Niels de Vos <ndevos@redhat.com>
Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
Nikos Mavrogiannopoulos <nmav@redhat.com>
Nikunj A. Dadhania <nikunj@linux.vnet.ibm.com>
Nishank Trivedi <nistrive@cisco.com>
@ -491,6 +528,7 @@ Olga Krishtal <okrishtal@virtuozzo.com>
Olivia Yin <Hong-Hua.Yin@freescale.com>
Olivia Yin <hong-hua.yin@freescale.com>
Olivier Fourdan <ofourdan@redhat.com>
Osier Yang <jyang@redhat.com>
Oskari Saarenmaa <os@ohmu.fi>
Ossi Herrala <oherrala@gmail.com>
Paolo Bonzini <pbonzini@redhat.com>
@ -502,6 +540,7 @@ Paulo de Rezende Pinatti <ppinatti@linux.ibm.com>
Pavel Boldin <pboldin@mirantis.com>
Pavel Fedin <p.fedin@samsung.com>
Pavel Glushchak <pglushchak@virtuozzo.com>
Pavel Hrdina <phrdina@redhat.com>
Pavel Mores <pmores@redhat.com>
Pavel Raiskup <praiskup@redhat.com>
Pavel Timofeev <timp87@gmail.com>
@ -510,10 +549,12 @@ Peng Zhou <ailvpeng25@gmail.com>
Peter Chubb <Peter.Chubb@data61.csiro.au>
Peter Feiner <peter@gridcentric.ca>
Peter Kieser <peter@kieser.ca>
Peter Krempa <pkrempa@redhat.com>
Peter Robinson <pbrobinson@gmail.com>
Phil Petty <phpetty@cisco.com>
Philipp Hahn <hahn@univention.de>
Pieter Hollants <pieter@hollants.com>
Pino Toscano <ptoscano@redhat.com>
Pino Toscano <toscano.pino@tiscali.it>
Piotr Drąg <piotrdrag@gmail.com>
Pradipta Kr. Banerjee <bpradip@in.ibm.com>
@ -536,12 +577,14 @@ Ramon Medeiros <ramonn@linux.vnet.ibm.com>
Reinier Schoof <reinier@transip.nl>
Richa Marwaha <rmarwah@linux.vnet.ibm.com>
Richard Laager <rlaager@wiktel.com>
Richard W.M. Jones <rjones@redhat.com>
Richard Weinberger <richard@nod.at>
Rick Harris <rconradharris@gmail.com>
Rikard Falkeborn <rikard.falkeborn@gmail.com>
Riku Voipio <riku.voipio@linaro.org>
Roland Schulz <schullzroll@gmail.com>
Rolf Eike Beer <eike@sf-mail.de>
Roman Bogorodskiy <bogorodskiy@gmail.com>
Roman Bolshakov <r.bolshakov@yadro.com>
Roman Mohr <rmohr@redhat.com>
Rommer <rommer@active.by>
@ -560,6 +603,7 @@ Sage Weil <sage@newdream.net>
Sahid Orentino Ferdjaoui <sahid.ferdjaoui@canonical.com>
Sahid Orentino Ferdjaoui <sahid.ferdjaoui@cloudwatt.com>
Sam Bobroff <sam.bobroff@au1.ibm.com>
Sam Hartman <hartmans@debian.org>
Sascha Peilicke <saschpe@suse.de>
Sascha Silbe <silbe@linux.vnet.ibm.com>
Satoru Moriya <satoru.moriya@hds.com>
@ -567,6 +611,7 @@ Satoru SATOH <satoru.satoh@gmail.com>
Scott Garfinkle <scottgar@linux.vnet.ibm.com>
Scott Garfinkle <seg@us.ibm.com>
Scott Moser <smoser@ubuntu.com>
Scott Shambarger <scott-libvirt@shambarger.net>
Scott Sullivan <ssullivan@liquidweb.com>
Sebastian Mitterle <smitterl@redhat.com>
Sebastian Wiedenroth <wiedi@frubar.net>
@ -602,6 +647,7 @@ Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Stef Walter <stefw@gnome.org>
Stefan Bader <stefan.bader@canonical.com>
Stefan Berger <stefanb@linux.ibm.com>
Stefan Berger <stefanb@us.ibm.com>
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Stefan Hajnoczi <stefanha@redhat.com>
Stefan Schallenberg <infos@nafets.de>
@ -656,6 +702,7 @@ Václav Pavlín <vpavlin@redhat.com>
Wang Huaqiang <huaqiang.wang@intel.com>
Wang King <king.wang@huawei.com>
Wang Rui <moon.wangrui@huawei.com>
Wang Xin <wangxinxin.wang@huawei.com>
Wang Yechao <wang.yechao255@zte.com.cn>
Wang Yufei (James) <james.wangyufei@huawei.com>
Wangjing (King, Euler) <king.wang@huawei.com>
@ -666,6 +713,7 @@ Wei Jiangang <weijg.fnst@cn.fujitsu.com>
Wei Liu <wei.liu2@citrix.com>
Weilun Zhu <zhuweilun@huawei.com>
Weiwei Li <nuonuoli@tencent.com>
Wen Congyang <wency@cn.fujitsu.com>
Wido den Hollander <wido@widodh.nl>
Wieland Hoffmann <themineo@googlemail.com>
William Grant <wgrant@ubuntu.com>
@ -745,6 +793,7 @@ zhang bo <oscar.zhangbo@huawei.com>
zhenwei pi <pizhenwei@bytedance.com>
Марк Коренберг <socketpair@gmail.com>
The libvirt logo was designed by Diana Fong
-- End

2
AUTHORS.in

@ -93,7 +93,7 @@ Stefan de Konink <dekonink@kinkrsoftware.nl>
Takahashi Tomohiro <takatom@jp.fujitsu.com>
Tatsuro Enokura <fj7716hz@aa.jp.fujitsu.com>
#contributorslist#
@contributorslist@
The libvirt logo was designed by Diana Fong

9
CONTRIBUTING.rst

@ -12,13 +12,12 @@ your git clone run:
::
$ mkdir build && cd build
$ ../autogen.sh
$ make
$ meson build
$ ninja -C build
You'll find the freshly-built document in ``docs/contribute.html``.
If ``configure`` fails because of missing dependencies, you can set
If ``meson setup`` fails because of missing dependencies, you can set
up your system by calling
::
@ -39,7 +38,7 @@ to run
::
$ sudo dnf install gcc make libtool autoconf automake rpm-build
$ sudo dnf install gcc make ninja-build rpm-build
You might still be missing some dependencies if your distribution is
shipping an old libvirt version, but that will get you much closer to

15
ChangeLog

@ -1,15 +0,0 @@
libvirt ChangeLog
=================
The libvirt project doesn't include a detailed ChangeLog in its release
archives.
If you're interested in the full list of changes made to libvirt since
the project was started, you can clone the git repository from
https://gitlab.com/libvirt/libvirt/
and browse them locally using your favorite git history viewer or,
alternatively, browse them online at
https://gitlab.com/libvirt/libvirt/-/commits/master

74
GNUmakefile

@ -1,74 +0,0 @@
# Having a separate GNUmakefile lets me 'include' the dynamically
# generated rules created via cfg.mk (package-local configuration)
# as well as maint.mk (generic maintainer rules).
# This makefile is used only if you run GNU Make.
# It is necessary if you want to build targets usually of interest
# only to the maintainer.
# Copyright (C) 2001, 2003, 2006-2019 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
_build-aux ?= build-aux
_autoreconf ?= autoreconf -v
# If the user runs GNU make but has not yet run ./configure,
# give them a diagnostic.
_gl-Makefile := $(wildcard [M]akefile)
ifneq ($(_gl-Makefile),)
# Make tar archive easier to reproduce.
export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner
# Allow the user to add to this in the Makefile.
ALL_RECURSIVE_TARGETS =
include Makefile
include $(srcdir)/$(_build-aux)/syntax-check.mk
else
.DEFAULT_GOAL := abort-due-to-no-makefile
srcdir = .
# The package can override .DEFAULT_GOAL to run actions like autoreconf.
include $(srcdir)/$(_build-aux)/syntax-check.mk
ifeq ($(.DEFAULT_GOAL),abort-due-to-no-makefile)
$(MAKECMDGOALS): abort-due-to-no-makefile
endif
abort-due-to-no-makefile:
@echo There seems to be no Makefile in this directory. 1>&2
@echo "You must run ./configure before running 'make'." 1>&2
@exit 1
endif
# Tell version 3.79 and up of GNU make to not build goals in this
# directory in parallel, in case someone tries to build multiple
# targets, and one of them can cause a recursive target to be invoked.
# Only set this if Automake doesn't provide it.
AM_RECURSIVE_TARGETS ?= $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) \
dist distcheck tags ctags
ALL_RECURSIVE_TARGETS += $(AM_RECURSIVE_TARGETS)
ifneq ($(word 2, $(MAKECMDGOALS)), )
ifneq ($(filter $(ALL_RECURSIVE_TARGETS), $(MAKECMDGOALS)), )
.NOTPARALLEL:
endif
endif

180
Makefile.am

@ -1,180 +0,0 @@
## Process this file with automake to produce Makefile.in
## Copyright (C) 2005-2013 Red Hat, Inc.
##
## This library is free software; you can redistribute it and/or
## modify it under the terms of the GNU Lesser General Public
## License as published by the Free Software Foundation; either
## version 2.1 of the License, or (at your option) any later version.
##
## This library is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
## Lesser General Public License for more details.
##
## You should have received a copy of the GNU Lesser General Public
## License along with this library. If not, see
## <http://www.gnu.org/licenses/>.
LCOV = lcov
GENHTML = genhtml
# when building from tarball -Werror isn't auto enabled
# so force it explicitly
DISTCHECK_CONFIGURE_FLAGS = --enable-werror
SUBDIRS = . include/libvirt src tools docs \
tests po examples
XZ_OPT ?= -v -T0
export XZ_OPT
ACLOCAL_AMFLAGS = -I m4
EXTRA_DIST = \
config-post.h \
libvirt.spec libvirt.spec.in \
mingw-libvirt.spec.in \
libvirt.pc.in \
libvirt-qemu.pc.in \
libvirt-lxc.pc.in \
libvirt-admin.pc.in \
Makefile.nonreentrant \
autogen.sh \
GNUmakefile \
run.in \
README.rst \
AUTHORS.in \
CONTRIBUTING.rst \
NEWS.rst \
scripts/apibuild.py \
scripts/augeas-gentest.py \
build-aux/check-spacing.pl \
scripts/check-aclperms.py \
scripts/check-aclrules.py \
scripts/check-drivername.py \
scripts/check-driverimpls.py \
scripts/check-file-access.py \
scripts/check-remote-protocol.py \
scripts/check-symfile.py \
scripts/check-symsorting.py \
scripts/dtrace2systemtap.py \
scripts/esx_vi_generator.py \
scripts/genaclperms.py \
scripts/genpolkit.py \
scripts/gensystemtap.py \
scripts/group-qemu-caps.py \
scripts/header-ifdef.py \
scripts/hvsupport.py \
scripts/hyperv_wmi_generator.py \
scripts/mock-noinline.py \
scripts/prohibit-duplicate-header.py \
scripts/test-wrap-argv.py \
build-aux/syntax-check.mk \
build-aux/useless-if-before-free \
build-aux/vc-list-files \
ci/Makefile \
ci/build.sh \
ci/list-images.sh \
ci/prepare.sh \
$(NULL)
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libvirt.pc libvirt-qemu.pc libvirt-lxc.pc libvirt-admin.pc
rpm: clean
@(unset CDPATH ; $(MAKE) dist && rpmbuild -ta $(distdir).tar.xz)
srpm: clean
@(unset CDPATH ; $(MAKE) dist && rpmbuild -ts $(distdir).tar.xz)
check-local: all tests
check-access: all
@($(MAKE) $(AM_MAKEFLAGS) -C tests check-access)
cov: clean-cov
$(MKDIR_P) $(top_builddir)/coverage
$(LCOV) -c -o $(top_builddir)/coverage/libvirt.info.tmp \
-d $(top_builddir)/src \
-d $(top_builddir)/tests
$(LCOV) -r $(top_builddir)/coverage/libvirt.info.tmp \
-o $(top_builddir)/coverage/libvirt.info
rm $(top_builddir)/coverage/libvirt.info.tmp
$(GENHTML) --show-details -t "libvirt" -o $(top_builddir)/coverage \
--legend $(top_builddir)/coverage/libvirt.info
clean-cov:
rm -rf $(top_builddir)/coverage
MAINTAINERCLEANFILES = .git-module-status
BUILT_SOURCES = configmake.h
CLEANFILES = configmake.h
distclean-local: clean-GNUmakefile
clean-GNUmakefile:
test '$(srcdir)' = . || rm -f $(top_builddir)/GNUmakefile
dist-hook: gen-AUTHORS
.PHONY: gen-AUTHORS
gen-AUTHORS:
$(AM_V_GEN)\
if test -d $(srcdir)/.git; then \
( \
cd $(srcdir) && \
git log --pretty=format:'%aN <%aE>' | sort -u \
) > all.list && \
sort -u $(srcdir)/AUTHORS.in > maint.list && \
comm -23 all.list maint.list > contrib.list && \
contrib="`cat contrib.list`" && \
perl -p -e "s/#contributorslist#// and print '$$contrib'" \
< $(srcdir)/AUTHORS.in > $(distdir)/AUTHORS-tmp && \
mv -f $(distdir)/AUTHORS-tmp $(distdir)/AUTHORS && \
rm -f all.list maint.list contrib.list; \
fi
ci-%:
$(MAKE) -C $(srcdir)/ci/ $@
# Listed in the same order as the GNU makefile conventions, and
# provided by autoconf 2.59c+ or 2.70.
# The Automake-defined pkg* macros are appended, in the order
# listed in the Automake 1.10a+ documentation.
configmake.h: Makefile
$(AM_V_GEN)rm -f $@-t && \
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
echo '#if WIN32'; \
echo '# include <winsock2.h> /* avoid mingw pollution on DATADIR */'; \
echo '#endif'; \
echo '#define PREFIX "$(prefix)"'; \
echo '#define EXEC_PREFIX "$(exec_prefix)"'; \
echo '#define BINDIR "$(bindir)"'; \
echo '#define SBINDIR "$(sbindir)"'; \
echo '#define LIBEXECDIR "$(libexecdir)"'; \
echo '#define DATAROOTDIR "$(datarootdir)"'; \
echo '#define DATADIR "$(datadir)"'; \
echo '#define SYSCONFDIR "$(sysconfdir)"'; \
echo '#define SHAREDSTATEDIR "$(sharedstatedir)"'; \
echo '#define LOCALSTATEDIR "$(localstatedir)"'; \
echo '#define RUNSTATEDIR "$(runstatedir)"'; \
echo '#define INCLUDEDIR "$(includedir)"'; \
echo '#define OLDINCLUDEDIR "$(oldincludedir)"'; \
echo '#define DOCDIR "$(docdir)"'; \
echo '#define INFODIR "$(infodir)"'; \
echo '#define HTMLDIR "$(htmldir)"'; \
echo '#define DVIDIR "$(dvidir)"'; \
echo '#define PDFDIR "$(pdfdir)"'; \
echo '#define PSDIR "$(psdir)"'; \
echo '#define LIBDIR "$(libdir)"'; \
echo '#define LISPDIR "$(lispdir)"'; \
echo '#define LOCALEDIR "$(localedir)"'; \
echo '#define MANDIR "$(mandir)"'; \
echo '#define MANEXT "$(manext)"'; \
echo '#define PKGDATADIR "$(pkgdatadir)"'; \
echo '#define PKGINCLUDEDIR "$(pkgincludedir)"'; \
echo '#define PKGLIBDIR "$(pkglibdir)"'; \
echo '#define PKGLIBEXECDIR "$(pkglibexecdir)"'; \
} | sed '/""/d' > $@-t && \
mv -f $@-t $@

1333
Makefile.in

File diff suppressed because it is too large

102
NEWS.rst

@ -8,6 +8,107 @@ the changes introduced by each of them.
For a more fine-grained view, use the `git log`_.
v6.7.0 (2020-09-01)
===================
* **Packaging changes**
* Libvirt switch to Meson build system
Libvirt abandoned autotools and switched to Meson build system.
* **New features**
* qemu: Add support for initiator IQN configuration for iSCSI hostdevs
Similarly to iSCSI ``<disk>`` users can use an ``<initiator>`` element
inside ``<hostdev>`` with the same format to configure the ``IQN`` value
used by the qemu initiator when connecting to an iSCSI target.
* xen: Add support for device model command-line passthrough
Xen supports passing arbitrary arguments to the QEMU device model using
the ``device_model_args`` setting in xl.cfg(5). The libvirt xen driver now
supports this using ``<xen:commandline/>`` XML extensions.
* shmem: Add support for shmem-{plain, doorbell} ``role`` option
The ``role`` attribute controls how the domain behaves on migration. With
``role=master``, the guest will copy the shared memory on migration to
the destination host. With ``role=peer``, the migration is disabled.
* bhyve: Sound device support
This feature allows to configure guest sound device using
the ``<sound>`` element, and map it to the host sound device using
the ``<audio>`` element.
* **Improvements**
* Allow sparse streams for block devices
Sparse streams (e.g. ``virsh vol-download --sparse`` or ``virsh vol-upload
--sparse``) now handle if one of the stream ends is a block device.
* Remove NVDIMM auto-alignment for pSeries Guests
This feature was introduced in libvirt v6.2.0 as part of the overall
NVDIMM support for pSeries guests. The idea was to relieve the user
from knowing ppc64 alignment details, but the end result is that we
ended up with inconsistencies between domain XML and actual NVDIMM
size the guest is using. To promote consistency between domain XML
and the guest, unaligned NVDIMM sizes for pSeries guests will now be
forbidden and no size auto-alignment will be made. Instead, libvirt will
suggest an aligned round up size for the user.
* **Bug fixes**
* virdevmapper: Deal with kernels without DM support
In the previous release libvirt dropped libdevmapper in favor of its own
implementation. However, it failed to deal correctly with kernels that
either don't have device mapper enabled or where the dm-mod module is not
loaded yet. This is now fixed.
* resctrl: Use exclusive lock for /sys/fs/resctrl
When two or more domains were attempted to start at once, due to a bug in
implementation, resctrl was not locked properly and thus threads did not
mutually exclude with each other resulting in not setting requested
limitations.
* mdev: Fix daemon crash when reattaching mdevs on assignment conflict
If there's a list of mdevs to be assigned to a domain, but one of them (NOT
the first) is already assigned to a different domain then libvirtd would
crash. This is now fixed.
* Fix logic in setting COW flag on btrfs
When COW is not explicitly requested to be disabled or enabled, then
libvirt should do nothing on non-BTRFS file systems.
* Avoid crash due to race in glib event loop code
Libvirt switched to glib event loop in 6.1.0 but it was also tickling a bug
in glib code leading to the daemon crash. Libvirt way of calling glib was
changed so the daemon crashes no more.
* virdevmapper: Handle kernel without device-mapper support
In the previous release, Libvirt dropped libdevmapper in favor of its own
implementation. But the implementation did not handle kernels without
device-mapper support. This is now fixed.
* remove autogenerated macvtap names from migration XML
Autogenerated macvtap device names were being left in the
migration XML, which could result in libvirt erroneously deleting
the macvtap device of a different guest in the aftermath of
failing to restart the guest on the destination host. Removing the
autogenerated names avoids this.
v6.6.0 (2020-08-02)
===================
@ -30,6 +131,7 @@ v6.6.0 (2020-08-02)
management applications may wish to override this behaviour. This is now
possible via new ``cow`` element.
* **Improvements**
* esx: Change the NIC limit for recent virtualHW versions

75
README

@ -1,75 +0,0 @@
.. image:: https://gitlab.com/libvirt/libvirt/badges/master/pipeline.svg
:target: https://gitlab.com/libvirt/libvirt/pipelines
:alt: GitLab CI Build Status
.. image:: https://travis-ci.org/libvirt/libvirt.svg
:target: https://travis-ci.org/libvirt/libvirt
:alt: Travis CI Build Status
.. image:: https://bestpractices.coreinfrastructure.org/projects/355/badge
:target: https://bestpractices.coreinfrastructure.org/projects/355
:alt: CII Best Practices
.. image:: https://translate.fedoraproject.org/widgets/libvirt/-/libvirt/svg-badge.svg
:target: https://translate.fedoraproject.org/engage/libvirt/
:alt: Translation status
==============================
Libvirt API for virtualization
==============================
Libvirt provides a portable, long term stable C API for managing the
virtualization technologies provided by many operating systems. It
includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware
vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER
Hypervisor.
For some of these hypervisors, it provides a stateful management
daemon which runs on the virtualization host allowing access to the
API both by non-privileged local users and remote users.
Layered packages provide bindings of the libvirt C API into other
languages including Python, Perl, PHP, Go, Java, OCaml, as well as
mappings into object systems such as GObject, CIM and SNMP.
Further information about the libvirt project can be found on the
website:
https://libvirt.org
License
=======
The libvirt C API is distributed under the terms of GNU Lesser General
Public License, version 2.1 (or later). Some parts of the code that are
not part of the C library may have the more restrictive GNU General
Public License, version 2.0 (or later). See the files ``COPYING.LESSER``
and ``COPYING`` for full license terms & conditions.
Installation
============
Instructions on building and installing libvirt can be found on the website:
https://libvirt.org/compiling.html
Contributing
============
The libvirt project welcomes contributions in many ways. For most components
the best way to contribute is to send patches to the primary development
mailing list. Further guidance on this can be found on the website:
https://libvirt.org/contribute.html
Contact
=======
The libvirt project has two primary mailing lists:
* libvirt-users@redhat.com (**for user discussions**)
* libvir-list@redhat.com (**for development only**)
Further details on contacting the project are available on the website:
https://libvirt.org/contact.html

3
README.rst

@ -1,9 +1,6 @@
.. image:: https://gitlab.com/libvirt/libvirt/badges/master/pipeline.svg
:target: https://gitlab.com/libvirt/libvirt/pipelines
:alt: GitLab CI Build Status
.. image:: https://travis-ci.org/libvirt/libvirt.svg
:target: https://travis-ci.org/libvirt/libvirt
:alt: Travis CI Build Status
.. image:: https://bestpractices.coreinfrastructure.org/projects/355/badge
:target: https://bestpractices.coreinfrastructure.org/projects/355
:alt: CII Best Practices

1586
aclocal.m4

File diff suppressed because it is too large

53
autogen.sh

@ -1,53 +0,0 @@
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
#
# THe following options must come first. All other or subsequent
# arguments are passed to configure:
# --no-git skip `git submodule update --init`
test -n "$srcdir" || srcdir=$(dirname "$0")
test -n "$srcdir" || srcdir=.
olddir=$(pwd)
cd "$srcdir"
(test -f src/libvirt.c) || {
echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
echo " top-level libvirt directory"
exit 1
}
if [ "x$1" = x--no-git ]; then
shift
else
git submodule update --init || exit 1
fi
autoreconf --verbose --force --install || exit 1
if test "x$1" = "x--system"; then
shift
prefix=/usr
libdir=$prefix/lib
sysconfdir=/etc
localstatedir=/var
if [ -d /usr/lib64 ]; then
libdir=$prefix/lib64
fi
EXTRA_ARGS="--prefix=$prefix --sysconfdir=$sysconfdir --localstatedir=$localstatedir --libdir=$libdir"
fi
cd "$olddir"
if [ "$NOCONFIGURE" = "" ]; then
$srcdir/configure $EXTRA_ARGS "$@" || exit 1
if [ "$1" = "--help" ]; then
exit 0
else
echo "Now type 'make' to compile libvirt" || exit 1
fi
else
echo "Skipping configure process."
fi

10
build-aux/Makefile.in

@ -0,0 +1,10 @@
# define variables
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
FLAKE8 = @flake8_path@
RUNUTF8 = @runutf8@
PYTHON = @PYTHON3@
# include syntax-check.mk file
include $(top_srcdir)/build-aux/syntax-check.mk

0
Makefile.nonreentrant → build-aux/Makefile.nonreentrant

348
build-aux/compile

@ -1,348 +0,0 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2018 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:

1676
build-aux/config.guess

File diff suppressed because it is too large

1814
build-aux/config.sub

File diff suppressed because it is too large

791
build-aux/depcomp

@ -1,791 +0,0 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2018 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
Environment variables:
depmode Dependency tracking mode.
source Source file read by 'PROGRAMS ARGS'.
object Object file output by 'PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputting dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "depcomp $scriptversion"
exit $?
;;
esac
# Get the directory component of the given path, and save it in the
# global variables '$dir'. Note that this directory component will
# be either empty or ending with a '/' character. This is deliberate.
set_dir_from ()
{
case $1 in
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
*) dir=;;
esac
}
# Get the suffix-stripped basename of the given path, and save it the
# global variable '$base'.
set_base_from ()
{
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
}
# If no dependency file was actually created by the compiler invocation,
# we still have to create a dummy depfile, to avoid errors with the
# Makefile "include basename.Plo" scheme.
make_dummy_depfile ()
{
echo "#dummy" > "$depfile"
}
# Factor out some common post-processing of the generated depfile.
# Requires the auxiliary global variable '$tmpdepfile' to be set.
aix_post_process_depfile ()
{
# If the compiler actually managed to produce a dependency file,
# post-process it.
if test -f "$tmpdepfile"; then
# Each line is of the form 'foo.o: dependency.h'.
# Do two passes, one to just change these to
# $object: dependency.h
# and one to simply output
# dependency.h:
# which is needed to avoid the deleted-header problem.
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
} > "$depfile"
rm -f "$tmpdepfile"
else
make_dummy_depfile
fi
}
# A tabulation character.
tab=' '
# A newline character.
nl='
'
# Character ranges might be problematic outside the C locale.
# These definitions help.
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
lower=abcdefghijklmnopqrstuvwxyz
digits=0123456789
alpha=${upper}${lower}
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile"
# Avoid interferences from the environment.
gccflag= dashmflag=
# Some modes work just like other modes, but use different flags. We
# parameterize here, but still list the modes in the big case below,
# to make depend.m4 easier to write. Note that we *cannot* use a case
# here, because this file can only contain one case statement.
if test "$depmode" = hp; then
# HP compiler uses -M and no extra arg.
gccflag=-M
depmode=gcc
fi
if test "$depmode" = dashXmstdout; then
# This is just like dashmstdout with a different argument.
dashmflag=-xM
depmode=dashmstdout
fi
cygpath_u="cygpath -u -f -"
if test "$depmode" = msvcmsys; then
# This is just like msvisualcpp but w/o cygpath translation.
# Just convert the backslash-escaped backslashes to single forward
# slashes to satisfy depend.m4
cygpath_u='sed s,\\\\,/,g'
depmode=msvisualcpp
fi
if test "$depmode" = msvc7msys; then
# This is just like msvc7 but w/o cygpath translation.
# Just convert the backslash-escaped backslashes to single forward
# slashes to satisfy depend.m4
cygpath_u='sed s,\\\\,/,g'
depmode=msvc7
fi
if test "$depmode" = xlc; then
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
gccflag=-qmakedep=gcc,-MF
depmode=gcc
fi
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
## the command line argument order; so add the flags where they
## appear in depend2.am. Note that the slowdown incurred here
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
for arg
do
case $arg in
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
*) set fnord "$@" "$arg" ;;
esac
shift # fnord
shift # $arg
done
"$@"
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
mv "$tmpdepfile" "$depfile"
;;
gcc)
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
## (see the conditional assignment to $gccflag above).
## There are various ways to get dependency output from gcc. Here's
## why we pick this rather obscure method:
## - Don't want to use -MD because we'd like the dependencies to end
## up in a subdir. Having to rename by hand is ugly.
## (We might end up doing this anyway to support other compilers.)
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
## -MM, not -M (despite what the docs say). Also, it might not be
## supported by the other compilers which use the 'gcc' depmode.
## - Using -M directly means running the compiler twice (even worse
## than renaming).
if test -z "$gccflag"; then
gccflag=-MD,
fi
"$@" -Wp,"$gccflag$tmpdepfile"
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
# The second -e expression handles DOS-style file names with drive
# letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
## This next piece of magic avoids the "deleted header file" problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
## Some versions of gcc put a space before the ':'. On the theory
## that the space means something, we add a space to the output as
## well. hp depmode also adds that space, but also prefixes the VPATH
## to the object. Take care to not repeat it in the output.
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
| sed -e 's/$/ :/' >> "$depfile"
rm -f "$tmpdepfile"
;;
hp)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
sgi)
if test "$libtool" = yes; then
"$@" "-Wp,-MDupdate,$tmpdepfile"
else
"$@" -MDupdate "$tmpdepfile"
fi
stat=$?
if test $stat -ne 0; then
rm -f "$tmpdepfile"
exit $stat
fi
rm -f "$depfile"
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
echo "$object : \\" > "$depfile"
# Clip off the initial element (the dependent). Don't try to be
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
# the IRIX cc adds comments like '#:fec' to the end of the
# dependency line.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
| tr "$nl" ' ' >> "$depfile"
echo >> "$depfile"
# The second pass generates a dummy entry for each header file.
tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> "$depfile"
else
make_dummy_depfile
fi
rm -f "$tmpdepfile"
;;
xlc)
# This case exists only to let depend.m4 do its work. It works by
# looking at the text of this script. This case will never be run,
# since it is checked for above.
exit 1
;;
aix)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
# current directory. Also, the AIX compiler puts '$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.