 efa3901e14
			
		
	
	
		efa3901e14
		
	
	
	
	
		
			
			This fixes some compiler warnings with compiler flag
-Wmissing-variable-declarations (tested with clang):
    aarch64_be-linux-user-gdbstub-xml.c:564:19: warning: no previous extern declaration for non-static variable 'xml_builtin' [-Wmissing-variable-declarations]
    aarch64-linux-user-gdbstub-xml.c:564:19: warning: no previous extern declaration for non-static variable 'xml_builtin' [-Wmissing-variable-declarations]
    aarch64-softmmu-gdbstub-xml.c:1763:19: warning: no previous extern declaration for non-static variable 'xml_builtin' [-Wmissing-variable-declarations]
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
		
	
			
		
			
				
	
	
		
			70 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| # Convert text files to compilable C arrays.
 | |
| #
 | |
| # Copyright (C) 2007 Free Software Foundation, Inc.
 | |
| #
 | |
| # This file is part of GDB.
 | |
| #
 | |
| # 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, see <http://www.gnu.org/licenses/>.
 | |
| 
 | |
| if test -z "$1"; then
 | |
|   echo "Usage: $0 INPUTFILE..."
 | |
|   exit 1
 | |
| fi
 | |
| 
 | |
| for input; do
 | |
|   arrayname=xml_feature_$(echo $input | sed 's,.*/,,; s/[-.]/_/g')
 | |
| 
 | |
|   ${AWK:-awk} 'BEGIN { n = 0
 | |
|       printf "#include \"qemu/osdep.h\"\n"
 | |
|       print "static const char '$arrayname'[] = {"
 | |
|       for (i = 0; i < 255; i++)
 | |
|         _ord_[sprintf("%c", i)] = i
 | |
|     } {
 | |
|       split($0, line, "");
 | |
|       printf "  "
 | |
|       for (i = 1; i <= length($0); i++) {
 | |
|         c = line[i]
 | |
|         if (c == "'\''") {
 | |
|           printf "'\''\\'\'''\'', "
 | |
|         } else if (c == "\\") {
 | |
|           printf "'\''\\\\'\'', "
 | |
|         } else if (_ord_[c] >= 32 && _ord_[c] < 127) {
 | |
| 	  printf "'\''%s'\'', ", c
 | |
|         } else {
 | |
|           printf "'\''\\%03o'\'', ", _ord_[c]
 | |
|         }
 | |
|         if (i % 10 == 0)
 | |
|           printf "\n   "
 | |
|       }
 | |
|       printf "'\''\\n'\'', \n"
 | |
|     } END {
 | |
|       print "  0 };"
 | |
|     }' < $input
 | |
| done
 | |
| 
 | |
| echo
 | |
| echo '#include "exec/gdbstub.h"'
 | |
| echo "const char *const xml_builtin[][2] = {"
 | |
| 
 | |
| for input; do
 | |
|   basename=$(echo $input | sed 's,.*/,,')
 | |
|   arrayname=xml_feature_$(echo $input | sed 's,.*/,,; s/[-.]/_/g')
 | |
|   echo "  { \"$basename\", $arrayname },"
 | |
| done
 | |
| 
 | |
| echo "  { (char *)0, (char *)0 }"
 | |
| echo "};"
 |