Add more gcc warning options in maintainer mode.
authorWerner Koch <wk@gnupg.org>
Thu, 30 Oct 2008 10:51:12 +0000 (10:51 +0000)
committerWerner Koch <wk@gnupg.org>
Thu, 30 Oct 2008 10:51:12 +0000 (10:51 +0000)
Mark a few unsued args.

ChangeLog
NEWS
announce.txt
autogen.sh
configure.ac
src/ChangeLog
src/ber-dump.c
src/ber-help.c
tests/ChangeLog
tests/t-cms-parser.c
tests/t-ocsp.c

index 5191335..fa191b9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2008-10-30  Werner Koch  <wk@g10code.com>
+
+       * configure.ac: Use more strict warnings with newer gcc versions.
+
 2008-09-22  Werner Koch  <wk@g10code.com>
 
        Release 1.0.4.
diff --git a/NEWS b/NEWS
index 4b5a57d..5af43dd 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,7 @@
+Noteworthy changes in version 1.0.5
+------------------------------------------------
+
+
 Noteworthy changes in version 1.0.4 (2008-09-22)
 ------------------------------------------------
 
index bcdb3a9..d337b0c 100644 (file)
@@ -1,6 +1,6 @@
 Hello!
 
-We are pleased to announce version 1.0.3 of Libksba.
+We are pleased to announce version 1.0.4 of Libksba.
 
 Libksba is an X.509 and CMS (PKCS#7) library.  It is for example
 required to build the S/MIME part of GnuPG-2 (gpgsm).  The only build
@@ -10,35 +10,36 @@ by the user.  Libksba is distributed under the GPLv3+.  There are no
 user tools accompanying this software, thus it is mostly relevant to
 developers.
 
-This is a bug fix release.
+This is a maintenance release.
 
 You may download the library and its OpenPGP signature from:
 
-  ftp://ftp.gnupg.org/gcrypt/libksba/libksba-1.0.3.tar.bz2 (513k)
-  ftp://ftp.gnupg.org/gcrypt/libksba/libksba-1.0.3.tar.bz2.sig
+  ftp://ftp.gnupg.org/gcrypt/libksba/libksba-1.0.4.tar.bz2 (553k)
+  ftp://ftp.gnupg.org/gcrypt/libksba/libksba-1.0.4.tar.bz2.sig
 
 As an alternative you may use a patch file to upgrade the previous
 version of the library:
 
-  ftp://ftp.gnupg.org/gcrypt/libksba/libksba-1.0.2-1.0.3.diff.bz2 (13k)
+  ftp://ftp.gnupg.org/gcrypt/libksba/libksba-1.0.3-1.0.4.diff.bz2 (144k)
 
-or from any mirror of that server (http://www.gnupg.org/mirrors.html).
+(the reason for the large patch file is due to newer version of files
+from the build systems) or from any mirror of that server
+(http://www.gnupg.org/mirrors.html).
 
 SHA-1 checksums are:
 
-7a4b3a8340087ed360269b567881ebfb9b67441b  libksba-1.0.3.tar.bz2
-ecbeb0f381db55f387753f5c873e20be59c9b65f  libksba-1.0.2-1.0.3.diff.bz2
+05d0b803bac34b53e07619ca52425452be535792  libksba-1.0.4.tar.bz2
+51249c45ea74c61325c1f2462045ba5a4148bf38  libksba-1.0.3-1.0.4.diff.bz2
 
 
-Noteworthy changes in version 1.0.3 (2008-02-12)
+Noteworthy changes in version 1.0.4 (2008-09-22)
 ------------------------------------------------
 
- * Minor bug fixes.
+ * Write smimeCapabilities according to RFC3851 to help Mozilla.
 
- * Include the used hash algorithm in sig-val structures.
-
- * Fix for unknown tags in issuerAltName and subjectAltName.
+ * Support DSA.
 
+ * The visibility attribute is now used if supported by the toolchain.
 
 
 Commercial support contracts for Libksba are available, and they help
index 768cd27..0c9cb68 100755 (executable)
@@ -201,4 +201,6 @@ $AUTOMAKE --gnu;
 echo "Running autoconf${FORCE} ..."
 $AUTOCONF${FORCE}
 
-echo "You may now run \"./configure --enable-maintainer-mode && make\"."
+echo "You may now run:
+  ./configure --enable-maintainer-mode && make
+"
index 13a695e..07987fa 100644 (file)
@@ -24,8 +24,8 @@ min_automake_version="1.10"
 # Remember to change the version number immediately *after* a release.
 # Set my_issvn to "yes" for non-released code.  Remember to run an
 # "svn up" and "autogen.sh" right before creating a distribution.
-m4_define([my_version], [1.0.4])
-m4_define([my_issvn], [no])
+m4_define([my_version], [1.0.5])
+m4_define([my_issvn], [yes])
 
 m4_define([svn_revision], m4_esyscmd([printf "%d" $(svn info 2>/dev/null \
           | sed -n '/^Revision:/ s/[^0-9]//gp'|head -1)]))
@@ -112,6 +112,32 @@ AC_ARG_ENABLE(optimization,
 if test "$GCC" = yes; then
     CFLAGS="$CFLAGS -Wall -Wcast-align -Wshadow -Wstrict-prototypes"
 
+    if test "$USE_MAINTAINER_MODE" = "yes"; then
+        CFLAGS="$CFLAGS -Wformat -Wno-format-y2k -Wformat-security"
+
+        # We use -W only if -Wno-missing-field-initializers is supported.
+        # -W is important because it detects errors like "if (foo);"
+        AC_MSG_CHECKING([if gcc supports -Wno-missing-field-initializers])
+        _gcc_cflags_save=$CFLAGS
+        CFLAGS="-Wno-missing-field-initializers"
+        AC_COMPILE_IFELSE(AC_LANG_PROGRAM([]),_gcc_wopt=yes,_gcc_wopt=no)
+        AC_MSG_RESULT($_gcc_wopt)
+        CFLAGS=$_gcc_cflags_save;
+        if test x"$_gcc_wopt" = xyes ; then
+          CFLAGS="$CFLAGS -W -Wno-sign-compare -Wno-missing-field-initializers"
+        fi
+
+        AC_MSG_CHECKING([if gcc supports -Wdeclaration-after-statement])
+        _gcc_cflags_save=$CFLAGS
+        CFLAGS="-Wdeclaration-after-statement"
+        AC_COMPILE_IFELSE(AC_LANG_PROGRAM([]),_gcc_wopt=yes,_gcc_wopt=no)
+        AC_MSG_RESULT($_gcc_wopt)
+        CFLAGS=$_gcc_cflags_save;
+        if test x"$_gcc_wopt" = xyes ; then
+          CFLAGS="$CFLAGS -Wdeclaration-after-statement"
+        fi
+    fi
+
     AC_MSG_CHECKING([if gcc supports -Wpointer-arith])
     _gcc_cflags_save=$CFLAGS
     CFLAGS="-Wpointer-arith"
index 5439e3f..3cbd930 100644 (file)
@@ -1,3 +1,8 @@
+2008-10-30  Werner Koch  <wk@g10code.com>
+
+       * ber-dump.c (one_file): Mark unused arg.
+       * ber-help.c (_ksba_ber_count_tl): Ditto.
+
 2008-10-30  Marcus Brinkmann  <marcus@g10code.de>
 
        * ocsp.c (parse_context_tag): Don't trash the error value.
index 0a8ea2c..7bab47d 100644 (file)
@@ -76,6 +76,8 @@ one_file (FILE *fp, const char *fname, ksba_asn_tree_t asn_tree)
   ksba_reader_t r;
   BerDecoder d;
 
+  (void)fname;  /* Not yet used in error messages.  */
+
   err = ksba_reader_new (&r);
   if (err)
     fatal ("out of core\n");
index 5fb2b2b..8b9e9c1 100644 (file)
@@ -404,11 +404,11 @@ _ksba_ber_encode_tl (unsigned char *buffer,
 }
 
 
-/* calculate the length of the TL needed to encode a TAG of CLASS.
-   constructed is a flag telling
-   whether the value is a constructed one.  length gives the length of
-   the value, if it is 0 undefinite length is assumed.  length is
-   ignored for the NULL tag. */
+/* Calculate the length of the TL needed to encode a TAG of CLASS.
+   CONSTRUCTED is a flag telling whether the value is a constructed
+   one.  LENGTH gives the length of the value; if it is 0 an
+   indefinite length is assumed.  LENGTH is ignored for the NULL
+   tag. */
 size_t
 _ksba_ber_count_tl (unsigned long tag,
                     enum tag_class class,
@@ -417,6 +417,8 @@ _ksba_ber_count_tl (unsigned long tag,
 {
   int buflen = 0;
 
+  (void)constructed;  /* Not used, but passed for uniformity of such calls.  */
+
   if (tag < 0x1f)
     {
       buflen++;
index 627cb5b..06d0bbe 100644 (file)
@@ -1,3 +1,8 @@
+2008-10-30  Werner Koch  <wk@g10code.com>
+
+       * t-cms-parser.c (dummy_hash_fnc): Mark unused args.
+       * t-ocsp.c (my_hash_buffer): Ditto.
+
 2007-12-13  Werner Koch  <wk@g10code.com>
 
        * t-cms-parser.c (one_file): Print the value of the signature.
index de83a53..8d48726 100644 (file)
 #include "t-common.h"
 
 void 
-dummy_hash_fnc (void *arg, const void *buffer,size_t length)
+dummy_hash_fnc (void *arg, const void *buffer, size_t length)
 {
+  (void)arg;
+  (void)buffer;
+  (void)length;
 }
 
 
index 4670666..72e5d2f 100644 (file)
@@ -342,6 +342,8 @@ my_hash_buffer (void *arg, const char *oid,
                 const void *buffer, size_t length, size_t resultsize,
                 unsigned char *result, size_t *resultlen)
 {
+  (void)arg; /* Not used.  */
+
   if (oid && strcmp (oid, "1.3.14.3.2.26")) 
     return gpg_error (GPG_ERR_NOT_SUPPORTED); /* We only support SHA-1. */ 
   if (resultsize < 20)