aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2022-05-09 00:34:28 -0700
committerRichard Henderson <richard.henderson@linaro.org>2022-05-09 00:34:28 -0700
commit7e314198157bf38ae7fdd5a000b8795db015d582 (patch)
tree099afbbee6ffbcef6da5c346a9efe9f94ce9d264 /scripts
parent554623226f800acf48a2ed568900c1c968ec9a8b (diff)
parentddc5a6cc70398ed7ec76220d59c123d8cb14b0ad (diff)
downloadqemu-7e314198157bf38ae7fdd5a000b8795db015d582.zip
qemu-7e314198157bf38ae7fdd5a000b8795db015d582.tar.gz
qemu-7e314198157bf38ae7fdd5a000b8795db015d582.tar.bz2
Merge tag 'pull-request-2022-05-09' of https://gitlab.com/thuth/qemu into staging
* Remove redundant/obsolete x86, arm and ppc disassemblers (Capstone is better) * Limit some Xen-related code to builds where Xen is really available * Remove hxtool-conv.pl and remove STEXI/ETEXI references from the docs * Update MinGW and OpenBSD to a more recent version in the CI * Warn user if the -vga flag is passed but no vga device is created # -----BEGIN PGP SIGNATURE----- # # iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmJ4s8wRHHRodXRoQHJl # ZGhhdC5jb20ACgkQLtnXdP5wLbVszRAAjIJVvJgWJUlRqap/SFV3tX89jIhDKi3+ # luTBhjsDsNoFLd6ARwpykyM9dFF5sEqAHr7tjWtL7nuJIEjsnhwcUi/WUhzfkp44 # mEjmFaZL9WqXE3CD5Hd3HGhXpt5830Nmza59UvLEslLzNrmrEqQVR8cPVmmNCkG9 # diS+tata2NI1p5CF2ScxpxCfxNbDrhrhWN9cU76BM6hut1KH1oA4+fdn2QrSr610 # Y6YWvw+NlzXt9yCW2qDSUlLJvKT4VQ8r4bZ6ab/SiYzw0aHSFK14+150oyPYl91t # dN7LAyDrheZQ/R46lb76fI57kTmXRQLK0WtxK9dRJTF0hgpGgAEbMNdOOz07oQ45 # oBTFbIa7+mydgmfMZ1uZGSpUI55OOb0VE/N974MJOgXCjlFGLn0YaZezBErViBLd # ugILNle3IbZWDOwQv4n1fT3VB+2s+I1E3/qPzeDSbGAIkWm41g/4MHpkc5JGMb0j # dquDo98YdEW/gpFUSFk2u859MA/jMlla77KsOcHpBhKOvLnQtxse+Bi5If4NiR+K # NPBObMLd2j5rFtUUfDQ1fXEeAkZiITbHNR4yOiOu1tuyTm214xqMuc0/JpqWf+cr # +fd/i17j2M9Btn7EZePemuyAOqLec41QfOGid320yHS75nhBCdVkDA+g7J0MlOVF # tFBkhBJ0F+U= # =8A+p # -----END PGP SIGNATURE----- # gpg: Signature made Sun 08 May 2022 11:25:16 PM PDT # gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5 # gpg: issuer "thuth@redhat.com" # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [undefined] # gpg: aka "Thomas Huth <thuth@redhat.com>" [undefined] # gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown] # gpg: aka "Thomas Huth <huth@tuxfamily.org>" [undefined] # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5 * tag 'pull-request-2022-05-09' of https://gitlab.com/thuth/qemu: docs/devel/writing-monitor-commands: Replace obsolete STEXI/ETEXI tags Warn user if the vga flag is passed but no vga device is created tests/vm: update openbsd to release 7.1 gitlab-ci: Upgrade mingw base package. cirrus/win32: upgrade mingw base packages doc: remove hxtool-conv.pl qemu-options: Limit the -xen options to x86 and arm softmmu/vl: Fence 'xenfb' if Xen support is not compiled in disas: Remove old libopcode ppc disassembler disas: Remove old libopcode i386 disassembler disas: Remove old libopcode arm disassembler Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/hxtool-conv.pl137
1 files changed, 0 insertions, 137 deletions
diff --git a/scripts/hxtool-conv.pl b/scripts/hxtool-conv.pl
deleted file mode 100755
index eede40b..0000000
--- a/scripts/hxtool-conv.pl
+++ /dev/null
@@ -1,137 +0,0 @@
-#!/usr/bin/perl -w
-#
-# Script to convert .hx file STEXI/ETEXI blocks to SRST/ERST
-#
-# Copyright (C) 2020 Linaro
-#
-# This work is licensed under the terms of the GNU GPL, version 2 or
-# (at your option) any later version. See the COPYING file in the
-# top-level directory.
-
-# This script was only ever intended as a one-off conversion operation.
-# Please excuse the places where it is a bit hacky.
-# Some manual intervention after the conversion is expected, as are
-# some warnings from makeinfo.
-# Warning: this script is not idempotent: don't try to run it on
-# a .hx file that already has SRST/ERST sections.
-
-# Expected usage:
-# scripts/hxtool-conv.pl file.hx > file.hx.new
-
-use utf8;
-
-my $reading_texi = 0;
-my $texiblock = '';
-my @tables = ();
-
-sub update_tables($) {
- my ($texi) = @_;
- # Update our list of open table directives: every @table
- # line in the texi fragment is added to the list, and every
- # @end table line means we remove an entry from the list.
- # If this fragment had a completely self contained table with
- # both the @table and @end table lines, this will be a no-op.
- foreach (split(/\n/, $texi)) {
- push @tables, $_ if /^\@table/;
- pop @tables if /^\@end table/;
- }
-}
-
-sub only_table_directives($) {
- # Return true if every line in the fragment is a start or end table directive
- my ($texi) = @_;
- foreach (split(/\n/, $texi)) {
- return 0 unless /^\@table/ or /^\@end table/;
- }
- return 1;
-}
-
-sub output_rstblock($) {
- # Write the output to /tmp/frag.texi, wrapped in whatever current @table
- # lines we need.
- my ($texi) = @_;
-
- # As a special case, if this fragment is only table directives and
- # nothing else, update our set of open table directives but otherwise
- # ignore it. This avoids emitting an empty SRST/ERST block.
- if (only_table_directives($texi)) {
- update_tables($texi);
- return;
- }
-
- open(my $fragfh, '>', '/tmp/frag.texi');
- # First output the currently active set of open table directives
- print $fragfh join("\n", @tables);
- # Next, update our list of open table directives.
- # We need to do this before we emit the closing table directives
- # so that we emit the right number if this fragment had an
- # unbalanced set of directives.
- update_tables($texi);
- # Then emit the texi fragment itself.
- print $fragfh "\n$texi\n";
- # Finally, add the necessary closing table directives.
- print $fragfh "\@end table\n" x scalar @tables;
- close $fragfh;
-
- # Now invoke makeinfo/pandoc on it and slurp the results into a string
- open(my $fh, '-|', "makeinfo --force -o - --docbook "
- . "-D 'qemu_system_x86 QEMU_SYSTEM_X86_MACRO' "
- . "-D 'qemu_system QEMU_SYSTEM_MACRO' /tmp/frag.texi "
- . " | pandoc -f docbook -t rst")
- or die "can't start makeinfo/pandoc: $!";
-
- binmode $fh, ':encoding(utf8)';
-
- print "SRST\n";
-
- # Slurp the whole thing into a string so we can do multiline
- # string matches on it.
- my $rst = do {
- local $/ = undef;
- <$fh>;
- };
- $rst =~ s/^- − /- /gm;
- $rst =~ s/“/"/gm;
- $rst =~ s/”/"/gm;
- $rst =~ s/‘/'/gm;
- $rst =~ s/’/'/gm;
- $rst =~ s/QEMU_SYSTEM_MACRO/|qemu_system|/g;
- $rst =~ s/QEMU_SYSTEM_X86_MACRO/|qemu_system_x86|/g;
- $rst =~ s/(?=::\n\n +\|qemu)/.. parsed-literal/g;
- $rst =~ s/:\n\n::$/::/gm;
-
- # Fix up the invalid reference format makeinfo/pandoc emit:
- # `Some string here <#anchorname>`__
- # should be:
- # :ref:`anchorname`
- $rst =~ s/\`[^<`]+\<\#([^>]+)\>\`__/:ref:`$1`/gm;
- print $rst;
-
- close $fh or die "error on close: $!";
- print "ERST\n";
-}
-
-# Read the whole .hx input file.
-while (<>) {
- # Always print the current line
- print;
- if (/STEXI/) {
- $reading_texi = 1;
- $texiblock = '';
- next;
- }
- if (/ETEXI/) {
- $reading_texi = 0;
- # dump RST version of block
- output_rstblock($texiblock);
- next;
- }
- if ($reading_texi) {
- # Accumulate the texi into a string
- # but drop findex entries as they will confuse makeinfo
- next if /^\@findex/;
- $texiblock .= $_;
- }
-}
-
-die "Unexpectedly still in texi block at EOF" if $reading_texi;