[libvirt PATCH v2 0/7] po: Various fixes and cleanups

Changes from [v1] * instead of checking that the potfile doesn't contain unwanted comments at syntax-check time, prevent them from being added by passing all xgettext options explicitly ourselves. [v1] https://listman.redhat.com/archives/libvir-list/2022-May/231526.html Andrea Bolognani (7): po: Drop unwanted comments from potfile po: Stop using 'glib' preset for i18n.gettext() po: Drop prefixes from POTFILES.in po: Don't generate POTFILES syntax-check: Don't exclude src/false.c from sc_po_check po: Sort LINGUAS syntax-check: Introduce sc_linguas_sorting build-aux/syntax-check.mk | 21 ++- po/LINGUAS | 8 +- po/POTFILES | 384 ++++++++++++++++++++++++++++++++++++++ po/POTFILES.in | 384 -------------------------------------- po/libvirt.pot | 216 --------------------- po/meson.build | 17 +- 6 files changed, 406 insertions(+), 624 deletions(-) create mode 100644 po/POTFILES delete mode 100644 po/POTFILES.in -- 2.35.3

These managed to sneak in as part of ec02f5719a87, when the potfile was last refreshed, but are not supposed to be there. Signed-off-by: Andrea Bolognani <abologna@redhat.com> --- po/libvirt.pot | 216 ------------------------------------------------- 1 file changed, 216 deletions(-) diff --git a/po/libvirt.pot b/po/libvirt.pot index 6be56a23f6..127f623a30 100644 --- a/po/libvirt.pot +++ b/po/libvirt.pot @@ -30,7 +30,6 @@ msgid "" " (specify help <group> for details about the commands in the group)\n" msgstr "" -#. Print the description only if it's not empty. #: tools/vsh.c:709 msgid "" "\n" @@ -292,7 +291,6 @@ msgstr "" msgid " Bandwidth limit: %llu bytes/s (%-.3lf %s/s)" msgstr "" -#. true if 'arg' works instead of '--opt arg' #: tools/vsh.c:653 msgid " NAME\n" msgstr "" @@ -590,16 +588,6 @@ msgstr "" msgid "%s object has invalid dynamic type" msgstr "" -#. -#. * A required property must be != 0 (NULL for pointers, "undefined" == 0 for -#. * enumeration values). -#. * -#. * To be used as part of ESX_VI__TEMPLATE__VALIDATE. -#. -#. -#. * Macros to implement managed objects -#. -#. FIXME: This results in O(n^2) runtime in case of missing required, but * unselected properties. #: src/esx/esx_vi_types.c:487 src/esx/esx_vi_types.c:744 #, c-format msgid "%s object is missing the required '%s' property" @@ -1773,7 +1761,6 @@ msgstr "" msgid "(libxl_migration_cookie)" msgstr "" -#. parse and modify the xml from the user #: src/conf/domain_conf.c:29964 msgid "(metadata_xml)" msgstr "" @@ -1850,7 +1837,6 @@ msgstr "" msgid "(volume_definition)" msgstr "" -#. Capacity related information isn't available #: tools/virsh-pool.c:1283 tools/virsh-pool.c:1284 tools/virsh-pool.c:1285 msgid "-" msgstr "" @@ -2975,15 +2961,11 @@ msgid "" "dirtyrate'." msgstr "" -#. -#. * Macros to implement dynamic dispatched functions -#. #: src/esx/esx_vi_types.c:544 src/esx/esx_vi_types.c:690 #, c-format msgid "Call to %s for unexpected type '%s'" msgstr "" -#. nothing #: src/esx/esx_vi_types.c:210 src/esx/esx_vi_types.c:225 #, c-format msgid "Call to %s for unexpected type '%s', expected '%s'" @@ -4418,7 +4400,6 @@ msgstr "" msgid "Checkpoints have inconsistent relations for domain %s" msgstr "" -#. All bytes up to and including the checksum byte should add up to 0. #: src/util/virpcivpd.c:556 msgid "Checksum validation has failed" msgstr "" @@ -5963,7 +5944,6 @@ msgstr "" msgid "Could not retrieve default Msvm_DiskDrive object" msgstr "" -#. Something went wrong retrieving pool info, cope with it #: tools/virsh-pool.c:1250 msgid "Could not retrieve pool information" msgstr "" @@ -7024,7 +7004,6 @@ msgid "" "Domain has %d interfaces. Please specify which one to detach using --mac" msgstr "" -#. this is the 2nd match, so it's ambiguous #: tools/virsh-domain.c:12353 #, c-format msgid "" @@ -8495,28 +8474,18 @@ msgstr "" msgid "Failed to create thread for receiving migration data" msgstr "" -#. -#. * Not much we can do on error here except log it. -#. #: src/remote/remote_daemon.c:476 msgid "Failed to create thread to handle daemon restart" msgstr "" -#. -#. * Not much we can do on error here except log it. -#. #: src/libxl/libxl_domain.c:723 msgid "Failed to create thread to handle domain death" msgstr "" -#. -#. * Not much we can do on error here except log it. -#. #: src/libxl/libxl_domain.c:701 msgid "Failed to create thread to handle domain shutdown" msgstr "" -#. Not much else can be done #: src/storage/storage_driver.c:2352 msgid "Failed to create thread to handle pool refresh" msgstr "" @@ -9218,7 +9187,6 @@ msgstr "" msgid "Failed to list active pools" msgstr "" -#. there was an error during the first or second call #: tools/virsh-domain-monitor.c:1590 msgid "Failed to list domains" msgstr "" @@ -9239,32 +9207,26 @@ msgstr "" msgid "Failed to list inactive pools" msgstr "" -#. there was an error during the first or second call #: tools/virsh-interface.c:208 msgid "Failed to list interfaces" msgstr "" -#. there was an error during the call #: tools/virsh-nwfilter.c:679 msgid "Failed to list network filter bindings" msgstr "" -#. there was an error during the call #: tools/virsh-nwfilter.c:276 tools/virsh-nwfilter.c:297 msgid "Failed to list network filters" msgstr "" -#. there was an error during the first or second call #: tools/virsh-network.c:514 msgid "Failed to list networks" msgstr "" -#. there was an error during the call #: tools/virsh-nodedev.c:242 tools/virsh-nodedev.c:263 msgid "Failed to list node devices" msgstr "" -#. there was an error during the call #: tools/virsh-secret.c:452 msgid "Failed to list node secrets" msgstr "" @@ -9274,7 +9236,6 @@ msgstr "" msgid "Failed to list persistent guests on $uri" msgstr "" -#. there was an error during the first or second call #: tools/virsh-pool.c:879 msgid "Failed to list pools" msgstr "" @@ -9300,7 +9261,6 @@ msgstr "" msgid "Failed to list vcpus for domain '%d' with libxenlight" msgstr "" -#. there was an error during the call #: tools/virsh-volume.c:1248 msgid "Failed to list volumes" msgstr "" @@ -10046,9 +10006,6 @@ msgstr "" msgid "Failed to resume domain '%s'" msgstr "" -#. Hm, we already know we are in error here. We don't want to -#. * overwrite the previous error, though, so we just throw something -#. * to the logs and hope for the best #: src/qemu/qemu_migration.c:156 #, c-format msgid "Failed to resume guest %s after failure" @@ -10844,64 +10801,11 @@ msgid "" "for VMX file" msgstr "" -#. Macros to help dealing with flag requirements. -#. * -#. * VIR_REQUIRE_FLAG_RET: -#. * -#. * @FLAG1: First flag to be checked. -#. * @FLAG2: Second flag that is required by first flag. -#. * @RET: Return value. -#. * -#. * Check whether required flag is set. The checked flags are compared -#. * with flags variable. -#. * -#. * This helper does an early return and therefore it has to be called -#. * before anything that would require cleanup. -#. -#. * -#. * VIR_REQUIRE_FLAG_GOTO: -#. * -#. * @FLAG1: First flag to be checked. -#. * @FLAG2: Second flag that is required by first flag. -#. * @LABEL: Label to jump to. -#. * -#. * Check whether required flag is set. The checked flags are compared -#. * with flags variable. -#. * -#. * Returns nothing. Jumps to a label if required flag is not set. -#. #: src/internal.h:382 src/internal.h:404 #, c-format msgid "Flag '%s' is required by flag '%s'" msgstr "" -#. Macros to help dealing with mutually exclusive flags. -#. * -#. * VIR_EXCLUSIVE_FLAGS_RET: -#. * -#. * @FLAG1: First flag to be checked. -#. * @FLAG2: Second flag to be checked. -#. * @RET: Return value. -#. * -#. * Reject mutually exclusive API flags. The checked flags are compared -#. * with flags variable. -#. * -#. * This helper does an early return and therefore it has to be called -#. * before anything that would require cleanup. -#. -#. * -#. * VIR_EXCLUSIVE_FLAGS_GOTO: -#. * -#. * @FLAG1: First flag to be checked. -#. * @FLAG2: Second flag to be checked. -#. * @LABEL: Label to jump to. -#. * -#. * Reject mutually exclusive API flags. The checked flags are compared -#. * with flags variable. -#. * -#. * Returns nothing. Jumps to a label if unsupported flags were -#. * passed to it. -#. #: src/internal.h:332 src/internal.h:356 #, c-format msgid "Flags '%s' and '%s' are mutually exclusive" @@ -12065,15 +11969,6 @@ msgstr "" msgid "Invalid address." msgstr "" -#. -#. * Don't check for *selectSet != NULL here because selectSet is a list -#. * and might contain items already. This function appends to selectSet. -#. -#. optional -#. optional -#. nothing -#. nothing -#. nothing #: src/esx/esx_driver.c:4170 src/esx/esx_driver.c:4260 #: src/esx/esx_storage_backend_vmfs.c:606 src/esx/esx_util.c:219 #: src/esx/esx_util.h:30 src/esx/esx_vi.c:419 src/esx/esx_vi.c:817 @@ -14838,12 +14733,6 @@ msgstr "" msgid "NVMe namespace can't be zero" msgstr "" -#. Output old style header -#. We only get here if the --details option was selected. -#. Insert the header into table -#. The old output format -#. We only get here if the --details option was selected. -#. Insert the header into table #: tools/virsh-checkpoint.c:750 tools/virsh-checkpoint.c:753 #: tools/virsh-domain-monitor.c:1929 tools/virsh-domain-monitor.c:1931 #: tools/virsh-domain-monitor.c:2330 tools/virsh-domain.c:13216 @@ -16114,20 +16003,6 @@ msgid "" "modelName '%s'" msgstr "" -#. Macros to help dealing with required options. -#. VSH_REQUIRE_OPTION_EXPR: -#. * -#. * @NAME1: String containing the name of the option. -#. * @EXPR1: Expression to validate the variable (boolean variable). -#. * @NAME2: String containing the name of required option. -#. * @EXPR2: Expression to validate the variable (boolean variable). -#. * -#. * Check if required command options in virsh was set. Use the -#. * provided expression to check the variables. -#. * -#. * This helper does an early return and therefore it has to be called -#. * before anything that would require cleanup. -#. #: tools/vsh.h:542 #, c-format msgid "Option --%s is required by option --%s" @@ -16153,20 +16028,6 @@ msgstr "" msgid "Optional flags or --rawstats are not supported by the daemon" msgstr "" -#. Macros to help dealing with mutually exclusive options. -#. VSH_EXCLUSIVE_OPTIONS_EXPR: -#. * -#. * @NAME1: String containing the name of the option. -#. * @EXPR1: Expression to validate the variable (boolean variable) -#. * @NAME2: String containing the name of the option. -#. * @EXPR2: Expression to validate the variable (boolean variable) -#. * -#. * Reject mutually exclusive command options in virsh. Use the -#. * provided expression to check the variables. -#. * -#. * This helper does an early return and therefore it has to be called -#. * before anything that would require cleanup. -#. #: tools/vsh.h:490 #, c-format msgid "Options --%s and --%s are mutually exclusive" @@ -16460,7 +16321,6 @@ msgstr "" msgid "Partition path '%s' must start with '/'" msgstr "" -#. warn users that the --base64 option passed from command line is wrong #: tools/virsh-secret.c:237 msgid "Passing secret value as command-line argument is insecure!" msgstr "" @@ -17501,7 +17361,6 @@ msgstr "" msgid "S4 state is disabled for this domain" msgstr "" -#. Denied #: src/rpc/virnetsaslcontext.c:168 #, c-format msgid "SASL client identity '%s' not allowed by ACL" @@ -18137,9 +17996,6 @@ msgstr "" msgid "Shared memory mapping is not supported with this QEMU" msgstr "" -#. XXX: Need to sort the returned params once new parameter -#. * fields not of shared memory are added. -#. #: tools/virsh-host.c:1543 msgid "Shared memory:\n" msgstr "" @@ -18239,7 +18095,6 @@ msgstr "" msgid "Snapshot" msgstr "" -#. Depending on flags, we re-edit even if XML is unchanged. #: tools/virsh-snapshot.c:553 #, c-format msgid "Snapshot %s XML configuration not changed.\n" @@ -18837,7 +18692,6 @@ msgstr "" msgid "Table row cannot be empty" msgstr "" -#. title #: tools/virsh-domain-monitor.c:482 tools/virsh-domain-monitor.c:597 #: tools/virsh-domain-monitor.c:599 tools/virsh-domain.c:13216 msgid "Target" @@ -20421,12 +20275,10 @@ msgstr "" msgid "Try again?" msgstr "" -#. Better leak than crash #: src/esx/esx_vi.c:628 msgid "Trying to free MultiCURL object that is still in use" msgstr "" -#. Better leak than crash #: src/esx/esx_vi.c:517 msgid "Trying to free SharedCURL object that is still in use" msgstr "" @@ -23748,7 +23600,6 @@ msgstr "" msgid "Unknown error" msgstr "" -#. should never happen (tm) #: src/rpc/virnetsshsession.c:480 msgid "Unknown error value" msgstr "" @@ -24737,13 +24588,11 @@ msgstr "" msgid "Video adapters are not supported int containers." msgstr "" -#. FIXME - list a copyright blurb, as in GNU programs? #: tools/virsh.c:498 #, c-format msgid "Virsh command line tool of libvirt %s\n" msgstr "" -#. FIXME - list a copyright blurb, as in GNU programs? #: tools/virt-admin.c:1262 #, c-format msgid "Virt-admin command line tool of libvirt %s\n" @@ -25320,11 +25169,6 @@ msgstr "" msgid "allocate the new capacity, rather than leaving it sparse" msgstr "" -#. -#. * we need to use an intermediary pointer to @data as compilers may sometimes -#. * complain about @data not being a pointer type: -#. * error: the address of 'foo' will always evaluate as 'true' [-Werror=address] -#. #: src/util/virnetdev.c:1584 src/util/virnetdev.c:3166 #: src/util/virnetdev.c:3249 src/util/virnetdevbridge.c:1073 #: src/util/virnetdevip.c:140 src/util/virnetdevip.c:363 @@ -27529,7 +27373,6 @@ msgstr "" msgid "cannot open path '%s' in '%s'" msgstr "" -#. A dangling symlink now implies a TOCTTOU race; report it. #: src/storage/storage_backend_gluster.c:267 src/storage/storage_util.c:1672 #, c-format msgid "cannot open volume '%s'" @@ -28539,7 +28382,6 @@ msgstr "" msgid "child didn't write error (status=%d)" msgstr "" -#. in case of EACCES, the parent will retry #: src/util/virfile.c:2807 #, c-format msgid "child failed to create directory '%s'" @@ -33443,9 +33285,6 @@ msgstr "" msgid "fetch or set the currently defined set of logging outputs on daemon" msgstr "" -#. parse inbound and outbound which are in the format of -#. * 'average,peak,burst,floor', in which peak and burst are optional, -#. * thus 'average,,burst' and 'average,peak' are also legal. #: tools/virsh-domain.c:908 #, c-format msgid "field '%s' is malformed" @@ -34183,7 +34022,6 @@ msgstr "" msgid "handler failed to wait on condition" msgstr "" -#. caller's error #: src/conf/nwfilter_params.c:408 msgid "hash lookup resulted in NULL pointer" msgstr "" @@ -34873,25 +34711,6 @@ msgstr "" msgid "interface name %s does not fit into buffer" msgstr "" -#. -#. * virsh-interface.c: Commands to manage host interface -#. * -#. * Copyright (C) 2005, 2007-2016 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/>. -#. #: tools/virsh-interface.c:25 msgid "interface name or MAC address" msgstr "" @@ -38802,15 +38621,6 @@ msgstr "" msgid "monitor failure" msgstr "" -#. * -#. * QEMU_CHECK_MONITOR_FULL: -#. * @mon: monitor pointer variable to check, evaluated multiple times, no parentheses -#. * @exit: statement that is used to exit the function -#. * -#. * This macro checks that the monitor is valid for given operation and exits -#. * the function if not. The macro also adds a debug statement regarding the -#. * monitor. -#. #: src/qemu/qemu_monitor.c:82 msgid "monitor must not be NULL" msgstr "" @@ -39050,7 +38860,6 @@ msgstr "" msgid "negative size requires --shrink" msgstr "" -#. 56 is good for Kerberos #: src/remote/remote_daemon_dispatch.c:3733 #, c-format msgid "negotiated SSF %d was not strong enough" @@ -45298,7 +45107,6 @@ msgstr "" msgid "unable to find valid requested VMware backend '%s'" msgstr "" -#. fdatasync() may fail on some special FDs, e.g. pipes #: src/util/iohelper.c:173 #, c-format msgid "unable to fsync %s" @@ -46325,8 +46133,6 @@ msgstr "" msgid "unix" msgstr "" -#. Something went wrong retrieving a volume path, cope with it -#. Something went wrong retrieving volume info, cope with it #: src/conf/network_conf.c:2920 src/conf/network_conf.c:2921 #: src/conf/network_conf.c:2953 src/conf/network_conf.c:2954 #: tools/virsh-domain-event.c:51 tools/virsh-domain-event.c:163 @@ -47319,28 +47125,6 @@ msgstr "" msgid "unsupported filesystem type '%s'" msgstr "" -#. * -#. * virCheckFlags: -#. * @supported: an OR'ed set of supported flags -#. * @retval: return value in case unsupported flags were passed -#. * -#. * To avoid memory leaks this macro has to be used before any non-trivial -#. * code which could possibly allocate some memory. -#. * -#. * Returns nothing. Exits the caller function if unsupported flags were -#. * passed to it. -#. -#. * -#. * virCheckFlagsGoto: -#. * @supported: an OR'ed set of supported flags -#. * @label: label to jump to on error -#. * -#. * To avoid memory leaks this macro has to be used before any non-trivial -#. * code which could possibly allocate some memory. -#. * -#. * Returns nothing. Jumps to a label if unsupported flags were -#. * passed to it. -#. #: src/internal.h:285 src/internal.h:307 #, c-format msgid "unsupported flags (0x%lx) in function %s" -- 2.35.3

Due to a bug in meson versions earlier than 0.60, the --add-comments that's part of the 'glib' preset and the --add-comments=TRANSLATORS: that we add ourselves might be passed to xgettext in the wrong order, resulting in a bunch of comments that we don't care about being added to the potfile. Most of the options included in the 'glib' preset are not applicable to libvirt anyway, so just stop using the preset and pass a few extra options explicitly instead. Signed-off-by: Andrea Bolognani <abologna@redhat.com> --- po/meson.build | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/po/meson.build b/po/meson.build index f4d95f97fe..d13466bc06 100644 --- a/po/meson.build +++ b/po/meson.build @@ -14,6 +14,9 @@ potfiles = configure_file( i18n.gettext( meson.project_name(), args: [ + '--from-code=UTF-8', + '--keyword=_', + '--keyword=N_', '--add-comments=TRANSLATORS:', '--directory=@0@'.format(meson.source_root()), '--directory=@0@'.format(meson.build_root()), @@ -22,7 +25,6 @@ i18n.gettext( '--package-version=@0@'.format(meson.project_version()), '--sort-output', ], - preset: 'glib', ) potfiles_dep = [ -- 2.35.3

Commit 8beb7fdd0e23 changed the handling of POTFILES so that it could cope with files being located in either the source or build directory: it did so by adding @SRCDIR@ and @BUILDDIR@ respectively at the beginning of each line, and then converting them back to the actual values when generating POTFILES from POTFILES.in. Later, commit c6a0d3ff8b4e started passing --directory to xgettext, which resulted in the tool being able to locate files regardless of whether they are in the source or build directory. However, @SRCDIR@ and @BUILDDIR@ were still added to POTFILES.in only to be stripped when generating POTFILES. Simplify things by not storing information that we know we're going to discard later. Signed-off-by: Andrea Bolognani <abologna@redhat.com> --- build-aux/syntax-check.mk | 4 +- po/POTFILES.in | 768 +++++++++++++++++++------------------- 2 files changed, 386 insertions(+), 386 deletions(-) diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk index 6664763faf..92969fb720 100644 --- a/build-aux/syntax-check.mk +++ b/build-aux/syntax-check.mk @@ -1495,8 +1495,8 @@ sc_po_check: { $(VC_LIST_EXCEPT); echo $(generated_files); } \ | xargs perl $(perl_translatable_files_list_) \ | xargs $(GREP) -E -l '$(_gl_translatable_string_re)' \ - | $(SED) 's|^$(_dot_escaped_builddir)/|@BUILDDIR@|' \ - | $(SED) 's|^$(_dot_escaped_srcdir)/|@SRCDIR@|' \ + | $(SED) 's|^$(_dot_escaped_builddir)/||' \ + | $(SED) 's|^$(_dot_escaped_srcdir)/||' \ | sort -u > $@-2; \ diff -u -L $(po_file) -L $(po_file) $@-1 $@-2 \ || { printf '$(ME): '$(fix_po_file_diag) 1>&2; exit 1; }; \ diff --git a/po/POTFILES.in b/po/POTFILES.in index 0d9adb0758..a0f4077977 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,384 +1,384 @@ -@BUILDDIR@src/access/viraccessapicheck.c -@BUILDDIR@src/access/viraccessapichecklxc.c -@BUILDDIR@src/access/viraccessapicheckqemu.c -@BUILDDIR@src/admin/admin_client.h -@BUILDDIR@src/admin/admin_server_dispatch_stubs.h -@BUILDDIR@src/remote/remote_client_bodies.h -@BUILDDIR@src/remote/remote_daemon_dispatch_stubs.h -@SRCDIR@src/access/viraccessdriverpolkit.c -@SRCDIR@src/access/viraccessmanager.c -@SRCDIR@src/admin/admin_server.c -@SRCDIR@src/admin/admin_server_dispatch.c -@SRCDIR@src/admin/libvirt-admin.c -@SRCDIR@src/bhyve/bhyve_capabilities.c -@SRCDIR@src/bhyve/bhyve_command.c -@SRCDIR@src/bhyve/bhyve_domain.c -@SRCDIR@src/bhyve/bhyve_driver.c -@SRCDIR@src/bhyve/bhyve_firmware.c -@SRCDIR@src/bhyve/bhyve_monitor.c -@SRCDIR@src/bhyve/bhyve_parse_command.c -@SRCDIR@src/bhyve/bhyve_process.c -@SRCDIR@src/ch/ch_conf.c -@SRCDIR@src/ch/ch_domain.c -@SRCDIR@src/ch/ch_driver.c -@SRCDIR@src/ch/ch_monitor.c -@SRCDIR@src/ch/ch_process.c -@SRCDIR@src/conf/backup_conf.c -@SRCDIR@src/conf/capabilities.c -@SRCDIR@src/conf/checkpoint_conf.c -@SRCDIR@src/conf/cpu_conf.c -@SRCDIR@src/conf/device_conf.c -@SRCDIR@src/conf/domain_addr.c -@SRCDIR@src/conf/domain_capabilities.c -@SRCDIR@src/conf/domain_conf.c -@SRCDIR@src/conf/domain_event.c -@SRCDIR@src/conf/domain_validate.c -@SRCDIR@src/conf/interface_conf.c -@SRCDIR@src/conf/netdev_bandwidth_conf.c -@SRCDIR@src/conf/netdev_vlan_conf.c -@SRCDIR@src/conf/netdev_vport_profile_conf.c -@SRCDIR@src/conf/network_conf.c -@SRCDIR@src/conf/networkcommon_conf.c -@SRCDIR@src/conf/node_device_conf.c -@SRCDIR@src/conf/node_device_util.c -@SRCDIR@src/conf/numa_conf.c -@SRCDIR@src/conf/nwfilter_conf.c -@SRCDIR@src/conf/nwfilter_params.c -@SRCDIR@src/conf/object_event.c -@SRCDIR@src/conf/secret_conf.c -@SRCDIR@src/conf/snapshot_conf.c -@SRCDIR@src/conf/storage_adapter_conf.c -@SRCDIR@src/conf/storage_conf.c -@SRCDIR@src/conf/storage_encryption_conf.c -@SRCDIR@src/conf/storage_source_conf.c -@SRCDIR@src/conf/virchrdev.c -@SRCDIR@src/conf/virdomainmomentobjlist.c -@SRCDIR@src/conf/virdomainobjlist.c -@SRCDIR@src/conf/virnetworkobj.c -@SRCDIR@src/conf/virnetworkportdef.c -@SRCDIR@src/conf/virnodedeviceobj.c -@SRCDIR@src/conf/virnwfilterbindingdef.c -@SRCDIR@src/conf/virnwfilterbindingobj.c -@SRCDIR@src/conf/virnwfilterbindingobjlist.c -@SRCDIR@src/conf/virnwfilterobj.c -@SRCDIR@src/conf/virsavecookie.c -@SRCDIR@src/conf/virsecretobj.c -@SRCDIR@src/conf/virstorageobj.c -@SRCDIR@src/cpu/cpu.c -@SRCDIR@src/cpu/cpu_arm.c -@SRCDIR@src/cpu/cpu_map.c -@SRCDIR@src/cpu/cpu_ppc64.c -@SRCDIR@src/cpu/cpu_s390.c -@SRCDIR@src/cpu/cpu_x86.c -@SRCDIR@src/datatypes.c -@SRCDIR@src/driver.c -@SRCDIR@src/esx/esx_driver.c -@SRCDIR@src/esx/esx_network_driver.c -@SRCDIR@src/esx/esx_storage_backend_iscsi.c -@SRCDIR@src/esx/esx_storage_backend_vmfs.c -@SRCDIR@src/esx/esx_storage_driver.c -@SRCDIR@src/esx/esx_stream.c -@SRCDIR@src/esx/esx_util.c -@SRCDIR@src/esx/esx_util.h -@SRCDIR@src/esx/esx_vi.c -@SRCDIR@src/esx/esx_vi_methods.c -@SRCDIR@src/esx/esx_vi_types.c -@SRCDIR@src/hyperv/hyperv_driver.c -@SRCDIR@src/hyperv/hyperv_network_driver.c -@SRCDIR@src/hyperv/hyperv_util.c -@SRCDIR@src/hyperv/hyperv_wmi.c -@SRCDIR@src/hypervisor/domain_cgroup.c -@SRCDIR@src/hypervisor/domain_driver.c -@SRCDIR@src/hypervisor/virclosecallbacks.c -@SRCDIR@src/hypervisor/virhostdev.c -@SRCDIR@src/interface/interface_backend_netcf.c -@SRCDIR@src/interface/interface_backend_udev.c -@SRCDIR@src/internal.h -@SRCDIR@src/libvirt-domain-checkpoint.c -@SRCDIR@src/libvirt-domain-snapshot.c -@SRCDIR@src/libvirt-domain.c -@SRCDIR@src/libvirt-host.c -@SRCDIR@src/libvirt-lxc.c -@SRCDIR@src/libvirt-network.c -@SRCDIR@src/libvirt-nodedev.c -@SRCDIR@src/libvirt-nwfilter.c -@SRCDIR@src/libvirt-qemu.c -@SRCDIR@src/libvirt-secret.c -@SRCDIR@src/libvirt-storage.c -@SRCDIR@src/libvirt-stream.c -@SRCDIR@src/libvirt.c -@SRCDIR@src/libxl/libxl_capabilities.c -@SRCDIR@src/libxl/libxl_conf.c -@SRCDIR@src/libxl/libxl_domain.c -@SRCDIR@src/libxl/libxl_driver.c -@SRCDIR@src/libxl/libxl_migration.c -@SRCDIR@src/libxl/xen_common.c -@SRCDIR@src/libxl/xen_xl.c -@SRCDIR@src/libxl/xen_xm.c -@SRCDIR@src/locking/lock_daemon.c -@SRCDIR@src/locking/lock_daemon_dispatch.c -@SRCDIR@src/locking/lock_driver_lockd.c -@SRCDIR@src/locking/lock_driver_sanlock.c -@SRCDIR@src/locking/lock_manager.c -@SRCDIR@src/locking/sanlock_helper.c -@SRCDIR@src/logging/log_daemon.c -@SRCDIR@src/logging/log_daemon_dispatch.c -@SRCDIR@src/logging/log_handler.c -@SRCDIR@src/logging/log_manager.c -@SRCDIR@src/lxc/lxc_cgroup.c -@SRCDIR@src/lxc/lxc_conf.c -@SRCDIR@src/lxc/lxc_container.c -@SRCDIR@src/lxc/lxc_controller.c -@SRCDIR@src/lxc/lxc_domain.c -@SRCDIR@src/lxc/lxc_driver.c -@SRCDIR@src/lxc/lxc_fuse.c -@SRCDIR@src/lxc/lxc_hostdev.c -@SRCDIR@src/lxc/lxc_native.c -@SRCDIR@src/lxc/lxc_process.c -@SRCDIR@src/network/bridge_driver.c -@SRCDIR@src/network/bridge_driver_linux.c -@SRCDIR@src/network/leaseshelper.c -@SRCDIR@src/node_device/node_device_driver.c -@SRCDIR@src/node_device/node_device_udev.c -@SRCDIR@src/nwfilter/nwfilter_dhcpsnoop.c -@SRCDIR@src/nwfilter/nwfilter_driver.c -@SRCDIR@src/nwfilter/nwfilter_ebiptables_driver.c -@SRCDIR@src/nwfilter/nwfilter_gentech_driver.c -@SRCDIR@src/nwfilter/nwfilter_learnipaddr.c -@SRCDIR@src/openvz/openvz_conf.c -@SRCDIR@src/openvz/openvz_driver.c -@SRCDIR@src/openvz/openvz_util.c -@SRCDIR@src/qemu/qemu_agent.c -@SRCDIR@src/qemu/qemu_alias.c -@SRCDIR@src/qemu/qemu_backup.c -@SRCDIR@src/qemu/qemu_block.c -@SRCDIR@src/qemu/qemu_blockjob.c -@SRCDIR@src/qemu/qemu_capabilities.c -@SRCDIR@src/qemu/qemu_cgroup.c -@SRCDIR@src/qemu/qemu_checkpoint.c -@SRCDIR@src/qemu/qemu_command.c -@SRCDIR@src/qemu/qemu_conf.c -@SRCDIR@src/qemu/qemu_dbus.c -@SRCDIR@src/qemu/qemu_domain.c -@SRCDIR@src/qemu/qemu_domain_address.c -@SRCDIR@src/qemu/qemu_domainjob.c -@SRCDIR@src/qemu/qemu_driver.c -@SRCDIR@src/qemu/qemu_extdevice.c -@SRCDIR@src/qemu/qemu_fd.c -@SRCDIR@src/qemu/qemu_firmware.c -@SRCDIR@src/qemu/qemu_hostdev.c -@SRCDIR@src/qemu/qemu_hotplug.c -@SRCDIR@src/qemu/qemu_interface.c -@SRCDIR@src/qemu/qemu_interop_config.c -@SRCDIR@src/qemu/qemu_migration.c -@SRCDIR@src/qemu/qemu_migration_cookie.c -@SRCDIR@src/qemu/qemu_migration_params.c -@SRCDIR@src/qemu/qemu_monitor.c -@SRCDIR@src/qemu/qemu_monitor_json.c -@SRCDIR@src/qemu/qemu_monitor_text.c -@SRCDIR@src/qemu/qemu_namespace.c -@SRCDIR@src/qemu/qemu_process.c -@SRCDIR@src/qemu/qemu_qapi.c -@SRCDIR@src/qemu/qemu_saveimage.c -@SRCDIR@src/qemu/qemu_slirp.c -@SRCDIR@src/qemu/qemu_snapshot.c -@SRCDIR@src/qemu/qemu_tpm.c -@SRCDIR@src/qemu/qemu_validate.c -@SRCDIR@src/qemu/qemu_vhost_user.c -@SRCDIR@src/qemu/qemu_vhost_user_gpu.c -@SRCDIR@src/qemu/qemu_virtiofs.c -@SRCDIR@src/remote/remote_daemon.c -@SRCDIR@src/remote/remote_daemon_config.c -@SRCDIR@src/remote/remote_daemon_dispatch.c -@SRCDIR@src/remote/remote_daemon_stream.c -@SRCDIR@src/remote/remote_driver.c -@SRCDIR@src/remote/remote_sockets.c -@SRCDIR@src/remote/remote_ssh_helper.c -@SRCDIR@src/rpc/virkeepalive.c -@SRCDIR@src/rpc/virnetclient.c -@SRCDIR@src/rpc/virnetclientprogram.c -@SRCDIR@src/rpc/virnetclientstream.c -@SRCDIR@src/rpc/virnetdaemon.c -@SRCDIR@src/rpc/virnetlibsshsession.c -@SRCDIR@src/rpc/virnetmessage.c -@SRCDIR@src/rpc/virnetsaslcontext.c -@SRCDIR@src/rpc/virnetserver.c -@SRCDIR@src/rpc/virnetserverclient.c -@SRCDIR@src/rpc/virnetserverprogram.c -@SRCDIR@src/rpc/virnetserverservice.c -@SRCDIR@src/rpc/virnetsocket.c -@SRCDIR@src/rpc/virnetsshsession.c -@SRCDIR@src/rpc/virnettlscontext.c -@SRCDIR@src/secret/secret_driver.c -@SRCDIR@src/security/security_apparmor.c -@SRCDIR@src/security/security_dac.c -@SRCDIR@src/security/security_driver.c -@SRCDIR@src/security/security_manager.c -@SRCDIR@src/security/security_selinux.c -@SRCDIR@src/security/security_util.c -@SRCDIR@src/security/virt-aa-helper.c -@SRCDIR@src/storage/parthelper.c -@SRCDIR@src/storage/storage_backend.c -@SRCDIR@src/storage/storage_backend_disk.c -@SRCDIR@src/storage/storage_backend_fs.c -@SRCDIR@src/storage/storage_backend_gluster.c -@SRCDIR@src/storage/storage_backend_iscsi.c -@SRCDIR@src/storage/storage_backend_iscsi_direct.c -@SRCDIR@src/storage/storage_backend_logical.c -@SRCDIR@src/storage/storage_backend_mpath.c -@SRCDIR@src/storage/storage_backend_rbd.c -@SRCDIR@src/storage/storage_backend_scsi.c -@SRCDIR@src/storage/storage_backend_sheepdog.c -@SRCDIR@src/storage/storage_backend_vstorage.c -@SRCDIR@src/storage/storage_backend_zfs.c -@SRCDIR@src/storage/storage_driver.c -@SRCDIR@src/storage/storage_util.c -@SRCDIR@src/storage_file/storage_file_backend.c -@SRCDIR@src/storage_file/storage_file_backend_fs.c -@SRCDIR@src/storage_file/storage_file_backend_gluster.c -@SRCDIR@src/storage_file/storage_file_probe.c -@SRCDIR@src/storage_file/storage_source.c -@SRCDIR@src/storage_file/storage_source_backingstore.c -@SRCDIR@src/test/test_driver.c -@SRCDIR@src/util/iohelper.c -@SRCDIR@src/util/viralloc.c -@SRCDIR@src/util/virarptable.c -@SRCDIR@src/util/viraudit.c -@SRCDIR@src/util/virauth.c -@SRCDIR@src/util/virauthconfig.c -@SRCDIR@src/util/virbitmap.c -@SRCDIR@src/util/vircgroup.c -@SRCDIR@src/util/vircgroupbackend.c -@SRCDIR@src/util/vircgroupbackend.h -@SRCDIR@src/util/vircgroupv1.c -@SRCDIR@src/util/vircgroupv2.c -@SRCDIR@src/util/vircgroupv2devices.c -@SRCDIR@src/util/vircommand.c -@SRCDIR@src/util/virconf.c -@SRCDIR@src/util/vircrypto.c -@SRCDIR@src/util/virdaemon.c -@SRCDIR@src/util/virdevmapper.c -@SRCDIR@src/util/virdnsmasq.c -@SRCDIR@src/util/virerror.c -@SRCDIR@src/util/virerror.h -@SRCDIR@src/util/virevent.c -@SRCDIR@src/util/vireventthread.c -@SRCDIR@src/util/virfcp.c -@SRCDIR@src/util/virfdstream.c -@SRCDIR@src/util/virfile.c -@SRCDIR@src/util/virfilecache.c -@SRCDIR@src/util/virfirewall.c -@SRCDIR@src/util/virfirewalld.c -@SRCDIR@src/util/virfirmware.c -@SRCDIR@src/util/virgdbus.c -@SRCDIR@src/util/virhash.c -@SRCDIR@src/util/virhook.c -@SRCDIR@src/util/virhostcpu.c -@SRCDIR@src/util/virhostmem.c -@SRCDIR@src/util/virhostuptime.c -@SRCDIR@src/util/viridentity.c -@SRCDIR@src/util/virinitctl.c -@SRCDIR@src/util/viriptables.c -@SRCDIR@src/util/viriscsi.c -@SRCDIR@src/util/virjson.c -@SRCDIR@src/util/virlease.c -@SRCDIR@src/util/virlockspace.c -@SRCDIR@src/util/virlog.c -@SRCDIR@src/util/virmacmap.c -@SRCDIR@src/util/virmdev.c -@SRCDIR@src/util/virmodule.c -@SRCDIR@src/util/virnetdev.c -@SRCDIR@src/util/virnetdevbandwidth.c -@SRCDIR@src/util/virnetdevbridge.c -@SRCDIR@src/util/virnetdevip.c -@SRCDIR@src/util/virnetdevmacvlan.c -@SRCDIR@src/util/virnetdevmidonet.c -@SRCDIR@src/util/virnetdevopenvswitch.c -@SRCDIR@src/util/virnetdevtap.c -@SRCDIR@src/util/virnetdevveth.c -@SRCDIR@src/util/virnetdevvportprofile.c -@SRCDIR@src/util/virnetlink.c -@SRCDIR@src/util/virnodesuspend.c -@SRCDIR@src/util/virnuma.c -@SRCDIR@src/util/virnvme.c -@SRCDIR@src/util/virobject.c -@SRCDIR@src/util/virpci.c -@SRCDIR@src/util/virpcivpd.c -@SRCDIR@src/util/virperf.c -@SRCDIR@src/util/virpidfile.c -@SRCDIR@src/util/virpolkit.c -@SRCDIR@src/util/virportallocator.c -@SRCDIR@src/util/virprocess.c -@SRCDIR@src/util/virqemu.c -@SRCDIR@src/util/virrandom.c -@SRCDIR@src/util/virresctrl.c -@SRCDIR@src/util/virrotatingfile.c -@SRCDIR@src/util/virscsi.c -@SRCDIR@src/util/virscsihost.c -@SRCDIR@src/util/virscsivhost.c -@SRCDIR@src/util/virsecret.c -@SRCDIR@src/util/virsocketaddr.c -@SRCDIR@src/util/virstoragefile.c -@SRCDIR@src/util/virstring.c -@SRCDIR@src/util/virsysinfo.c -@SRCDIR@src/util/virsystemd.c -@SRCDIR@src/util/virthreadjob.c -@SRCDIR@src/util/virthreadpool.c -@SRCDIR@src/util/virtime.c -@SRCDIR@src/util/virtpm.c -@SRCDIR@src/util/virtypedparam-public.c -@SRCDIR@src/util/virtypedparam.c -@SRCDIR@src/util/viruri.c -@SRCDIR@src/util/virusb.c -@SRCDIR@src/util/virutil.c -@SRCDIR@src/util/virvhba.c -@SRCDIR@src/util/virvsock.c -@SRCDIR@src/util/virxml.c -@SRCDIR@src/vbox/vbox_XPCOMCGlue.c -@SRCDIR@src/vbox/vbox_common.c -@SRCDIR@src/vbox/vbox_driver.c -@SRCDIR@src/vbox/vbox_network.c -@SRCDIR@src/vbox/vbox_snapshot_conf.c -@SRCDIR@src/vbox/vbox_storage.c -@SRCDIR@src/vbox/vbox_tmpl.c -@SRCDIR@src/vmware/vmware_conf.c -@SRCDIR@src/vmware/vmware_driver.c -@SRCDIR@src/vmx/vmx.c -@SRCDIR@src/vz/vz_driver.c -@SRCDIR@src/vz/vz_sdk.c -@SRCDIR@src/vz/vz_utils.c -@SRCDIR@src/vz/vz_utils.h -@SRCDIR@tests/virpolkittest.c -@SRCDIR@tools/libvirt-guests.sh.in -@SRCDIR@tools/virsh-backup.c -@SRCDIR@tools/virsh-checkpoint.c -@SRCDIR@tools/virsh-completer-host.c -@SRCDIR@tools/virsh-console.c -@SRCDIR@tools/virsh-domain-event.c -@SRCDIR@tools/virsh-domain-monitor.c -@SRCDIR@tools/virsh-domain.c -@SRCDIR@tools/virsh-edit.c -@SRCDIR@tools/virsh-host.c -@SRCDIR@tools/virsh-interface.c -@SRCDIR@tools/virsh-network.c -@SRCDIR@tools/virsh-nodedev.c -@SRCDIR@tools/virsh-nwfilter.c -@SRCDIR@tools/virsh-pool.c -@SRCDIR@tools/virsh-secret.c -@SRCDIR@tools/virsh-snapshot.c -@SRCDIR@tools/virsh-util.c -@SRCDIR@tools/virsh-volume.c -@SRCDIR@tools/virsh.c -@SRCDIR@tools/virsh.h -@SRCDIR@tools/virt-admin.c -@SRCDIR@tools/virt-host-validate-bhyve.c -@SRCDIR@tools/virt-host-validate-ch.c -@SRCDIR@tools/virt-host-validate-common.c -@SRCDIR@tools/virt-host-validate-lxc.c -@SRCDIR@tools/virt-host-validate-qemu.c -@SRCDIR@tools/virt-host-validate.c -@SRCDIR@tools/virt-login-shell-helper.c -@SRCDIR@tools/virt-pki-query-dn.c -@SRCDIR@tools/vsh-table.c -@SRCDIR@tools/vsh.c -@SRCDIR@tools/vsh.h +src/access/viraccessapicheck.c +src/access/viraccessapichecklxc.c +src/access/viraccessapicheckqemu.c +src/admin/admin_client.h +src/admin/admin_server_dispatch_stubs.h +src/remote/remote_client_bodies.h +src/remote/remote_daemon_dispatch_stubs.h +src/access/viraccessdriverpolkit.c +src/access/viraccessmanager.c +src/admin/admin_server.c +src/admin/admin_server_dispatch.c +src/admin/libvirt-admin.c +src/bhyve/bhyve_capabilities.c +src/bhyve/bhyve_command.c +src/bhyve/bhyve_domain.c +src/bhyve/bhyve_driver.c +src/bhyve/bhyve_firmware.c +src/bhyve/bhyve_monitor.c +src/bhyve/bhyve_parse_command.c +src/bhyve/bhyve_process.c +src/ch/ch_conf.c +src/ch/ch_domain.c +src/ch/ch_driver.c +src/ch/ch_monitor.c +src/ch/ch_process.c +src/conf/backup_conf.c +src/conf/capabilities.c +src/conf/checkpoint_conf.c +src/conf/cpu_conf.c +src/conf/device_conf.c +src/conf/domain_addr.c +src/conf/domain_capabilities.c +src/conf/domain_conf.c +src/conf/domain_event.c +src/conf/domain_validate.c +src/conf/interface_conf.c +src/conf/netdev_bandwidth_conf.c +src/conf/netdev_vlan_conf.c +src/conf/netdev_vport_profile_conf.c +src/conf/network_conf.c +src/conf/networkcommon_conf.c +src/conf/node_device_conf.c +src/conf/node_device_util.c +src/conf/numa_conf.c +src/conf/nwfilter_conf.c +src/conf/nwfilter_params.c +src/conf/object_event.c +src/conf/secret_conf.c +src/conf/snapshot_conf.c +src/conf/storage_adapter_conf.c +src/conf/storage_conf.c +src/conf/storage_encryption_conf.c +src/conf/storage_source_conf.c +src/conf/virchrdev.c +src/conf/virdomainmomentobjlist.c +src/conf/virdomainobjlist.c +src/conf/virnetworkobj.c +src/conf/virnetworkportdef.c +src/conf/virnodedeviceobj.c +src/conf/virnwfilterbindingdef.c +src/conf/virnwfilterbindingobj.c +src/conf/virnwfilterbindingobjlist.c +src/conf/virnwfilterobj.c +src/conf/virsavecookie.c +src/conf/virsecretobj.c +src/conf/virstorageobj.c +src/cpu/cpu.c +src/cpu/cpu_arm.c +src/cpu/cpu_map.c +src/cpu/cpu_ppc64.c +src/cpu/cpu_s390.c +src/cpu/cpu_x86.c +src/datatypes.c +src/driver.c +src/esx/esx_driver.c +src/esx/esx_network_driver.c +src/esx/esx_storage_backend_iscsi.c +src/esx/esx_storage_backend_vmfs.c +src/esx/esx_storage_driver.c +src/esx/esx_stream.c +src/esx/esx_util.c +src/esx/esx_util.h +src/esx/esx_vi.c +src/esx/esx_vi_methods.c +src/esx/esx_vi_types.c +src/hyperv/hyperv_driver.c +src/hyperv/hyperv_network_driver.c +src/hyperv/hyperv_util.c +src/hyperv/hyperv_wmi.c +src/hypervisor/domain_cgroup.c +src/hypervisor/domain_driver.c +src/hypervisor/virclosecallbacks.c +src/hypervisor/virhostdev.c +src/interface/interface_backend_netcf.c +src/interface/interface_backend_udev.c +src/internal.h +src/libvirt-domain-checkpoint.c +src/libvirt-domain-snapshot.c +src/libvirt-domain.c +src/libvirt-host.c +src/libvirt-lxc.c +src/libvirt-network.c +src/libvirt-nodedev.c +src/libvirt-nwfilter.c +src/libvirt-qemu.c +src/libvirt-secret.c +src/libvirt-storage.c +src/libvirt-stream.c +src/libvirt.c +src/libxl/libxl_capabilities.c +src/libxl/libxl_conf.c +src/libxl/libxl_domain.c +src/libxl/libxl_driver.c +src/libxl/libxl_migration.c +src/libxl/xen_common.c +src/libxl/xen_xl.c +src/libxl/xen_xm.c +src/locking/lock_daemon.c +src/locking/lock_daemon_dispatch.c +src/locking/lock_driver_lockd.c +src/locking/lock_driver_sanlock.c +src/locking/lock_manager.c +src/locking/sanlock_helper.c +src/logging/log_daemon.c +src/logging/log_daemon_dispatch.c +src/logging/log_handler.c +src/logging/log_manager.c +src/lxc/lxc_cgroup.c +src/lxc/lxc_conf.c +src/lxc/lxc_container.c +src/lxc/lxc_controller.c +src/lxc/lxc_domain.c +src/lxc/lxc_driver.c +src/lxc/lxc_fuse.c +src/lxc/lxc_hostdev.c +src/lxc/lxc_native.c +src/lxc/lxc_process.c +src/network/bridge_driver.c +src/network/bridge_driver_linux.c +src/network/leaseshelper.c +src/node_device/node_device_driver.c +src/node_device/node_device_udev.c +src/nwfilter/nwfilter_dhcpsnoop.c +src/nwfilter/nwfilter_driver.c +src/nwfilter/nwfilter_ebiptables_driver.c +src/nwfilter/nwfilter_gentech_driver.c +src/nwfilter/nwfilter_learnipaddr.c +src/openvz/openvz_conf.c +src/openvz/openvz_driver.c +src/openvz/openvz_util.c +src/qemu/qemu_agent.c +src/qemu/qemu_alias.c +src/qemu/qemu_backup.c +src/qemu/qemu_block.c +src/qemu/qemu_blockjob.c +src/qemu/qemu_capabilities.c +src/qemu/qemu_cgroup.c +src/qemu/qemu_checkpoint.c +src/qemu/qemu_command.c +src/qemu/qemu_conf.c +src/qemu/qemu_dbus.c +src/qemu/qemu_domain.c +src/qemu/qemu_domain_address.c +src/qemu/qemu_domainjob.c +src/qemu/qemu_driver.c +src/qemu/qemu_extdevice.c +src/qemu/qemu_fd.c +src/qemu/qemu_firmware.c +src/qemu/qemu_hostdev.c +src/qemu/qemu_hotplug.c +src/qemu/qemu_interface.c +src/qemu/qemu_interop_config.c +src/qemu/qemu_migration.c +src/qemu/qemu_migration_cookie.c +src/qemu/qemu_migration_params.c +src/qemu/qemu_monitor.c +src/qemu/qemu_monitor_json.c +src/qemu/qemu_monitor_text.c +src/qemu/qemu_namespace.c +src/qemu/qemu_process.c +src/qemu/qemu_qapi.c +src/qemu/qemu_saveimage.c +src/qemu/qemu_slirp.c +src/qemu/qemu_snapshot.c +src/qemu/qemu_tpm.c +src/qemu/qemu_validate.c +src/qemu/qemu_vhost_user.c +src/qemu/qemu_vhost_user_gpu.c +src/qemu/qemu_virtiofs.c +src/remote/remote_daemon.c +src/remote/remote_daemon_config.c +src/remote/remote_daemon_dispatch.c +src/remote/remote_daemon_stream.c +src/remote/remote_driver.c +src/remote/remote_sockets.c +src/remote/remote_ssh_helper.c +src/rpc/virkeepalive.c +src/rpc/virnetclient.c +src/rpc/virnetclientprogram.c +src/rpc/virnetclientstream.c +src/rpc/virnetdaemon.c +src/rpc/virnetlibsshsession.c +src/rpc/virnetmessage.c +src/rpc/virnetsaslcontext.c +src/rpc/virnetserver.c +src/rpc/virnetserverclient.c +src/rpc/virnetserverprogram.c +src/rpc/virnetserverservice.c +src/rpc/virnetsocket.c +src/rpc/virnetsshsession.c +src/rpc/virnettlscontext.c +src/secret/secret_driver.c +src/security/security_apparmor.c +src/security/security_dac.c +src/security/security_driver.c +src/security/security_manager.c +src/security/security_selinux.c +src/security/security_util.c +src/security/virt-aa-helper.c +src/storage/parthelper.c +src/storage/storage_backend.c +src/storage/storage_backend_disk.c +src/storage/storage_backend_fs.c +src/storage/storage_backend_gluster.c +src/storage/storage_backend_iscsi.c +src/storage/storage_backend_iscsi_direct.c +src/storage/storage_backend_logical.c +src/storage/storage_backend_mpath.c +src/storage/storage_backend_rbd.c +src/storage/storage_backend_scsi.c +src/storage/storage_backend_sheepdog.c +src/storage/storage_backend_vstorage.c +src/storage/storage_backend_zfs.c +src/storage/storage_driver.c +src/storage/storage_util.c +src/storage_file/storage_file_backend.c +src/storage_file/storage_file_backend_fs.c +src/storage_file/storage_file_backend_gluster.c +src/storage_file/storage_file_probe.c +src/storage_file/storage_source.c +src/storage_file/storage_source_backingstore.c +src/test/test_driver.c +src/util/iohelper.c +src/util/viralloc.c +src/util/virarptable.c +src/util/viraudit.c +src/util/virauth.c +src/util/virauthconfig.c +src/util/virbitmap.c +src/util/vircgroup.c +src/util/vircgroupbackend.c +src/util/vircgroupbackend.h +src/util/vircgroupv1.c +src/util/vircgroupv2.c +src/util/vircgroupv2devices.c +src/util/vircommand.c +src/util/virconf.c +src/util/vircrypto.c +src/util/virdaemon.c +src/util/virdevmapper.c +src/util/virdnsmasq.c +src/util/virerror.c +src/util/virerror.h +src/util/virevent.c +src/util/vireventthread.c +src/util/virfcp.c +src/util/virfdstream.c +src/util/virfile.c +src/util/virfilecache.c +src/util/virfirewall.c +src/util/virfirewalld.c +src/util/virfirmware.c +src/util/virgdbus.c +src/util/virhash.c +src/util/virhook.c +src/util/virhostcpu.c +src/util/virhostmem.c +src/util/virhostuptime.c +src/util/viridentity.c +src/util/virinitctl.c +src/util/viriptables.c +src/util/viriscsi.c +src/util/virjson.c +src/util/virlease.c +src/util/virlockspace.c +src/util/virlog.c +src/util/virmacmap.c +src/util/virmdev.c +src/util/virmodule.c +src/util/virnetdev.c +src/util/virnetdevbandwidth.c +src/util/virnetdevbridge.c +src/util/virnetdevip.c +src/util/virnetdevmacvlan.c +src/util/virnetdevmidonet.c +src/util/virnetdevopenvswitch.c +src/util/virnetdevtap.c +src/util/virnetdevveth.c +src/util/virnetdevvportprofile.c +src/util/virnetlink.c +src/util/virnodesuspend.c +src/util/virnuma.c +src/util/virnvme.c +src/util/virobject.c +src/util/virpci.c +src/util/virpcivpd.c +src/util/virperf.c +src/util/virpidfile.c +src/util/virpolkit.c +src/util/virportallocator.c +src/util/virprocess.c +src/util/virqemu.c +src/util/virrandom.c +src/util/virresctrl.c +src/util/virrotatingfile.c +src/util/virscsi.c +src/util/virscsihost.c +src/util/virscsivhost.c +src/util/virsecret.c +src/util/virsocketaddr.c +src/util/virstoragefile.c +src/util/virstring.c +src/util/virsysinfo.c +src/util/virsystemd.c +src/util/virthreadjob.c +src/util/virthreadpool.c +src/util/virtime.c +src/util/virtpm.c +src/util/virtypedparam-public.c +src/util/virtypedparam.c +src/util/viruri.c +src/util/virusb.c +src/util/virutil.c +src/util/virvhba.c +src/util/virvsock.c +src/util/virxml.c +src/vbox/vbox_XPCOMCGlue.c +src/vbox/vbox_common.c +src/vbox/vbox_driver.c +src/vbox/vbox_network.c +src/vbox/vbox_snapshot_conf.c +src/vbox/vbox_storage.c +src/vbox/vbox_tmpl.c +src/vmware/vmware_conf.c +src/vmware/vmware_driver.c +src/vmx/vmx.c +src/vz/vz_driver.c +src/vz/vz_sdk.c +src/vz/vz_utils.c +src/vz/vz_utils.h +tests/virpolkittest.c +tools/libvirt-guests.sh.in +tools/virsh-backup.c +tools/virsh-checkpoint.c +tools/virsh-completer-host.c +tools/virsh-console.c +tools/virsh-domain-event.c +tools/virsh-domain-monitor.c +tools/virsh-domain.c +tools/virsh-edit.c +tools/virsh-host.c +tools/virsh-interface.c +tools/virsh-network.c +tools/virsh-nodedev.c +tools/virsh-nwfilter.c +tools/virsh-pool.c +tools/virsh-secret.c +tools/virsh-snapshot.c +tools/virsh-util.c +tools/virsh-volume.c +tools/virsh.c +tools/virsh.h +tools/virt-admin.c +tools/virt-host-validate-bhyve.c +tools/virt-host-validate-ch.c +tools/virt-host-validate-common.c +tools/virt-host-validate-lxc.c +tools/virt-host-validate-qemu.c +tools/virt-host-validate.c +tools/virt-login-shell-helper.c +tools/virt-pki-query-dn.c +tools/vsh-table.c +tools/vsh.c +tools/vsh.h -- 2.35.3

Now that we have dropped prefixes from the file, it no longer needs to go through configure_file() and we can use it directly. Signed-off-by: Andrea Bolognani <abologna@redhat.com> --- build-aux/syntax-check.mk | 6 +++--- po/{POTFILES.in => POTFILES} | 0 po/meson.build | 13 +------------ 3 files changed, 4 insertions(+), 15 deletions(-) rename po/{POTFILES.in => POTFILES} (100%) diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk index 92969fb720..35c819ff98 100644 --- a/build-aux/syntax-check.mk +++ b/build-aux/syntax-check.mk @@ -1476,10 +1476,10 @@ perl_translatable_files_list_ = \ -e '}' # Verify that all source files using _() (more specifically, files that -# match $(_gl_translatable_string_re)) are listed in po/POTFILES.in. -po_file ?= $(top_srcdir)/po/POTFILES.in +# match $(_gl_translatable_string_re)) are listed in po/POTFILES. +po_file ?= $(top_srcdir)/po/POTFILES -# List of additional files that we want to pick up in our POTFILES.in +# List of additional files that we want to pick up in our POTFILES # This is all generated files for RPC code. generated_files = \ $(top_builddir)/src/*.[ch] \ diff --git a/po/POTFILES.in b/po/POTFILES similarity index 100% rename from po/POTFILES.in rename to po/POTFILES diff --git a/po/meson.build b/po/meson.build index d13466bc06..f5d05e2b31 100644 --- a/po/meson.build +++ b/po/meson.build @@ -1,16 +1,5 @@ i18n = import('i18n') -potfiles_conf = configuration_data({ - 'SRCDIR': '', - 'BUILDDIR': '', -}) - -potfiles = configure_file( - input: 'POTFILES.in', - output: '@BASENAME@', - configuration: potfiles_conf, -) - i18n.gettext( meson.project_name(), args: [ @@ -20,7 +9,7 @@ i18n.gettext( '--add-comments=TRANSLATORS:', '--directory=@0@'.format(meson.source_root()), '--directory=@0@'.format(meson.build_root()), - '--files-from=@0@'.format(meson.current_build_dir() / 'POTFILES'), + '--files-from=@0@'.format(meson.current_source_dir() / 'POTFILES'), '--msgid-bugs-address=https://libvirt.org/bugs.html', '--package-version=@0@'.format(meson.project_version()), '--sort-output', -- 2.35.3

This is something that certainly made sense in the context of gnulib, but we don't have a use for it. Signed-off-by: Andrea Bolognani <abologna@redhat.com> --- build-aux/syntax-check.mk | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk index 35c819ff98..513c147cec 100644 --- a/build-aux/syntax-check.mk +++ b/build-aux/syntax-check.mk @@ -1490,8 +1490,7 @@ _gl_translatable_string_re ?= \b(N?_|gettext *)\([^)"]*("|$$) # sc_po_check can fail if generated files are not built first sc_po_check: @if test -f $(po_file); then \ - $(GREP) -E -v '^(#|$$)' $(po_file) \ - | $(GREP) -v '^src/false\.c$$' | sort > $@-1; \ + $(GREP) -E -v '^(#|$$)' $(po_file) | sort > $@-1; \ { $(VC_LIST_EXCEPT); echo $(generated_files); } \ | xargs perl $(perl_translatable_files_list_) \ | xargs $(GREP) -E -l '$(_gl_translatable_string_re)' \ -- 2.35.3

Signed-off-by: Andrea Bolognani <abologna@redhat.com> --- po/LINGUAS | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/po/LINGUAS b/po/LINGUAS index 889ef80aba..35acd33a87 100644 --- a/po/LINGUAS +++ b/po/LINGUAS @@ -28,17 +28,17 @@ nl or pa pl -pt_BR pt +pt_BR ru -sr@latin +si sr +sr@latin sv ta te +tr uk vi zh_CN zh_TW -tr -si -- 2.35.3

Make sure LINGUAS remains sorted correctly. Signed-off-by: Andrea Bolognani <abologna@redhat.com> --- build-aux/syntax-check.mk | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk index 513c147cec..6b54f830f1 100644 --- a/build-aux/syntax-check.mk +++ b/build-aux/syntax-check.mk @@ -1502,6 +1502,14 @@ sc_po_check: rm -f $@-1 $@-2; \ fi +linguas_file = $(top_srcdir)/po/LINGUAS + +sc_linguas_sorting: + @sort -u $(linguas_file) > $@-1; \ + diff -u -L $(linguas_file) -L $(linguas_file) $(linguas_file) $@-1 \ + || { echo "$(linguas_file) is not sorted correctly" 1>&2; exit 1; }; \ + rm -f $@-1 + # #if WITH_... will evaluate to false for any non numeric string. # That would be flagged by using -Wundef, however gnulib currently # tests many undefined macros, and so we can't enable that option. -- 2.35.3

On 5/18/22 11:52, Andrea Bolognani wrote:
Changes from [v1]
* instead of checking that the potfile doesn't contain unwanted comments at syntax-check time, prevent them from being added by passing all xgettext options explicitly ourselves.
[v1] https://listman.redhat.com/archives/libvir-list/2022-May/231526.html
Andrea Bolognani (7): po: Drop unwanted comments from potfile po: Stop using 'glib' preset for i18n.gettext() po: Drop prefixes from POTFILES.in po: Don't generate POTFILES syntax-check: Don't exclude src/false.c from sc_po_check po: Sort LINGUAS syntax-check: Introduce sc_linguas_sorting
build-aux/syntax-check.mk | 21 ++- po/LINGUAS | 8 +- po/POTFILES | 384 ++++++++++++++++++++++++++++++++++++++ po/POTFILES.in | 384 -------------------------------------- po/libvirt.pot | 216 --------------------- po/meson.build | 17 +- 6 files changed, 406 insertions(+), 624 deletions(-) create mode 100644 po/POTFILES delete mode 100644 po/POTFILES.in
Reviewed-by: Michal Privoznik <mprivozn@redhat.com> Michal
participants (2)
-
Andrea Bolognani
-
Michal Prívozník