From 1675a733536d1aec2020011e5e522497a442561a Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Wed, 13 Apr 2016 09:13:55 +1000 Subject: gdb: Build with system readline and use MinGW compilers. Select MinGW compilers for Windows builds on Windows. Use the system readline rather than GDB's which does not handle cmd.exe correctly. Closes #2681. --- source-builder/config/gdb-7-1.cfg | 7 ++++++- source-builder/sb/windows.py | 10 ++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/source-builder/config/gdb-7-1.cfg b/source-builder/config/gdb-7-1.cfg index 0fef5b3..21591b5 100644 --- a/source-builder/config/gdb-7-1.cfg +++ b/source-builder/config/gdb-7-1.cfg @@ -7,10 +7,14 @@ # # See if the simulator has been disabled for Windows. # +# Build using the system's readline, it is in better shape +# than GDB's one with MSYS2. +# %if %{_host_os} == win32 %if %{defined win32-gdb-disable-sim} %define gdb-disable-sim 1 - %endif + %endif + %define with_system_readline 1 %endif # @@ -107,6 +111,7 @@ BuildRoot: %{_tmppath}/%{name}-root-%(%{__id_u} -n) --build=%{_build} --host=%{_host} \ --target=%{_target} \ --verbose --disable-nls \ + %{?with_system_readline:--with-system-readline} \ --without-included-gettext \ --disable-win32-registry \ --disable-werror \ diff --git a/source-builder/sb/windows.py b/source-builder/sb/windows.py index 53a47ac..f4eb85c 100644 --- a/source-builder/sb/windows.py +++ b/source-builder/sb/windows.py @@ -45,6 +45,10 @@ def load(): uname = 'mingw32' machine = 'w%s' % (machsize) + # Set the C/C++ compilers we want to use. + cc = '%s-%s-%s-gcc' % (hosttype, machine, uname) + cxx = '%s-%s-%s-g++' % (hosttype, machine, uname) + # See if this is actually MSYS2/Cygwin Python if os.name == 'posix': _uname = os.uname() @@ -54,6 +58,8 @@ def load(): hosttype = _uname[4] uname = 'cygwin' machine = 'pc' + cc = 'gcc' + cxx = 'g++' else: raise error.general('invalid POSIX python for Windows') @@ -91,13 +97,13 @@ def load(): '__bzip2': ('exe', 'required', 'bzip2'), '__bison': ('exe', 'required', 'bison'), '__cat': ('exe', 'required', 'cat'), - '__cc': ('exe', 'required', 'gcc'), + '__cc': ('exe', 'required', cc), '__chgrp': ('exe', 'required', 'chgrp'), '__chmod': ('exe', 'required', 'chmod'), '__chown': ('exe', 'required', 'chown'), '__cp': ('exe', 'required', 'cp'), '__cvs': ('exe', 'optional', 'cvs'), - '__cxx': ('exe', 'required', 'g++'), + '__cxx': ('exe', 'required', cxx), '__flex': ('exe', 'required', 'flex'), '__git': ('exe', 'required', 'git'), '__grep': ('exe', 'required', 'grep'), -- cgit v1.2.3