*.cmxa
*.dll
*.exe
+*.gmo
*.o
*.opt
*.orig
*.so
*~
-META
Makefile
-aclocal.m4
-config.cache
-config.h
-config.log
-config.status
-configure
-core
-core.*
-html
+Makefile.in
+.deps
+
+/META
+/aclocal.m4
+/compile
+/config.cache
+/config.h
+/config.h.in
+/config.log
+/config.status
+/configure
+/core
+/core.*
+/depcomp
+/html
+/missing
+/ocaml-dep.sh
+/ocaml-link.sh
+/src/.depend
+/stamp-h1
-/Make.rules
/autom4te.cache
+/local*
/po/*.mo
/po/*.po.bak
/src/opt_gettext.ml
+++ /dev/null
-2019-08-20 Richard W.M. Jones <rjones@redhat.com>
-
- Version 1.0.9.
-
- src/top.ml: Don't depend on exact value of Failure argument.
- File "top.ml", line 423, characters 14-31:
- 423 | Failure "float_of_string" ->
- ^^^^^^^^^^^^^^^^^
- Warning 52: Code should not depend on the actual values of
- this constructor's arguments. They are only for information
- and may change in future versions. (See manual section 9.5)
-
-2018-09-20 Richard W.M. Jones <rjones@redhat.com>
-
- build: Pass through CFLAGS and LDFLAGS to ocaml compiler (RHBZ#1630636).
-
-2017-11-18 Richard W.M. Jones <rjones@redhat.com>
-
- Link with -fPIC runtime.
-
- Fixes for -safe-string in OCaml 4.06.
-
-2017-03-28 Richard W.M. Jones <rjones@redhat.com>
-
- chmod -x COPYING* files.
-
- Use virConnectGetAllDomainStats API to collect domain stats (RHBZ#1422795).
- This is much faster than using the basic libvirt APIs to collect
- stats for each domain individually.
-
- Note this will not work unless you have the latest ocaml-libvirt
- package which includes this new API binding.
-
- Remove unused variable is_calendar2.
- Fixes commit effd1ec5897a2cac6e897ae7bce72f6b1e617b90.
-
-2017-03-27 Richard W.M. Jones <rjones@redhat.com>
-
- Move block_in_bytes entirely to the presentation layer.
- Simplifies and updates commit dbef8dd3bf00417e75a12c851b053e49c9e1a79e.
-
- Split up huge Top module into smaller modules.
- This change is hopefully pure refactoring, splitting up the very large
- and highly interlinked module into more manageable modules with
- well-defined (or at least *better*-defined) interfaces between them.
-
- src: Fix some comments which referred to the old filenames.
- Fixes commit b7c3ef13cbd9c9cd49005a32ffb70faf6f5bbe8c.
-
- Remove support for OCaml Calendar v1.
- Calendar v2 was released in 2008 (9 years ago!), thus remove support
- for v1.
-
- This was already broken by commit dc0e217390132f7e76a4d9c0a8a81a9556d19081
- so it likely didn't work anyway.
-
- Update PO files.
-
- Fix po/POTFILES for new location of source files.
- Fixes commit b7c3ef13cbd9c9cd49005a32ffb70faf6f5bbe8c.
-
- Refresh HACKING file.
- Fixes commit b7c3ef13cbd9c9cd49005a32ffb70faf6f5bbe8c.
-
- Remove +x (executable) permission on several source files.
- Not sure why it was there, but it was incorrect.
-
- Enable same warnings as libguestfs.
- In particular 'warning 3' was still enabled before, meaning that the
- code would fail with newer OCaml compilers:
-
- File "top.ml", line 377, characters 12-25:
- Warning 3: deprecated: String.create
- Use Bytes.create instead.
-
- Since we want to continue using old OCaml for now, don't enable
- this warning.
-
-2016-10-31 Richard W.M. Jones <rjones@redhat.com>
-
- Rename source directory and files.
- This renames the source directory from virt-top to src/ and removes
- the unnecessary virt_top_* prefix from many source files.
-
- This is entirely refactoring and makes no functional change.
-
- Also this fixes the MANIFEST file and removes old Transifex
- configuration, fixing commit defe5bdd4a32e0206a786d279e0f9cfc238e5e17.
-
-2016-01-04 Richard W.M. Jones <rjones@redhat.com>
-
- build: Add -g flag to ocamlopt.
- Modern ocamlopt supports the -g flag fine (very old versions did not).
-
-2015-02-21 Richard W.M. Jones <rjones@redhat.com>
-
- Update translations from Zanata.
-
- Move upstream translations from Tranifex to Zanata.
- This is at the request of the Fedora localization team.
- For further information see:
-
- https://www.redhat.com/archives/libguestfs/2015-February/msg00168.html
-
-2014-08-02 Richard W.M. Jones <rjones@redhat.com>
-
- Disable warning about immutable strings (for OCaml 4.02).
-
-2012-10-12 Richard W.M. Jones <rjones@redhat.com>
-
- Version 1.0.8.
-
-2012-10-12 Hu Tao <hutao@cn.fujitsu.com>
-
- show `vcpu usages' by `virt-top -1'
- Before this patch, `virt-top -1' shows total cpu usages
- which euqal to `vcpu usages' + `hypervisor usages'. This
- patch adds another column for domains showing `vcpu
- usages'. An example is:
-
- PHYCPU %CPU example_domain
- 0 10.4 10.4 0.8
- 1 1.6 1.6 1.4
- 2 2.6 2.6 2.6
- 3 0.0 0.0 0.1
-
- RWMJ: I cleaned up this patch a little, but it should be
- functionally the same.
-
- Rename find_usages_from_stats as find_cpu_usages.
- This is just code motion.
-
-2012-10-12 Richard W.M. Jones <rjones@redhat.com>
-
- OCaml stable dependencies.
-
- Remove D.get_cpu_stats second parameter.
- In upstream ocaml-libvirt, this second parameter has been removed,
- because it was found that nr_pcpus can be found by calling the libvirt
- API directly.
-
-2012-09-28 Richard W.M. Jones <rjones@redhat.com>
-
- Make the main code and exception handling simpler.
-
- Better error messages when parsing the init file (RHBZ#836231).
-
- Add missing sort order options in --help output (RHBZ#807176).
-
- Man page: Add an explanation of columns (RHBZ#834208).
-
- man page: Update copyright date.
-
-2012-03-06 Richard W.M. Jones <rjones@redhat.com>
-
- Version 1.0.7.
-
- Ignore aclocal.m4.
-
- Document requirements in README file.
-
-2012-03-06 Lai Jiangshan <laijs@cn.fujitsu.com>
-
- virt-top: correct "virt-top -1" command via cpuacct cgroup
- Old "virt-top -1" is not correct, its output is generated by guess:
- use average usage for pinned physical CPUs.
-
- example(old "virt-top -1"):
-
- PHYCPU %CPU rhel6 Windows
- 0 0.6 0.1= 0.5=
- 1 0.6 0.1= 0.5=#
- 2 0.6 0.1= 0.5=
- 3 0.6 0.1=# 0.5=
-
- The output almost makes no sense(all the value are just average, not real).
-
- This is new implement, it use cpuacct cgroup to gain *real* physical usages
- via cpuacct cgroup by virDomainGetCPUStats() API.
-
- new result:
-
- PHYCPU %CPU rhel6 Windows
- 0 1.3 0.3 1.0
- 1 2.3 0.3 2.0
- 2 2.2 0.5 1.7
- 3 2.5 0.4 2.1
-
- PHYCPU %CPU rhel6 Windows
- 0 1.7 0.4 1.3
- 1 3.6 1.0 2.7
- 2 1.6 0.4 1.2
- 3 4.8 3.1 1.7
-
- Note: average flag(=) is dropped, there is not average value in here.
- Note: running flag(#) is dropped, because if the value is not empty,
- it means the guest was once running in the physical CPU in this period
- between updates.
-
- Changed from V3:
- use new virDomainGetCPUStats() libvirt-API.
- add a new function find_usages_from_stats() to gain cpu usages.
-
-2011-08-15 Richard W.M. Jones <rjones@redhat.com>
-
- Ensure manpages get built when using native compiler (thanks Laurent Léonard).
-
-2011-08-12 Richard W.M. Jones <rjones@redhat.com>
-
- Version 1.0.6.
-
- Update MANIFEST and fix 'make dist'.
- make dist now copies the generated manual pages into the tarball, so
- that we don't have to keep these generated files in git.
-
- Fix ordering of csv_mode and stream_mode in tuple.
- Note that this bug could have been avoided by using a struct instead
- of a tuple here.
-
- This updates commit daf79631f3eff904ba89297148c4125ac7dfee39.
-
-2011-08-11 Richard W.M. Jones <rjones@redhat.com>
-
- docs: Explain how to debug libvirt initialization problems (RHBZ#680031).
-
-2011-04-02 Richard W.M. Jones <rjones@redhat.com>
-
- Pull translations from Transifex.
-
-2011-03-08 Richard W.M. Jones <rjones@redhat.com>
-
- Fix --end-time option with absolute times.
- Assume the user enters a local time, and convert it to UTC.
-
- This also adds some clarifying comments to the relative time
- code (but doesn't change that code).
-
- Note that the obsolete Calendar1 code is *not* updated by this change.
-
- docs: Fix documentation for virt-top -c option.
- Because of changes in libvirt, this no longer connects to Xen by
- default. Instead the default is to connect to the libvirt default
- hypervisor (which could be Xen, KVM or others). Update the --help
- documentation and manual page accordingly.
-
- Remove generated man pages from git.
-
-2011-03-07 KAMEZAWA Hiroyuki <kamezawa@bluextal.(none)>
-
- add memory stats to --csv mode.
- In csv mode, memory usage in kbytes and %mem against total system
- memory is shown.
-
-2011-03-07 KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
-
- Record memory statistics information to 'rd' object.
- This helps to share the calculation (between modes) and
- will help to show memory statistics in --csv mode
-
- Signged-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
-
-2011-03-07 Richard W.M. Jones <rjones@redhat.com>
-
- Import virt-top into transifex.
- http://www.transifex.net/projects/p/virttop/
-
-2011-02-02 Richard W.M. Jones <rjones@redhat.com>
-
- Update generated man page files.
-
-2011-02-02 KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
-
- Add --block-in-bytes option.
- This option and the 'B' key toggles block I/O stats between
- requests and bytes.
-
- Add --stream flag.
- Output is sent to stdout (similar to the top -b option).
-
-2011-01-24 Richard W.M. Jones <rjones@redhat.com>
-
- Obey virt-top --end-time down to near millisecond accuracy (RHBZ#637964).
- Adjust the final delay down so that the --end-time option is obeyed
- down to near millisecond accuracy.
-
- The 'usleep' function has been renamed more accurately as 'millisleep'
- since it sleeps for milliseconds not microseconds.
-
-2011-01-06 Richard W.M. Jones <rjones@redhat.com>
-
- Version 1.0.5.
-
- Add aclocal.m4 file to git.
- This file is sort of generated, but at the moment only has
- a single line which includes m4/ocaml.m4, that is vital for
- the build.
-
- Re-add virt-top/README file.
- This seems to have been dropped during the hg->git transition.
-
- Document background noise of RX packets from bridges (RHBZ#647987).
- For more information see:
- https://bugzilla.redhat.com/show_bug.cgi?id=647987#c9
-
- man page: Remove excess blank line.
-
- main: Record and print full exception stack traces.
- This turns on stack trace recording unconditionally (the same
- effect as if OCAMLRUNPARAM=b was always supplied), and also prints
- stack traces to the log file if there is an exception.
-
- See also:
- http://caml.inria.fr/pub/docs/manual-ocaml/libref/Printexc.html
-
- Note that this requires OCaml >= 3.11.0.
-
- Fix pad function to work for negative widths (RHBZ#634435).
- The pad function is supposed to pad a string to a width. Under some
- circumstances, the width parameter could be negative resulting in a
- call to String.sub such as:
-
- String.sub str 0 (-1)
-
- which caused an exception to be thrown and not caught, causing
- virt-top to exit. Fix the pad function to return an empty string if
- width <= 0 instead of throwing an exception.
-
- See also:
- https://bugzilla.redhat.com/show_bug.cgi?id=634435
-
- Update dependencies.
-
- Update generated man pages.
-
- Fix virt-top --end-time option when TZ<>UTC (RHBZ#637964).
- Return the end time as seconds since 1970, and don't adjust it
- for timezone. In the main module the end time is compared against
- the result of Unix.gettimeofday, which is also seconds since 1970,
- so the comparison now works.
-
- Tested with TZ=UTC-05, TZ=UTC and TZ=UTC+05.
-
- NB: This has not been tested against ocaml-calendar 1.x, although
- that version of calendar is obsolete and no one should be using it.
-
- Update dependencies file.
-
- man page: memory option shows total guest memory (RHBZ#647991).
-
- man page: Update copyright date and link to web pages.
-
- Remove references to xm/xentop manual pages (RHBZ#648186).
- These Xen tools are obsolete since virsh/virt-top works across
- all hypervisors.
-
-2010-09-02 Richard Jones <rjones@redhat.com>
-
- Change order of return values from getyx - fixes display of historical CPU.
- In this commit:
- http://cvs.savannah.gnu.org/viewvc/ocaml-tmk/functions.c?root=ocaml-tmk&r1=1.2&r2=1.3
- Sam changed (fixed) the order that the coordinates are returned
- from the ncurses 'getyx' call. Since this commit was made 3 years
- ago it should be safe to assume everyone is using the new ocaml-ncurses
- by now.
-
- This meant the historical %CPU was being displayed off the bottom of
- the screen instead of on the top row at the right. Now it is displayed
- in the correct place.
-
-2010-06-15 Kiyoto Hashida <khashida@redhat.com>
-
- Update Japanese translations (RHBZ#493799).
-
-2010-03-05 Yulia <ypoyarko@redhat.com>
-
- Updated Russian translations (RHBZ#493799).
-
-2010-03-05 Richard Jones <rjones@redhat.com>
-
- Newer autoconf adds PACKAGE_URL definition.
-
-2010-02-12 Richard Jones <rjones@redhat.com>
-
- zh_CN: Remove bogus Plural-Forms line.
-
- Japanese: update bogus 'Plural-Forms: Plural-Forms'.
-
-2010-02-12 Hajime Taira <htaira@redhat.com>
-
- Update Japanese translations (RHBZ#493799).
-
-2010-01-28 Richard Jones <rjones@redhat.com>
-
- Rename te_IN.po -> te.po (Piotr Drąg).
-
- Telugu translation added by Krishna Babu K (RHBZ#493799c32)
-
- Polish translation updated by Piotr Drag (RHBZ#493799c31)
-
- Portuguese translation added by Glaucia Cintra (RHBZ#493799c30)
-
- Chinese translation updated by Wei Liu (RHBZ#493799c29)
-
- Oriya translation added by Manoj Kumar Giri (RHBZ#493799c28)
-
- Spanish translation updated by Daniel Cabrera (RHBZ#493799c27)
-
-2009-12-30 Richard Jones <rjones@redhat.com>
-
- Update to ocaml-autoconf macros 1.1
-
- Fix detection of ocaml-findlib.
-
-2009-10-06 Richard Jones <rjones@trick.home.annexia.org>
-
- HACKING file, update (C) messages.
-
- Update PO files.
-
- Remove extra spaces after s_ and f_ operators.
-
- Safer curses functions.
- Add safer curses functions which don't require use of dangerous
- ignore() function.
-
- Replace failwith (sprintf...) with failwithf
-
- Remove -w s and fix so it compiles without warnings.
-
- Remove NSIS installer.
-
- Change over to using ocaml.m4 macros.
-
-2009-10-05 Richard Jones <rjones@trick.home.annexia.org>
-
- Updated MANIFEST.
-
- TODO.virt-top renamed as TODO
-
- Typo fixed.
-
- Update manpage with --version option.
-
- Add virt-top --version command line option.
-
- Add the real virt-top version to help display.
-
- Version 1.0.4 for release.
-
- Fix changelog and manifest files.
-
- gitlog-to-changelog: If the date field is empty, don't barf.
-
- Added Jim Meyering's gitlog-to-changelog program.
-
- Add total hardware memory field (RHBZ#521785)
-
- Don't need to explicitly link against ncurses.
-
- Update PO files.
-
- Add Japanese to list of translations.
-
- Use msgfmt to generate *.mo files correctly.
-
- Update documentation.
-
- Update dependencies.
-
- Rename .hgignore -> .gitignore, update dependencies.
+++ /dev/null
-.gitignore
-ChangeLog
-config.guess
-config.h.in
-config.sub
-configure.ac
-COPYING
-COPYING.LIB
-HACKING
-gitlog-to-changelog
-install-sh
-Makefile.in
-Make.rules.in
-MANIFEST
-m4/ocaml.m4
-po/as.po
-po/ca.po
-po/de.po
-po/es.po
-po/eu.po
-po/fr.po
-po/gu.po
-po/hu.po
-po/id.po
-po/it.po
-po/ja.po
-po/ka.po
-po/kn.po
-po/LINGUAS
-po/Makefile.in
-po/ml.po
-po/mr.po
-po/nl.po
-po/or.po
-po/pa.po
-po/pl.po
-po/pt_BR.po
-po/pt.po
-po/POTFILES
-po/ru.po
-po/sr.po
-po/sv.po
-po/te.po
-po/tg.po
-po/tr.po
-po/uk.po
-po/virt-top.pot
-po/zanata-pull.sh
-po/zanata.xml
-po/zh_CN.po
-po/zh_TW.po
-README
-TODO
-src/.depend
-src/Makefile.in
-src/README
-src/collect.ml
-src/collect.mli
-src/csv_output.ml
-src/csv_output.mli
-src/main.ml
-src/opt_calendar.ml
-src/opt_csv.ml
-src/opt_xml.ml
-src/redraw.ml
-src/redraw.mli
-src/screen.ml
-src/screen.mli
-src/stream_output.ml
-src/stream_output.mli
-src/top.ml
-src/top.mli
-src/types.ml
-src/types.mli
-src/utils.ml
-src/utils.mli
-src/version.ml.in
-src/virt-top.pod
+++ /dev/null
-# ocaml-libvirt
-# Copyright (C) 2007-2009 Red Hat Inc., Richard W.M. Jones
-#
-# 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 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, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
-# This file is included by Makefiles in subdirectories.
-
-OCAMLFIND = @OCAMLFIND@
-OCAMLDEP = @OCAMLDEP@
-OCAMLC = @OCAMLC@
-OCAMLOPT = @OCAMLOPT@
-
-# Common rules for building OCaml objects.
-
-ifneq ($(OCAMLFIND),)
-.mli.cmi:
- $(OCAMLFIND) ocamlc $(OCAMLCFLAGS) $(OCAMLCPACKAGES) -c $<
-.ml.cmo:
- $(OCAMLFIND) ocamlc $(OCAMLCFLAGS) $(OCAMLCPACKAGES) -c $<
-.ml.cmx:
- $(OCAMLFIND) ocamlopt $(OCAMLOPTFLAGS) $(OCAMLOPTPACKAGES) -c $<
-else
-.mli.cmi:
- $(OCAMLC) $(OCAMLCFLAGS) $(OCAMLCINCS) -c $<
-.ml.cmo:
- $(OCAMLC) $(OCAMLCFLAGS) $(OCAMLCINCS) -c $<
-.ml.cmx:
- $(OCAMLOPT) $(OCAMLOPTFLAGS) $(OCAMLOPTINCS) -c $<
-endif
-
-%.ml %.mli: %.mly
- ocamlyacc $<
-.mll.ml:
- ocamllex $<
-
-# Dependencies.
-
-depend: .depend
-
-ifneq ($(OCAMLFIND),)
-.depend: $(wildcard *.mli) $(wildcard *.ml)
- rm -f $@ $@-t
- $(OCAMLFIND) ocamldep $(OCAMLCPACKAGES) $(OCAMLDEPFLAGS) $^ | \
- sed 's/ :/:/' | \
- sed 's/ *$$//' | \
- sed -e :a -e '/ *\\$$/N; s/ *\\\n */ /; ta' | \
- sort > $@-t
- mv $@-t $@
-else
-.depend: $(wildcard *.mli) $(wildcard *.ml)
- rm -f $@ $@-t
- $(OCAMLDEP) $(OCAMLCINCS) $(OCAMLDEPFLAGS) $^ | \
- sed 's/ :/:/' | \
- sed 's/ *$$//' | \
- sed -e :a -e '/ *\\$$/N; s/ *\\\n */ /; ta' | \
- sort > $@-t
- mv $@-t $@
-endif
-
-ifeq ($(wildcard .depend),.depend)
-include .depend
-endif
-
-.PHONY: depend dist check-manifest dpkg doc
-
-.SUFFIXES: .cmo .cmi .cmx .ml .mli .mll .mly
--- /dev/null
+# virt-top
+# Copyright (C) 2007-2021 Red Hat Inc., Richard W.M. Jones
+#
+# 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 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, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+SUBDIRS = src po
+
+EXTRA_DIST = \
+ .gitignore \
+ HACKING
+
+dist-hook: po/POTFILES po/POTFILES-ml
+
+po/POTFILES: configure.ac
+ rm -f $@ $@-t
+ find . -name '*.c' | \
+ grep -v '/$(PACKAGE_NAME)-$(PACKAGE_VERSION)/' | \
+ LC_ALL=C sort > $@-t
+ mv $@-t $@
+
+po/POTFILES-ml: configure.ac
+ rm -f $@ $@-t
+ find . -name '*.ml' | \
+ grep -v '/$(PACKAGE_NAME)-$(PACKAGE_VERSION)/' | \
+ LC_ALL=C sort > $@-t
+ mv $@-t $@
+
+# Commit everything in current directory to HEAD, and set commit
+# message to current version (only for maintainer).
+
+maintainer-commit:
+ git commit -a -m "Version $(VERSION)."
+
+# Tag HEAD with current version (only for maintainer).
+
+maintainer-tag:
+ git tag -a "v$(VERSION)" -m "Version $(VERSION)" -f
+
+# Maintainer only: check no files are missing from EXTRA_DIST rules,
+# and that all generated files have been included in the tarball.
+# (Note you must have done 'make dist')
+
+maintainer-check-extra-dist:
+ zcat $(PACKAGE_NAME)-$(VERSION).tar.gz | tar tf - | sort | \
+ sed 's,^$(PACKAGE_NAME)-$(VERSION)/,,' > tarfiles
+ git ls-files | sort > gitfiles
+ comm -13 tarfiles gitfiles > comm-out
+ @echo Checking for differences between EXTRA_DIST and git ...
+ cat comm-out
+ [ ! -s comm-out ]
+ rm tarfiles gitfiles comm-out
+ @echo PASS: EXTRA_DIST tests
+++ /dev/null
-# virt-top
-# Copyright (C) 2007-2014 Red Hat Inc., Richard W.M. Jones
-#
-# 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 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, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
-PACKAGE = @PACKAGE_NAME@
-VERSION = @PACKAGE_VERSION@
-
-INSTALL = @INSTALL@
-
-MAKENSIS = @MAKENSIS@
-
-SUBDIRS = src
-
-all opt depend install:
- $(MAKE) -C src $@
-
-clean:
- for d in . $(SUBDIRS); do \
- (cd $$d; rm -f *.cmi *.cmo *.cmx *.cma *.cmxa *.o *.a *.so *.opt *~ *.dll *.exe core); \
- done
- rm -f src/virt-top
-
-distclean: clean
- rm -f config.h config.log config.status configure
- rm -rf autom4te.cache
- rm -f Makefile
- rm -f src/Makefile
-
-# Distribution.
-
-dist: ChangeLog
- $(MAKE) check-manifest
- rm -rf $(PACKAGE)-$(VERSION)
- mkdir $(PACKAGE)-$(VERSION)
- tar -cf - -T MANIFEST | tar -C $(PACKAGE)-$(VERSION) -xf -
- $(INSTALL) -m 0755 configure $(PACKAGE)-$(VERSION)/
- $(INSTALL) -m 0644 aclocal.m4 $(PACKAGE)-$(VERSION)/
- $(INSTALL) -m 0644 src/virt-top.1 $(PACKAGE)-$(VERSION)/src/
- $(INSTALL) -m 0644 src/virt-top.txt $(PACKAGE)-$(VERSION)/src/
- tar zcf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
- rm -rf $(PACKAGE)-$(VERSION)
- ls -l $(PACKAGE)-$(VERSION).tar.gz
-
-check-manifest:
- git ls-files | sort > .check-manifest; \
- sort MANIFEST > .orig-manifest; \
- diff -u .orig-manifest .check-manifest; rv=$$?; \
- rm -f .orig-manifest .check-manifest; \
- exit $$rv
-
-ChangeLog: $(shell find -type f)
- ./gitlog-to-changelog > $@.new
- mv $@.new $@
-
-.PHONY: all opt depend install clean distclean force
virt-top
----------------------------------------------------------------------
-Copyright (C) 2007-2016 Richard W.M. Jones, Red Hat Inc.
+Copyright (C) 2007-2021 Richard W.M. Jones, Red Hat Inc.
http://et.redhat.com/~rjones/virt-top/
http://libvirt.org/ocaml/
http://libvirt.org/
OCaml >= 3.11.0
ocaml-libvirt >= 0.6.1.1 (for virDomainGetCPUStats support)
-OCaml extlib
OCaml curses
+libxml2
Optional:
OCaml gettext
-OCaml xml-light
-OCaml CSV
OCaml Calendar, version 2 is preferred
perldoc
msgfmt
+++ /dev/null
-/* config.h.in. Generated from configure.ac by autoheader. */
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the home page for this package. */
-#undef PACKAGE_URL
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
--- /dev/null
+#! /bin/sh
+# Output a system dependent set of variables, describing how to set the
+# run time search path of shared libraries in an executable.
+#
+# Copyright 1996-2021 Free Software Foundation, Inc.
+# Taken from GNU libtool, 2001
+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#
+# This file is free software; the Free Software Foundation gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# The first argument passed to this file is the canonical host specification,
+# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or
+# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld
+# should be set by the caller.
+#
+# The set of defined variables is at the end of this script.
+
+# Known limitations:
+# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer
+# than 256 bytes, otherwise the compiler driver will dump core. The only
+# known workaround is to choose shorter directory names for the build
+# directory and/or the installation directory.
+
+# All known linkers require a '.a' archive for static linking (except MSVC,
+# which needs '.lib').
+libext=a
+shrext=.so
+
+host="$1"
+host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+# Code taken from libtool.m4's _LT_CC_BASENAME.
+
+for cc_temp in $CC""; do
+ case $cc_temp in
+ compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+ distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+ \-*) ;;
+ *) break;;
+ esac
+done
+cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
+
+# Code taken from libtool.m4's _LT_COMPILER_PIC.
+
+wl=
+if test "$GCC" = yes; then
+ wl='-Wl,'
+else
+ case "$host_os" in
+ aix*)
+ wl='-Wl,'
+ ;;
+ mingw* | cygwin* | pw32* | os2* | cegcc*)
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ wl='-Wl,'
+ ;;
+ irix5* | irix6* | nonstopux*)
+ wl='-Wl,'
+ ;;
+ linux* | k*bsd*-gnu | kopensolaris*-gnu)
+ case $cc_basename in
+ ecc*)
+ wl='-Wl,'
+ ;;
+ icc* | ifort*)
+ wl='-Wl,'
+ ;;
+ lf95*)
+ wl='-Wl,'
+ ;;
+ nagfor*)
+ wl='-Wl,-Wl,,'
+ ;;
+ pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
+ wl='-Wl,'
+ ;;
+ ccc*)
+ wl='-Wl,'
+ ;;
+ xl* | bgxl* | bgf* | mpixl*)
+ wl='-Wl,'
+ ;;
+ como)
+ wl='-lopt='
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ F* | *Sun*Fortran*)
+ wl=
+ ;;
+ *Sun\ C*)
+ wl='-Wl,'
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ newsos6)
+ ;;
+ *nto* | *qnx*)
+ ;;
+ osf3* | osf4* | osf5*)
+ wl='-Wl,'
+ ;;
+ rdos*)
+ ;;
+ solaris*)
+ case $cc_basename in
+ f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
+ wl='-Qoption ld '
+ ;;
+ *)
+ wl='-Wl,'
+ ;;
+ esac
+ ;;
+ sunos4*)
+ wl='-Qoption ld '
+ ;;
+ sysv4 | sysv4.2uw2* | sysv4.3*)
+ wl='-Wl,'
+ ;;
+ sysv4*MP*)
+ ;;
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ wl='-Wl,'
+ ;;
+ unicos*)
+ wl='-Wl,'
+ ;;
+ uts4*)
+ ;;
+ esac
+fi
+
+# Code taken from libtool.m4's _LT_LINKER_SHLIBS.
+
+hardcode_libdir_flag_spec=
+hardcode_libdir_separator=
+hardcode_direct=no
+hardcode_minus_L=no
+
+case "$host_os" in
+ cygwin* | mingw* | pw32* | cegcc*)
+ # FIXME: the MSVC++ port hasn't been tested in a loooong time
+ # When not using gcc, we currently assume that we are using
+ # Microsoft Visual C++.
+ if test "$GCC" != yes; then
+ with_gnu_ld=no
+ fi
+ ;;
+ interix*)
+ # we just hope/assume this is gcc and not c89 (= MSVC++)
+ with_gnu_ld=yes
+ ;;
+ openbsd*)
+ with_gnu_ld=no
+ ;;
+esac
+
+ld_shlibs=yes
+if test "$with_gnu_ld" = yes; then
+ # Set some defaults for GNU ld with shared library support. These
+ # are reset later if shared libraries are not supported. Putting them
+ # here allows them to be overridden if necessary.
+ # Unlike libtool, we use -rpath here, not --rpath, since the documented
+ # option of GNU ld is called -rpath, not --rpath.
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ case "$host_os" in
+ aix[3-9]*)
+ # On AIX/PPC, the GNU linker is very broken
+ if test "$host_cpu" != ia64; then
+ ld_shlibs=no
+ fi
+ ;;
+ amigaos*)
+ case "$host_cpu" in
+ powerpc)
+ ;;
+ m68k)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+ esac
+ ;;
+ beos*)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ cygwin* | mingw* | pw32* | cegcc*)
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
+ # no search path for DLLs.
+ hardcode_libdir_flag_spec='-L$libdir'
+ if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ haiku*)
+ ;;
+ interix[3-9]*)
+ hardcode_direct=no
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ ;;
+ gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ netbsd*)
+ ;;
+ solaris*)
+ if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
+ ld_shlibs=no
+ elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+ case `$LD -v 2>&1` in
+ *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
+ ld_shlibs=no
+ ;;
+ *)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
+ ;;
+ sunos4*)
+ hardcode_direct=yes
+ ;;
+ *)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
+ if test "$ld_shlibs" = no; then
+ hardcode_libdir_flag_spec=
+ fi
+else
+ case "$host_os" in
+ aix3*)
+ # Note: this linker hardcodes the directories in LIBPATH if there
+ # are no directories specified by -L.
+ hardcode_minus_L=yes
+ if test "$GCC" = yes; then
+ # Neither direct hardcoding nor static linking is supported with a
+ # broken collect2.
+ hardcode_direct=unsupported
+ fi
+ ;;
+ aix[4-9]*)
+ if test "$host_cpu" = ia64; then
+ # On IA64, the linker does run time linking by default, so we don't
+ # have to do anything special.
+ aix_use_runtimelinking=no
+ else
+ aix_use_runtimelinking=no
+ # Test if we are trying to use run time linking or normal
+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we
+ # need to do runtime linking.
+ case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
+ for ld_flag in $LDFLAGS; do
+ if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+ aix_use_runtimelinking=yes
+ break
+ fi
+ done
+ ;;
+ esac
+ fi
+ hardcode_direct=yes
+ hardcode_libdir_separator=':'
+ if test "$GCC" = yes; then
+ case $host_os in aix4.[012]|aix4.[012].*)
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" && \
+ strings "$collect2name" | grep resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ hardcode_direct=unsupported
+ hardcode_minus_L=yes
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_libdir_separator=
+ fi
+ ;;
+ esac
+ fi
+ # Begin _LT_AC_SYS_LIBPATH_AIX.
+ echo 'int main () { return 0; }' > conftest.c
+ ${CC} ${LDFLAGS} conftest.c -o conftest
+ aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
+}'`
+ if test -z "$aix_libpath"; then
+ aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
+}'`
+ fi
+ if test -z "$aix_libpath"; then
+ aix_libpath="/usr/lib:/lib"
+ fi
+ rm -f conftest.c conftest
+ # End _LT_AC_SYS_LIBPATH_AIX.
+ if test "$aix_use_runtimelinking" = yes; then
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ else
+ if test "$host_cpu" = ia64; then
+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
+ else
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ fi
+ fi
+ ;;
+ amigaos*)
+ case "$host_cpu" in
+ powerpc)
+ ;;
+ m68k)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+ esac
+ ;;
+ bsdi[45]*)
+ ;;
+ cygwin* | mingw* | pw32* | cegcc*)
+ # When not using gcc, we currently assume that we are using
+ # Microsoft Visual C++.
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
+ # no search path for DLLs.
+ hardcode_libdir_flag_spec=' '
+ libext=lib
+ ;;
+ darwin* | rhapsody*)
+ hardcode_direct=no
+ if { case $cc_basename in ifort*) true;; *) test "$GCC" = yes;; esac; }; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ dgux*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ ;;
+ freebsd2.[01]*)
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ ;;
+ freebsd* | dragonfly* | midnightbsd*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ ;;
+ hpux9*)
+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+ hardcode_libdir_separator=:
+ hardcode_direct=yes
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ hardcode_minus_L=yes
+ ;;
+ hpux10*)
+ if test "$with_gnu_ld" = no; then
+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+ hardcode_libdir_separator=:
+ hardcode_direct=yes
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ hardcode_minus_L=yes
+ fi
+ ;;
+ hpux11*)
+ if test "$with_gnu_ld" = no; then
+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+ hardcode_libdir_separator=:
+ case $host_cpu in
+ hppa*64*|ia64*)
+ hardcode_direct=no
+ ;;
+ *)
+ hardcode_direct=yes
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ hardcode_minus_L=yes
+ ;;
+ esac
+ fi
+ ;;
+ irix5* | irix6* | nonstopux*)
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ ;;
+ netbsd*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ ;;
+ newsos6)
+ hardcode_direct=yes
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ ;;
+ *nto* | *qnx*)
+ ;;
+ openbsd*)
+ if test -f /usr/libexec/ld.so; then
+ hardcode_direct=yes
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ else
+ case "$host_os" in
+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ ;;
+ *)
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ ;;
+ esac
+ fi
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ os2*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+ osf3*)
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ ;;
+ osf4* | osf5*)
+ if test "$GCC" = yes; then
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ else
+ # Both cc and cxx compiler support -rpath directly
+ hardcode_libdir_flag_spec='-rpath $libdir'
+ fi
+ hardcode_libdir_separator=:
+ ;;
+ solaris*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ ;;
+ sunos4*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ ;;
+ sysv4)
+ case $host_vendor in
+ sni)
+ hardcode_direct=yes # is this really true???
+ ;;
+ siemens)
+ hardcode_direct=no
+ ;;
+ motorola)
+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie
+ ;;
+ esac
+ ;;
+ sysv4.3*)
+ ;;
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ ld_shlibs=yes
+ fi
+ ;;
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
+ ;;
+ sysv5* | sco3.2v5* | sco5v6*)
+ hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
+ hardcode_libdir_separator=':'
+ ;;
+ uts4*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ ;;
+ *)
+ ld_shlibs=no
+ ;;
+ esac
+fi
+
+# Check dynamic linker characteristics
+# Code taken from libtool.m4's _LT_SYS_DYNAMIC_LINKER.
+# Unlike libtool.m4, here we don't care about _all_ names of the library, but
+# only about the one the linker finds when passed -lNAME. This is the last
+# element of library_names_spec in libtool.m4, or possibly two of them if the
+# linker has special search rules.
+library_names_spec= # the last element of library_names_spec in libtool.m4
+libname_spec='lib$name'
+case "$host_os" in
+ aix3*)
+ library_names_spec='$libname.a'
+ ;;
+ aix[4-9]*)
+ library_names_spec='$libname$shrext'
+ ;;
+ amigaos*)
+ case "$host_cpu" in
+ powerpc*)
+ library_names_spec='$libname$shrext' ;;
+ m68k)
+ library_names_spec='$libname.a' ;;
+ esac
+ ;;
+ beos*)
+ library_names_spec='$libname$shrext'
+ ;;
+ bsdi[45]*)
+ library_names_spec='$libname$shrext'
+ ;;
+ cygwin* | mingw* | pw32* | cegcc*)
+ shrext=.dll
+ library_names_spec='$libname.dll.a $libname.lib'
+ ;;
+ darwin* | rhapsody*)
+ shrext=.dylib
+ library_names_spec='$libname$shrext'
+ ;;
+ dgux*)
+ library_names_spec='$libname$shrext'
+ ;;
+ freebsd[23].*)
+ library_names_spec='$libname$shrext$versuffix'
+ ;;
+ freebsd* | dragonfly* | midnightbsd*)
+ library_names_spec='$libname$shrext'
+ ;;
+ gnu*)
+ library_names_spec='$libname$shrext'
+ ;;
+ haiku*)
+ library_names_spec='$libname$shrext'
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ case $host_cpu in
+ ia64*)
+ shrext=.so
+ ;;
+ hppa*64*)
+ shrext=.sl
+ ;;
+ *)
+ shrext=.sl
+ ;;
+ esac
+ library_names_spec='$libname$shrext'
+ ;;
+ interix[3-9]*)
+ library_names_spec='$libname$shrext'
+ ;;
+ irix5* | irix6* | nonstopux*)
+ library_names_spec='$libname$shrext'
+ case "$host_os" in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+ ;;
+ *)
+ case $LD in
+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;;
+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;;
+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;;
+ *) libsuff= shlibsuff= ;;
+ esac
+ ;;
+ esac
+ ;;
+ linux*oldld* | linux*aout* | linux*coff*)
+ ;;
+ linux* | k*bsd*-gnu | kopensolaris*-gnu)
+ library_names_spec='$libname$shrext'
+ ;;
+ knetbsd*-gnu)
+ library_names_spec='$libname$shrext'
+ ;;
+ netbsd*)
+ library_names_spec='$libname$shrext'
+ ;;
+ newsos6)
+ library_names_spec='$libname$shrext'
+ ;;
+ *nto* | *qnx*)
+ library_names_spec='$libname$shrext'
+ ;;
+ openbsd*)
+ library_names_spec='$libname$shrext$versuffix'
+ ;;
+ os2*)
+ libname_spec='$name'
+ shrext=.dll
+ library_names_spec='$libname.a'
+ ;;
+ osf3* | osf4* | osf5*)
+ library_names_spec='$libname$shrext'
+ ;;
+ rdos*)
+ ;;
+ solaris*)
+ library_names_spec='$libname$shrext'
+ ;;
+ sunos4*)
+ library_names_spec='$libname$shrext$versuffix'
+ ;;
+ sysv4 | sysv4.3*)
+ library_names_spec='$libname$shrext'
+ ;;
+ sysv4*MP*)
+ library_names_spec='$libname$shrext'
+ ;;
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ library_names_spec='$libname$shrext'
+ ;;
+ tpf*)
+ library_names_spec='$libname$shrext'
+ ;;
+ uts4*)
+ library_names_spec='$libname$shrext'
+ ;;
+esac
+
+sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
+escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
+shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
+escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
+escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
+escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
+
+LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
+
+# How to pass a linker flag through the compiler.
+wl="$escaped_wl"
+
+# Static library suffix (normally "a").
+libext="$libext"
+
+# Shared library suffix (normally "so").
+shlibext="$shlibext"
+
+# Format of library name prefix.
+libname_spec="$escaped_libname_spec"
+
+# Library names that the linker finds when passed -lNAME.
+library_names_spec="$escaped_library_names_spec"
+
+# Flag to hardcode \$libdir into a binary during linking.
+# This must work even if \$libdir does not exist.
+hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
+
+# Whether we need a single -rpath flag with a separated argument.
+hardcode_libdir_separator="$hardcode_libdir_separator"
+
+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
+# resulting binary.
+hardcode_direct="$hardcode_direct"
+
+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
+# resulting binary.
+hardcode_minus_L="$hardcode_minus_L"
+
+EOF
# virt-top
-# Copyright (C) 2007-2008 Red Hat Inc., Richard W.M. Jones
+# Copyright (C) 2007-2021 Red Hat Inc., Richard W.M. Jones
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
dnl Process this file with autoconf to produce a configure script.
-AC_INIT([virt-top],[1.0.9])
+AC_INIT([virt-top],[1.1.1])
+AM_INIT_AUTOMAKE([foreign])
AC_CONFIG_MACRO_DIR([m4])
AC_PROG_INSTALL
+dnl Enable GNU stuff.
+AC_USE_SYSTEM_EXTENSIONS
+
+dnl Check for basic C environment.
+AC_PROG_CC_STDC
+AC_PROG_CPP
+AC_C_PROTOTYPES
+test "x$U" != "x" && AC_MSG_ERROR([Compiler not ANSI compliant])
+AM_PROG_CC_C_O
+
+dnl Check support for 64 bit file offsets.
+AC_SYS_LARGEFILE
+
+dnl Check for libxml2 (required).
+PKG_CHECK_MODULES([LIBXML2], [libxml-2.0])
+
dnl Check for basic OCaml environment & findlib.
AC_PROG_OCAML
-AC_PROG_FINDLIB
+if test "$OCAMLC" = "no"; then
+ AC_MSG_ERROR([You must install the OCaml compiler])
+fi
+AM_CONDITIONAL([HAVE_OCAMLOPT],[test "$OCAMLBEST" = "opt"])
+
+AC_PROG_FINDLIB
if test "x$OCAMLFIND" = "xno"; then
AC_MSG_ERROR([OCaml findlib is required])
fi
AC_MSG_ERROR([Cannot find required OCaml package 'unix'])
fi
-AC_CHECK_OCAML_PKG(extlib)
-if test "x$OCAML_PKG_extlib" = "xno"; then
- AC_MSG_ERROR([Cannot find required OCaml package 'extlib'])
-fi
-
AC_CHECK_OCAML_PKG(libvirt)
if test "x$OCAML_PKG_libvirt" = "xno"; then
AC_MSG_ERROR([Cannot find required OCaml package 'libvirt'])
fi
dnl Check for optional OCaml packages.
-AC_CHECK_OCAML_PKG(gettext)
-AC_CHECK_OCAML_PKG(xml-light)
-AC_CHECK_OCAML_PKG(csv)
AC_CHECK_OCAML_PKG(calendar)
+AC_CHECK_OCAML_PKG(gettext)
-AC_SUBST(OCAML_PKG_unix)
-AC_SUBST(OCAML_PKG_extlib)
-AC_SUBST(OCAML_PKG_curses)
-AC_SUBST(OCAML_PKG_gettext)
-AC_SUBST(OCAML_PKG_xml_light)
-AC_SUBST(OCAML_PKG_csv)
-AC_SUBST(OCAML_PKG_calendar)
+AM_CONDITIONAL([HAVE_PKG_CALENDAR], [test "x$OCAML_PKG_calendar" != "xno"])
+AM_CONDITIONAL([HAVE_PKG_GETTEXT], [test "x$OCAML_PKG_gettext" != "xno"])
+
+dnl Check if ocamlc/ocamlopt -runtime-variant _pic works. It was
+dnl added in OCaml >= 4.03, but in theory might be disabled by
+dnl downstream distros.
+OCAML_RUNTIME_VARIANT_PIC_OPTION=""
+if test "x$OCAMLC" != "xno"; then
+ AC_MSG_CHECKING([if OCaml ‘-runtime-variant _pic’ works])
+ rm -f conftest.ml contest
+ echo 'print_endline "hello world"' > conftest.ml
+ if $OCAMLOPT conftest.ml -runtime-variant _pic -o conftest >&5 2>&5 ; then
+ AC_MSG_RESULT([yes])
+ OCAML_RUNTIME_VARIANT_PIC_OPTION="-runtime-variant _pic"
+ else
+ AC_MSG_RESULT([no])
+ fi
+ rm -f conftest.ml contest
+fi
+AC_SUBST([OCAML_RUNTIME_VARIANT_PIC_OPTION])
dnl Check for optional perldoc (for building manual pages).
-AC_CHECK_PROG(HAVE_PERLDOC,perldoc,perldoc)
+AC_CHECK_PROG([HAVE_PERLDOC], perldoc, perldoc)
+AM_CONDITIONAL([HAVE_PERLDOC], [test "x$HAVE_PERLDOC" = "xperldoc"])
dnl Check for recommended ocaml-gettext tool.
-AC_CHECK_PROG(OCAML_GETTEXT,ocaml-gettext,ocaml-gettext)
-
-dnl Check for msgfmt tool.
-AC_CHECK_PROG(MSGFMT,msgfmt,msgfmt)
+AC_CHECK_PROG([OCAML_GETTEXT], ocaml-gettext, ocaml-gettext)
+AM_CONDITIONAL([HAVE_OCAML_GETTEXT],[test "x$OCAML_GETTEXT" = "xocaml-gettext"])
+
+dnl Check for GNU gettext tools (optional).
+AC_CHECK_PROG([XGETTEXT],[xgettext],[xgettext],[no])
+AC_CHECK_PROG([MSGCAT],[msgcat],[msgcat],[no])
+AC_CHECK_PROG([MSGFMT],[msgfmt],[msgfmt],[no])
+AC_CHECK_PROG([MSGMERGE],[msgmerge],[msgmerge],[no])
+
+dnl Check they are the GNU gettext tools.
+AC_MSG_CHECKING([msgfmt is GNU tool])
+if $MSGFMT --version >/dev/null 2>&1 && $MSGFMT --version | grep -q 'GNU gettext
+'; then
+ msgfmt_is_gnu=yes
+else
+ msgfmt_is_gnu=no
+fi
+AC_MSG_RESULT([$msgfmt_is_gnu])
+AM_CONDITIONAL([HAVE_GNU_GETTEXT],
+ [test "x$XGETTEXT" != "xno" && test "x$MSGCAT" != "xno" && test "x$MSGFMT" != "xno" && test "x$MSGMERGE" != "xno" && test "x$msgfmt_is_gnu" != "xno"])
-dnl Substitute CFLAGS and LDFLAGS if set.
-AC_SUBST([CFLAGS])
-AC_SUBST([LDFLAGS])
+dnl Check for gettext.
+AM_GNU_GETTEXT([external])
dnl Write gettext modules for the programs.
dnl http://www.le-gall.net/sylvain+violaine/documentation/ocaml-gettext/html/reference-manual/ch03s04.html
dnl Produce output files.
AC_CONFIG_HEADERS([config.h])
+AC_CONFIG_FILES([ocaml-dep.sh], [chmod +x,-w ocaml-dep.sh])
+AC_CONFIG_FILES([ocaml-link.sh], [chmod +x,-w ocaml-link.sh])
AC_CONFIG_FILES([Makefile
- Make.rules
po/Makefile
src/Makefile
src/version.ml
+++ /dev/null
-#!/usr/bin/perl
-# Convert git log output to ChangeLog format.
-
-my $VERSION = '2009-10-05 15:04'; # UTC
-# The definition above must lie within the first 8 lines in order
-# for the Emacs time-stamp write hook (at end) to update it.
-# If you change this file with Emacs, please let the write hook
-# do its job. Otherwise, update this string manually.
-
-# Copyright (C) 2008, 2009 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 <http://www.gnu.org/licenses/>.
-
-# Written by Jim Meyering
-
-use strict;
-use warnings;
-use Getopt::Long;
-use POSIX qw(strftime);
-
-(my $ME = $0) =~ s|.*/||;
-
-# use File::Coda; # http://meyering.net/code/Coda/
-END {
- defined fileno STDOUT or return;
- close STDOUT and return;
- warn "$ME: failed to close standard output: $!\n";
- $? ||= 1;
-}
-
-sub usage ($)
-{
- my ($exit_code) = @_;
- my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR);
- if ($exit_code != 0)
- {
- print $STREAM "Try `$ME --help' for more information.\n";
- }
- else
- {
- print $STREAM <<EOF;
-Usage: $ME [OPTIONS] [ARGS]
-
-Convert git log output to ChangeLog format. If present, any ARGS
-are passed to "git log". To avoid ARGS being parsed as options to
-$ME, they may be preceded by '--'.
-
-OPTIONS:
-
- --since=DATE convert only the logs since DATE;
- the default is to convert all log entries.
- --format=FMT set format string for commit subject and body;
- see 'man git-log' for the list of format metacharacters;
- the default is '%s%n%b%n'
-
- --help display this help and exit
- --version output version information and exit
-
-EXAMPLE:
-
- $ME --since=2008-01-01 > ChangeLog
- $ME -- -n 5 foo > last-5-commits-to-branch-foo
-
-EOF
- }
- exit $exit_code;
-}
-
-# If the string $S is a well-behaved file name, simply return it.
-# If it contains white space, quotes, etc., quote it, and return the new string.
-sub shell_quote($)
-{
- my ($s) = @_;
- if ($s =~ m![^\w+/.,-]!)
- {
- # Convert each single quote to '\''
- $s =~ s/\'/\'\\\'\'/g;
- # Then single quote the string.
- $s = "'$s'";
- }
- return $s;
-}
-
-sub quoted_cmd(@)
-{
- return join (' ', map {shell_quote $_} @_);
-}
-
-{
- my $since_date = '1970-01-01 UTC';
- my $format_string = '%s%n%b%n';
- GetOptions
- (
- help => sub { usage 0 },
- version => sub { print "$ME version $VERSION\n"; exit },
- 'since=s' => \$since_date,
- 'format=s' => \$format_string,
- ) or usage 1;
-
- my @cmd = (qw (git log --log-size), "--since=$since_date",
- '--pretty=format:%ct %an <%ae>%n%n'.$format_string, @ARGV);
- open PIPE, '-|', @cmd
- or die ("$ME: failed to run `". quoted_cmd (@cmd) ."': $!\n"
- . "(Is your Git too old? Version 1.5.1 or later is required.)\n");
-
- my $prev_date_line = '';
- while (1)
- {
- defined (my $in = <PIPE>)
- or last;
- $in =~ /^log size (\d+)$/
- or die "$ME:$.: Invalid line (expected log size):\n$in";
- my $log_nbytes = $1;
-
- my $log;
- my $n_read = read PIPE, $log, $log_nbytes;
- $n_read == $log_nbytes
- or die "$ME:$.: unexpected EOF\n";
-
- my @line = split "\n", $log;
- my $author_line = shift @line;
- defined $author_line
- or die "$ME:$.: unexpected EOF\n";
- if ($author_line =~ /^(\d+) (.*>)$/) {
- my $date_line = sprintf "%s $2\n", strftime ("%F", localtime ($1));
- # If this line would be the same as the previous date/name/email
- # line, then arrange not to print it.
- if ($date_line ne $prev_date_line)
- {
- $prev_date_line eq ''
- or print "\n";
- print $date_line;
- }
- $prev_date_line = $date_line;
- }
-
- # Omit "Signed-off-by..." lines.
- @line = grep !/^Signed-off-by: .*>$/, @line;
-
- # If there were any lines
- if (@line == 0)
- {
- warn "$ME: warning: empty commit message:\n $prev_date_line\n";
- }
- else
- {
- # Remove leading and trailing blank lines.
- while ($line[0] =~ /^\s*$/) { shift @line; }
- while ($line[$#line] =~ /^\s*$/) { pop @line; }
-
- # Prefix each non-empty line with a TAB.
- @line = map { length $_ ? "\t$_" : '' } @line;
-
- print "\n", join ("\n", @line), "\n";
- }
-
- defined ($in = <PIPE>)
- or last;
- $in ne "\n"
- and die "$ME:$.: unexpected line:\n$in";
- }
-
- close PIPE
- or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n";
- # FIXME-someday: include $PROCESS_STATUS in the diagnostic
-}
-
-# Local Variables:
-# indent-tabs-mode: nil
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "my $VERSION = '"
-# time-stamp-format: "%:y-%02m-%02d %02H:%02M"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "'; # UTC"
-# End:
--- /dev/null
+#!/bin/bash -
+# (C) Copyright 2009-2020 Red Hat Inc.
+# @configure_input@
+#
+# 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 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, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+# This is a smarter wrapper around ocamldep(1) which is used to create
+# the .depend files which are present in each subdirectory that builds
+# OCaml code.
+#
+# Usage:
+# .depend: *.mli *.ml
+# $(top_builddir)/ocaml-dep.sh $^
+# -include .depend
+
+set -e
+
+# List of directories that contain common OCaml libraries. If it
+# contains OCaml code that can be included from another directory,
+# then it should go here. Note that OCaml modules in these
+# directories must have unique names (eg. not ‘Utils’) else
+# dependencies don't get built right.
+include_dirs="
+"
+
+# Output file is always created in the current directory.
+output=.depend
+
+subdir=$(realpath --relative-to=@abs_top_builddir@ .)
+srcdir=$(realpath --relative-to=. @abs_top_srcdir@/${subdir})
+srcdir_re=$(realpath --relative-to=. @abs_top_srcdir@/${subdir} | sed 's/\./[.]/g')
+top_builddir=$(realpath --relative-to=. @abs_top_builddir@)
+
+includes="-I @abs_top_srcdir@/$subdir -I @abs_top_builddir@/$subdir"
+for i in $include_dirs; do
+ includes="$includes -I @abs_top_srcdir@/$i -I @abs_top_builddir@/$i"
+done
+
+rm -f $output $output-t
+
+echo "# OCaml dependencies generated by $0" > $output-t
+echo >> $output-t
+
+# Rewrite paths
+# 1. Normalize absolute srcdir to relative path
+# 2. Object files (*.cm*, *.o), in srcdir: Rewrite to builddir
+# 3. Generated _config.ml in srcdir: Rewrite to builddir
+# 4. Other object files below abs_top_srcdir: rewrite to corresponding builddir
+# 5. Eliminate "./" prefix
+@OCAMLFIND@ ocamldep @OCAMLDEP_ALL@ @OCAMLDEP_ONE_LINE@ $includes "$@" \
+ | sed \
+ -e "s,@abs_top_srcdir@/${subdir},.,g" \
+ -e "s,\B${srcdir_re}/\\([^ ]*[.]\\)\\(cm[^ ]*\\|o\\),\\1\\2,g" \
+ -e "s,\B${srcdir_re}/\\([^ /]*_config[.]ml\\),\\1,g" \
+ -e "s,@abs_top_srcdir@/\\([^ ]*[.]\\)\\(cm[^ ]*\\|o\\),${top_builddir}/\\1\\2,g" \
+ -e 's,\(^\| \)./,\1,g' \
+ >> $output-t
+
+chmod -w $output-t
+
+mv $output-t $output
--- /dev/null
+#!/bin/bash -
+# Script used to link OCaml programs.
+# @configure_input@
+# (C) Copyright 2015-2020 Red Hat 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 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, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+# See guestfs-hacking(1) section "HOW OCAML PROGRAMS ARE COMPILED AND LINKED"
+
+# Hack automake to link OCaml-based binaries properly.
+# There is no other way to add the -cclib parameter to the end of
+# the command line.
+
+# Usage:
+# ./ocaml-link.sh -cclib '...' -- ARGS
+# Pass the cclib argument separately, and the rest as separated
+# arguments.
+
+TEMP=`getopt -a -o '' --long 'cclib:' \
+ -n "$(basename $0)" -- "$@"`
+if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
+eval set -- "$TEMP"
+
+cclib=
+
+while true ; do
+ case "$1" in
+ -cclib|--cclib) cclib="$2" ; shift 2 ;;
+ --) shift ; break ;;
+ *) echo "Internal error!" ; exit 1 ;;
+ esac
+done
+
+# Integration with silent rules of automake: print the full command
+# line option in verbose mode.
+if [ x"${V:-@AM_DEFAULT_VERBOSITY@}" = x1 ]; then
+ echo "$@" \
+ @OCAML_RUNTIME_VARIANT_PIC_OPTION@ \
+ -linkpkg \
+ -cclib "'@LDFLAGS@ $cclib'"
+fi
+# NB -cclib must come last.
+exec "$@" \
+ @OCAML_RUNTIME_VARIANT_PIC_OPTION@ \
+ -linkpkg \
+ -cclib "@LDFLAGS@ $cclib"
as
ca
+cs
de
es
eu
uk
zh_CN
zh_TW
+cs
+si
+fi
--- /dev/null
+# libguestfs
+# Copyright (C) 2009-2020 Red Hat 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 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, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+DOMAIN = $(PACKAGE_NAME)
+COPYRIGHT_HOLDER = Red Hat Inc.
+MSGID_BUGS_ADDRESS = https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
+
+# Languages.
+# Don't use LINGUAS (uppercase) as Gentoo defines it (RHBZ#804464).
+linguas := $(shell cat $(srcdir)/LINGUAS)
+
+POTFILES := $(shell $(SED) 's,^,$(top_srcdir)/,' $(srcdir)/POTFILES)
+POTFILES_ML := $(shell $(SED) 's,^,$(top_srcdir)/,' $(srcdir)/POTFILES-ml)
+POFILES := $(linguas:%=%.po)
+GMOFILES := $(linguas:%=%.gmo)
+
+EXTRA_DIST = \
+ LINGUAS \
+ POTFILES POTFILES-ml \
+ $(DOMAIN).pot \
+ $(POFILES) \
+ $(GMOFILES)
+
+if HAVE_GNU_GETTEXT
+
+XGETTEXT_ARGS = \
+ --default-domain=$(DOMAIN) \
+ --from-code=utf-8 \
+ --add-comments=TRANSLATORS: \
+ --keyword=_ --keyword=N_ --keyword=__ --keyword=__x \
+ --flag=error:3:c-format \
+ --flag=error_at_line:5:c-format \
+ --flag=asprintf:2:c-format \
+ --flag=vasprintf:2:c-format \
+ --flag=xasprintf:1:c-format \
+ --copyright-holder='$(COPYRIGHT_HOLDER)' \
+ --package-name="$(PACKAGE_NAME)" \
+ --package-version="$(PACKAGE_VERSION)" \
+ --msgid-bugs-address="$(MSGID_BUGS_ADDRESS)" \
+ --directory=$(top_srcdir)
+
+# For explanation, see
+# http://mingw-users.1079350.n2.nabble.com/Getting-rid-of-xgettext-s-quot-CHARSET-quot-warning-td5620533.html
+FIX_CHARSET = \
+ $(SED) -i 's|text/plain; charset=CHARSET|text/plain; charset=utf-8|g'
+
+$(DOMAIN).pot: Makefile POTFILES $(POTFILES) POTFILES-ml $(POTFILES_ML)
+ rm -f $@-t
+ touch $@-t
+if HAVE_OCAML_GETTEXT
+ cd $(top_srcdir) && $(OCAML_GETTEXT) --action extract --extract-pot $(abs_srcdir)/$@-t $(shell cat $(abs_srcdir)/POTFILES-ml)
+ \
+ $(FIX_CHARSET) $@-t
+endif
+ $(XGETTEXT) -j -o $@-t $(XGETTEXT_ARGS) \
+ --files-from=$(abs_srcdir)/POTFILES
+ $(FIX_CHARSET) $@-t
+ mv $@-t $@
+
+.po.gmo:
+ rm -f $@ $@-t
+ $(MSGFMT) -c -o $@-t $(srcdir)/$<
+ mv $@-t $@
+
+# Install.
+# Cannot use 'localedir' since this conflicts with autoconf.
+langinstdir = $(datadir)/locale
+
+install-data-hook: $(GMOFILES)
+ mkdir -p $(DESTDIR)$(langinstdir)
+ for lang in $(linguas); do \
+ d=$(DESTDIR)$(langinstdir)/$$lang/LC_MESSAGES; \
+ mkdir -p $$d; \
+ install -m 0644 $$lang.gmo $$d/$(DOMAIN).mo; \
+ done
+
+.PRECIOUS: $(DOMAIN).pot $(POFILES)
+
+endif
+++ /dev/null
-# Makefile for po subdirectory.
-# @configure_input@
-#
-# Copyright (C) 2007-2008 Red Hat Inc.
-# Written by Richard W.M. Jones <rjones@redhat.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 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-OCAML_GETTEXT_PACKAGE = virt-top
-LINGUAS = $(shell cat LINGUAS)
-SOURCES = POTFILES
-
-MSGFMT = @MSGFMT@
-
-OCAML_GETTEXT = @OCAML_GETTEXT@
-OCAML_GETTEXT_EXTRACT_OPTIONS =
-OCAML_GETTEXT_COMPILE_OPTIONS =
-OCAML_GETTEXT_INSTALL_OPTIONS =
-OCAML_GETTEXT_MERGE_OPTIONS =
-
-PODIR = @prefix@/share/locale
-
-POFILES = $(addsuffix .po,$(LINGUAS))
-MOFILES = $(addsuffix .mo,$(LINGUAS))
-POTFILE = $(OCAML_GETTEXT_PACKAGE).pot
-
-all: $(MOFILES) $(POTFILE)
-
-install: install-po
-
-uninstall: uninstall-po
-
-clean:: clean-po
-
-%.mo: %.po
- $(MSGFMT) -o $@ $^
-
-%.pot: $(SOURCES) $(shell cat $(SOURCES))
- $(OCAML_GETTEXT) --action extract $(OCAML_GETTEXT_EXTRACT_OPTIONS) \
- --extract-pot $@ $<
-
-# Also includes a fix for incorrectly escaped multi-byte sequences.
-%.po: $(POTFILE)
- $(OCAML_GETTEXT) --action merge $(OCAML_GETTEXT_MERGE_OPTIONS) \
- --merge-pot $(POTFILE) $@
- mv $@ $@.orig
- perl -wpe 's/\\(\d{3})/pack "C*", $$1/ge' < $@.orig > $@
-
-$(BUILDPO):
- mkdir -p $(BUILDPO)
-
-.PRECIOUS: $(POTFILE)
-
-install-po: $(MOFILES)
- $(OCAML_GETTEXT) --action install $(OCAML_GETTEXT_INSTALL_OPTIONS) \
- --install-textdomain $(OCAML_GETTEXT_PACKAGE) \
- --install-destdir $(PODIR) $(MOFILES)
-
-uninstall-po:
- $(OCAML_GETTEXT) --action uninstall $(OCAML_GETTEXT_INSTALL_OPTIONS) \
- --uninstall-textdomain $(OCAML_GETTEXT_PACKAGE) \
- --uninstall-orgdir $(PODIR) $(MOFILES)
-
-clean-po:
- -$(OCAML_GETTEXT) --action uninstall $(OCAML_GETTEXT_INSTALL_OPTIONS) \
- --uninstall-textdomain $(OCAML_GETTEXT_PACKAGE) \
- --uninstall-orgdir $(BUILDPO) $(MOFILES)
- -$(RM) $(MOFILES)
-../src/collect.ml
-../src/csv_output.ml
-../src/main.ml
-../src/opt_calendar.ml
-../src/opt_csv.ml
-../src/opt_gettext.ml
-../src/opt_xml.ml
-../src/redraw.ml
-../src/screen.ml
-../src/stream.ml
-../src/top.ml
-../src/types.ml
-../src/utils.ml
-../src/version.ml
+./src/xml-c.c
--- /dev/null
+./src/collect.ml
+./src/csv_output.ml
+./src/main.ml
+./src/opt_calendar.ml
+./src/opt_gettext.ml
+./src/redraw.ml
+./src/screen.ml
+./src/stream_output.ml
+./src/top.ml
+./src/types.ml
+./src/utils.ml
+./src/version.ml
+./src/xml.ml
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:09-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-23 06:18-0400\n"
+"Last-Translator: ngoswami <ngoswami@redhat.com>\n"
"Language-Team: Assamese <None>\n"
"Language: as\n"
"MIME-Version: 1.0\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d ডোমেইন, %d সক্ৰিয়, %d চলমান, %d নিদ্ৰিত, %d স্থগিত, %d নিষ্ক্ৰিয় D:%d "
-"O:%d X:%d"
+"%d ডোমেইন, %d সক্ৰিয়, %d চলমান, %d নিদ্ৰিত, %d স্থগিত, %d নিষ্ক্ৰিয় D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
msgstr ""
-"virt-top(1) man পৃষ্ঠাত অতিৰিক্ত সহায়ক তথ্য উপস্থিত আছে । প্ৰত্যাবৰ্তন কৰাৰ "
-"বাবà§\87 যি à¦\95à§\8bনà§\8b à¦\9aাবি à¦\9fিপà¦\95 ।"
+"virt-top(1) man পৃষ্ঠাত অতিৰিক্ত সহায়ক তথ্য উপস্থিত আছে । প্ৰত্যাবৰ্তন কৰাৰ বাবে যি "
+"কোনো চাবি টিপক ।"
#: ../src/top.ml:294
msgid ""
#: ../src/top.ml:208
msgid "Run from a script (no user interface)"
-msgstr ""
-"স্ক্ৰিপ্টৰ সহযোগত সঞ্চালন কৰা হ'ব (ব্যৱহাৰকৰোঁতাৰ সংযোগ মাধ্যম নোহোৱাকে)"
+msgstr "স্ক্ৰিপ্টৰ সহযোগত সঞ্চালন কৰা হ'ব (ব্যৱহাৰকৰোঁতাৰ সংযোগ মাধ্যম নোহোৱাকে)"
#: ../src/top.ml:1771
msgid "SORTING"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2017-08-31 04:07-0400\n"
-"Last-Translator: Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>\n"
-"Language-Team: Catalan (http://www.transifex.com/projects/p/virttop/language/ca/)\n"
+"PO-Revision-Date: 2015-02-05 04:28-0500\n"
+"Last-Translator: Robert Antoni Buj i Gelonch\n"
+"Language-Team: Catalan (http://www.transifex.com/projects/p/virttop/language/"
+"ca/)\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
# Zdenek <chmelarz@gmail.com>, 2016. #zanata
# Zdenek <chmelarz@gmail.com>, 2017. #zanata
-# Pavel Borecki <pavel.borecki@gmail.com>, 2018. #zanata
+# Pavel Borecki <pavel.borecki@gmail.com>, 2018. #zanata, 2021.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2018-11-27 06:18-0500\n"
+"PO-Revision-Date: 2021-09-04 20:04+0000\n"
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>\n"
-"Language-Team: Czech\n"
+"Language-Team: Czech <https://translate.fedoraproject.org/projects/virt-top/"
+"master/cs/>\n"
"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"X-Generator: Weblate 4.8\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
#: ../src/top.ml:1780
msgid "Select sort field"
-msgstr "Vybrat pole řazení"
+msgstr "Vybrat kolonku, podle které řadit"
#: ../src/top.ml:191
msgid "Send debug messages to file"
#: ../src/top.ml:1515
msgid "Type key or use up and down cursor keys."
-msgstr "Zadejte klávesu nebo použijte klávesy šipka nahoru a dolů"
+msgstr "Zadejte klávesu nebo použijte klávesy šipka nahoru a dolů."
#: ../src/top.ml:1809
msgid "Unknown command - try 'h' for help"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:09-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: rjones <rjones@redhat.com>\n"
"Language-Team: German <trans-de@lists.fedoraproject.org>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# Máximo Castañeda Riloba <mcrcctm@gmail.com>, 2017. #zanata
+# Emilio Herrera <ehespinosa57@gmail.com>, 2020, 2021.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2017-09-12 11:46-0400\n"
-"Last-Translator: Máximo Castañeda Riloba <mcrcctm@gmail.com>\n"
-"Language-Team: Spanish (Castilian) <trans-es@lists.fedoraproject.org>\n"
+"PO-Revision-Date: 2021-09-30 23:05+0000\n"
+"Last-Translator: Emilio Herrera <ehespinosa57@gmail.com>\n"
+"Language-Team: Spanish <https://translate.fedoraproject.org/projects/"
+"virt-top/master/es/>\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.8\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
-msgstr "# %s archivo de configuración de virt-top\n"
+msgstr "# %s fichero de configuración de virt-top\n"
#: ../src/top.ml:1688
msgid "# Enable CSV output to the named file\n"
-msgstr "# Activa la salida CSV al archivo indicado\n"
+msgstr "# Habilitar salida CSV al fichero nombrado\n"
#: ../src/top.ml:1691
msgid "# To protect this file from being overwritten, uncomment next line\n"
msgstr ""
-"# Para evitar que este archivo se sobrescriba, quite la marca de comentario "
-"de la siguiente línea\n"
+"# Para proteger este fichero de ser sobrescrito, no comente la siguiente "
+"línea\n"
#: ../src/top.ml:1685
msgid "# To send debug and error messages to a file, uncomment next line\n"
"%s:%d: configuration item ``%s'' ignored\n"
"%!"
msgstr ""
+"%s:%d: configuration item ``%s'' ignored\n"
+"%!"
#: ../src/top.ml:147
msgid "-d: cannot set a negative delay"
#: ../src/top.ml:1493
msgid "Change delay from %.1f to: "
-msgstr "Cambiar retraso de %.1f a:"
+msgstr "Cambiar retraso de %.1f a: "
#: ../src/top.ml:177 ../src/top.ml:175
msgid "Connect to libvirt URI"
-msgstr ""
+msgstr "Conectar a libvirt URI"
#: ../src/top.ml:1744
msgid "Connect: %s; Hostname: %s"
#: ../src/top.ml:183
msgid "Disable memory stats in CSV"
-msgstr ""
+msgstr "Deshabilita estadísticas de memoria en CVS"
#: ../src/top.ml:187
msgid "Disable net stats in CSV"
msgid ""
"NB: If you want to monitor a local hypervisor, you usually need to be root"
msgstr ""
+"NB: Si desea monitorizar un hipervisor local, normalmente necesita ser root"
#: ../src/top.ml:70
msgid "Net RX bytes"
#: ../src/top.ml:206
msgid "Secure (\"kiosk\") mode"
-msgstr ""
+msgstr "Modo seguro (\"kiosk\")"
#: ../src/top.ml:1780
msgid "Select sort field"
#: ../src/top.ml:210
msgid "dump output to stdout (no userinterface)"
-msgstr ""
+msgstr "volcar la salida hacia la salida estándar (no a la interfaz de usuario)"
#: ../src/opt_xml.ml:46
msgid "get_xml_desc didn't return <domain/>"
-msgstr "el get_xml_desc no ha retornado <domain/n>"
+msgstr "get_xml_desc no ha devuelto <domain/n>"
#: ../src/top.ml:212
msgid "show block device load in bytes rather than reqs"
-msgstr ""
+msgstr "muestre la carga del dispositivo del bloque en bytes en lugar de reqs"
#: ../src/top.ml:1767
msgid "toggle block info req/bytes"
-msgstr ""
+msgstr "Alternar información de bloque requerida / bytes"
#: ../src/top.ml:1725
msgid "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d by Red Hat"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:09-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: Basque (http://www.transifex.com/projects/p/virttop/language/eu/)\n"
+"PO-Revision-Date: 2013-11-20 06:00-0500\n"
+"Last-Translator: Asier Iturralde Sarasola <asier.iturralde@gmail.com>\n"
+"Language-Team: Basque (http://www.transifex.com/projects/p/virttop/language/"
+"eu/)\n"
"Language: eu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Jan Kuparinen <copper_fin@hotmail.com>, 2021.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-03-27 11:32+0000\n"
+"PO-Revision-Date: 2021-04-15 18:02+0000\n"
+"Last-Translator: Jan Kuparinen <copper_fin@hotmail.com>\n"
+"Language-Team: Finnish <https://translate.fedoraproject.org/projects/"
+"virt-top/master/fi/>\n"
+"Language: fi\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.5.3\n"
+
+#: ../src/top.ml:1670
+msgid "# %s virt-top configuration file\n"
+msgstr "# %s virt-top määritystiedosto\n"
+
+#: ../src/top.ml:1688
+msgid "# Enable CSV output to the named file\n"
+msgstr "# Ota käyttöön CSV-ulostulo nimettyyn tiedostoon\n"
+
+#: ../src/top.ml:1691
+msgid "# To protect this file from being overwritten, uncomment next line\n"
+msgstr ""
+"# Suojaa tämä tiedosto ylikirjoitukselta poistamalla seuraavan rivin "
+"kommenttimerkki\n"
+
+#: ../src/top.ml:1685
+msgid "# To send debug and error messages to a file, uncomment next line\n"
+msgstr ""
+"# Jos haluat lähettää virheenkorjaus- ja virhesanomia tiedostoon poista "
+"seuraavan rivin kommenttimerkki\n"
+
+#: ../src/top.ml:1671
+msgid "# generated on %s by %s\n"
+msgstr "# luotu kohteessa %s %s:llä\n"
+
+#: ../src/top.ml:65
+msgid "%CPU"
+msgstr "%CPU"
+
+#: ../src/top.ml:66
+msgid "%MEM"
+msgstr "%MEM"
+
+#: ../src/top.ml:1237
+msgid "%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d O:%d X:%d"
+msgstr ""
+"%d toimialuetta, %d aktiivista, %d käynnissä, %d unessa, %d keskeytetty, %d "
+"epäaktiivinen D:%d O:%d X:%d"
+
+#: ../src/top.ml:245
+msgid "%s: could not parse '%s' in init file: expecting %s"
+msgstr "%s: kohdetta '%s' ei voitu jäsentää init-tiedostossa: odotettiin %s"
+
+#: ../src/top.ml:240
+msgid "%s: could not parse '%s' in init file: expecting a number"
+msgstr ""
+"%s: kohdetta '%s' ei voitu jäsentää init-tiedostossa: odotettiin numeroa"
+
+#: ../src/top.ml:235
+msgid "%s: could not parse '%s' in init file: expecting an integer"
+msgstr ""
+"%s: kohdetta '%s' ei voitu jäsentää init-tiedostossa: odotettiin "
+"kokonaislukua"
+
+#: ../src/top.ml:105
+msgid "%s: display should be %s"
+msgstr "%s: näytön tulee olla %s"
+
+#: ../src/top.ml:83
+msgid "%s: sort order should be: %s"
+msgstr "%s: lajittelujärjestyksen tulisi olla: %s"
+
+#: ../src/top.ml:217
+msgid "%s: unknown parameter"
+msgstr "%s: tuntematon parametri"
+
+#: ../src/top.ml:269
+msgid "%s:%d: configuration item ``%s'' ignored\n%!"
+msgstr ""
+"%s:%d: määrityskohde ``%s'' ohitettiin\n"
+"%!"
+
+#: ../src/top.ml:147
+msgid "-d: cannot set a negative delay"
+msgstr "-d: ei voida asettaa negatiivista viivettä"
+
+#: ../src/top.ml:173
+msgid "Batch mode"
+msgstr "Erätila"
+
+#: ../src/top.ml:72
+msgid "Block read reqs"
+msgstr "Estä lukupyynnöt"
+
+#: ../src/top.ml:73
+msgid "Block write reqs"
+msgstr "Estä kirjoituspyynnöt"
+
+#: ../src/top.ml:1244
+msgid "CPU: %2.1f%% Mem: %Ld MB (%Ld MB by guests)"
+msgstr "CPU: %2.1f%% Mem: %Ld MB (%Ld MB vierailla)"
+
+#: ../src/top.ml:1493
+msgid "Change delay from %.1f to: "
+msgstr "Vaihda viive %.1f: stä seuraavaan: "
+
+#: ../src/top.ml:177 ../src/top.ml:175
+msgid "Connect to libvirt URI"
+msgstr "Yhdistä libvirt URI:hen"
+
+#: ../src/top.ml:1744
+msgid "Connect: %s; Hostname: %s"
+msgstr "Yhdistä: %s; Isäntänimi: %s"
+
+#: ../src/top.ml:1783
+msgid "DISPLAY MODES"
+msgstr "NÄYTTÖTILAT"
+
+#: ../src/top.ml:1500
+msgid "Delay must be > 0"
+msgstr "Viiveen on oltava > 0"
+
+#: ../src/top.ml:189
+msgid "Delay time interval (seconds)"
+msgstr "Viiveen aikaväli (sekuntia)"
+
+#: ../src/top.ml:1737
+msgid "Delay: %.1f secs; Batch: %s; Secure: %s; Sort: %s"
+msgstr "Viive: %.1f sekuntia; Erä: %s; Suojattu: %s; Lajittelu: %s"
+
+#: ../src/top.ml:181
+msgid "Disable CPU stats in CSV"
+msgstr "Poista CPU-tilastot käytöstä CSV:ssä"
+
+#: ../src/top.ml:185
+msgid "Disable block device stats in CSV"
+msgstr "Poista lohkolaitetilastot käytöstä CSV:ssä"
+
+#: ../src/top.ml:183
+msgid "Disable memory stats in CSV"
+msgstr "Poista muistitilastot käytöstä CSV:ssä"
+
+#: ../src/top.ml:187
+msgid "Disable net stats in CSV"
+msgstr "Poista verkkotilastot käytöstä CSV:ssä"
+
+#: ../src/top.ml:214
+msgid "Display version number and exit"
+msgstr "Näytä versionumero ja lopeta"
+
+#: ../src/top.ml:199
+msgid "Do not read init file"
+msgstr "Älä lue init-tiedostoa"
+
+#: ../src/top.ml:68
+msgid "Domain ID"
+msgstr "Toimialueen ID"
+
+#: ../src/top.ml:69
+msgid "Domain name"
+msgstr "Toimialueen nimi"
+
+#: ../src/top.ml:1797
+msgid "Domains display"
+msgstr "Toimialueiden esitys"
+
+#: ../src/main.ml:69 ../src/main.ml:44 ../src/top.ml:1711 ../src/top.ml:1708
+msgid "Error"
+msgstr "Virhe"
+
+#: ../src/top.ml:193
+msgid "Exit at given time"
+msgstr "Poistu tiettynä ajankohtana"
+
+#: ../src/top.ml:1766
+msgid "Help"
+msgstr "Ohjeet"
+
+#: ../src/top.ml:195
+msgid "Historical CPU delay"
+msgstr "Historiallinen suorittimen viive"
+
+#: ../src/top.ml:179
+msgid "Log statistics to CSV file"
+msgstr "Kirjaa tilastot CSV-tiedostoon"
+
+#: ../src/top.ml:1749
+msgid "MAIN KEYS"
+msgstr "PÄÄNÄPPÄIMET"
+
+#: ../src/top.ml:1804
+msgid "More help in virt-top(1) man page. Press any key to return."
+msgstr ""
+"Lisää ohjeita man virt-top(1) sivulla. Palaa painamalla mitä tahansa "
+"näppäintä."
+
+#: ../src/top.ml:294
+msgid "NB: If you want to monitor a local hypervisor, you usually need to be root"
+msgstr ""
+"HUOM: Jos haluat tarkkailla paikallista hypervisoria, sinun on yleensä "
+"oltava root-käyttäjä"
+
+#: ../src/top.ml:70
+msgid "Net RX bytes"
+msgstr "Netto RX-tavut"
+
+#: ../src/top.ml:71
+msgid "Net TX bytes"
+msgstr "Netto TX-tavut"
+
+#: ../src/top.ml:1506
+msgid "Not a valid number"
+msgstr "Virheellinen numero"
+
+#: ../src/top.ml:201
+msgid "Number of iterations to run"
+msgstr "Suoritettavien iteraatioiden määrä"
+
+#: ../src/top.ml:1740 ../src/top.ml:1739
+msgid "Off"
+msgstr "Poissa"
+
+#: ../src/top.ml:1740 ../src/top.ml:1739
+msgid "On"
+msgstr "Päällä"
+
+#: ../src/top.ml:1764
+msgid "Quit"
+msgstr "Lopeta"
+
+#: ../src/top.ml:208
+msgid "Run from a script (no user interface)"
+msgstr "Suorita komentosarjalta (ei käyttöliittymää)"
+
+#: ../src/top.ml:1771
+msgid "SORTING"
+msgstr "LAJITTELU"
+
+#: ../src/top.ml:206
+msgid "Secure (\"kiosk\") mode"
+msgstr "Suojattu (\"kioski\") -tila"
+
+#: ../src/top.ml:1780
+msgid "Select sort field"
+msgstr "Valitse lajittelukenttä"
+
+#: ../src/top.ml:191
+msgid "Send debug messages to file"
+msgstr "Lähetä vianselvitysviestit tiedostoon"
+
+#: ../src/top.ml:197
+msgid "Set name of init file"
+msgstr "Anna init-tiedoston nimi"
+
+#: ../src/top.ml:203
+msgid "Set sort order (%s)"
+msgstr "Aseta lajittelujärjestys (%s)"
+
+#: ../src/top.ml:1514
+msgid "Set sort order for main display"
+msgstr "Aseta lajittelujärjestys päänäytölle"
+
+#: ../src/top.ml:1765
+msgid "Set update interval"
+msgstr "Aseta päivitysväli"
+
+#: ../src/top.ml:1776
+msgid "Sort by %CPU"
+msgstr "Lajittele %CPU:n mukaan"
+
+#: ../src/top.ml:1777
+msgid "Sort by %MEM"
+msgstr "Lajittele %MUISTIN:n mukaan"
+
+#: ../src/top.ml:1779
+msgid "Sort by ID"
+msgstr "Lajittele %ID:n mukaan"
+
+#: ../src/top.ml:1778
+msgid "Sort by TIME"
+msgstr "Lajittele AJAN mukaan"
+
+#: ../src/top.ml:171
+msgid "Start by displaying block devices"
+msgstr "Aloita näyttämällä lohkolaitteet"
+
+#: ../src/top.ml:169
+msgid "Start by displaying network interfaces"
+msgstr "Aloita näyttämällä verkkoliitännät"
+
+#: ../src/top.ml:167
+msgid "Start by displaying pCPUs (default: tasks)"
+msgstr "Aloita näyttämällä pCPU:t (oletus: tehtävät)"
+
+#: ../src/top.ml:67
+msgid "TIME (CPU time)"
+msgstr "TIME (suorittimen aika)"
+
+#: ../src/top.ml:1800
+msgid "Toggle block devices"
+msgstr "Vaihda lohkolaitteet"
+
+#: ../src/top.ml:1799
+msgid "Toggle network interfaces"
+msgstr "Vaihda verkkoliitännät"
+
+#: ../src/top.ml:1798
+msgid "Toggle physical CPUs"
+msgstr "Vaihda fyysiset suorittimet"
+
+#: ../src/top.ml:1515
+msgid "Type key or use up and down cursor keys."
+msgstr "Paina näppäintä tai käytä ylös- ja alas-nuolinäppäimiä."
+
+#: ../src/top.ml:1809
+msgid "Unknown command - try 'h' for help"
+msgstr "Tuntematon komento - kokeile 'h' ohjeet"
+
+#: ../src/top.ml:1763
+msgid "Update display"
+msgstr "Päivitä näyttö"
+
+#: ../src/top.ml:1703
+msgid "Wrote settings to %s"
+msgstr "Kirjoitti asetukset kohteeseen %s"
+
+#: ../src/top.ml:1745
+msgid "default"
+msgstr "Oletus"
+
+#: ../src/top.ml:210
+msgid "dump output to stdout (no userinterface)"
+msgstr "tulosta ulostulo vakiotulosteeseen (ilman käyttöliittymää)"
+
+#: ../src/opt_xml.ml:46
+msgid "get_xml_desc didn't return <domain/>"
+msgstr "get_xml_desc ei palauttanut <domain/>"
+
+#: ../src/top.ml:212
+msgid "show block device load in bytes rather than reqs"
+msgstr "näytä lohkolaitteen kuormitus tavuina mieluummin kuin kyselyinä"
+
+#: ../src/top.ml:1767
+msgid "toggle block info req/bytes"
+msgstr "vaihda lohkotiedot kyselyt/tavut"
+
+#: ../src/top.ml:1725
+msgid "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d by Red Hat"
+msgstr "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d, kirjoittanut Red Hat"
+
+#: ../src/top.ml:218
+msgid "virt-top : a 'top'-like utility for virtualization\n\nSUMMARY\n virt-top [-options]\n\nOPTIONS"
+msgstr ""
+"virt-top: 'top'-tyyppinen apuohjelma virtualisointiin\n"
+"\n"
+"YHTEENVETO\n"
+" virt-top [-optiot]\n"
+"\n"
+"VAIHTOEHDOT"
+
+#: ../src/top.ml:42
+msgid "virt-top was compiled without support for CSV files"
+msgstr "virt-top käännettiin ilman tukea CSV-tiedostoille"
+
+#: ../src/top.ml:53
+msgid "virt-top was compiled without support for dates and times"
+msgstr "virt-top käännettiin ilman tukea päivämäärille ja ajoille"
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+# Julien Humbert <julroy67@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: French <trans-fr@lists.fedoraproject.org>\n"
+"PO-Revision-Date: 2020-08-28 03:29+0000\n"
+"Last-Translator: Julien Humbert <julroy67@gmail.com>\n"
+"Language-Team: French <https://translate.fedoraproject.org/projects/virt-top/"
+"master/fr/>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n > 1)\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.2.1\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
-msgstr ""
+msgstr "# fichier de configuration de %s virt-top\n"
#: ../src/top.ml:1688
msgid "# Enable CSV output to the named file\n"
-msgstr ""
+msgstr "# Activer la sortie en CSV vers le fichier nommé\n"
#: ../src/top.ml:1691
msgid "# To protect this file from being overwritten, uncomment next line\n"
msgstr ""
+"# Pour éviter que ce fichier ne soit écrasé, décommentez la ligne suivante\n"
#: ../src/top.ml:1685
msgid "# To send debug and error messages to a file, uncomment next line\n"
msgstr ""
+"# Pour envoyer des messages de débogage et d’erreur dans un fichier, "
+"décommentez la ligne suivante\n"
#: ../src/top.ml:1671
msgid "# generated on %s by %s\n"
-msgstr ""
+msgstr "# généré le %s par %s\n"
#: ../src/top.ml:65
msgid "%CPU"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
+"%d domaines, %d actifs, %d en exécution, %d au repos, %d en pause, %d "
+"inactifs D : %d O : %d X : %d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
msgstr ""
+"%s : impossible d’analyser « %s » dans le fichier d’initialisation : %s "
+"attendu"
#: ../src/top.ml:240
msgid "%s: could not parse '%s' in init file: expecting a number"
msgstr ""
+"%s : impossible d’analyser « %s » dans le fichier d’initialisation : nombre "
+"attendu"
#: ../src/top.ml:235
msgid "%s: could not parse '%s' in init file: expecting an integer"
msgstr ""
+"%s : impossible d’analyser « %s » dans le fichier d’initialisation : chiffre "
+"attendu"
#: ../src/top.ml:105
msgid "%s: display should be %s"
-msgstr ""
+msgstr "%s : l’affichage devrait être %s"
#: ../src/top.ml:83
msgid "%s: sort order should be: %s"
-msgstr ""
+msgstr "%s : l’ordre de tri devrait être : %s"
#: ../src/top.ml:217
msgid "%s: unknown parameter"
-msgstr ""
+msgstr "%s : paramètre inconnu"
#: ../src/top.ml:269
msgid ""
"%s:%d: configuration item ``%s'' ignored\n"
"%!"
msgstr ""
+"%s : %d : élément de configuration ``%s'' ignoré\n"
+"%!"
#: ../src/top.ml:147
msgid "-d: cannot set a negative delay"
-msgstr ""
+msgstr "-d : impossible de définir un délai négatif"
#: ../src/top.ml:173
msgid "Batch mode"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: sweta <swkothar@redhat.com>\n"
"Language-Team: Gujarati <trans-gu@lists.fedoraproject.org>\n"
"Language: gu\n"
"MIME-Version: 1.0\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d ડોમેઇને, %d સક્રિય, %d ચાલી રહ્યુ છે, %d નિષ્ક્રિય, %d અટકેલ, %d "
-"નિષ્ક્રિય D:%d O:%d X:%d"
+"%d ડોમેઇને, %d સક્રિય, %d ચાલી રહ્યુ છે, %d નિષ્ક્રિય, %d અટકેલ, %d નિષ્ક્રિય D:%d O:%d "
+"X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
-msgstr ""
-"virt-top(1) પુસ્તિકા પાનાંમાં વધારે મદદ. પાછુ લાવવા માટે કોઇપણ કીને દબાવો."
+msgstr "virt-top(1) પુસ્તિકા પાનાંમાં વધારે મદદ. પાછુ લાવવા માટે કોઇપણ કીને દબાવો."
#: ../src/top.ml:294
msgid ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2018-12-08 05:59-0500\n"
-"Last-Translator: Meskó Balázs <meskobalazs@gmail.com>\n"
-"Language-Team: Hungarian (http://www.transifex.com/projects/p/virttop/language/hu/)\n"
+"PO-Revision-Date: 2013-11-20 06:00-0500\n"
+"Last-Translator: Szabo Attila <atekka@gmail.com>\n"
+"Language-Team: Hungarian (http://www.transifex.com/projects/p/virttop/"
+"language/hu/)\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d tartomány, %d aktív, %d fut, %d alszik, %d felfüggesztve, %d inaktív D:%d"
-" O:%d X:%d"
+"%d domének, %d aktív, %d fut, %d alszik, %d felfüggesztve, %d inaktív D:%d O:"
+"%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
msgstr ""
-"További segítség a virt-top(1) man oldalon. Nyomja meg bármelyik billentyűt "
+"További segitség a virt-top(1) man oldalon. Nyomjon meg bármilyen billentyűt "
"a visszatéréshez."
#: ../src/top.ml:294
#: ../src/top.ml:53
msgid "virt-top was compiled without support for dates and times"
-msgstr "A virt-top dátum és idő támogatás nélkül lett fordítva"
+msgstr "A virt-top dátumok és idők nélküli támogatással lett fordítva"
# This file is distributed under the same license as the PACKAGE package.
#
# Translators:
-# Andika Triwidada <andika@gmail.com>, 2014
-# Andika Triwidada <andika@gmail.com>, 2017. #zanata
+# Andika Triwidada <andika@gmail.com>, 2014, 2021.
+# Andika Triwidada <andika@gmail.com>, 2017. #zanata, 2021.
+# Didik Supriadi <didiksupriadi41@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2017-07-24 02:27-0400\n"
-"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
-"Language-Team: Indonesian (http://www.transifex.com/projects/p/virttop/language/id/)\n"
+"PO-Revision-Date: 2021-08-22 11:04+0000\n"
+"Last-Translator: Didik Supriadi <didiksupriadi41@gmail.com>\n"
+"Language-Team: Indonesian <https://translate.fedoraproject.org/projects/"
+"virt-top/master/id/>\n"
"Language: id\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Zanata 4.6.2\n"
+"X-Generator: Weblate 4.8\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
#: ../src/top.ml:1493
msgid "Change delay from %.1f to: "
-msgstr "Ubah tundaan dari %.1f ke:"
+msgstr "Ubah delay dari %.1f ke: "
#: ../src/top.ml:177 ../src/top.ml:175
msgid "Connect to libvirt URI"
#: ../src/top.ml:1745
msgid "default"
-msgstr "baku"
+msgstr "default"
#: ../src/top.ml:210
msgid "dump output to stdout (no userinterface)"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: rjones <rjones@redhat.com>\n"
"Language-Team: Italian <trans-it@lists.fedoraproject.org>\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d domini, %d attivi, %d in esecuzione, %d sospesi, %d in pausa, %d inattivo"
-" D:%d O:%d X:%d"
+"%d domini, %d attivi, %d in esecuzione, %d sospesi, %d in pausa, %d inattivo "
+"D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: htaira <htaira@redhat.com>\n"
"Language-Team: Japanese <None>\n"
"Language: ja\n"
"MIME-Version: 1.0\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"定義済み %d 個, 有効化 %d 個, 稼働中 %d 個, 休止中 %d 個, 停止中 %d 個, 非稼働 %d 個, カウンター D:%d O:%d"
-" X:%d"
+"定義済み %d 個, 有効化 %d 個, 稼働中 %d 個, 休止中 %d 個, 停止中 %d 個, 非稼"
+"働 %d 個, カウンター D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
-msgstr "virt-top(1) man ページには他のヘルプが用意されています。なにかキーを押すと戻ります"
+msgstr ""
+"virt-top(1) man ページには他のヘルプが用意されています。なにかキーを押すと戻"
+"ります"
#: ../src/top.ml:294
msgid ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: Georgian (http://www.transifex.com/projects/p/virttop/language/ka/)\n"
+"PO-Revision-Date: 2013-11-26 03:54-0500\n"
+"Last-Translator: George Machitidze <giomac@gmail.com>\n"
+"Language-Team: Georgian (http://www.transifex.com/projects/p/virttop/"
+"language/ka/)\n"
"Language: ka\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 08:05-0400\n"
+"Last-Translator: shanky <prasad.mvs@gmail.com>\n"
"Language-Team: Kannada <None>\n"
"Language: kn\n"
"MIME-Version: 1.0\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d ಡೊಮೈನ್ಗಳು, %d ಸಕ್ರಿಯ, %d ಚಾಲಿತ, %d ಜಡ, %d ವಿರಮಿಸಿದ, %d ನಿಷ್ಕ್ರಿಯ D:%d "
-"O:%d X:%d"
+"%d ಡೊಮೈನ್ಗಳು, %d ಸಕ್ರಿಯ, %d ಚಾಲಿತ, %d ಜಡ, %d ವಿರಮಿಸಿದ, %d ನಿಷ್ಕ್ರಿಯ D:%d O:%d X:"
+"%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
msgstr ""
-"ಹೆಚ್ಚಿನ ನೆರವು virt-top(1) man ಪುಟದಲ್ಲಿ ಲಭ್ಯವಿದೆ. ಮರಳಲು ಯಾವುದೆ ಕೀಲಿಯನ್ನು "
-"ಒತ್ತಿ."
+"ಹೆಚ್ಚಿನ ನೆರವು virt-top(1) man ಪುಟದಲ್ಲಿ ಲಭ್ಯವಿದೆ. ಮರಳಲು ಯಾವುದೆ ಕೀಲಿಯನ್ನು ಒತ್ತಿ."
#: ../src/top.ml:294
msgid ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: rjones <rjones@redhat.com>\n"
"Language-Team: Malayalam <discuss@lists.smc.org.in>\n"
"Language: ml\n"
"MIME-Version: 1.0\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d ഡൊമേനുകള്, %d സജീവം, %d പ്രവര്ത്തിക്കുന്നു, %d ഉറങ്ങുന്നു, %d "
-"താലàµ\8dâ\80\8dà´\95ാലിà´\95മായി നിരàµ\8dâ\80\8dà´¤àµ\8dതിയിരിà´\95àµ\8dà´\95àµ\81à´¨àµ\8dà´¨àµ\81, %d നിരàµ\8dâ\80\8dà´\9càµ\8dà´\9càµ\80à´µà´\82 D:%d O:%d X:%d"
+"%d ഡൊമേനുകള്, %d സജീവം, %d പ്രവര്ത്തിക്കുന്നു, %d ഉറങ്ങുന്നു, %d താല്കാലികമായി നിര്"
+"ത്തിയിരിക്കുന്നു, %d നിര്ജ്ജീവം D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
#: ../src/top.ml:1737
msgid "Delay: %.1f secs; Batch: %s; Secure: %s; Sort: %s"
-msgstr ""
-"ഡിലേ (കാത്തിരിക്കേണ്ട സമയം) : %.1f secs; ബാച്ച്: %s; സുരക്ഷിതം: %s;ക്രമം: %s"
+msgstr "ഡിലേ (കാത്തിരിക്കേണ്ട സമയം) : %.1f secs; ബാച്ച്: %s; സുരക്ഷിതം: %s;ക്രമം: %s"
#: ../src/top.ml:181
msgid "Disable CPU stats in CSV"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
msgstr ""
-"virt-top(1) man താളില് കൂടുതല് സഹായം. തിരികെ പോകുന്നതിനായി ഏതെങ്കിലും കീ "
-"അമര്ത്തുക."
+"virt-top(1) man താളില് കൂടുതല് സഹായം. തിരികെ പോകുന്നതിനായി ഏതെങ്കിലും കീ അമര്ത്തുക."
#: ../src/top.ml:294
msgid ""
#: ../src/top.ml:1515
msgid "Type key or use up and down cursor keys."
-msgstr ""
-"കീ ടൈപ്പ് ചെയ്യുക അല്ലെങ്കില് മുകളിലേക്കും താഴേക്കുമുള്ള കര്സര് കീകള് "
-"ഉപയോഗിക്കുക"
+msgstr "കീ ടൈപ്പ് ചെയ്യുക അല്ലെങ്കില് മുകളിലേക്കും താഴേക്കുമുള്ള കര്സര് കീകള് ഉപയോഗിക്കുക"
#: ../src/top.ml:1809
msgid "Unknown command - try 'h' for help"
#: ../src/top.ml:42
msgid "virt-top was compiled without support for CSV files"
-msgstr ""
-"CSV ഫയലുകള്ക്കുള്ള പിന്തുണ ലഭ്യമല്ലാതെ virt-top കംപൈല് ചെയ്തിരിക്കുന്നു"
+msgstr "CSV ഫയലുകള്ക്കുള്ള പിന്തുണ ലഭ്യമല്ലാതെ virt-top കംപൈല് ചെയ്തിരിക്കുന്നു"
#: ../src/top.ml:53
msgid "virt-top was compiled without support for dates and times"
-msgstr ""
-"തീയതികള്ക്കും സമയങ്ങള്ക്കുമുള്ള പിന്തുണ ലഭ്യമല്ലാതെ virt-top കംപൈല് "
-"ചെയ്തിരിക്കുന്നു"
+msgstr "തീയതികള്ക്കും സമയങ്ങള്ക്കുമുള്ള പിന്തുണ ലഭ്യമല്ലാതെ virt-top കംപൈല് ചെയ്തിരിക്കുന്നു"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: sandeeps <sshedmak@redhat.com>\n"
"Language-Team: Marathi <None>\n"
"Language: mr\n"
"MIME-Version: 1.0\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d क्षेत्र, %d सक्रीय, %d कार्यरत, %d अकार्यक्षम, %d स्तब्ध, %d निष्क्रीय "
-"D:%d O:%d X:%d"
+"%d क्षेत्र, %d सक्रीय, %d कार्यरत, %d अकार्यक्षम, %d स्तब्ध, %d निष्क्रीय D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+# Geert Warrink <geert.warrink@onsnet.nu>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: Dutch <>\n"
+"PO-Revision-Date: 2021-02-28 15:40+0000\n"
+"Last-Translator: Geert Warrink <geert.warrink@onsnet.nu>\n"
+"Language-Team: Dutch <https://translate.fedoraproject.org/projects/virt-top/"
+"master/nl/>\n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.4.2\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
-msgstr ""
+msgstr "# %s virt-top configuratiebestand\n"
#: ../src/top.ml:1688
msgid "# Enable CSV output to the named file\n"
-msgstr ""
+msgstr "# Schakel CSV-uitvoer naar het genoemde bestand in\n"
#: ../src/top.ml:1691
msgid "# To protect this file from being overwritten, uncomment next line\n"
msgstr ""
+"# Om te voorkomen dat dit bestand wordt overschreven, verwijder je het "
+"commentaar op de volgende regel\n"
#: ../src/top.ml:1685
msgid "# To send debug and error messages to a file, uncomment next line\n"
msgstr ""
+"# Als je foutopsporings- en foutmeldingen naar een bestand wilt sturen, "
+"verwijder je het commentaar op de volgende regel\n"
#: ../src/top.ml:1671
msgid "# generated on %s by %s\n"
-msgstr ""
+msgstr "# gegenereerd op %s door %s\n"
#: ../src/top.ml:65
msgid "%CPU"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d domeinen, %d actief, %d draaiend, %d slapend, %d gepauzeerd, %d inactieve"
-" D:%d O:%d X:%d"
+"%d domeinen, %d actief, %d draaiend, %d slapend, %d gepauzeerd, %d inactieve "
+"D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
-msgstr ""
+msgstr "%s: kon '%s' in init-bestand niet ontleden: verwachtte %s"
#: ../src/top.ml:240
msgid "%s: could not parse '%s' in init file: expecting a number"
-msgstr ""
+msgstr "%s: kon '%s' in init-bestand niet ontleden: verwachtte een getal"
#: ../src/top.ml:235
msgid "%s: could not parse '%s' in init file: expecting an integer"
-msgstr ""
+msgstr "%s: kon '%s' in init-bestand niet ontleden: verwachtte een geheel getal"
#: ../src/top.ml:105
msgid "%s: display should be %s"
"%s:%d: configuration item ``%s'' ignored\n"
"%!"
msgstr ""
+"%s:%d: configuratie-item ``%s'' genegeerd\n"
+"%!"
#: ../src/top.ml:147
msgid "-d: cannot set a negative delay"
#: ../src/top.ml:173
msgid "Batch mode"
-msgstr "Batch mode"
+msgstr "Batch modus"
#: ../src/top.ml:72
msgid "Block read reqs"
#: ../src/top.ml:177 ../src/top.ml:175
msgid "Connect to libvirt URI"
-msgstr ""
+msgstr "Verbinden met libvirt URI"
#: ../src/top.ml:1744
msgid "Connect: %s; Hostname: %s"
#: ../src/top.ml:183
msgid "Disable memory stats in CSV"
-msgstr ""
+msgstr "Zet netwerk stats in CSV uit"
#: ../src/top.ml:187
msgid "Disable net stats in CSV"
msgid ""
"NB: If you want to monitor a local hypervisor, you usually need to be root"
msgstr ""
+"NB: Als je een lokale hypervisor wilt monitoren, moet je meestal root zijn"
#: ../src/top.ml:70
msgid "Net RX bytes"
#: ../src/top.ml:206
msgid "Secure (\"kiosk\") mode"
-msgstr ""
+msgstr "Veilige (\"kiosk\") modus"
#: ../src/top.ml:1780
msgid "Select sort field"
#: ../src/top.ml:210
msgid "dump output to stdout (no userinterface)"
-msgstr ""
+msgstr "dump output naar stdout (geen gebruikersinterface)"
#: ../src/opt_xml.ml:46
msgid "get_xml_desc didn't return <domain/>"
#: ../src/top.ml:212
msgid "show block device load in bytes rather than reqs"
-msgstr ""
+msgstr "toon blokapparaatbelasting in bytes in plaats van reqs"
#: ../src/top.ml:1767
msgid "toggle block info req/bytes"
-msgstr ""
+msgstr "schakel block info req/bytes om"
#: ../src/top.ml:1725
msgid "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d by Red Hat"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: rjones <rjones@redhat.com>\n"
"Language-Team: Oriya <None>\n"
"Language: or\n"
"MIME-Version: 1.0\n"
msgid ""
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
-msgstr ""
-"%d ଡମେନ, %d ସକ୍ରିୟ, %d ଚାଲୁଅଛି, %d ସୁପ୍ତ, %d ସ୍ଥିର, %d ନିଷ୍କ୍ରିୟ D:%d O:%d "
-"X:%d"
+msgstr "%d ଡମେନ, %d ସକ୍ରିୟ, %d ଚାଲୁଅଛି, %d ସୁପ୍ତ, %d ସ୍ଥିର, %d ନିଷ୍କ୍ରିୟ D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
-msgstr ""
-"virt-top(1) man ପୃଷ୍ଠାରେ ଅଧିକ ସହାୟତା। ଫେରିବା ପାଇଁ ଯେକୌଣସି କି କୁ ଦବାନ୍ତୁ।"
+msgstr "virt-top(1) man ପୃଷ୍ଠାରେ ଅଧିକ ସହାୟତା। ଫେରିବା ପାଇଁ ଯେକୌଣସି କି କୁ ଦବାନ୍ତୁ।"
#: ../src/top.ml:294
msgid ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:10-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: Panjabi (Punjabi) (http://www.transifex.com/projects/p/virttop/language/pa/)\n"
+"PO-Revision-Date: 2013-11-20 06:00-0500\n"
+"Last-Translator: A S Alam <apreet.alam@gmail.com>\n"
+"Language-Team: Panjabi (Punjabi) (http://www.transifex.com/projects/p/"
+"virttop/language/pa/)\n"
"Language: pa\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# Piotr Drąg <piotrdrag@gmail.com>, 2015. #zanata
-# Piotr Drąg <piotrdrag@gmail.com>, 2016. #zanata
-# Piotr Drąg <piotrdrag@gmail.com>, 2017. #zanata
+# Piotr Drąg <piotrdrag@gmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2017-03-28 11:13-0400\n"
+"PO-Revision-Date: 2020-08-14 09:54+0000\n"
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
-"Language-Team: Polish <None>\n"
+"Language-Team: Polish <https://translate.fedoraproject.org/projects/virt-top/"
+"master/pl/>\n"
"Language: pl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 4.1.1\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
#: ../src/top.ml:1688
msgid "# Enable CSV output to the named file\n"
-msgstr "# Włącza wyjście CSV do pliku named\n"
+msgstr "# Włącza wyjście CSV do nazwanego pliku\n"
#: ../src/top.ml:1691
msgid "# To protect this file from being overwritten, uncomment next line\n"
msgstr ""
-"# Aby ochronić ten plik przed zastąpieniem, należy usunąć komentarz "
-"z następnego wiersza\n"
+"# Aby ochronić ten plik przed zastąpieniem, należy usunąć komentarz z "
+"następnego wiersza\n"
#: ../src/top.ml:1685
msgid "# To send debug and error messages to a file, uncomment next line\n"
#: ../src/top.ml:189
msgid "Delay time interval (seconds)"
-msgstr "Czas między opóźnieniami (sekundy)"
+msgstr "Czas między opóźnieniami (w sekundach)"
#: ../src/top.ml:1737
msgid "Delay: %.1f secs; Batch: %s; Secure: %s; Sort: %s"
#: ../src/top.ml:193
msgid "Exit at given time"
-msgstr "Kończy pracę o podanym czasie"
+msgstr "Kończy działanie o podanym czasie"
#: ../src/top.ml:1766
msgid "Help"
#: ../src/top.ml:1506
msgid "Not a valid number"
-msgstr "Nie jest prawidłowym numerem"
+msgstr "Nie jest prawidłową liczbą"
#: ../src/top.ml:201
msgid "Number of iterations to run"
#: ../src/top.ml:208
msgid "Run from a script (no user interface)"
-msgstr "Uruchamia ze skryptu (brak interfejsu użytkownika)"
+msgstr "Uruchamia ze skryptu (bez interfejsu użytkownika)"
#: ../src/top.ml:1771
msgid "SORTING"
#: ../src/top.ml:210
msgid "dump output to stdout (no userinterface)"
-msgstr ""
-"wyświetla wyjście na standardowym wyjściu (bez interfejsu użytkownika)"
+msgstr "wyświetla wyjście na standardowym wyjściu (bez interfejsu użytkownika)"
#: ../src/opt_xml.ml:46
msgid "get_xml_desc didn't return <domain/>"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:11-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: rjones <rjones@redhat.com>\n"
"Language-Team: Portuguese <trans-pt@lists.fedoraproject.org>\n"
"Language: pt\n"
"MIME-Version: 1.0\n"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2016-03-21 09:49-0400\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: Taylon <taylon@taylon.eti.br>\n"
"Language-Team: Portuguese (Brazilian) <trans-pt_br@lists.fedoraproject.org>\n"
-"Language: pt_BR\n"
+"Language: pt-BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:11-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: rjones <rjones@redhat.com>\n"
"Language-Team: Russian <trans-ru@lists.fedoraproject.org>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
+"X-Generator: Zanata 3.5.1\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d домен(ов), %d активно, %d запущено, %d простаивает, %d приостановлено, %d"
-" не активно D:%d O:%d X:%d"
+"%d домен(ов), %d активно, %d запущено, %d простаивает, %d приостановлено, %d "
+"не активно D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Hela Basa <r45xveza@pm.me>, 2021.
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-03-27 11:32+0000\n"
+"PO-Revision-Date: 2021-08-19 07:04+0000\n"
+"Last-Translator: Hela Basa <r45xveza@pm.me>\n"
+"Language-Team: Sinhala <https://translate.fedoraproject.org/projects/"
+"virt-top/master/si/>\n"
+"Language: si\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.7.2\n"
+
+#: ../src/top.ml:1670
+msgid "# %s virt-top configuration file\n"
+msgstr ""
+
+#: ../src/top.ml:1688
+msgid "# Enable CSV output to the named file\n"
+msgstr ""
+
+#: ../src/top.ml:1691
+msgid "# To protect this file from being overwritten, uncomment next line\n"
+msgstr ""
+
+#: ../src/top.ml:1685
+msgid "# To send debug and error messages to a file, uncomment next line\n"
+msgstr ""
+
+#: ../src/top.ml:1671
+msgid "# generated on %s by %s\n"
+msgstr ""
+
+#: ../src/top.ml:65
+msgid "%CPU"
+msgstr ""
+
+#: ../src/top.ml:66
+msgid "%MEM"
+msgstr ""
+
+#: ../src/top.ml:1237
+msgid "%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d O:%d X:%d"
+msgstr ""
+
+#: ../src/top.ml:245
+msgid "%s: could not parse '%s' in init file: expecting %s"
+msgstr ""
+
+#: ../src/top.ml:240
+msgid "%s: could not parse '%s' in init file: expecting a number"
+msgstr ""
+
+#: ../src/top.ml:235
+msgid "%s: could not parse '%s' in init file: expecting an integer"
+msgstr ""
+
+#: ../src/top.ml:105
+msgid "%s: display should be %s"
+msgstr ""
+
+#: ../src/top.ml:83
+msgid "%s: sort order should be: %s"
+msgstr ""
+
+#: ../src/top.ml:217
+msgid "%s: unknown parameter"
+msgstr ""
+
+#: ../src/top.ml:269
+msgid "%s:%d: configuration item ``%s'' ignored\n%!"
+msgstr ""
+
+#: ../src/top.ml:147
+msgid "-d: cannot set a negative delay"
+msgstr ""
+
+#: ../src/top.ml:173
+msgid "Batch mode"
+msgstr ""
+
+#: ../src/top.ml:72
+msgid "Block read reqs"
+msgstr ""
+
+#: ../src/top.ml:73
+msgid "Block write reqs"
+msgstr ""
+
+#: ../src/top.ml:1244
+msgid "CPU: %2.1f%% Mem: %Ld MB (%Ld MB by guests)"
+msgstr ""
+
+#: ../src/top.ml:1493
+msgid "Change delay from %.1f to: "
+msgstr ""
+
+#: ../src/top.ml:177 ../src/top.ml:175
+msgid "Connect to libvirt URI"
+msgstr ""
+
+#: ../src/top.ml:1744
+msgid "Connect: %s; Hostname: %s"
+msgstr ""
+
+#: ../src/top.ml:1783
+msgid "DISPLAY MODES"
+msgstr ""
+
+#: ../src/top.ml:1500
+msgid "Delay must be > 0"
+msgstr ""
+
+#: ../src/top.ml:189
+msgid "Delay time interval (seconds)"
+msgstr ""
+
+#: ../src/top.ml:1737
+msgid "Delay: %.1f secs; Batch: %s; Secure: %s; Sort: %s"
+msgstr ""
+
+#: ../src/top.ml:181
+msgid "Disable CPU stats in CSV"
+msgstr ""
+
+#: ../src/top.ml:185
+msgid "Disable block device stats in CSV"
+msgstr ""
+
+#: ../src/top.ml:183
+msgid "Disable memory stats in CSV"
+msgstr ""
+
+#: ../src/top.ml:187
+msgid "Disable net stats in CSV"
+msgstr ""
+
+#: ../src/top.ml:214
+msgid "Display version number and exit"
+msgstr ""
+
+#: ../src/top.ml:199
+msgid "Do not read init file"
+msgstr ""
+
+#: ../src/top.ml:68
+msgid "Domain ID"
+msgstr ""
+
+#: ../src/top.ml:69
+msgid "Domain name"
+msgstr ""
+
+#: ../src/top.ml:1797
+msgid "Domains display"
+msgstr ""
+
+#: ../src/main.ml:69 ../src/main.ml:44 ../src/top.ml:1711 ../src/top.ml:1708
+msgid "Error"
+msgstr ""
+
+#: ../src/top.ml:193
+msgid "Exit at given time"
+msgstr ""
+
+#: ../src/top.ml:1766
+msgid "Help"
+msgstr ""
+
+#: ../src/top.ml:195
+msgid "Historical CPU delay"
+msgstr ""
+
+#: ../src/top.ml:179
+msgid "Log statistics to CSV file"
+msgstr ""
+
+#: ../src/top.ml:1749
+msgid "MAIN KEYS"
+msgstr ""
+
+#: ../src/top.ml:1804
+msgid "More help in virt-top(1) man page. Press any key to return."
+msgstr ""
+
+#: ../src/top.ml:294
+msgid "NB: If you want to monitor a local hypervisor, you usually need to be root"
+msgstr ""
+
+#: ../src/top.ml:70
+msgid "Net RX bytes"
+msgstr ""
+
+#: ../src/top.ml:71
+msgid "Net TX bytes"
+msgstr ""
+
+#: ../src/top.ml:1506
+msgid "Not a valid number"
+msgstr ""
+
+#: ../src/top.ml:201
+msgid "Number of iterations to run"
+msgstr ""
+
+#: ../src/top.ml:1740 ../src/top.ml:1739
+msgid "Off"
+msgstr ""
+
+#: ../src/top.ml:1740 ../src/top.ml:1739
+msgid "On"
+msgstr ""
+
+#: ../src/top.ml:1764
+msgid "Quit"
+msgstr ""
+
+#: ../src/top.ml:208
+msgid "Run from a script (no user interface)"
+msgstr ""
+
+#: ../src/top.ml:1771
+msgid "SORTING"
+msgstr ""
+
+#: ../src/top.ml:206
+msgid "Secure (\"kiosk\") mode"
+msgstr ""
+
+#: ../src/top.ml:1780
+msgid "Select sort field"
+msgstr ""
+
+#: ../src/top.ml:191
+msgid "Send debug messages to file"
+msgstr ""
+
+#: ../src/top.ml:197
+msgid "Set name of init file"
+msgstr ""
+
+#: ../src/top.ml:203
+msgid "Set sort order (%s)"
+msgstr ""
+
+#: ../src/top.ml:1514
+msgid "Set sort order for main display"
+msgstr ""
+
+#: ../src/top.ml:1765
+msgid "Set update interval"
+msgstr ""
+
+#: ../src/top.ml:1776
+msgid "Sort by %CPU"
+msgstr ""
+
+#: ../src/top.ml:1777
+msgid "Sort by %MEM"
+msgstr ""
+
+#: ../src/top.ml:1779
+msgid "Sort by ID"
+msgstr ""
+
+#: ../src/top.ml:1778
+msgid "Sort by TIME"
+msgstr ""
+
+#: ../src/top.ml:171
+msgid "Start by displaying block devices"
+msgstr ""
+
+#: ../src/top.ml:169
+msgid "Start by displaying network interfaces"
+msgstr ""
+
+#: ../src/top.ml:167
+msgid "Start by displaying pCPUs (default: tasks)"
+msgstr ""
+
+#: ../src/top.ml:67
+msgid "TIME (CPU time)"
+msgstr ""
+
+#: ../src/top.ml:1800
+msgid "Toggle block devices"
+msgstr ""
+
+#: ../src/top.ml:1799
+msgid "Toggle network interfaces"
+msgstr ""
+
+#: ../src/top.ml:1798
+msgid "Toggle physical CPUs"
+msgstr ""
+
+#: ../src/top.ml:1515
+msgid "Type key or use up and down cursor keys."
+msgstr ""
+
+#: ../src/top.ml:1809
+msgid "Unknown command - try 'h' for help"
+msgstr ""
+
+#: ../src/top.ml:1763
+msgid "Update display"
+msgstr ""
+
+#: ../src/top.ml:1703
+msgid "Wrote settings to %s"
+msgstr ""
+
+#: ../src/top.ml:1745
+msgid "default"
+msgstr "පෙරනිමි"
+
+#: ../src/top.ml:210
+msgid "dump output to stdout (no userinterface)"
+msgstr ""
+
+#: ../src/opt_xml.ml:46
+msgid "get_xml_desc didn't return <domain/>"
+msgstr ""
+
+#: ../src/top.ml:212
+msgid "show block device load in bytes rather than reqs"
+msgstr ""
+
+#: ../src/top.ml:1767
+msgid "toggle block info req/bytes"
+msgstr ""
+
+#: ../src/top.ml:1725
+msgid "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d by Red Hat"
+msgstr ""
+
+#: ../src/top.ml:218
+msgid "virt-top : a 'top'-like utility for virtualization\n\nSUMMARY\n virt-top [-options]\n\nOPTIONS"
+msgstr ""
+
+#: ../src/top.ml:42
+msgid "virt-top was compiled without support for CSV files"
+msgstr ""
+
+#: ../src/top.ml:53
+msgid "virt-top was compiled without support for dates and times"
+msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:11-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: Serbian (http://www.transifex.com/projects/p/virttop/language/sr/)\n"
+"PO-Revision-Date: 2015-01-28 01:55-0500\n"
+"Last-Translator: Momcilo Medic <medicmomcilo@gmail.com>\n"
+"Language-Team: Serbian (http://www.transifex.com/projects/p/virttop/language/"
+"sr/)\n"
"Language: sr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Zanata 3.5.1\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-#
-# Translators:
-# Göran Uddeborg <goeran@uddeborg.se>, 2012
-# Göran Uddeborg <goeran@uddeborg.se>, 2018. #zanata
+# Göran Uddeborg <goeran@uddeborg.se>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2018-05-18 04:17-0400\n"
+"PO-Revision-Date: 2020-08-21 17:29+0000\n"
"Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
-"Language-Team: Swedish (http://www.transifex.com/projects/p/virttop/language/sv/)\n"
+"Language-Team: Swedish <https://translate.fedoraproject.org/projects/"
+"virt-top/master/sv/>\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.1.1\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
-msgstr "# konfigurationsfilen %s för virt-top\n"
+msgstr "# %s virt-top konfigurationsfil\n"
#: ../src/top.ml:1688
msgid "# Enable CSV output to the named file\n"
-msgstr "# Aktivera CSV-utmatning till den namngivna filen\n"
+msgstr "# Aktivera CSV-utdata för den namngivna filen\n"
#: ../src/top.ml:1691
msgid "# To protect this file from being overwritten, uncomment next line\n"
msgstr ""
-"# För att skydda denna fil från att skrivas över, avkommentera nästa rad\n"
+"# För att skydda denna fil från att skrivas över, kommentera bort nästa rad\n"
#: ../src/top.ml:1685
msgid "# To send debug and error messages to a file, uncomment next line\n"
msgstr ""
-"# För att skicka felsöknings- och felmeddelanden till en fil, avkommentera "
-"nästa rad\n"
+"# För att skicka felsökningsinformation och felmeddelanden till en fil, "
+"avkommentera nästa rad\n"
#: ../src/top.ml:1671
msgid "# generated on %s by %s\n"
-msgstr "# genererad %s av %s\n"
+msgstr "# genererad på %s av %s\n"
#: ../src/top.ml:65
msgid "%CPU"
#: ../src/top.ml:177 ../src/top.ml:175
msgid "Connect to libvirt URI"
-msgstr "Anslut till en libvirt-URI"
+msgstr "Anslut till libvirt-URI"
#: ../src/top.ml:1744
msgid "Connect: %s; Hostname: %s"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
msgstr ""
-"Mer hjälp i manualsidan virt-top(1). Tryck en tangent för att återvända."
+"Mer hjälp i manualsidan virt-top(1). Tryck en tangent för att återvända."
#: ../src/top.ml:294
msgid ""
"NB: If you want to monitor a local hypervisor, you usually need to be root"
msgstr ""
-"OBS: Om du vill övervaka en lokal hypervisor behöver du normalt vara root"
+"OBS: om du vill övervaka en lokal hypervisor behöver du vanligen vara root"
#: ../src/top.ml:70
msgid "Net RX bytes"
#: ../src/top.ml:206
msgid "Secure (\"kiosk\") mode"
-msgstr "Säkert (”kiosk”-)läge"
+msgstr "Säkert (”kiosk-”)läge"
#: ../src/top.ml:1780
msgid "Select sort field"
#: ../src/top.ml:210
msgid "dump output to stdout (no userinterface)"
-msgstr "dumpa utdata till standard ut (inget användargränssnitt)"
+msgstr "skicka utdata till standard ut (inget användargränssnitt)"
#: ../src/opt_xml.ml:46
msgid "get_xml_desc didn't return <domain/>"
#: ../src/top.ml:212
msgid "show block device load in bytes rather than reqs"
-msgstr "visa blockenhetslasten i byte istället för begäranden"
+msgstr "visa blockenhetslasten i byte snarare än begäranden"
#: ../src/top.ml:1767
msgid "toggle block info req/bytes"
-msgstr "växla blockinfobegäranden/-byte"
+msgstr "växla blockinformation begäranden/byte"
#: ../src/top.ml:1725
msgid "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d by Red Hat"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:11-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: rjones <rjones@redhat.com>\n"
"Language-Team: Telugu <>\n"
"Language: te\n"
"MIME-Version: 1.0\n"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
-"%d డొమైన్లు, %d క్రియాశీల, %d నడుస్తున్నవి, %d స్లీపింగ్, %d నిలిపివున్నవి, "
-"%d క్రియాహీన D:%d O:%d X:%d"
+"%d డొమైన్లు, %d క్రియాశీల, %d నడుస్తున్నవి, %d స్లీపింగ్, %d నిలిపివున్నవి, %d క్రియాహీన D:%d O:%d "
+"X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
-msgstr ""
-"virt-top(1) man పేజీ నందు మరింత సహాయం. తిరిగివచ్చుటకు యేదేని కీను వత్తుము."
+msgstr "virt-top(1) man పేజీ నందు మరింత సహాయం. తిరిగివచ్చుటకు యేదేని కీను వత్తుము."
#: ../src/top.ml:294
msgid ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:11-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: Tajik (http://www.transifex.com/projects/p/virttop/language/tg/)\n"
+"PO-Revision-Date: 2013-11-20 06:00-0500\n"
+"Last-Translator: Victor Ibragimov <victor.ibragimov@gmail.com>\n"
+"Language-Team: Tajik (http://www.transifex.com/projects/p/virttop/language/"
+"tg/)\n"
"Language: tg\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-#
-# Translators:
-# Necdet Yücel <necdetyucel@gmail.com>, 2012
+# Oğuz Ersen <oguzersen@protonmail.com>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:11-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: Turkish (http://www.transifex.com/projects/p/virttop/language/tr/)\n"
+"PO-Revision-Date: 2020-08-15 18:29+0000\n"
+"Last-Translator: Oğuz Ersen <oguzersen@protonmail.com>\n"
+"Language-Team: Turkish <https://translate.fedoraproject.org/projects/"
+"virt-top/master/tr/>\n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=2; plural=(n>1);\n"
+"X-Generator: Weblate 4.1.1\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
-msgstr ""
+msgstr "# %s virt-top yapılandırma dosyası\n"
#: ../src/top.ml:1688
msgid "# Enable CSV output to the named file\n"
-msgstr ""
+msgstr "# Belirtilen dosyaya CSV çıktısını etkinleştirin\n"
#: ../src/top.ml:1691
msgid "# To protect this file from being overwritten, uncomment next line\n"
msgstr ""
+"# Bu dosyanın üzerine yazılmasını önlemek için sonraki satırın yorumunu "
+"kaldırın\n"
#: ../src/top.ml:1685
msgid "# To send debug and error messages to a file, uncomment next line\n"
msgstr ""
+"# Hata ayıklama ve hata mesajlarını bir dosyaya göndermek için sonraki "
+"satırın yorumunu kaldırın\n"
#: ../src/top.ml:1671
msgid "# generated on %s by %s\n"
-msgstr ""
+msgstr "# %s tarihinde %s tarafından oluşturuldu\n"
#: ../src/top.ml:65
msgid "%CPU"
"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
"O:%d X:%d"
msgstr ""
+"%d etki alanı, %d etkin, %d çalışıyor, %d uykuda, %d duraklatıldı, %d etkin "
+"değil D:%d O:%d X:%d"
#: ../src/top.ml:245
msgid "%s: could not parse '%s' in init file: expecting %s"
-msgstr ""
+msgstr "%s: başlatma dosyasında '%s' ayrıştırılamadı: %s bekleniyor"
#: ../src/top.ml:240
msgid "%s: could not parse '%s' in init file: expecting a number"
-msgstr ""
+msgstr "%s: başlatma dosyasında '%s' ayrıştırılamadı: bir sayı bekleniyor"
#: ../src/top.ml:235
msgid "%s: could not parse '%s' in init file: expecting an integer"
-msgstr ""
+msgstr "%s: başlatma dosyasında '%s' ayrıştırılamadı: bir tam sayı bekleniyor"
#: ../src/top.ml:105
msgid "%s: display should be %s"
-msgstr ""
+msgstr "%s: ekran %s olmalıdır"
#: ../src/top.ml:83
msgid "%s: sort order should be: %s"
-msgstr ""
+msgstr "%s: sıralama düzeni %s olmalıdır"
#: ../src/top.ml:217
msgid "%s: unknown parameter"
"%s:%d: configuration item ``%s'' ignored\n"
"%!"
msgstr ""
+"%s:%d: yapılandırma ögesi ``%s'' yok sayıldı\n"
+"%!"
#: ../src/top.ml:147
msgid "-d: cannot set a negative delay"
-msgstr ""
+msgstr "-d: negatif bir gecikme ayarlanamaz"
#: ../src/top.ml:173
msgid "Batch mode"
-msgstr ""
+msgstr "Toplu işlem modu"
#: ../src/top.ml:72
msgid "Block read reqs"
-msgstr ""
+msgstr "Blok okuma istekleri"
#: ../src/top.ml:73
msgid "Block write reqs"
-msgstr ""
+msgstr "Blok yazma istekleri"
#: ../src/top.ml:1244
msgid "CPU: %2.1f%% Mem: %Ld MB (%Ld MB by guests)"
-msgstr ""
+msgstr "CPU: %%%2.1f Bellek: %Ld MB (%Ld MB konuklar tarafından)"
#: ../src/top.ml:1493
msgid "Change delay from %.1f to: "
-msgstr ""
+msgstr "Gecikmeyi %.1f'den şuna değiştir: "
#: ../src/top.ml:177 ../src/top.ml:175
msgid "Connect to libvirt URI"
-msgstr ""
+msgstr "libvirt URI'ye bağlan"
#: ../src/top.ml:1744
msgid "Connect: %s; Hostname: %s"
-msgstr ""
+msgstr "Bağlan: %s; Ana makine adı: %s"
#: ../src/top.ml:1783
msgid "DISPLAY MODES"
-msgstr ""
+msgstr "EKRAN MODLARI"
#: ../src/top.ml:1500
msgid "Delay must be > 0"
-msgstr "Gecikme > 0 olmalı"
+msgstr "Gecikme sıfırdan büyük olmalıdır"
#: ../src/top.ml:189
msgid "Delay time interval (seconds)"
-msgstr ""
+msgstr "Gecikme süresi aralığı (saniye)"
#: ../src/top.ml:1737
msgid "Delay: %.1f secs; Batch: %s; Secure: %s; Sort: %s"
-msgstr ""
+msgstr "Gecikme: %.1f secs; Toplu: %s; Güvenli: %s; Sıralama: %s"
#: ../src/top.ml:181
msgid "Disable CPU stats in CSV"
-msgstr ""
+msgstr "CSV'de CPU istatistiklerini devre dışı bırak"
#: ../src/top.ml:185
msgid "Disable block device stats in CSV"
-msgstr ""
+msgstr "CSV'de blok aygıtı istatistiklerini devre dışı bırak"
#: ../src/top.ml:183
msgid "Disable memory stats in CSV"
-msgstr ""
+msgstr "CSV'de bellek istatistiklerini devre dışı bırak"
#: ../src/top.ml:187
msgid "Disable net stats in CSV"
-msgstr ""
+msgstr "CSV'de ağ istatistiklerini devre dışı bırak"
#: ../src/top.ml:214
msgid "Display version number and exit"
-msgstr ""
+msgstr "Sürüm numarasını görüntüle ve çık"
#: ../src/top.ml:199
msgid "Do not read init file"
-msgstr ""
+msgstr "Başlatma dosyasını okuma"
#: ../src/top.ml:68
msgid "Domain ID"
-msgstr "Alan ID"
+msgstr "Etki alanı kimliği"
#: ../src/top.ml:69
msgid "Domain name"
-msgstr "Alan adı"
+msgstr "Etki alanı adı"
#: ../src/top.ml:1797
msgid "Domains display"
-msgstr ""
+msgstr "Etki alanları ekranı"
#: ../src/main.ml:69 ../src/main.ml:44 ../src/top.ml:1711 ../src/top.ml:1708
msgid "Error"
#: ../src/top.ml:193
msgid "Exit at given time"
-msgstr ""
+msgstr "Belirtilen zamanda çık"
#: ../src/top.ml:1766
msgid "Help"
#: ../src/top.ml:195
msgid "Historical CPU delay"
-msgstr ""
+msgstr "Geçmiş CPU gecikmesi"
#: ../src/top.ml:179
msgid "Log statistics to CSV file"
-msgstr ""
+msgstr "İstatistikleri CSV dosyasına kaydet"
#: ../src/top.ml:1749
msgid "MAIN KEYS"
-msgstr ""
+msgstr "BAŞLICA TUŞLAR"
#: ../src/top.ml:1804
msgid "More help in virt-top(1) man page. Press any key to return."
msgstr ""
+"Daha fazla yardım için virt-top(1) kılavuz sayfasına bakın. Geri dönmek için "
+"herhangi bir tuşa basın."
#: ../src/top.ml:294
msgid ""
"NB: If you want to monitor a local hypervisor, you usually need to be root"
msgstr ""
+"NB: Yerel bir hipervizörü izlemek istiyorsanız, genellikle root olmanız "
+"gerekir"
#: ../src/top.ml:70
msgid "Net RX bytes"
-msgstr ""
+msgstr "Ağdan alınan (RX) bayt"
#: ../src/top.ml:71
msgid "Net TX bytes"
-msgstr ""
+msgstr "Ağdan gönderilen (TX) bayt"
#: ../src/top.ml:1506
msgid "Not a valid number"
-msgstr ""
+msgstr "Geçerli bir numara değil"
#: ../src/top.ml:201
msgid "Number of iterations to run"
-msgstr ""
+msgstr "Çalıştırılacak yineleme sayısı"
#: ../src/top.ml:1740 ../src/top.ml:1739
msgid "Off"
#: ../src/top.ml:208
msgid "Run from a script (no user interface)"
-msgstr "Betikten çalıştır (arayüz olmadan)"
+msgstr "Betikten çalıştır (kullanıcı arayüzü olmadan)"
#: ../src/top.ml:1771
msgid "SORTING"
#: ../src/top.ml:206
msgid "Secure (\"kiosk\") mode"
-msgstr ""
+msgstr "Güvenli (\"kiosk\") mod"
#: ../src/top.ml:1780
msgid "Select sort field"
-msgstr ""
+msgstr "Sıralama ölçütünü seç"
#: ../src/top.ml:191
msgid "Send debug messages to file"
-msgstr ""
+msgstr "Hata ayıklama mesajlarını dosyaya gönder"
#: ../src/top.ml:197
msgid "Set name of init file"
-msgstr ""
+msgstr "Başlatma dosyasının adını ayarla"
#: ../src/top.ml:203
msgid "Set sort order (%s)"
-msgstr ""
+msgstr "Sıralama düzenini ayarla (%s)"
#: ../src/top.ml:1514
msgid "Set sort order for main display"
-msgstr ""
+msgstr "Ana ekran için sıralama düzenini ayarla"
#: ../src/top.ml:1765
msgid "Set update interval"
-msgstr ""
+msgstr "Güncelleme aralığını ayarla"
#: ../src/top.ml:1776
msgid "Sort by %CPU"
#: ../src/top.ml:1777
msgid "Sort by %MEM"
-msgstr ""
+msgstr "%MEM'e göre sırala"
#: ../src/top.ml:1779
msgid "Sort by ID"
#: ../src/top.ml:171
msgid "Start by displaying block devices"
-msgstr ""
+msgstr "Blok aygıtlarını görüntüleyerek başla"
#: ../src/top.ml:169
msgid "Start by displaying network interfaces"
-msgstr ""
+msgstr "Ağ arayüzlerini görüntüleyerek başla"
#: ../src/top.ml:167
msgid "Start by displaying pCPUs (default: tasks)"
-msgstr ""
+msgstr "Fiziksel CPU'ları görüntüleyerek başla (öntanımlı: görevler)"
#: ../src/top.ml:67
msgid "TIME (CPU time)"
#: ../src/top.ml:1800
msgid "Toggle block devices"
-msgstr ""
+msgstr "Blok aygıtlarını aç/kapat"
#: ../src/top.ml:1799
msgid "Toggle network interfaces"
-msgstr ""
+msgstr "Ağ arayüzlerini aç/kapat"
#: ../src/top.ml:1798
msgid "Toggle physical CPUs"
-msgstr ""
+msgstr "Fiziksel CPU'ları aç/kapat"
#: ../src/top.ml:1515
msgid "Type key or use up and down cursor keys."
-msgstr ""
+msgstr "Bir tuşa basın veya yukarı ve aşağı imleç tuşlarını kullanın."
#: ../src/top.ml:1809
msgid "Unknown command - try 'h' for help"
-msgstr ""
+msgstr "Bilinmeyen komut - yardım için 'h' deneyin"
#: ../src/top.ml:1763
msgid "Update display"
-msgstr ""
+msgstr "Ekranı güncelle"
#: ../src/top.ml:1703
msgid "Wrote settings to %s"
-msgstr ""
+msgstr "Ayarlar %s dosyasına yazıldı"
#: ../src/top.ml:1745
msgid "default"
#: ../src/top.ml:210
msgid "dump output to stdout (no userinterface)"
-msgstr ""
+msgstr "çıktıyı standart çıkışa yazdır (kullanıcı arayüzü yok)"
#: ../src/opt_xml.ml:46
msgid "get_xml_desc didn't return <domain/>"
-msgstr ""
+msgstr "get_xml_desc <domain/> döndürmedi"
#: ../src/top.ml:212
msgid "show block device load in bytes rather than reqs"
-msgstr ""
+msgstr "blok aygıtı yükünü istekler yerine bayt cinsinden göster"
#: ../src/top.ml:1767
msgid "toggle block info req/bytes"
-msgstr ""
+msgstr "blok istek/bayt bilgilerini aç/kapat"
#: ../src/top.ml:1725
msgid "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d by Red Hat"
-msgstr ""
+msgstr "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d Red Hat tarafından"
#: ../src/top.ml:218
msgid ""
"\n"
"OPTIONS"
msgstr ""
+"virt-top : sanallaştırma için 'top' benzeri bir araç\n"
+"\n"
+"ÖZET\n"
+" virt-top [-seçenekler]\n"
+"\n"
+"SEÇENEKLER"
#: ../src/top.ml:42
msgid "virt-top was compiled without support for CSV files"
-msgstr ""
+msgstr "virt-top, CSV dosyaları desteği olmadan derlendi"
#: ../src/top.ml:53
msgid "virt-top was compiled without support for dates and times"
-msgstr ""
+msgstr "virt-top, tarih ve saat desteği olmadan derlendi"
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# Yuri Chornoivan <yurchor@ukr.net>, 2017. #zanata
+# Yuri Chornoivan <yurchor@ukr.net>, 2020.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2017-03-29 12:23-0400\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
-"Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n"
+"PO-Revision-Date: 2020-08-23 18:29+0000\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Ukrainian <https://translate.fedoraproject.org/projects/"
+"virt-top/master/uk/>\n"
"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n"
-"X-Generator: Zanata 4.6.2\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 4.2.1\n"
#: ../src/top.ml:1670
msgid "# %s virt-top configuration file\n"
-msgstr "# Файл налаштувань %s virt-top\n"
+msgstr "# Файл налаштувань virt-top %s\n"
#: ../src/top.ml:1688
msgid "# Enable CSV output to the named file\n"
-msgstr "# Увімкнути виведення CSV до вказаного файла\n"
+msgstr "# Увімкнути виведення CSV до файла, який вказано за назвою\n"
#: ../src/top.ml:1691
msgid "# To protect this file from being overwritten, uncomment next line\n"
-msgstr "# Щоб захистити файл від перезапису, розкоментуйте наступний рядок\n"
+msgstr ""
+"# Щоб захистити цей файл від перезапису, розкоментуйте наступний рядок\n"
#: ../src/top.ml:1685
msgid "# To send debug and error messages to a file, uncomment next line\n"
msgstr ""
-"# Щоб надіслати діагностичні повідомлення та повідомлення про помилки до "
+"# Щоб надіслати діагностичні повідомлення або повідомлення про помилки до "
"файла, розкоментуйте наступний рядок\n"
#: ../src/top.ml:1671
msgid "# generated on %s by %s\n"
-msgstr "# створено %s, %s\n"
+msgstr "# створено %s за допомогою %s\n"
#: ../src/top.ml:65
msgid "%CPU"
#: ../src/top.ml:240
msgid "%s: could not parse '%s' in init file: expecting a number"
-msgstr "%s: не вдалося обробити «%s» у файлі ініціалізації: мало бути число"
+msgstr ""
+"%s: не вдалося обробити «%s» у файлі ініціалізації: мало бути вказано число"
#: ../src/top.ml:235
msgid "%s: could not parse '%s' in init file: expecting an integer"
#: ../src/top.ml:177 ../src/top.ml:175
msgid "Connect to libvirt URI"
-msgstr "З’єднатися із адресою libvirt"
+msgstr "З'єднатися із адресою libvirt"
#: ../src/top.ml:1744
msgid "Connect: %s; Hostname: %s"
#: ../src/top.ml:183
msgid "Disable memory stats in CSV"
-msgstr "Вимкнути статистичні дані щодо пам’яті у CSV"
+msgstr "Вимкнути статистику щодо пам'яті у CSV"
#: ../src/top.ml:187
msgid "Disable net stats in CSV"
msgid ""
"NB: If you want to monitor a local hypervisor, you usually need to be root"
msgstr ""
-"Ð\97аÑ\83важеннÑ\8f: Ñ\8fкÑ\89о ви Ñ\85оÑ\87еÑ\82е Ñ\81поÑ\81Ñ\82еÑ\80Ñ\96гаÑ\82и за локалÑ\8cним гÑ\96пеÑ\80вÑ\96зоÑ\80ом, зазвиÑ\87ай,"
-" вам знадобляться права користувача root"
+"Увага! ЯкÑ\89о ви Ñ\85оÑ\87еÑ\82е Ñ\81поÑ\81Ñ\82еÑ\80Ñ\96гаÑ\82и за локалÑ\8cним гÑ\96пеÑ\80вÑ\96зоÑ\80ом, вам, зазвиÑ\87ай, "
+"знадобляться права доступу root"
#: ../src/top.ml:70
msgid "Net RX bytes"
#: ../src/top.ml:210
msgid "dump output to stdout (no userinterface)"
-msgstr "вивеÑ\81Ñ\82и данÑ\96 до stdout (без інтерфейсу користувача)"
+msgstr "вивеÑ\81Ñ\82и дамп до stdout (без інтерфейсу користувача)"
#: ../src/opt_xml.ml:46
msgid "get_xml_desc didn't return <domain/>"
#: ../src/top.ml:1767
msgid "toggle block info req/bytes"
-msgstr "перемкнути режим даних щодо блокового пристрою: запити/байти"
+msgstr "перемкнути режим даних щодо блокового пристрою — запити/байти"
#: ../src/top.ml:1725
msgid "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d by Red Hat"
# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR Red Hat Inc.
+# This file is distributed under the same license as the virt-top package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-03-27 11:32+0000\n"
+"Project-Id-Version: virt-top 1.1.1\n"
+"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
+"component=libguestfs&product=Virtualization+Tools\n"
+"POT-Creation-Date: 2021-11-03 20:20+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-#: ../src/top.ml:1670
+#: src/top.ml:581
msgid "# %s virt-top configuration file\n"
msgstr ""
-#: ../src/top.ml:1688
+#: src/top.ml:599
msgid "# Enable CSV output to the named file\n"
msgstr ""
-#: ../src/top.ml:1691
+#: src/top.ml:602
msgid "# To protect this file from being overwritten, uncomment next line\n"
msgstr ""
-#: ../src/top.ml:1685
+#: src/top.ml:596
msgid "# To send debug and error messages to a file, uncomment next line\n"
msgstr ""
-#: ../src/top.ml:1671
+#: src/top.ml:582
msgid "# generated on %s by %s\n"
msgstr ""
-#: ../src/top.ml:65
+#: src/types.ml:43
msgid "%CPU"
msgstr ""
-#: ../src/top.ml:66
+#: src/types.ml:44
msgid "%MEM"
msgstr ""
-#: ../src/top.ml:1237
-msgid "%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d O:%d X:%d"
+#: src/redraw.ml:480
+msgid ""
+"%d domains, %d active, %d running, %d sleeping, %d paused, %d inactive D:%d "
+"O:%d X:%d"
msgstr ""
-#: ../src/top.ml:245
+#: src/top.ml:170
msgid "%s: could not parse '%s' in init file: expecting %s"
msgstr ""
-#: ../src/top.ml:240
+#: src/top.ml:165
msgid "%s: could not parse '%s' in init file: expecting a number"
msgstr ""
-#: ../src/top.ml:235
+#: src/top.ml:160
msgid "%s: could not parse '%s' in init file: expecting an integer"
msgstr ""
-#: ../src/top.ml:105
+#: src/types.ml:83
msgid "%s: display should be %s"
msgstr ""
-#: ../src/top.ml:83
+#: src/types.ml:61
msgid "%s: sort order should be: %s"
msgstr ""
-#: ../src/top.ml:217
+#: src/top.ml:142
msgid "%s: unknown parameter"
msgstr ""
-#: ../src/top.ml:269
-msgid "%s:%d: configuration item ``%s'' ignored\n%!"
+#: src/top.ml:194
+msgid ""
+"%s:%d: configuration item ``%s'' ignored\n"
+"%!"
msgstr ""
-#: ../src/top.ml:147
+#: src/top.ml:72
msgid "-d: cannot set a negative delay"
msgstr ""
-#: ../src/top.ml:173
+#: src/top.ml:98
msgid "Batch mode"
msgstr ""
-#: ../src/top.ml:72
+#: src/types.ml:50
msgid "Block read reqs"
msgstr ""
-#: ../src/top.ml:73
+#: src/types.ml:51
msgid "Block write reqs"
msgstr ""
-#: ../src/top.ml:1244
+#: src/redraw.ml:487
msgid "CPU: %2.1f%% Mem: %Ld MB (%Ld MB by guests)"
msgstr ""
-#: ../src/top.ml:1493
+#: src/top.ml:404
msgid "Change delay from %.1f to: "
msgstr ""
-#: ../src/top.ml:177 ../src/top.ml:175
+#: src/top.ml:102 src/top.ml:100
msgid "Connect to libvirt URI"
msgstr ""
-#: ../src/top.ml:1744
+#: src/top.ml:655
msgid "Connect: %s; Hostname: %s"
msgstr ""
-#: ../src/top.ml:1783
+#: src/top.ml:694
msgid "DISPLAY MODES"
msgstr ""
-#: ../src/top.ml:1500
+#: src/top.ml:411
msgid "Delay must be > 0"
msgstr ""
-#: ../src/top.ml:189
+#: src/top.ml:114
msgid "Delay time interval (seconds)"
msgstr ""
-#: ../src/top.ml:1737
+#: src/top.ml:648
msgid "Delay: %.1f secs; Batch: %s; Secure: %s; Sort: %s"
msgstr ""
-#: ../src/top.ml:181
+#: src/top.ml:106
msgid "Disable CPU stats in CSV"
msgstr ""
-#: ../src/top.ml:185
+#: src/top.ml:110
msgid "Disable block device stats in CSV"
msgstr ""
-#: ../src/top.ml:183
+#: src/top.ml:108
msgid "Disable memory stats in CSV"
msgstr ""
-#: ../src/top.ml:187
+#: src/top.ml:112
msgid "Disable net stats in CSV"
msgstr ""
-#: ../src/top.ml:214
+#: src/top.ml:139
msgid "Display version number and exit"
msgstr ""
-#: ../src/top.ml:199
+#: src/top.ml:124
msgid "Do not read init file"
msgstr ""
-#: ../src/top.ml:68
+#: src/types.ml:46
msgid "Domain ID"
msgstr ""
-#: ../src/top.ml:69
+#: src/types.ml:47
msgid "Domain name"
msgstr ""
-#: ../src/top.ml:1797
+#: src/top.ml:708
msgid "Domains display"
msgstr ""
-#: ../src/main.ml:69 ../src/main.ml:44 ../src/top.ml:1711 ../src/top.ml:1708
+#: src/top.ml:622 src/top.ml:619 src/main.ml:69 src/main.ml:44
msgid "Error"
msgstr ""
-#: ../src/top.ml:193
+#: src/top.ml:118
msgid "Exit at given time"
msgstr ""
-#: ../src/top.ml:1766
+#: src/top.ml:677
msgid "Help"
msgstr ""
-#: ../src/top.ml:195
+#: src/top.ml:120
msgid "Historical CPU delay"
msgstr ""
-#: ../src/top.ml:179
+#: src/top.ml:104
msgid "Log statistics to CSV file"
msgstr ""
-#: ../src/top.ml:1749
+#: src/top.ml:660
msgid "MAIN KEYS"
msgstr ""
-#: ../src/top.ml:1804
+#: src/top.ml:715
msgid "More help in virt-top(1) man page. Press any key to return."
msgstr ""
-#: ../src/top.ml:294
-msgid "NB: If you want to monitor a local hypervisor, you usually need to be root"
+#: src/top.ml:219
+msgid ""
+"NB: If you want to monitor a local hypervisor, you usually need to be root"
msgstr ""
-#: ../src/top.ml:70
+#: src/types.ml:48
msgid "Net RX bytes"
msgstr ""
-#: ../src/top.ml:71
+#: src/types.ml:49
msgid "Net TX bytes"
msgstr ""
-#: ../src/top.ml:1506
+#: src/top.ml:417
msgid "Not a valid number"
msgstr ""
-#: ../src/top.ml:201
+#: src/top.ml:126
msgid "Number of iterations to run"
msgstr ""
-#: ../src/top.ml:1740 ../src/top.ml:1739
+#: src/top.ml:651 src/top.ml:650
msgid "Off"
msgstr ""
-#: ../src/top.ml:1740 ../src/top.ml:1739
+#: src/top.ml:651 src/top.ml:650
msgid "On"
msgstr ""
-#: ../src/top.ml:1764
+#: src/top.ml:675
msgid "Quit"
msgstr ""
-#: ../src/top.ml:208
+#: src/top.ml:133
msgid "Run from a script (no user interface)"
msgstr ""
-#: ../src/top.ml:1771
+#: src/top.ml:682
msgid "SORTING"
msgstr ""
-#: ../src/top.ml:206
+#: src/top.ml:131
msgid "Secure (\"kiosk\") mode"
msgstr ""
-#: ../src/top.ml:1780
+#: src/top.ml:691
msgid "Select sort field"
msgstr ""
-#: ../src/top.ml:191
+#: src/top.ml:116
msgid "Send debug messages to file"
msgstr ""
-#: ../src/top.ml:197
+#: src/top.ml:122
msgid "Set name of init file"
msgstr ""
-#: ../src/top.ml:203
+#: src/top.ml:128
msgid "Set sort order (%s)"
msgstr ""
-#: ../src/top.ml:1514
+#: src/top.ml:425
msgid "Set sort order for main display"
msgstr ""
-#: ../src/top.ml:1765
+#: src/top.ml:676
msgid "Set update interval"
msgstr ""
-#: ../src/top.ml:1776
+#: src/top.ml:687
msgid "Sort by %CPU"
msgstr ""
-#: ../src/top.ml:1777
+#: src/top.ml:688
msgid "Sort by %MEM"
msgstr ""
-#: ../src/top.ml:1779
+#: src/top.ml:690
msgid "Sort by ID"
msgstr ""
-#: ../src/top.ml:1778
+#: src/top.ml:689
msgid "Sort by TIME"
msgstr ""
-#: ../src/top.ml:171
+#: src/top.ml:96
msgid "Start by displaying block devices"
msgstr ""
-#: ../src/top.ml:169
+#: src/top.ml:94
msgid "Start by displaying network interfaces"
msgstr ""
-#: ../src/top.ml:167
+#: src/top.ml:92
msgid "Start by displaying pCPUs (default: tasks)"
msgstr ""
-#: ../src/top.ml:67
+#: src/types.ml:45
msgid "TIME (CPU time)"
msgstr ""
-#: ../src/top.ml:1800
+#: src/top.ml:711
msgid "Toggle block devices"
msgstr ""
-#: ../src/top.ml:1799
+#: src/top.ml:710
msgid "Toggle network interfaces"
msgstr ""
-#: ../src/top.ml:1798
+#: src/top.ml:709
msgid "Toggle physical CPUs"
msgstr ""
-#: ../src/top.ml:1515
+#: src/top.ml:426
msgid "Type key or use up and down cursor keys."
msgstr ""
-#: ../src/top.ml:1809
+#: src/top.ml:720
msgid "Unknown command - try 'h' for help"
msgstr ""
-#: ../src/top.ml:1763
+#: src/top.ml:674
msgid "Update display"
msgstr ""
-#: ../src/top.ml:1703
+#: src/top.ml:614
msgid "Wrote settings to %s"
msgstr ""
-#: ../src/top.ml:1745
+#: src/top.ml:656
msgid "default"
msgstr ""
-#: ../src/top.ml:210
+#: src/top.ml:135
msgid "dump output to stdout (no userinterface)"
msgstr ""
-#: ../src/opt_xml.ml:46
-msgid "get_xml_desc didn't return <domain/>"
-msgstr ""
-
-#: ../src/top.ml:212
+#: src/top.ml:137
msgid "show block device load in bytes rather than reqs"
msgstr ""
-#: ../src/top.ml:1767
+#: src/top.ml:678
msgid "toggle block info req/bytes"
msgstr ""
-#: ../src/top.ml:1725
+#: src/top.ml:636
msgid "virt-top %s ocaml-libvirt %s libvirt %d.%d.%d by Red Hat"
msgstr ""
-#: ../src/top.ml:218
-msgid "virt-top : a 'top'-like utility for virtualization\n\nSUMMARY\n virt-top [-options]\n\nOPTIONS"
-msgstr ""
-
-#: ../src/top.ml:42
-msgid "virt-top was compiled without support for CSV files"
+#: src/top.ml:143
+msgid ""
+"virt-top : a 'top'-like utility for virtualization\n"
+"\n"
+"SUMMARY\n"
+" virt-top [-options]\n"
+"\n"
+"OPTIONS"
msgstr ""
-#: ../src/top.ml:53
+#: src/top.ml:39
msgid "virt-top was compiled without support for dates and times"
msgstr ""
-
+++ /dev/null
-#!/bin/bash -
-# Pull translations from Zanata.
-# Copyright (C) 2011-2015 Red Hat 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 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, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-set -e
-
-echo zanata po pull
-zanata po pull
-
-# Remove PO files that have no translations in them.
-for f in *.po; do
- if ! grep -q '^msgstr "[^"]' $f; then
- echo rm $f
- rm $f
- fi
-done
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<config xmlns="http://zanata.org/namespace/config/">
- <url>https://fedora.zanata.org</url>
- <project>virt-top</project>
- <project-version>master</project-version>
- <project-type>gettext</project-type>
-
- <locales>
- <locale>sq</locale>
- <locale>ar</locale>
- <locale>as</locale>
- <locale>ast</locale>
- <locale>bal</locale>
- <locale>eu</locale>
- <locale>bn</locale>
- <locale>bn-IN</locale>
- <locale>brx</locale>
- <locale>bs</locale>
- <locale>br</locale>
- <locale>bg</locale>
- <locale>ca</locale>
- <locale>zh-CN</locale>
- <locale>zh-HK</locale>
- <locale>zh-TW</locale>
- <locale>kw</locale>
- <locale>kw-GB</locale>
- <locale>cs</locale>
- <locale>da</locale>
- <locale>nl</locale>
- <locale>en-GB</locale>
- <locale>eo</locale>
- <locale>et</locale>
- <locale>fi</locale>
- <locale>fr</locale>
- <locale>gl</locale>
- <locale>ka</locale>
- <locale>de</locale>
- <locale>el</locale>
- <locale>gu</locale>
- <locale>he</locale>
- <locale>hi</locale>
- <locale>hu</locale>
- <locale>is</locale>
- <locale>id</locale>
- <locale>ia</locale>
- <locale>it</locale>
- <locale>ja</locale>
- <locale>kn</locale>
- <locale>kk</locale>
- <locale>km</locale>
- <locale>ky</locale>
- <locale>ko</locale>
- <locale>lt</locale>
- <locale>nds</locale>
- <locale>mk</locale>
- <locale>mai</locale>
- <locale>ms</locale>
- <locale>ml</locale>
- <locale>mr</locale>
- <locale>mn</locale>
- <locale>ne</locale>
- <locale>nb</locale>
- <locale>nn</locale>
- <locale>or</locale>
- <locale>pa</locale>
- <locale>fa</locale>
- <locale>pl</locale>
- <locale>pt</locale>
- <locale>pt-BR</locale>
- <locale>ro</locale>
- <locale>ru</locale>
- <locale>sr</locale>
- <locale>sr@latin</locale>
- <locale>si</locale>
- <locale>sk</locale>
- <locale>sl</locale>
- <locale>es</locale>
- <locale>sv</locale>
- <locale>tg</locale>
- <locale>ta</locale>
- <locale>te</locale>
- <locale>bo</locale>
- <locale>tr</locale>
- <locale>uk</locale>
- <locale>ur</locale>
- <locale>wba</locale>
- <locale>cy</locale>
- <locale>lv</locale>
- <locale>kw@uccor</locale>
- <locale>kw@kkcor</locale>
- <locale>af</locale>
- <locale>am</locale>
- <locale>be</locale>
- <locale>hr</locale>
- <locale>de-CH</locale>
- <locale>th</locale>
- <locale>vi</locale>
- <locale>zu</locale>
- <locale>ilo</locale>
- <locale>nso</locale>
- <locale>tw</locale>
- <locale>yo</locale>
- <locale>anp</locale>
- </locales>
-
-</config>
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:11-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: rjones <rjones@redhat.com>\n"
"Language-Team: Chinese (China) <None>\n"
-"Language: zh_CN\n"
+"Language: zh-CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-03-27 11:32+0000\n"
-"PO-Revision-Date: 2015-02-21 08:11-0500\n"
-"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
+"PO-Revision-Date: 2011-03-22 11:29-0400\n"
+"Last-Translator: zerng07 <pswo10680@gmail.com>\n"
"Language-Team: Chinese (Taiwan) <None>\n"
-"Language: zh_TW\n"
+"Language: zh-TW\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-collect.cmi: types.cmi
-collect.cmo: utils.cmi types.cmi collect.cmi
-collect.cmx: utils.cmx types.cmx collect.cmi
-csv_output.cmi: types.cmi collect.cmi
-csv_output.cmo: collect.cmi csv_output.cmi
-csv_output.cmx: collect.cmx csv_output.cmi
-main.cmo: top.cmi opt_gettext.cmo
-main.cmx: top.cmx opt_gettext.cmx
-opt_calendar.cmo: top.cmi opt_gettext.cmo
-opt_calendar.cmx: top.cmx opt_gettext.cmx
-opt_csv.cmo: top.cmi opt_gettext.cmo csv_output.cmi
-opt_csv.cmx: top.cmx opt_gettext.cmx csv_output.cmx
-opt_gettext.cmo:
-opt_gettext.cmx:
-opt_xml.cmo: opt_gettext.cmo collect.cmi
-opt_xml.cmx: opt_gettext.cmx collect.cmx
-redraw.cmi: types.cmi collect.cmi
-redraw.cmo: utils.cmi types.cmi screen.cmi opt_gettext.cmo collect.cmi redraw.cmi
-redraw.cmx: utils.cmx types.cmx screen.cmx opt_gettext.cmx collect.cmx redraw.cmi
-screen.cmi:
-screen.cmo: screen.cmi
-screen.cmx: screen.cmi
-stream_output.cmi: types.cmi collect.cmi
-stream_output.cmo: utils.cmi screen.cmi collect.cmi stream_output.cmi
-stream_output.cmx: utils.cmx screen.cmx collect.cmx stream_output.cmi
-top.cmi: types.cmi
-top.cmo: version.cmo utils.cmi types.cmi stream_output.cmi screen.cmi redraw.cmi opt_gettext.cmo csv_output.cmi collect.cmi top.cmi
-top.cmx: version.cmx utils.cmx types.cmx stream_output.cmx screen.cmx redraw.cmx opt_gettext.cmx csv_output.cmx collect.cmx top.cmi
-types.cmi:
-types.cmo: utils.cmi opt_gettext.cmo types.cmi
-types.cmx: utils.cmx opt_gettext.cmx types.cmi
-utils.cmi:
-utils.cmo: utils.cmi
-utils.cmx: utils.cmi
-version.cmo:
-version.cmx:
+# OCaml dependencies generated by ../ocaml-dep.sh
+
+collect.cmo : \
+ xml.cmo \
+ utils.cmi \
+ types.cmi \
+ collect.cmi
+collect.cmx : \
+ xml.cmx \
+ utils.cmx \
+ types.cmx \
+ collect.cmi
+collect.cmi : \
+ types.cmi
+csv_output.cmo : \
+ utils.cmi \
+ collect.cmi \
+ csv_output.cmi
+csv_output.cmx : \
+ utils.cmx \
+ collect.cmx \
+ csv_output.cmi
+csv_output.cmi : \
+ types.cmi \
+ collect.cmi
+main.cmo : \
+ top.cmi \
+ opt_gettext.cmo
+main.cmx : \
+ top.cmx \
+ opt_gettext.cmx
+opt_calendar.cmo : \
+ top.cmi \
+ opt_gettext.cmo
+opt_calendar.cmx : \
+ top.cmx \
+ opt_gettext.cmx
+opt_gettext.cmo :
+opt_gettext.cmx :
+redraw.cmo : \
+ utils.cmi \
+ types.cmi \
+ screen.cmi \
+ opt_gettext.cmo \
+ collect.cmi \
+ redraw.cmi
+redraw.cmx : \
+ utils.cmx \
+ types.cmx \
+ screen.cmx \
+ opt_gettext.cmx \
+ collect.cmx \
+ redraw.cmi
+redraw.cmi : \
+ types.cmi \
+ collect.cmi
+screen.cmo : \
+ screen.cmi
+screen.cmx : \
+ screen.cmi
+screen.cmi :
+stream_output.cmo : \
+ utils.cmi \
+ screen.cmi \
+ collect.cmi \
+ stream_output.cmi
+stream_output.cmx : \
+ utils.cmx \
+ screen.cmx \
+ collect.cmx \
+ stream_output.cmi
+stream_output.cmi : \
+ types.cmi \
+ collect.cmi
+top.cmo : \
+ version.cmo \
+ utils.cmi \
+ types.cmi \
+ stream_output.cmi \
+ screen.cmi \
+ redraw.cmi \
+ opt_gettext.cmo \
+ csv_output.cmi \
+ collect.cmi \
+ top.cmi
+top.cmx : \
+ version.cmx \
+ utils.cmx \
+ types.cmx \
+ stream_output.cmx \
+ screen.cmx \
+ redraw.cmx \
+ opt_gettext.cmx \
+ csv_output.cmx \
+ collect.cmx \
+ top.cmi
+top.cmi : \
+ types.cmi
+types.cmo : \
+ utils.cmi \
+ opt_gettext.cmo \
+ types.cmi
+types.cmx : \
+ utils.cmx \
+ opt_gettext.cmx \
+ types.cmi
+types.cmi :
+utils.cmo : \
+ utils.cmi
+utils.cmx : \
+ utils.cmi
+utils.cmi :
+version.cmo :
+version.cmx :
+xml.cmo :
+xml.cmx :
--- /dev/null
+# virt-top
+# Copyright (C) 2007-2021 Red Hat Inc., Richard W.M. Jones
+#
+# 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 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, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+CLEANFILES = *~ *.bak *.orig *.rej
+CLEANFILES += *.cmi *.cmo *.cma *.cmx *.cmxa dll*.so *.a *.annot
+
+EXTRA_DIST = \
+ .depend \
+ collect.ml \
+ collect.mli \
+ csv_output.ml \
+ csv_output.mli \
+ main.ml \
+ opt_calendar.ml \
+ opt_gettext.ml \
+ redraw.ml \
+ redraw.mli \
+ screen.ml \
+ screen.mli \
+ stream_output.ml \
+ stream_output.mli \
+ top.ml \
+ top.mli \
+ types.ml \
+ types.mli \
+ utils.ml \
+ utils.mli \
+ version.ml \
+ virt-top.pod \
+ xml-c.c \
+ xml.ml
+
+OCAMLPACKAGES = -package unix,curses,str,libvirt
+
+if HAVE_PKG_GETTEXT
+OCAMLPACKAGES += -package gettext-stub
+endif
+
+BOBJS = \
+ version.cmo \
+ opt_gettext.cmo \
+ utils.cmo \
+ types.cmo \
+ xml.cmo \
+ collect.cmo \
+ screen.cmo \
+ redraw.cmo \
+ csv_output.cmo \
+ stream_output.cmo \
+ top.cmo
+if HAVE_PKG_CALENDAR
+BOBJS += opt_calendar.cmo
+OCAMLPACKAGES += -package calendar
+endif
+BOBJS += main.cmo
+
+XOBJS = $(BOBJS:.cmo=.cmx)
+
+OCAMLFLAGS = \
+ -g \
+ -warn-error +C+D+E+F+L+M+P+S+U+V+Y+Z+X-3 \
+ -ccopt '$(CFLAGS)'
+OCAMLLIBS = $(LIBXML2_LIBS)
+
+bin_PROGRAMS = virt-top
+
+virt_top_SOURCES = xml-c.c
+virt_top_CFLAGS = \
+ $(LIBXML2_CFLAGS) \
+ -I$(libdir)/ocaml
+
+if !HAVE_OCAMLOPT
+OBJECTS = $(BOBJS)
+else
+OBJECTS = $(XOBJS)
+endif
+
+virt_top_DEPENDENCIES = $(OBJECTS)
+virt_top_LINK = \
+ ../ocaml-link.sh -cclib '$(OCAMLLIBS)' -- \
+ $(OCAMLFIND) $(OCAMLBEST) $(OCAMLFLAGS) $(OCAMLPACKAGES) \
+ $(OBJECTS) -o $@
+
+.mli.cmi:
+ $(OCAMLFIND) ocamlc $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@
+.ml.cmo:
+ $(OCAMLFIND) ocamlc $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@
+.ml.cmx:
+ $(OCAMLFIND) ocamlopt $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@
+
+# Dependencies.
+.depend: $(srcdir)/*.ml $(srcdir)/*.mli
+ ../ocaml-dep.sh $^
+-include .depend
+
+# Manual page.
+if HAVE_PERLDOC
+
+virt-top.1: virt-top.pod
+ pod2man -u --section 1 -c "Virtualization Support" \
+ --release "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" \
+ $< > $@
+
+virt-top.txt: virt-top.pod
+ pod2text $< > $@
+
+CLEANFILES += virt-top.1 virt-top.txt
+
+endif
+++ /dev/null
-# virt-top
-# Copyright (C) 2007-2014 Red Hat Inc., Richard W.M. Jones
-#
-# 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 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, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-PACKAGE := @PACKAGE_NAME@
-VERSION := @PACKAGE_VERSION@
-
-INSTALL := @INSTALL@
-HAVE_PERLDOC := @HAVE_PERLDOC@
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-bindir = @bindir@
-
-OCAML_PKG_curses = @OCAML_PKG_curses@
-OCAML_PKG_xml_light = @OCAML_PKG_xml_light@
-OCAML_PKG_csv = @OCAML_PKG_csv@
-OCAML_PKG_calendar = @OCAML_PKG_calendar@
-OCAML_PKG_gettext = @OCAML_PKG_gettext@
-
-OCAMLCPACKAGES := -package unix,extlib,curses,str,libvirt
-
-ifneq ($(OCAML_PKG_gettext),no)
-OCAMLCPACKAGES += -package gettext-stub
-endif
-
-OBJS := \
- version.cmo \
- opt_gettext.cmo \
- utils.cmo \
- types.cmo \
- collect.cmo \
- screen.cmo \
- redraw.cmo \
- csv_output.cmo \
- stream_output.cmo \
- top.cmo
-ifneq ($(OCAML_PKG_xml_light),no)
-OBJS += opt_xml.cmo
-OCAMLCPACKAGES += -package xml-light
-endif
-ifneq ($(OCAML_PKG_csv),no)
-OBJS += opt_csv.cmo
-OCAMLCPACKAGES += -package csv
-endif
-ifneq ($(OCAML_PKG_calendar),no)
-OBJS += opt_calendar.cmo
-OCAMLCPACKAGES += -package calendar
-endif
-OBJS += main.cmo
-
-XOBJS := $(OBJS:.cmo=.cmx)
-
-OCAMLCFLAGS := -g -warn-error CDEFLMPSUVYZX-3 -ccopt '@CFLAGS@'
-OCAMLCLIBS := -linkpkg -runtime-variant _pic -cclib '@LDFLAGS@'
-
-OCAMLOPTPACKAGES := $(OCAMLCPACKAGES)
-OCAMLOPTFLAGS := $(OCAMLCFLAGS)
-OCAMLOPTLIBS := $(OCAMLCLIBS)
-
-BYTE_TARGETS := virt-top
-OPT_TARGETS := virt-top.opt
-
-ifeq ($(HAVE_PERLDOC),perldoc)
-BYTE_TARGETS += virt-top.1 virt-top.txt
-OPT_TARGETS += virt-top.1 virt-top.txt
-endif
-
-all: $(BYTE_TARGETS)
-
-opt: $(OPT_TARGETS)
-
-virt-top: $(OBJS)
- ocamlfind ocamlc $(OCAMLCPACKAGES) $(OCAMLCFLAGS) $(OCAMLCLIBS) \
- -o $@ $^
-
-virt-top.opt: $(XOBJS)
- ocamlfind ocamlopt \
- $(OCAMLOPTPACKAGES) $(OCAMLOPTFLAGS) $(OCAMLOPTLIBS) \
- -o $@ $^
-
-# Manual page.
-ifeq ($(HAVE_PERLDOC),perldoc)
-virt-top.1: virt-top.pod
- pod2man -c "Virtualization Support" --release "$(PACKAGE)-$(VERSION)" \
- $< > $@
-
-virt-top.txt: virt-top.pod
- pod2text $< > $@
-endif
-
-install:
- if [ -x virt-top.opt ]; then \
- mkdir -p $(DESTDIR)$(bindir); \
- $(INSTALL) -m 0755 virt-top.opt $(DESTDIR)$(bindir)/virt-top; \
- fi
-
-include ../Make.rules
to deal with keypresses, help screens and so on.
opt_gettext.ml
+
A generated file which adds gettext support if ocaml-gettext
was found at configure time, or else stubs it out.
- opt_xml.ml
-
- Any code which needs the optional xml-light library goes
- in here. Mainly for parsing domain XML descriptions to get
- the list of block devices and network interfaces.
-
- The reason for having it in a separate file is so that we
- don't depend on xml-light.
-
- opt_csv.ml
-
- Any code which needs the optional ocaml-csv library goes
- in here.
-
opt_calendar.ml
Any code which needs the optional ocaml-calendar library
main.ml
This is just a small bit of code to glue the modules together
- Top + Opt_xml? + Opt_csv? + Opt_calendar?
+ Top + Opt_calendar?
The man-page is generated from the single file:
(* 'top'-like tool for libvirt domains.
- (C) Copyright 2007-2017 Richard W.M. Jones, Red Hat Inc.
+ (C) Copyright 2007-2021 Richard W.M. Jones, Red Hat Inc.
http://libvirt.org/
This program is free software; you can redistribute it and/or modify
module D = Libvirt.Domain
open Printf
-open ExtList
open Utils
open Types
-(* Hook for XML support (see [opt_xml.ml]). *)
-let parse_device_xml : (int -> [>`R] D.t -> string list * string list) ref =
- ref (
- fun _ _ -> [], []
- )
-
(* Intermediate "domain + stats" structure that we use to collect
* everything we know about a domain within the collect function.
*)
let get_devices id dom =
try Hashtbl.find devices id
with Not_found ->
- let blkdevs, netifs = (!parse_device_xml) id dom in
+ let blkdevs, netifs = Xml.parse_device_xml dom in
Hashtbl.replace devices id (blkdevs, netifs);
blkdevs, netifs
let doms = Array.to_list doms in
List.map (
fun { D.dom_uuid = uuid; D.params = params } ->
- let nr_params = Array.length params in
- let get_param name =
- let rec loop i =
- if i = nr_params then None
- else if fst params.(i) = name then Some (snd params.(i))
- else loop (i+1)
+ try
+ let nr_params = Array.length params in
+ let get_param name =
+ let rec loop i =
+ if i = nr_params then None
+ else if fst params.(i) = name then Some (snd params.(i))
+ else loop (i+1)
+ in
+ loop 0
+ in
+ let get_param_int name default =
+ match get_param name with
+ | None -> None
+ | Some (D.TypedFieldInt32 i)
+ | Some (D.TypedFieldUInt32 i) -> Some (Int32.to_int i)
+ | Some (D.TypedFieldInt64 i)
+ | Some (D.TypedFieldUInt64 i) -> Some (Int64.to_int i)
+ | _ -> default
in
- loop 0
- in
- let get_param_int name default =
- match get_param name with
- | None -> None
- | Some (D.TypedFieldInt32 i)
- | Some (D.TypedFieldUInt32 i) -> Some (Int32.to_int i)
- | Some (D.TypedFieldInt64 i)
- | Some (D.TypedFieldUInt64 i) -> Some (Int64.to_int i)
- | _ -> default
- in
- let get_param_int64 name default =
- match get_param name with
- | None -> None
- | Some (D.TypedFieldInt32 i)
- | Some (D.TypedFieldUInt32 i) -> Some (Int64.of_int32 i)
- | Some (D.TypedFieldInt64 i)
- | Some (D.TypedFieldUInt64 i) -> Some i
- | _ -> default
- in
-
- let dom = D.lookup_by_uuid conn uuid in
- let id = D.get_id dom in
- let name = D.get_name dom in
- let state = get_param_int "state.state" None in
-
- if state = Some 5 (* VIR_DOMAIN_SHUTOFF *) then
- (name, Inactive)
- else (
- (* Active domain. *)
-
- (* Synthesize a D.info struct out of the data we have
- * from virConnectGetAllDomainStats. Doing this is an
- * artifact from the old APIs we used to use to fetch
- * stats, we could simplify here, and also return the
- * RSS memory. XXX
- *)
- let state =
- match state with
- | None | Some 0 -> D.InfoNoState
- | Some 1 -> D.InfoRunning
- | Some 2 -> D.InfoBlocked
- | Some 3 -> D.InfoPaused
- | Some 4 -> D.InfoShutdown
- | Some 5 -> D.InfoShutoff
- | Some 6 -> D.InfoCrashed
- | Some 7 -> D.InfoPaused (* XXX really VIR_DOMAIN_PMSUSPENDED *)
- | _ -> D.InfoNoState in
- let memory =
- match get_param_int64 "balloon.current" None with
- | None -> 0_L
- | Some m -> m in
- let nr_virt_cpu =
- match get_param_int "vcpu.current" None with
- | None -> 1
- | Some v -> v in
- let cpu_time =
- (* NB: libvirt does not return cpu.time for non-root domains. *)
- match get_param_int64 "cpu.time" None with
- | None -> 0_L
- | Some ns -> ns in
- let info = {
- D.state = state;
- max_mem = -1_L; (* not used anywhere in virt-top *)
- memory = memory;
- nr_virt_cpu = nr_virt_cpu;
- cpu_time = cpu_time
- } in
-
- let nr_block_devs =
- match get_param_int "block.count" None with
- | None -> 0
- | Some i -> i in
- let block_stats =
- List.map (
- fun i ->
- let dev =
- match get_param (sprintf "block.%d.name" i) with
- | None -> sprintf "blk%d" i
- | Some (D.TypedFieldString s) -> s
- | _ -> assert false in
- dev, {
- D.rd_req =
- (match get_param_int64 (sprintf "block.%d.rd.reqs" i) None
- with None -> 0_L | Some v -> v);
- rd_bytes =
- (match get_param_int64 (sprintf "block.%d.rd.bytes" i) None
- with None -> 0_L | Some v -> v);
- wr_req =
- (match get_param_int64 (sprintf "block.%d.wr.reqs" i) None
- with None -> 0_L | Some v -> v);
- wr_bytes =
- (match get_param_int64 (sprintf "block.%d.wr.bytes" i) None
- with None -> 0_L | Some v -> v);
- errs = 0_L
- }
- ) (range 0 (nr_block_devs-1)) in
-
- let nr_interface_devs =
- match get_param_int "net.count" None with
- | None -> 0
- | Some i -> i in
- let interface_stats =
- List.map (
- fun i ->
- let dev =
- match get_param (sprintf "net.%d.name" i) with
- | None -> sprintf "net%d" i
- | Some (D.TypedFieldString s) -> s
- | _ -> assert false in
- dev, {
- D.rx_bytes =
- (match get_param_int64 (sprintf "net.%d.rx.bytes" i) None
- with None -> 0_L | Some v -> v);
- rx_packets =
- (match get_param_int64 (sprintf "net.%d.rx.pkts" i) None
- with None -> 0_L | Some v -> v);
- rx_errs =
- (match get_param_int64 (sprintf "net.%d.rx.errs" i) None
- with None -> 0_L | Some v -> v);
- rx_drop =
- (match get_param_int64 (sprintf "net.%d.rx.drop" i) None
- with None -> 0_L | Some v -> v);
- tx_bytes =
- (match get_param_int64 (sprintf "net.%d.tx.bytes" i) None
- with None -> 0_L | Some v -> v);
- tx_packets =
- (match get_param_int64 (sprintf "net.%d.tx.pkts" i) None
- with None -> 0_L | Some v -> v);
- tx_errs =
- (match get_param_int64 (sprintf "net.%d.tx.errs" i) None
- with None -> 0_L | Some v -> v);
- tx_drop =
- (match get_param_int64 (sprintf "net.%d.tx.drop" i) None
- with None -> 0_L | Some v -> v);
- }
- ) (range 0 (nr_interface_devs-1)) in
-
- let prev_info, prev_block_stats, prev_interface_stats =
- try
- let prev_info, prev_block_stats, prev_interface_stats =
- Hashtbl.find last_info uuid in
- Some prev_info, prev_block_stats, prev_interface_stats
- with Not_found -> None, [], [] in
-
- (name,
- Active {
- rd_domid = id; rd_domuuid = uuid; rd_dom = dom;
- rd_info = info;
- rd_block_stats = block_stats;
- rd_interface_stats = interface_stats;
- rd_prev_info = prev_info;
- rd_prev_block_stats = prev_block_stats;
- rd_prev_interface_stats = prev_interface_stats;
- rd_cpu_time = 0.; rd_percent_cpu = 0.;
- rd_mem_bytes = 0L; rd_mem_percent = 0L;
- rd_block_rd_reqs = None; rd_block_wr_reqs = None;
- rd_block_rd_bytes = None; rd_block_wr_bytes = None;
- rd_net_rx_bytes = None; rd_net_tx_bytes = None;
- })
- )
+ let get_param_int64 name default =
+ match get_param name with
+ | None -> None
+ | Some (D.TypedFieldInt32 i)
+ | Some (D.TypedFieldUInt32 i) -> Some (Int64.of_int32 i)
+ | Some (D.TypedFieldInt64 i)
+ | Some (D.TypedFieldUInt64 i) -> Some i
+ | _ -> default
+ in
+
+ let dom = D.lookup_by_uuid conn uuid in
+ let id = D.get_id dom in
+ let name = D.get_name dom in
+ let state = get_param_int "state.state" None in
+
+ if state = Some 5 (* VIR_DOMAIN_SHUTOFF *) then
+ (name, Inactive)
+ else (
+ (* Active domain. *)
+
+ (* Synthesize a D.info struct out of the data we have
+ * from virConnectGetAllDomainStats. Doing this is an
+ * artifact from the old APIs we used to use to fetch
+ * stats, we could simplify here, and also return the
+ * RSS memory. XXX
+ *)
+ let state =
+ match state with
+ | None | Some 0 -> D.InfoNoState
+ | Some 1 -> D.InfoRunning
+ | Some 2 -> D.InfoBlocked
+ | Some 3 -> D.InfoPaused
+ | Some 4 -> D.InfoShutdown
+ | Some 5 -> D.InfoShutoff
+ | Some 6 -> D.InfoCrashed
+ | Some 7 -> D.InfoPaused (* XXX really VIR_DOMAIN_PMSUSPENDED *)
+ | _ -> D.InfoNoState in
+ let memory =
+ match get_param_int64 "balloon.current" None with
+ | None -> 0_L
+ | Some m -> m in
+ let nr_virt_cpu =
+ match get_param_int "vcpu.current" None with
+ | None -> 1
+ | Some v -> v in
+ let cpu_time =
+ (* NB: libvirt does not return cpu.time for non-root domains. *)
+ match get_param_int64 "cpu.time" None with
+ | None -> 0_L
+ | Some ns -> ns in
+ let info = {
+ D.state = state;
+ max_mem = -1_L; (* not used anywhere in virt-top *)
+ memory = memory;
+ nr_virt_cpu = nr_virt_cpu;
+ cpu_time = cpu_time
+ } in
+
+ let nr_block_devs =
+ match get_param_int "block.count" None with
+ | None -> 0
+ | Some i -> i in
+ let block_stats =
+ List.map (
+ fun i ->
+ let dev =
+ match get_param (sprintf "block.%d.name" i) with
+ | None -> sprintf "blk%d" i
+ | Some (D.TypedFieldString s) -> s
+ | _ -> assert false in
+ dev, {
+ D.rd_req =
+ (let n = sprintf "block.%d.rd.reqs" i in
+ match get_param_int64 n None
+ with None -> 0_L | Some v -> v);
+ rd_bytes =
+ (let n = sprintf "block.%d.rd.bytes" i in
+ match get_param_int64 n None
+ with None -> 0_L | Some v -> v);
+ wr_req =
+ (let n = sprintf "block.%d.wr.reqs" i in
+ match get_param_int64 n None
+ with None -> 0_L | Some v -> v);
+ wr_bytes =
+ (let n = sprintf "block.%d.wr.bytes" i in
+ match get_param_int64 n None
+ with None -> 0_L | Some v -> v);
+ errs = 0_L
+ }
+ ) (range 0 (nr_block_devs-1)) in
+
+ let nr_interface_devs =
+ match get_param_int "net.count" None with
+ | None -> 0
+ | Some i -> i in
+ let interface_stats =
+ List.map (
+ fun i ->
+ let dev =
+ match get_param (sprintf "net.%d.name" i) with
+ | None -> sprintf "net%d" i
+ | Some (D.TypedFieldString s) -> s
+ | _ -> assert false in
+ dev, {
+ D.rx_bytes =
+ (match get_param_int64 (sprintf "net.%d.rx.bytes" i) None
+ with None -> 0_L | Some v -> v);
+ rx_packets =
+ (match get_param_int64 (sprintf "net.%d.rx.pkts" i) None
+ with None -> 0_L | Some v -> v);
+ rx_errs =
+ (match get_param_int64 (sprintf "net.%d.rx.errs" i) None
+ with None -> 0_L | Some v -> v);
+ rx_drop =
+ (match get_param_int64 (sprintf "net.%d.rx.drop" i) None
+ with None -> 0_L | Some v -> v);
+ tx_bytes =
+ (match get_param_int64 (sprintf "net.%d.tx.bytes" i) None
+ with None -> 0_L | Some v -> v);
+ tx_packets =
+ (match get_param_int64 (sprintf "net.%d.tx.pkts" i) None
+ with None -> 0_L | Some v -> v);
+ tx_errs =
+ (match get_param_int64 (sprintf "net.%d.tx.errs" i) None
+ with None -> 0_L | Some v -> v);
+ tx_drop =
+ (match get_param_int64 (sprintf "net.%d.tx.drop" i) None
+ with None -> 0_L | Some v -> v);
+ }
+ ) (range 0 (nr_interface_devs-1)) in
+
+ let prev_info, prev_block_stats, prev_interface_stats =
+ try
+ let prev_info, prev_block_stats, prev_interface_stats =
+ Hashtbl.find last_info uuid in
+ Some prev_info, prev_block_stats, prev_interface_stats
+ with Not_found -> None, [], [] in
+
+ (name,
+ Active {
+ rd_domid = id; rd_domuuid = uuid; rd_dom = dom;
+ rd_info = info;
+ rd_block_stats = block_stats;
+ rd_interface_stats = interface_stats;
+ rd_prev_info = prev_info;
+ rd_prev_block_stats = prev_block_stats;
+ rd_prev_interface_stats = prev_interface_stats;
+ rd_cpu_time = 0.; rd_percent_cpu = 0.;
+ rd_mem_bytes = 0L; rd_mem_percent = 0L;
+ rd_block_rd_reqs = None; rd_block_wr_reqs = None;
+ rd_block_rd_bytes = None; rd_block_wr_bytes = None;
+ rd_net_rx_bytes = None; rd_net_tx_bytes = None;
+ })
+ )
+ with
+ Libvirt.Virterror _ ->
+ (* this can happen if a domain goes away while we
+ * are reading it, just report an inactive domain
+ *)
+ ("", Inactive)
) doms in
(* Calculate the CPU time (ns) and %CPU used by each domain. *)
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*)
-(* Hook for [Opt_xml] to override (if present). *)
-val parse_device_xml :
- (int -> [ `R ] Libvirt.Domain.t -> string list * string list) ref
-
(* Intermediate "domain + stats" structure that we use to collect
* everything we know about a domain within the collect function.
*)
(* 'top'-like tool for libvirt domains.
- (C) Copyright 2007-2017 Richard W.M. Jones, Red Hat Inc.
+ (C) Copyright 2007-2021 Richard W.M. Jones, Red Hat Inc.
http://libvirt.org/
This program is free software; you can redistribute it and/or modify
(* CSV output functions. *)
open Printf
-open ExtList
+open Utils
open Collect
module C = Libvirt.Connect
-(* Hook for CSV support (see [opt_csv.ml]). *)
-let csv_write : (string list -> unit) ref =
- ref (
- fun _ -> ()
+let chan = ref None
+
+let csv_set_filename filename = chan := Some (open_out filename)
+
+(* This code is adapted from OCaml CSV, published under the LGPLv2+
+ * which is compatible with the license of virt-top.
+ *)
+
+let nl = Bytes.make 1 '\n'
+let comma = Bytes.make 1 ','
+let quote = Bytes.make 1 '"'
+let output_newline chan = output chan nl 0 1
+let output_comma chan = output chan comma 0 1
+let output_quote chan = output chan quote 0 1
+
+let is_space_or_tab c = c = ' ' || c = '\t'
+
+let must_escape = Array.make 256 false
+let () =
+ List.iter (fun c -> must_escape.(Char.code c) <- true)
+ ['\"'; '\\'; '\000'; '\b'; '\n'; '\r'; '\t'; '\026']
+
+let must_quote chan s len =
+ let quote = ref (is_space_or_tab (String.unsafe_get s 0)
+ || is_space_or_tab (String.unsafe_get s (len - 1))) in
+ let n = ref 0 in
+ for i = 0 to len-1 do
+ let c = String.unsafe_get s i in
+ if c = ',' || c = '\n' || c = '\r' then quote := true
+ else if c = '"' then (
+ quote := true;
+ incr n
+ )
+ done;
+ if !quote then !n else -1
+
+let write_escaped chan field =
+ let len = String.length field in
+ if len > 0 then (
+ let n = must_quote chan field len in
+ if n < 0 then
+ output chan (Bytes.unsafe_of_string field) 0 len
+ else (
+ let field =
+ if n <= 0 then Bytes.unsafe_of_string field
+ else (* There are some quotes to escape *)
+ let s = Bytes.create (len + n) in
+ let j = ref 0 in
+ for i = 0 to len - 1 do
+ let c = String.unsafe_get field i in
+ if c = '"' then (
+ Bytes.unsafe_set s !j '"'; incr j;
+ Bytes.unsafe_set s !j '"'; incr j
+ )
+ else (Bytes.unsafe_set s !j c; incr j)
+ done;
+ s
+ in
+ output_quote chan;
+ output chan field 0 (Bytes.length field);
+ output_quote chan
+ )
)
+let save_out chan = function
+ | [] -> output_newline chan
+ | [f] ->
+ write_escaped chan f;
+ output_newline chan
+ | f :: tl ->
+ write_escaped chan f;
+ List.iter (
+ fun f ->
+ output_comma chan;
+ write_escaped chan f
+ ) tl;
+ output_newline chan
+
+let csv_write row =
+ match !chan with
+ | None -> () (* CSV output not enabled *)
+ | Some chan ->
+ save_out chan row;
+ (* Flush the output to the file immediately because we don't
+ * explicitly close the channel.
+ *)
+ flush chan
+
(* Write CSV header row. *)
let write_csv_header (csv_cpu, csv_mem, csv_block, csv_net) block_in_bytes =
- (!csv_write) (
+ csv_write (
[ "Hostname"; "Time"; "Arch"; "Physical CPUs";
"Count"; "Running"; "Blocked"; "Paused"; "Shutdown";
"Shutoff"; "Crashed"; "Active"; "Inactive";
let cmp (_, { rd_domid = rd_domid1 }) (_, { rd_domid = rd_domid2 }) =
compare rd_domid1 rd_domid2
in
- let doms = List.sort ~cmp doms in
+ let doms = List.sort cmp doms in
- let string_of_int64_option = Option.map_default Int64.to_string "" in
+ let string_of_int64_option = map_default Int64.to_string "" in
let domain_fields = List.map (
fun (domname, rd) ->
) doms in
let domain_fields = List.flatten domain_fields in
- (!csv_write) (summary_fields @ domain_fields)
+ csv_write (summary_fields @ domain_fields)
(* 'top'-like tool for libvirt domains.
- (C) Copyright 2007-2017 Richard W.M. Jones, Red Hat Inc.
+ (C) Copyright 2007-2021 Richard W.M. Jones, Red Hat Inc.
http://libvirt.org/
This program is free software; you can redistribute it and/or modify
(** CSV output functions. *)
-(* Hook for [Opt_csv] to override (if present). *)
-val csv_write : (string list -> unit) ref
+val csv_set_filename : string -> unit
val write_csv_header : bool * bool * bool * bool -> bool -> unit
open CalendarLib
open Printf
-open ExtString
open Opt_gettext.Gettext ;;
Top.parse_date_time :=
fun time ->
let cal : Calendar.t =
- if String.starts_with time "+" then ( (* +something *)
+ (* time is "+something" *)
+ let is_plus =
+ let n = String.length time in
+ n >= 1 && time.[0] = '+'
+ in
+ if is_plus then (
let period = String.sub time 1 (String.length time - 1) in
let period =
if String.contains period ':' then ( (* +HH:MM:SS *)
+++ /dev/null
-(* 'top'-like tool for libvirt domains.
- (C) Copyright 2007-2009 Richard W.M. Jones, Red Hat Inc.
- http://libvirt.org/
-
- 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 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, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- This file contains all code which requires xml-light.
-*)
-
-open ExtList
-
-open Opt_gettext.Gettext
-
-module C = Libvirt.Connect
-module D = Libvirt.Domain
-module N = Libvirt.Network ;;
-
-Collect.parse_device_xml :=
-fun id dom ->
- try
- let xml = D.get_xml_desc dom in
- let xml = Xml.parse_string xml in
- let devices =
- match xml with
- | Xml.Element ("domain", _, children) ->
- let devices =
- List.filter_map (
- function
- | Xml.Element ("devices", _, devices) -> Some devices
- | _ -> None
- ) children in
- List.concat devices
- | _ ->
- failwith (s_ "get_xml_desc didn't return <domain/>") in
- let rec target_dev_of = function
- | [] -> None
- | Xml.Element ("target", attrs, _) :: rest ->
- (try Some (List.assoc "dev" attrs)
- with Not_found -> target_dev_of rest)
- | _ :: rest -> target_dev_of rest
- in
- let blkdevs =
- List.filter_map (
- function
- | Xml.Element ("disk", _, children) -> target_dev_of children
- | _ -> None
- ) devices in
- let netifs =
- List.filter_map (
- function
- | Xml.Element ("interface", _, children) -> target_dev_of children
- | _ -> None
- ) devices in
- blkdevs, netifs
- with
- | Xml.Error _
- | Libvirt.Virterror _ -> [], [] (* ignore transient errs *)
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*)
-open ExtList
open Curses
open Printf
if r <> 0 then r
else compare name1 name2
in
- List.sort ~cmp doms in
+ List.sort cmp doms in
(* Print domains. *)
attron A.reverse;
if r <> 0 then r
else compare (dev1, name1) (dev2, name2)
in
- List.sort ~cmp devs in
+ List.sort cmp devs in
(* Print the header for network devices. *)
attron A.reverse;
if r <> 0 then r
else compare (dev1, name1) (dev2, name2)
in
- List.sort ~cmp devs in
+ List.sort cmp devs in
(* Print the header for block devices. *)
attron A.reverse;
(* Time to grab another historical %CPU for the list? *)
if time >= !historical_cpu_last_time +. float historical_cpu_delay
then (
- historical_cpu := percent_cpu :: List.take 10 !historical_cpu;
+ historical_cpu := percent_cpu :: list_take 10 !historical_cpu;
historical_cpu_last_time := time
);
(* [--stream] mode output functions. *)
open Printf
-open ExtList
open Utils
open Collect
| Inactive, Inactive -> 0)
in
let cmp (name1, dom1) (name2, dom2) = compare(dom1, dom2) in
- List.sort ~cmp doms in
+ List.sort cmp doms in
(*Print domains *)
let dump_domain = fun name rd
-> begin
*)
open Printf
-open ExtList
open Curses
open Opt_gettext.Gettext
let rcfile = ".virt-toprc"
-(* Hooks for CSV support (see [opt_csv.ml]). *)
-let csv_start : (string -> unit) ref =
- ref (
- fun _ -> failwith (s_"virt-top was compiled without support for CSV files")
- )
-
(* Hook for calendar support (see [opt_calendar.ml]). *)
let parse_date_time : (string -> float) ref =
ref (
and set_net_mode () = display_mode := NetDisplay
and set_block_mode () = display_mode := BlockDisplay
and set_csv filename =
- (!csv_start) filename;
+ Csv_output.csv_set_filename filename;
csv_enabled := true
and no_init_file () = init_file := NoInitFile
and set_init_file filename = init_file := InitFile filename
)
(* Main loop. *)
-let rec main_loop ((_, batch_mode, script_mode, csv_enabled, stream_mode, _, _, _)
+let rec main_loop ((conn, batch_mode, script_mode, csv_enabled, stream_mode, _, _, _)
as setup) =
let csv_flags = !csv_cpu, !csv_mem, !csv_block, !csv_net in
if not !quit || !end_time <> None then
millisleep delay
)
- done
+ done;
+ C.close conn
and get_key_press setup delay =
(* Read the next key, waiting up to 'delay' milliseconds. *)
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*)
-(* Hook for [Opt_csv] to override (if present). *)
-val csv_start : (string -> unit) ref
-
(* Hook for [Opt_calendar] to override (if present). *)
val parse_date_time : (string -> float) ref
let trim ?(test = isspace) str =
trimr (triml str)
+(* Split string on the first instance of 'sep' character. *)
+let split str sep =
+ try
+ let i = String.index str sep in
+ String.sub str 0 i, String.sub str (i+1) (String.length str - i - 1)
+ with
+ Not_found -> str, ""
+
(* Read a configuration file as a list of (key, value) pairs.
* If the config file is missing this returns an empty list.
*)
(* Convert to key, value pairs. *)
List.map (
fun (lineno, line) ->
- let key, value = ExtString.String.split line " " in
+ let key, value = split line ' ' in
lineno, trim key, trim value
) lines
else (* if n < width then *) str ^ String.make (width-n) ' '
)
+(* Take up to n elements of xs, if available. *)
+let rec list_take n xs =
+ if n <= 0 then []
+ else (
+ match xs with
+ | [] -> []
+ | x :: xs -> x :: list_take (n-1) xs
+ )
+
+let map_default f def = function
+ | None -> def
+ | Some v -> f v
+
module Show = struct
(* Show a percentage in 4 chars. *)
let percent percent =
(* Pad or truncate a string to a fixed width. *)
val pad : int -> string -> string
+(* Take up to n elements of xs, if available. *)
+val list_take : int -> 'a list -> 'a list
+
+(* Apply function f to [Some v], return default for [None] *)
+val map_default : ('a -> 'b) -> 'b -> 'a option -> 'b
+
(* Int64 operators for convenience. *)
val (+^) : int64 -> int64 -> int64
val (-^) : int64 -> int64 -> int64
virt-top (but the column headers will stay the same, so you can use
those to process the CSV file).
-Not every version of virt-top supports CSV output - it depends how the
-program was compiled (see I<README> file in the source distribution
-for details).
-
To save space you can compress your CSV files (if your shell supports
this feature, eg. I<bash>):
--- /dev/null
+/* 'top'-like tool for libvirt domains.
+ (C) Copyright 2007-2021 Richard W.M. Jones, Red Hat Inc.
+ http://libvirt.org/
+
+ 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 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, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+#include <config.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <caml/alloc.h>
+#include <caml/fail.h>
+#include <caml/memory.h>
+#include <caml/mlvalues.h>
+
+#include <libxml/parser.h>
+#include <libxml/xpath.h>
+#include <libxml/xpathInternals.h>
+
+/* xpathobj contains a list of dev attributes, return the list
+ * as an OCaml array of strings.
+ */
+static value
+get_devs (xmlDocPtr doc, xmlXPathObjectPtr xpathobj)
+{
+ CAMLparam0 ();
+ CAMLlocal2 (rv, nodev);
+ const xmlNodeSetPtr nodes = xpathobj->nodesetval;
+ size_t i, nr_nodes;
+ xmlNodePtr node;
+ char *str;
+ xmlAttrPtr attr;
+
+ if (nodes == NULL || nodes->nodeNr == 0)
+ rv = caml_alloc (0, 0);
+ else {
+ /* Count the nodes that contain data. */
+ nr_nodes = 0;
+ for (i = 0; i < nodes->nodeNr; ++i) {
+ node = nodes->nodeTab[i];
+ if (node->type != XML_ATTRIBUTE_NODE)
+ continue;
+ nr_nodes++;
+ }
+
+ rv = caml_alloc (nr_nodes, 0);
+ nr_nodes = 0;
+ for (i = 0; i < nodes->nodeNr; ++i) {
+ node = nodes->nodeTab[i];
+ if (node->type != XML_ATTRIBUTE_NODE)
+ continue;
+ attr = (xmlAttrPtr) node;
+ str = (char *) xmlNodeListGetString (doc, attr->children, 1);
+ nodev = caml_copy_string (str);
+ free (str);
+ Store_field (rv, nr_nodes, nodev);
+ nr_nodes++;
+ }
+ }
+
+ CAMLreturn (rv);
+}
+
+/* external get_blk_net_devs : string -> string array * string array */
+value
+get_blk_net_devs (value xmlv)
+{
+ CAMLparam1 (xmlv);
+ CAMLlocal3 (rv, blkdevs, netifs);
+ xmlDocPtr doc;
+ xmlXPathContextPtr xpathctx;
+ xmlXPathObjectPtr xpathobj;
+ const char *expr;
+
+ /* For security reasons, call xmlReadMemory (not xmlParseMemory) and
+ * pass XML_PARSE_NONET.
+ */
+ doc = xmlReadMemory (String_val (xmlv), caml_string_length (xmlv),
+ NULL, NULL, XML_PARSE_NONET);
+ if (doc == NULL)
+ caml_invalid_argument ("xmlReadMemory: unable to parse XML");
+
+ xpathctx = xmlXPathNewContext (doc);
+ if (xpathctx == NULL)
+ caml_invalid_argument ("xmlXPathNewContext: unable to create new context");
+
+ expr = "//devices/disk/target/@dev";
+ xpathobj = xmlXPathEvalExpression (BAD_CAST expr, xpathctx);
+ if (xpathobj == NULL)
+ caml_invalid_argument (expr);
+
+ blkdevs = get_devs (doc, xpathobj);
+ xmlXPathFreeObject (xpathobj);
+
+ expr = "//devices/interface/target/@dev";
+ xpathobj = xmlXPathEvalExpression (BAD_CAST expr, xpathctx);
+ if (xpathobj == NULL)
+ caml_invalid_argument (expr);
+
+ netifs = get_devs (doc, xpathobj);
+ xmlXPathFreeObject (xpathobj);
+
+ xmlXPathFreeContext (xpathctx);
+ xmlFreeDoc (doc);
+
+ rv = caml_alloc (2, 0);
+ Store_field (rv, 0, blkdevs);
+ Store_field (rv, 1, netifs);
+ CAMLreturn (rv);
+}
(* 'top'-like tool for libvirt domains.
- (C) Copyright 2007-2009 Richard W.M. Jones, Red Hat Inc.
+ (C) Copyright 2007-2021 Richard W.M. Jones, Red Hat Inc.
http://libvirt.org/
This program is free software; you can redistribute it and/or modify
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- This file contains all code which requires CSV support.
*)
-open Opt_gettext.Gettext
-
-(* Output channel, or None if CSV output not enabled. *)
-let chan = ref None ;;
+module D = Libvirt.Domain
-Top.csv_start :=
- fun filename ->
- chan := Some (open_out filename) ;;
+external get_blk_net_devs : string -> string array * string array
+ = "get_blk_net_devs"
-Csv_output.csv_write :=
- fun row ->
- match !chan with
- | None -> () (* CSV output not enabled. *)
- | Some chan ->
- Csv.save_out chan [row];
- (* Flush the output to the file immediately because we don't
- * explicitly close this file.
- *)
- flush chan
+let parse_device_xml dom =
+ try
+ let xml = D.get_xml_desc dom in
+ let blkdevs, netifs = get_blk_net_devs xml in
+ Array.to_list blkdevs, Array.to_list netifs
+ with
+ | Invalid_argument _
+ | Libvirt.Virterror _ -> [], [] (* ignore transient errors *)