aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2014-12-17 20:09:02 +0100
committerJan Kratochvil <jan.kratochvil@redhat.com>2014-12-17 20:09:02 +0100
commit1bc1068a0c1a1a0fad09500c97edf88467de9be0 (patch)
treed7f5dbb5b7d85614a80575c4eb8ccd118031a616
parent5e3c72e6b817a4d40a9ba551ed3c397098cdbfd4 (diff)
downloadgdb-1bc1068a0c1a1a0fad09500c97edf88467de9be0.zip
gdb-1bc1068a0c1a1a0fad09500c97edf88467de9be0.tar.gz
gdb-1bc1068a0c1a1a0fad09500c97edf88467de9be0.tar.bz2
Fix MinGW compilation
On Sun, 14 Dec 2014 07:00:28 +0100, Yao Qi wrote: The build on mingw host is broken because mingw has no mkdtemp. ../../../git/gdb/compile/compile.c: In function 'get_compile_file_tempdir': ../../../git/gdb/compile/compile.c:194:3: error: implicit declaration of function 'mkdtemp' [-Werror=implicit-function-declaration] tempdir_name = mkdtemp (tname); ^ ../../../git/gdb/compile/compile.c:194:16: error: assignment makes pointer from integer without a cast [-Werror] tempdir_name = mkdtemp (tname); ^ cc1: all warnings being treated as errors In the end I have managed to test it by Wine myself: $ wine build_win32/gdb/gdb.exe -q build_win32/gdb/gdb.exe -ex start -ex 'compile code 1' -ex 'set confirm no' -ex quit [...] Temporary breakpoint 1, main (argc=1, argv=0x241418) at ../../gdb/gdb.c:29 29 args.argc = argc; Could not load libcc1.so: Module not found. Even if it managed to load libcc1.so (it needs host-dependent name libcc1.dll) then it would soon end up at least on: default_infcall_mmap: error (_("This target does not support inferior memory allocation by mmap.")); As currently there is only: linux-tdep.c: set_gdbarch_infcall_mmap (gdbarch, linux_infcall_mmap); While one could debug Linux targets from MS-Windows host I find it somehow overcomplicated now when we are trying to get it running at least on native Linux x86*. The 'compile' project needs a larger port effort to run on MS-Windows. gdb/ChangeLog 2014-12-17 Jan Kratochvil <jan.kratochvil@redhat.com> Fix MinGW compilation. * compile/compile.c (get_compile_file_tempdir): Call error if !HAVE_MKDTEMP. * config.in: Regenerate. * configure: Regenerate. * configure.ac (AC_CHECK_FUNCS): Add mkdtemp. gdb/testsuite/ChangeLog 2014-12-17 Jan Kratochvil <jan.kratochvil@redhat.com> Fix MinGW compilation. * gdb.compile/compile-ops.exp: Update untested message if !skip_compile_feature_tests. * gdb.compile/compile-setjmp.exp: Likewise. * gdb.compile/compile-tls.exp: Likewise. * gdb.compile/compile.exp: Likewise. * lib/gdb.exp (skip_compile_feature_tests): Check also "Command not supported on this host".
-rw-r--r--gdb/ChangeLog9
-rw-r--r--gdb/compile/compile.c4
-rw-r--r--gdb/config.in3
-rwxr-xr-xgdb/configure2
-rw-r--r--gdb/configure.ac2
-rw-r--r--gdb/testsuite/ChangeLog11
-rw-r--r--gdb/testsuite/gdb.compile/compile-ops.exp2
-rw-r--r--gdb/testsuite/gdb.compile/compile-setjmp.exp2
-rw-r--r--gdb/testsuite/gdb.compile/compile-tls.exp2
-rw-r--r--gdb/testsuite/gdb.compile/compile.exp2
-rw-r--r--gdb/testsuite/lib/gdb.exp3
11 files changed, 36 insertions, 6 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b672dc3..42ace6d 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,12 @@
+2014-12-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Fix MinGW compilation.
+ * compile/compile.c (get_compile_file_tempdir): Call error if
+ !HAVE_MKDTEMP.
+ * config.in: Regenerate.
+ * configure: Regenerate.
+ * configure.ac (AC_CHECK_FUNCS): Add mkdtemp.
+
2014-12-17 Doug Evans <xdje42@gmail.com>
* valops.c (value_maybe_namespace_elt): Remove redundant call to
diff --git a/gdb/compile/compile.c b/gdb/compile/compile.c
index 6d3d16e..414fc35 100644
--- a/gdb/compile/compile.c
+++ b/gdb/compile/compile.c
@@ -191,7 +191,11 @@ get_compile_file_tempdir (void)
strcpy (tname, TEMPLATE);
#undef TEMPLATE
+#ifdef HAVE_MKDTEMP
tempdir_name = mkdtemp (tname);
+#else
+ error (_("Command not supported on this host."));
+#endif
if (tempdir_name == NULL)
perror_with_name (_("Could not make temporary directory"));
diff --git a/gdb/config.in b/gdb/config.in
index fb3c315..9d3f32d 100644
--- a/gdb/config.in
+++ b/gdb/config.in
@@ -231,6 +231,9 @@
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
+/* Define to 1 if you have the `mkdtemp' function. */
+#undef HAVE_MKDTEMP
+
/* Define to 1 if you have a working `mmap' system call. */
#undef HAVE_MMAP
diff --git a/gdb/configure b/gdb/configure
index 8985230..7ff74ba 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -10496,7 +10496,7 @@ for ac_func in getrusage getuid getgid \
sigaction sigprocmask sigsetmask socketpair \
ttrace wborder wresize setlocale iconvlist libiconvlist btowc \
setrlimit getrlimit posix_madvise waitpid \
- ptrace64 sigaltstack
+ ptrace64 sigaltstack mkdtemp
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
diff --git a/gdb/configure.ac b/gdb/configure.ac
index c933e3f..e972ac2 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -1317,7 +1317,7 @@ AC_CHECK_FUNCS([getrusage getuid getgid \
sigaction sigprocmask sigsetmask socketpair \
ttrace wborder wresize setlocale iconvlist libiconvlist btowc \
setrlimit getrlimit posix_madvise waitpid \
- ptrace64 sigaltstack])
+ ptrace64 sigaltstack mkdtemp])
AM_LANGINFO_CODESET
GDB_AC_COMMON
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 9e69efc..f749d2e 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,14 @@
+2014-12-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Fix MinGW compilation.
+ * gdb.compile/compile-ops.exp: Update untested message if
+ !skip_compile_feature_tests.
+ * gdb.compile/compile-setjmp.exp: Likewise.
+ * gdb.compile/compile-tls.exp: Likewise.
+ * gdb.compile/compile.exp: Likewise.
+ * lib/gdb.exp (skip_compile_feature_tests): Check also "Command not
+ supported on this host".
+
2014-12-16 Doug Evans <xdje42@gmail.com>
* boards/stabs.exp: New file.
diff --git a/gdb/testsuite/gdb.compile/compile-ops.exp b/gdb/testsuite/gdb.compile/compile-ops.exp
index c295836..4fc950f 100644
--- a/gdb/testsuite/gdb.compile/compile-ops.exp
+++ b/gdb/testsuite/gdb.compile/compile-ops.exp
@@ -411,7 +411,7 @@ if ![runto func] {
}
if {[skip_compile_feature_tests]} {
- untested "could not find libcc1 shared library"
+ untested "compile command not supported (could not find libcc1 shared library?)"
return -1
}
diff --git a/gdb/testsuite/gdb.compile/compile-setjmp.exp b/gdb/testsuite/gdb.compile/compile-setjmp.exp
index 557c1f0..8f876e2 100644
--- a/gdb/testsuite/gdb.compile/compile-setjmp.exp
+++ b/gdb/testsuite/gdb.compile/compile-setjmp.exp
@@ -24,7 +24,7 @@ if ![runto_main] {
}
if {[skip_compile_feature_tests]} {
- untested "could not find libcc1 shared library"
+ untested "compile command not supported (could not find libcc1 shared library?)"
return -1
}
diff --git a/gdb/testsuite/gdb.compile/compile-tls.exp b/gdb/testsuite/gdb.compile/compile-tls.exp
index e9613f5..d95a351 100644
--- a/gdb/testsuite/gdb.compile/compile-tls.exp
+++ b/gdb/testsuite/gdb.compile/compile-tls.exp
@@ -27,7 +27,7 @@ if ![runto_main] then {
}
if {[skip_compile_feature_tests]} {
- untested "could not find libcc1 shared library"
+ untested "compile command not supported (could not find libcc1 shared library?)"
return -1
}
diff --git a/gdb/testsuite/gdb.compile/compile.exp b/gdb/testsuite/gdb.compile/compile.exp
index d0dd791..040b727 100644
--- a/gdb/testsuite/gdb.compile/compile.exp
+++ b/gdb/testsuite/gdb.compile/compile.exp
@@ -57,7 +57,7 @@ if ![runto_main] {
}
if {[skip_compile_feature_tests]} {
- untested "could not find libcc1 shared library"
+ untested "compile command not supported (could not find libcc1 shared library?)"
return -1
}
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index 3a3a396..08087f2 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -2538,6 +2538,9 @@ proc skip_compile_feature_tests {} {
"Could not load libcc1.*\r\n$gdb_prompt $" {
set result 1
}
+ -re "Command not supported on this host\\..*\r\n$gdb_prompt $" {
+ set result 1
+ }
-re "\r\n$gdb_prompt $" {
}
}