Fix bug with cmake and old version of GCC
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 72c81b1..bd0367d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -4,7 +4,14 @@
 string(REGEX MATCH "Clang" CMAKE_COMPILER_IS_CLANG "${CMAKE_C_COMPILER_ID}")
 
 if(CMAKE_COMPILER_IS_GNUCC)
-  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -W -Wdeclaration-after-statement -Wwrite-strings -Wlogical-op")
+  # some warnings we want are not available with old GCC versions
+  # note: starting with CMake 2.8 we could use CMAKE_C_COMPILER_VERSION
+  execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion
+                  OUTPUT_VARIABLE GCC_VERSION)
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -W -Wdeclaration-after-statement -Wwrite-strings")
+  if (GCC_VERSION VERSION_GREATER 4.5 OR GCC_VERSION VERSION_EQUAL 4.5)
+      set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wlogical-op")
+  endif()
   set(CMAKE_C_FLAGS_RELEASE     "-O2")
   set(CMAKE_C_FLAGS_DEBUG       "-O0 -g3")
   set(CMAKE_C_FLAGS_COVERAGE    "-O0 -g3 --coverage")
diff --git a/ChangeLog b/ChangeLog
index 5e6932c..8f5a03b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -8,11 +8,12 @@
    * Increase the size of default Diffie-Hellman parameters on the server to
      2048 bits. This can be changed with ssl_set_dh_params().
 
-
 Bugfix
    * Fix thread-safety issue in SSL debug module (found by Edwin van Vliet).
    * Some example programs were not built using make, not included in Visual
      Studio projects (found by Kristian Bendiksen).
+   * Fix build error with CMake and pre-4.5 versions of GCC (found by Hugo
+     Leisink).
 
 Changes
    * Add SSL_MIN_DHM_BYTES configuration parameter in config.h to choose the