ui: console fixes

drop pixman submodule
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJZuO8CAAoJEEy22O7T6HE4rCkP/3351wPWCKXZIenGyEs4l84j
 jf2tpbcDlaFPzVYyy38tgS062Ls5mh9fkea+Fxx36O9Ncto/cNp76QP9pfXvNSWj
 LUtnjYfgiXzV7FrT3+3Wcw3vEzPZXQU9GHLEfS8gjs9/nFjhSop7qq1GHsUORznG
 lNY3VIH+wQ/PlYSjV24cQnI5zRlcTM5N/zxk6UJVduxldQR/x/gnc6fUmJRX8adx
 aVNy7eoz9QYvLO0DaeJIyqyRhzFHCHGz3uY3pxF59s27iha6lgfEpD37I9LBT2/h
 ao/LE6zFZ9gT0gl8Mqp6g2hj1cXgg3fRNPfCPS9o2MexRZJVVyUBK2VQt7IpONJK
 nO22IynU7J1U8c094EyLzAAUaO/yX65xIoHNlwSOP006W0EBjdbTDZ1qm2xwGTtr
 Ehigjr3WZLptXjCmWBEuFxOe9MaBc8iE1FOtZEsSFrnosKruXy+8pXh5gwjhBvwe
 HdST1NVEpKN0H6NK/uixEIlI4SRxzjtYfezDi4DvG+wekCX6jxxncyMFO886uDh5
 sRS/DTztlseX4S8p15MUU1Et56GjSqDKsK5dO9cvFToBVGgRysb/JRrs8DBEiSBi
 /ZodKHzMpCVSFdfAdzEcJUPBwnpzaLj4T26gFWwu3PPh8T27AJJwSbVfbAa8wS7S
 KJ8y+ijhnprN1LoVVPcs
 =ZZNe
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/kraxel/tags/ui-20170913-pull-request' into staging

ui: console fixes
drop pixman submodule

# gpg: Signature made Wed 13 Sep 2017 09:40:34 BST
# gpg:                using RSA key 0x4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
# gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
# gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/ui-20170913-pull-request:
  console: add question-mark escape operator
  console: fix dpy_gfx_replace_surface assert
  pixman: drop configure switches
  pixman: drop submodule

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Peter Maydell 2017-09-14 13:44:17 +01:00
commit 0c9ddf716e
6 changed files with 7 additions and 60 deletions

3
.gitmodules vendored
View File

@ -22,9 +22,6 @@
[submodule "roms/sgabios"] [submodule "roms/sgabios"]
path = roms/sgabios path = roms/sgabios
url = git://git.qemu-project.org/sgabios.git url = git://git.qemu-project.org/sgabios.git
[submodule "pixman"]
path = pixman
url = git://anongit.freedesktop.org/pixman
[submodule "dtc"] [submodule "dtc"]
path = dtc path = dtc
url = git://git.qemu-project.org/dtc.git url = git://git.qemu-project.org/dtc.git

View File

@ -325,15 +325,6 @@ $(SOFTMMU_SUBDIR_RULES): config-all-devices.mak
subdir-%: subdir-%:
$(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" all,) $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C $* V="$(V)" TARGET_DIR="$*/" all,)
subdir-pixman: pixman/Makefile
$(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C pixman V="$(V)" all,)
pixman/Makefile: $(SRC_PATH)/pixman/configure
(cd pixman; CFLAGS="$(CFLAGS) -fPIC $(extra_cflags) $(extra_ldflags)" $(SRC_PATH)/pixman/configure $(AUTOCONF_HOST) --disable-gtk --disable-shared --enable-static)
$(SRC_PATH)/pixman/configure:
(cd $(SRC_PATH)/pixman; autoreconf -v --install)
DTC_MAKE_ARGS=-I$(SRC_PATH)/dtc VPATH=$(SRC_PATH)/dtc -C dtc V="$(V)" LIBFDT_srcdir=$(SRC_PATH)/dtc/libfdt DTC_MAKE_ARGS=-I$(SRC_PATH)/dtc VPATH=$(SRC_PATH)/dtc -C dtc V="$(V)" LIBFDT_srcdir=$(SRC_PATH)/dtc/libfdt
DTC_CFLAGS=$(CFLAGS) $(QEMU_CFLAGS) DTC_CFLAGS=$(CFLAGS) $(QEMU_CFLAGS)
DTC_CPPFLAGS=-I$(BUILD_DIR)/dtc -I$(SRC_PATH)/dtc -I$(SRC_PATH)/dtc/libfdt DTC_CPPFLAGS=-I$(BUILD_DIR)/dtc -I$(SRC_PATH)/dtc -I$(SRC_PATH)/dtc/libfdt
@ -541,7 +532,6 @@ distclean: clean
rm -rf $$d || exit 1 ; \ rm -rf $$d || exit 1 ; \
done done
rm -Rf .sdk rm -Rf .sdk
if test -f pixman/config.log; then $(MAKE) -C pixman distclean; fi
if test -f dtc/version_gen.h; then $(MAKE) $(DTC_MAKE_ARGS) clean; fi if test -f dtc/version_gen.h; then $(MAKE) $(DTC_MAKE_ARGS) clean; fi
KEYMAPS=da en-gb et fr fr-ch is lt modifiers no pt-br sv \ KEYMAPS=da en-gb et fr fr-ch is lt modifiers no pt-br sv \

44
configure vendored
View File

@ -287,7 +287,6 @@ curses=""
docs="" docs=""
fdt="" fdt=""
netmap="no" netmap="no"
pixman=""
sdl="" sdl=""
sdlabi="" sdlabi=""
virtfs="" virtfs=""
@ -923,12 +922,6 @@ for opt do
# configure to be used by RPM and similar macros that set # configure to be used by RPM and similar macros that set
# lots of directory switches by default. # lots of directory switches by default.
;; ;;
--with-system-pixman) pixman="system"
;;
--without-system-pixman) pixman="internal"
;;
--without-pixman) pixman="none"
;;
--disable-sdl) sdl="no" --disable-sdl) sdl="no"
;; ;;
--enable-sdl) sdl="yes" --enable-sdl) sdl="yes"
@ -3295,39 +3288,15 @@ fi
########################################## ##########################################
# pixman support probe # pixman support probe
if test "$pixman" = ""; then if test "$want_tools" = "no" -a "$softmmu" = "no"; then
if test "$want_tools" = "no" -a "$softmmu" = "no"; then
pixman="none"
elif $pkg_config --atleast-version=0.21.8 pixman-1 > /dev/null 2>&1; then
pixman="system"
else
pixman="internal"
fi
fi
if test "$pixman" = "none"; then
if test "$want_tools" != "no" -o "$softmmu" != "no"; then
error_exit "pixman disabled but system emulation or tools build" \
"enabled. You can turn off pixman only if you also" \
"disable all system emulation targets and the tools" \
"build with '--disable-tools --disable-system'."
fi
pixman_cflags= pixman_cflags=
pixman_libs= pixman_libs=
elif test "$pixman" = "system"; then elif $pkg_config --atleast-version=0.21.8 pixman-1 > /dev/null 2>&1; then
# pixman version has been checked above
pixman_cflags=$($pkg_config --cflags pixman-1) pixman_cflags=$($pkg_config --cflags pixman-1)
pixman_libs=$($pkg_config --libs pixman-1) pixman_libs=$($pkg_config --libs pixman-1)
else else
if test ! -d ${source_path}/pixman/pixman; then error_exit "pixman >= 0.21.8 not present." \
error_exit "pixman >= 0.21.8 not present. Your options:" \ "Please install the pixman devel package."
" (1) Preferred: Install the pixman devel package (any recent" \
" distro should have packages as Xorg needs pixman too)." \
" (2) Fetch the pixman submodule, using:" \
" git submodule update --init pixman"
fi
mkdir -p pixman/pixman
pixman_cflags="-I\$(SRC_PATH)/pixman/pixman -I\$(BUILD_DIR)/pixman/pixman"
pixman_libs="-L\$(BUILD_DIR)/pixman/pixman/.libs -lpixman-1"
fi fi
########################################## ##########################################
@ -5300,7 +5269,6 @@ echo "static build $static"
if test "$darwin" = "yes" ; then if test "$darwin" = "yes" ; then
echo "Cocoa support $cocoa" echo "Cocoa support $cocoa"
fi fi
echo "pixman $pixman"
echo "SDL support $sdl $(echo_version $sdl $sdlversion)" echo "SDL support $sdl $(echo_version $sdl $sdlversion)"
echo "GTK support $gtk $(echo_version $gtk $gtk_version)" echo "GTK support $gtk $(echo_version $gtk $gtk_version)"
echo "GTK GL support $gtk_gl" echo "GTK GL support $gtk_gl"
@ -6529,10 +6497,6 @@ echo "QEMU_CFLAGS+=$cflags" >> $config_target_mak
done # for target in $targets done # for target in $targets
if [ "$pixman" = "internal" ]; then
echo "config-host.h: subdir-pixman" >> $config_host_mak
fi
if [ "$dtc_internal" = "yes" ]; then if [ "$dtc_internal" = "yes" ]; then
echo "config-host.h: subdir-dtc" >> $config_host_mak echo "config-host.h: subdir-dtc" >> $config_host_mak
fi fi

1
pixman

@ -1 +0,0 @@
Subproject commit 87eea99e443b389c978cf37efc52788bf03a0ee0

View File

@ -880,8 +880,9 @@ static void console_putchar(QemuConsole *s, int ch)
} else { } else {
if (s->nb_esc_params < MAX_ESC_PARAMS) if (s->nb_esc_params < MAX_ESC_PARAMS)
s->nb_esc_params++; s->nb_esc_params++;
if (ch == ';') if (ch == ';' || ch == '?') {
break; break;
}
trace_console_putchar_csi(s->esc_params[0], s->esc_params[1], trace_console_putchar_csi(s->esc_params[0], s->esc_params[1],
ch, s->nb_esc_params); ch, s->nb_esc_params);
s->state = TTY_STATE_NORM; s->state = TTY_STATE_NORM;
@ -1540,7 +1541,7 @@ void dpy_gfx_replace_surface(QemuConsole *con,
DisplaySurface *old_surface = con->surface; DisplaySurface *old_surface = con->surface;
DisplayChangeListener *dcl; DisplayChangeListener *dcl;
assert(old_surface != surface); assert(old_surface != surface || surface == NULL);
con->surface = surface; con->surface = surface;
QLIST_FOREACH(dcl, &s->listeners, next) { QLIST_FOREACH(dcl, &s->listeners, next) {

View File

@ -96,17 +96,13 @@ int qemu_pixman_get_type(int rshift, int gshift, int bshift)
if (bshift == 0) { if (bshift == 0) {
type = PIXMAN_TYPE_ARGB; type = PIXMAN_TYPE_ARGB;
} else { } else {
#if PIXMAN_VERSION >= PIXMAN_VERSION_ENCODE(0, 21, 8)
type = PIXMAN_TYPE_RGBA; type = PIXMAN_TYPE_RGBA;
#endif
} }
} else if (rshift < gshift && gshift < bshift) { } else if (rshift < gshift && gshift < bshift) {
if (rshift == 0) { if (rshift == 0) {
type = PIXMAN_TYPE_ABGR; type = PIXMAN_TYPE_ABGR;
} else { } else {
#if PIXMAN_VERSION >= PIXMAN_VERSION_ENCODE(0, 16, 0)
type = PIXMAN_TYPE_BGRA; type = PIXMAN_TYPE_BGRA;
#endif
} }
} }
return type; return type;