]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
build: fix mingw ssize_t, syntax check
authorEric Blake <eblake@redhat.com>
Fri, 30 Mar 2012 16:28:03 +0000 (10:28 -0600)
committerEric Blake <eblake@redhat.com>
Fri, 30 Mar 2012 17:10:54 +0000 (11:10 -0600)
We are so close to a release that we don't want to pull in a
gnulib submodule update and risk regressions, since there has
been a lot of other gnulib churn upstream.  However, there are
a couple of gnulib issues that are worth fixing in isolation,
by applying local patches to gnulib.

There was an upstream gnulib bug in maint.mk that rendered most
of our syntax checks ineffective (and fixing it flushed out a
minor bug in our code):
https://lists.gnu.org/archive/html/bug-gnulib/2012-03/msg00194.html

There is still an upstream bug where gnulib uses the wrong type
for ssize_t on mingw; we need the fix now even though it has not
yet been accepted into gnulib:
https://lists.gnu.org/archive/html/bug-gnulib/2012-03/msg00188.html

* gnulib/local/top/maint.mk.diff: Pick up upstream gnulib
maint.mk.
* gnulib/local/m4/ssize_t.m4.diff: Work around gnulib bug.
* src/libvirt.c: Remove unused header.
* cfg.mk
(exclude_file_name_regexp--sc_prohibit_empty_lines_at_EOF): Exempt
gnulib local files.

cfg.mk
gnulib/local/m4/ssize_t.m4.diff [new file with mode: 0644]
gnulib/local/top/maint.mk.diff [new file with mode: 0644]
src/libvirt.c

diff --git a/cfg.mk b/cfg.mk
index bf7274f01d55767f5a6aa5e4cc1a376d046e5b70..71e9a1d9014d7568bd727271cdb6877484c3451d 100644 (file)
--- a/cfg.mk
+++ b/cfg.mk
@@ -769,7 +769,7 @@ exclude_file_name_regexp--sc_prohibit_close = \
   (\.p[yl]$$|^docs/|^(src/util/virfile\.c|src/libvirt\.c)$$)
 
 exclude_file_name_regexp--sc_prohibit_empty_lines_at_EOF = \
-  (^tests/qemuhelpdata/|\.(gif|ico|png)$$)
+  (^tests/qemuhelpdata/|\.(gif|ico|png|diff)$$)
 
 _src2=src/(util/command|libvirt|lxc/lxc_controller)
 exclude_file_name_regexp--sc_prohibit_fork_wrappers = \
diff --git a/gnulib/local/m4/ssize_t.m4.diff b/gnulib/local/m4/ssize_t.m4.diff
new file mode 100644 (file)
index 0000000..d0ae286
--- /dev/null
@@ -0,0 +1,34 @@
+diff --git i/m4/ssize_t.m4 w/m4/ssize_t.m4
+index 209d64c..5ea72a1 100644
+--- i/m4/ssize_t.m4
++++ w/m4/ssize_t.m4
+@@ -1,4 +1,4 @@
+-# ssize_t.m4 serial 5 (gettext-0.18.2)
++# ssize_t.m4 serial 6 (gettext-0.18.2)
+ dnl Copyright (C) 2001-2003, 2006, 2010-2012 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -17,7 +17,21 @@ AC_DEFUN([gt_TYPE_SSIZE_T],
+             return !x;]])],
+        [gt_cv_ssize_t=yes], [gt_cv_ssize_t=no])])
+   if test $gt_cv_ssize_t = no; then
+-    AC_DEFINE([ssize_t], [int],
+-              [Define as a signed type of the same size as size_t.])
++    AC_CACHE_CHECK([for rank of size_t], [gt_cv_size_t_rank],
++      [AC_COMPILE_IFELSE(
++        [AC_LANG_PROGRAM(
++          [[#include <sys/types.h>
++          #ifdef __cplusplus
++          extern "C" {
++          #endif
++            int foo(unsigned long bar);
++            int foo(size_t bar);
++          #ifdef __cplusplus
++          }
++          #endif
++          ]])],
++       [gt_cv_size_t_rank=long], [gt_cv_size_t_rank=int])])
++    AC_DEFINE_UNQUOTED([ssize_t], [$gt_cv_size_t_rank],
++              [Define as a signed type of the same size and rank as size_t.])
+   fi
+ ])
diff --git a/gnulib/local/top/maint.mk.diff b/gnulib/local/top/maint.mk.diff
new file mode 100644 (file)
index 0000000..85e97ae
--- /dev/null
@@ -0,0 +1,32 @@
+diff --git i/top/maint.mk w/top/maint.mk
+index 4cbd5f4..2228a37 100644
+--- i/top/maint.mk
++++ w/top/maint.mk
+@@ -279,7 +279,7 @@ define _sc_search_regexp
+    if test -n "$$files"; then                                         \
+      if test -n "$$prohibit"; then                                    \
+        grep $$with_grep_options $(_ignore_case) -nE "$$prohibit" $$files \
+-         | grep -vE "$${exclude-^$$}"                                 \
++         | grep -vE "$${exclude:-^$$}"                                        \
+          && { msg="$$halt" $(_sc_say_and_exit) } || :;                        \
+      else                                                             \
+        grep $$with_grep_options $(_ignore_case) -LE "$$require" $$files \
+@@ -455,7 +455,8 @@ sc_prohibit_quotearg_without_use:
+
+ # Don't include quote.h unless you use one of its functions.
+ sc_prohibit_quote_without_use:
+-      @h='quote.h' re='\<quote(_n)? *\(' $(_sc_header_without_use)
++      @h='quote.h' re='\<quote((_n)? *\(|_quoting_options\>)' \
++        $(_sc_header_without_use)
+
+ # Don't include this header unless you use one of its functions.
+ sc_prohibit_long_options_without_use:
+@@ -1332,7 +1333,7 @@ alpha beta stable: $(local-check) writable-files $(submodule-checks)
+       $(MAKE) vc-diff-check
+       $(MAKE) news-check
+       $(MAKE) distcheck
+-      $(MAKE) dist XZ_OPT=-9ev
++      $(MAKE) dist
+       $(MAKE) $(release-prep-hook) RELEASE_TYPE=$@
+       $(MAKE) -s emit_upload_commands RELEASE_TYPE=$@
+
index 8bca16d72e7e682ff7f237404d89ba8be5614ea9..16d1fd5a6e846586f5c1bf1e97d844be661b3cbb 100644 (file)
@@ -45,8 +45,6 @@
 #include "virrandom.h"
 #include "viruri.h"
 
-#include <ctype.h>
-
 #ifndef WITH_DRIVER_MODULES
 # ifdef WITH_TEST
 #  include "test/test_driver.h"