Fix most missing compilation and linker flag warnings
authorDimitrios Eftaxiopoulos <eftaxi12@otenet.gr>
Mon, 13 May 2013 22:52:40 +0000 (01:52 +0300)
committerDimitrios Eftaxiopoulos <eftaxi12@otenet.gr>
Mon, 13 May 2013 22:52:40 +0000 (01:52 +0300)
CMakeLists.txt
debian/patches/CMakeLists-txt.patch

index d76d1551ec2b1bb817aa4d68ea0c2f0fcbf12b39..d91bf8cff48e18e95ca5b64eecdb5d09ba0c3b5c 100644 (file)
@@ -11,6 +11,9 @@ set(CMAKE_VERBOSE_MAKEFILE ON)
 set(MathGL_VERSION_MAJOR 2)
 set(MathGL_VERSION_MINOR 1.3)
 
+set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,-z,relro")
+set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,relro")
+set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,relro")
 
 MACRO(MGL_DEPENDENT_OPTION option doc default depends1 force1 depends2 force2)
   IF(${option}_ISSET MATCHES "^${option}_ISSET$")
@@ -61,12 +64,12 @@ option(enable-double "Enable double precision in MathGL library" ON)
 option(enable-simple "Slightly increase drawing speed but disable mglDataA class")
 option(enable-mpi "Enable mpi" ON)
 option(enable-doc "Enable documentation building" ON)
-option(enable-all "Enable all core features")
-option(enable-all-widgets "Enable all Widgets")
-option(enable-all-swig "Enable all SWIG based interfaces")
+option(enable-all "Enable all core features" ON)
+option(enable-all-widgets "Enable all Widgets" ON)
+option(enable-all-swig "Enable all SWIG based interfaces" ON)
 option(enable-pthread "Enable POSIX threads support" ON)
-option(enable-lgpl "Enable only LGPL part of MathGL")
-option(enable-mgl2 "Use names 'libmgl2-*' instead of 'libmgl-*'")
+option(enable-lgpl "Enable only LGPL part of MathGL" OFF)
+option(enable-mgl2 "Use names 'libmgl2-*' instead of 'libmgl-*'" OFF)
 #option(enable-ltdl "Enable loading modules support")
 CMAKE_DEPENDENT_OPTION(enable-zlib "Enable zlib support" ON "NOT enable-all" ON)
 CMAKE_DEPENDENT_OPTION(enable-png "Enable png support" ON "NOT enable-all" ON)
@@ -77,13 +80,13 @@ MGL_DEPENDENT_OPTION(enable-hdf5 "Enable hdf5 support" ON "NOT enable-lgpl" ON "
 CMAKE_DEPENDENT_OPTION(enable-pdf "Enable pdf support" ON "NOT enable-all" ON)
 CMAKE_DEPENDENT_OPTION(enable-gif "Enable gif support" ON "NOT enable-all" ON)
 CMAKE_DEPENDENT_OPTION(enable-opengl "Enable OpenGL support" ON "NOT enable-mpi" ON)
-MGL_DEPENDENT_OPTION(enable-glut "Enable glut support" ON "NOT enable-lgpl" ON "NOT enable-all-widgets" ON)
-MGL_DEPENDENT_OPTION(enable-fltk "Enable fltk widget" ON "NOT enable-lgpl" ON "NOT enable-all-widgets" ON)
-CMAKE_DEPENDENT_OPTION(enable-wx "Enable wxWidget widget" ON "NOT enable-lgpl" ON)
-MGL_DEPENDENT_OPTION(enable-qt "Enable Qt4 widget" ON "NOT enable-lgpl" ON "NOT enable-all-widgets" ON)
-MGL_DEPENDENT_OPTION(enable-python "Enable python interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
-MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
-MGL_DEPENDENT_OPTION(enable-octave-install "Octave interface will install for all users" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
+MGL_DEPENDENT_OPTION(enable-glut "Enable glut support" ON "NOT enable-lgpl;NOT enable-mpi" OFF "NOT enable-all-widgets" OFF)
+MGL_DEPENDENT_OPTION(enable-fltk "Enable fltk widget" ON "NOT enable-lgpl;NOT enable-mpi" OFF "NOT enable-all-widgets" OFF)
+CMAKE_DEPENDENT_OPTION(enable-wx "Enable wxWidget widget" ON "NOT enable-lgpl;NOT enable-mpi" ON)
+MGL_DEPENDENT_OPTION(enable-qt "Enable Qt4 widget" ON "NOT enable-lgpl;NOT enable-mpi" OFF "NOT enable-all-widgets" OFF)
+MGL_DEPENDENT_OPTION(enable-python "Enable python interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" OFF)
+MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" OFF)
+MGL_DEPENDENT_OPTION(enable-octave-install "Octave interface will install for all users" ON "NOT enable-lgpl" ON "NOT enable-all-swig" OFF)
 
 include_directories( ${MathGL_SOURCE_DIR}/include ${MathGL_BINARY_DIR}/include)
 set(MGL_INCLUDE_PATH "${CMAKE_INSTALL_PREFIX}/include/mgl2")
@@ -402,6 +405,7 @@ endif(MGL_HAVE_PYTHON OR MGL_HAVE_OCTAVE)
 
 if(UNIX)
        add_definitions(-DNO_COLOR_ARRAY)
+       add_definitions(-D_FORTIFY_SOURCE=2)
 endif(UNIX)
 
 if(WIN32)
index f50bbefecb8515918f50f08da1b035610bc33c90..642d41a3ec43a12e6320ba22f31896a9988e1eac 100644 (file)
@@ -1,18 +1,34 @@
-Include all available features, windows classes and languages during compilation
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -59,8 +59,8 @@
+@@ -11,6 +11,9 @@
+ set(MathGL_VERSION_MAJOR 2)
+ set(MathGL_VERSION_MINOR 1.3)
++set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,-z,relro")
++set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,relro")
++set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,relro")
+ MACRO(MGL_DEPENDENT_OPTION option doc default depends1 force1 depends2 force2)
+   IF(${option}_ISSET MATCHES "^${option}_ISSET$")
+@@ -59,31 +62,31 @@
  
  option(enable-double "Enable double precision in MathGL library" ON)
  option(enable-simple "Slightly increase drawing speed but disable mglDataA class")
 -option(enable-mpi "Enable mpi")
 -option(enable-doc "Enable documentation building")
+-option(enable-all "Enable all core features")
+-option(enable-all-widgets "Enable all Widgets")
+-option(enable-all-swig "Enable all SWIG based interfaces")
 +option(enable-mpi "Enable mpi" ON)
 +option(enable-doc "Enable documentation building" ON)
- option(enable-all "Enable all core features")
- option(enable-all-widgets "Enable all Widgets")
- option(enable-all-swig "Enable all SWIG based interfaces")
-@@ -70,19 +70,19 @@
++option(enable-all "Enable all core features" ON)
++option(enable-all-widgets "Enable all Widgets" ON)
++option(enable-all-swig "Enable all SWIG based interfaces" ON)
+ option(enable-pthread "Enable POSIX threads support" ON)
+-option(enable-lgpl "Enable only LGPL part of MathGL")
+-option(enable-mgl2 "Use names 'libmgl2-*' instead of 'libmgl-*'")
++option(enable-lgpl "Enable only LGPL part of MathGL" OFF)
++option(enable-mgl2 "Use names 'libmgl2-*' instead of 'libmgl-*'" OFF)
  #option(enable-ltdl "Enable loading modules support")
  CMAKE_DEPENDENT_OPTION(enable-zlib "Enable zlib support" ON "NOT enable-all" ON)
  CMAKE_DEPENDENT_OPTION(enable-png "Enable png support" ON "NOT enable-all" ON)
@@ -29,6 +45,7 @@ Include all available features, windows classes and languages during compilation
 -MGL_DEPENDENT_OPTION(enable-qt "Enable Qt4 widget" OFF "NOT enable-lgpl;NOT enable-mpi" ON "NOT enable-all-widgets" ON)
 -MGL_DEPENDENT_OPTION(enable-python "Enable python interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
 -MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" OFF "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
+-MGL_DEPENDENT_OPTION(enable-octave-install "Octave interface will install for all users" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
 +CMAKE_DEPENDENT_OPTION(enable-jpeg "Enable jpeg support" ON "NOT enable-all" ON)
 +MGL_DEPENDENT_OPTION(enable-gsl "Enable gsl support" ON "NOT enable-lgpl" ON "NOT enable-all" ON)
 +MGL_DEPENDENT_OPTION(enable-hdf4 "Enable hdf4 support" ON "NOT enable-lgpl" ON "NOT enable-all" ON)
@@ -36,12 +53,21 @@ Include all available features, windows classes and languages during compilation
 +CMAKE_DEPENDENT_OPTION(enable-pdf "Enable pdf support" ON "NOT enable-all" ON)
 +CMAKE_DEPENDENT_OPTION(enable-gif "Enable gif support" ON "NOT enable-all" ON)
 +CMAKE_DEPENDENT_OPTION(enable-opengl "Enable OpenGL support" ON "NOT enable-mpi" ON)
-+MGL_DEPENDENT_OPTION(enable-glut "Enable glut support" ON "NOT enable-lgpl" ON "NOT enable-all-widgets" ON)
-+MGL_DEPENDENT_OPTION(enable-fltk "Enable fltk widget" ON "NOT enable-lgpl" ON "NOT enable-all-widgets" ON)
-+CMAKE_DEPENDENT_OPTION(enable-wx "Enable wxWidget widget" ON "NOT enable-lgpl" ON)
-+MGL_DEPENDENT_OPTION(enable-qt "Enable Qt4 widget" ON "NOT enable-lgpl" ON "NOT enable-all-widgets" ON)
-+MGL_DEPENDENT_OPTION(enable-python "Enable python interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
-+MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
- MGL_DEPENDENT_OPTION(enable-octave-install "Octave interface will install for all users" ON "NOT enable-lgpl" ON "NOT enable-all-swig" ON)
++MGL_DEPENDENT_OPTION(enable-glut "Enable glut support" ON "NOT enable-lgpl;NOT enable-mpi" OFF "NOT enable-all-widgets" OFF)
++MGL_DEPENDENT_OPTION(enable-fltk "Enable fltk widget" ON "NOT enable-lgpl;NOT enable-mpi" OFF "NOT enable-all-widgets" OFF)
++CMAKE_DEPENDENT_OPTION(enable-wx "Enable wxWidget widget" ON "NOT enable-lgpl;NOT enable-mpi" ON)
++MGL_DEPENDENT_OPTION(enable-qt "Enable Qt4 widget" ON "NOT enable-lgpl;NOT enable-mpi" OFF "NOT enable-all-widgets" OFF)
++MGL_DEPENDENT_OPTION(enable-python "Enable python interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" OFF)
++MGL_DEPENDENT_OPTION(enable-octave "Enable octave interface" ON "NOT enable-lgpl" ON "NOT enable-all-swig" OFF)
++MGL_DEPENDENT_OPTION(enable-octave-install "Octave interface will install for all users" ON "NOT enable-lgpl" ON "NOT enable-all-swig" OFF)
  
  include_directories( ${MathGL_SOURCE_DIR}/include ${MathGL_BINARY_DIR}/include)
+ set(MGL_INCLUDE_PATH "${CMAKE_INSTALL_PREFIX}/include/mgl2")
+@@ -402,6 +405,7 @@
+ if(UNIX)
+       add_definitions(-DNO_COLOR_ARRAY)
++      add_definitions(-D_FORTIFY_SOURCE=2)
+ endif(UNIX)
+ if(WIN32)