-*- coding: utf-8 -*-
Changes with Apache 2.4.41
+ *) modules/filters: PR 63633: Fix broken compilation when using old GCC (<4.2.x).
+ [Rainer Jung, Joe Orton]
+
Changes with Apache 2.4.40
*) core, mod_rewrite: Set PCRE_DOTALL by default. Revert via
PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
[ start all new proposals below, under PATCHES PROPOSED. ]
- *) modules/filters: PR 63633: Fix broken compilation when using old GCC (<4.2.x).
- The above line could be used as CHANGES item.
- The GCC flag "-Wno-error=comment" introduced by r1855446
- and r1850745 (backported in r1856931) is only known since GCC 4.2.
- Since it gets set unconditionally, this breaks compilation with old GCC
- even when not using maintainer mode.
- Make the fix for maintainer mode more specific by using
- a version dependent pragma in the relevant two C files
- only switching off error status for comment warnings.
- The original maintainer mode problem seems to happen only
- on certain platforms (observed on MacOS) or clang, because I could
- not reproduce with GCC on Linux and Solaris. So not fixing the maintainer
- mode problem for ancient GCC before 4.6 might be OK. more important is not
- to break normal compilation on old platforms.
- trunk patch: http://svn.apache.org/r1864435
- http://svn.apache.org/r1864438
- http://svn.apache.org/r1864450
- http://svn.apache.org/r1864451
- http://svn.apache.org/r1864464
- 2.4.x patch: svn merge -c 1864435,1864438,1864450,1864451,1864464 ^/httpd/httpd/trunk .
- +1: jorton, rjung, icing
-
PATCHES PROPOSED TO BACKPORT FROM TRUNK:
[ New proposals should be added at the end of the list ]
if test -n "${xml2_path}" ; then
ac_cv_libxml2=yes
XML2_INCLUDES="${xml2_path}"
- dnl libxml2 includes unicode/*.h files which uses C++ comments
- if test "$GCC" = "yes"; then
- APR_ADDTO(MOD_CPPFLAGS, ["-Wno-error=comment"])
- fi
else
ac_cv_libxml2=no
fi
#define VERBOSEB(x) if (verbose) {x}
#endif
+/* libxml2 includes unicode/[...].h files which uses C++ comments */
+#if defined(__GNUC__)
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic warning "-Wcomment"
+#endif
+#elif defined(__clang__)
+#pragma clang diagnostic push
+#pragma clang diagnostic warning "-Wcomment"
+#endif
+
/* libxml2 */
#include <libxml/HTMLparser.h>
+#if defined(__GNUC__)
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
+#pragma GCC diagnostic pop
+#endif
+#elif defined(__clang__)
+#pragma clang diagnostic pop
+#endif
+
#include "http_protocol.h"
#include "http_config.h"
#include "http_log.h"
#include <ctype.h>
+/* libxml2 includes unicode/[...].h files which uses C++ comments */
+#if defined(__GNUC__)
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic warning "-Wcomment"
+#endif
+#elif defined(__clang__)
+#pragma clang diagnostic push
+#pragma clang diagnostic warning "-Wcomment"
+#endif
+
/* libxml2 */
#include <libxml/encoding.h>
+#if defined(__GNUC__)
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
+#pragma GCC diagnostic pop
+#endif
+#elif defined(__clang__)
+#pragma clang diagnostic pop
+#endif
+
#include "http_protocol.h"
#include "http_config.h"
#include "http_log.h"