[Greater-commits] r2 - in trunk/Administration: . cmake

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Tue Jun 7 18:10:22 CEST 2011


Author: aheinecke
Date: 2011-06-07 18:10:22 +0200 (Tue, 07 Jun 2011)
New Revision: 2

Added:
   trunk/Administration/CMakeLists.txt
   trunk/Administration/cmake/
   trunk/Administration/cmake/FindXercesC.cmake
Log:
Add cmake buildsystem


Added: trunk/Administration/CMakeLists.txt
===================================================================
--- trunk/Administration/CMakeLists.txt	2011-06-07 16:08:08 UTC (rev 1)
+++ trunk/Administration/CMakeLists.txt	2011-06-07 16:10:22 UTC (rev 2)
@@ -0,0 +1,76 @@
+PROJECT( greateradmin )
+
+cmake_minimum_required(VERSION 2.6)
+
+list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
+
+################## Greateradmin version  ################################
+set(CMAKE_GREATERADMIN_VERSION_MAJOR 0)
+set(CMAKE_GREATERADMIN_VERSION_MINOR 0)
+set(CMAKE_GREATERADMIN_VERSION_RELEASE 1)
+set(CMAKE_GREATERADMIN_VERSION_STRING "${CMAKE_GREATERADMIN_VERSION_MAJOR}.${CMAKE_GREATERADMIN_VERSION_MINOR}.${CMAKE_GREATERADMIN_VERSION_RELEASE}")
+
+# Here you can define what libraries of wxWidgets you need for your
+# application. You can figure out what libraries you need here;
+# http://www.wxwidgets.org/manuals/2.8/wx_librarieslist.html
+#SET(wxWidgets_USE_LIBS base)
+
+SET(wxWidgets_USE_UNICODE False)
+# We need the Find package for wxWidgets to work
+FIND_PACKAGE(wxWidgets 2.8.0 REQUIRED)
+FIND_PACKAGE(XercesC 3.0.0 REQUIRED)
+
+include( ${wxWidgets_USE_FILE} )
+
+add_definitions(-DwxUSE_UNICODE=0)
+add_definitions(-Werror)
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}, ${wxWidgets_INCLUDE_DIRS})
+
+set( greateradmin_BIN_SRCS
+  Administration.cpp
+  AuthenticateDialog.cpp
+  BackgrdDialog.cpp
+  BinobjDialog.cpp
+  CatchmentDialog.cpp
+  ConvXMLChar.cpp
+  DownloadDialog.cpp
+  EnvironmentDialog.cpp
+  EnvtreeDialog.cpp
+  ExportDialog.cpp
+  FixedTextCtrl.cpp
+  GroupDialog.cpp
+  ImportDialog.cpp
+  #  LastButton.cpp
+  MainWindow.cpp
+  MessageDialog.cpp
+  MyButton.cpp
+  MyGrid.cpp
+  PanelBackgrd.cpp
+  PanelBase.cpp
+  PanelBinobj.cpp
+  PanelCatchment.cpp
+  PanelEnvironment.cpp
+  PanelEnvtree.cpp
+  PanelGroup.cpp
+  PanelMessage.cpp
+  PanelParatree.cpp
+  PanelPhrase.cpp
+  PanelSession.cpp
+  PanelSubstance.cpp
+  PanelSubsttree.cpp
+  PanelUser.cpp
+  ParatreeDialog.cpp
+  PhraseDialog.cpp
+  PwdDialog.cpp
+  SessionDialog.cpp
+  SubstanceDialog.cpp
+  SubsttreeDialog.cpp
+  UserDialog.cpp
+  XMLStringConv.cpp
+)
+if(WIN32)
+    set(greateradmin_BIN_SRCS ${greateradmin_BIN_SRCS} Administration.rc)
+ENDIF(WIN32)
+
+add_executable(Administration WIN32 ${greateradmin_BIN_SRCS})
+target_link_libraries(Administration ${wxWidgets_LIBRARIES} ${XERCESC_LIBRARY})

Added: trunk/Administration/cmake/FindXercesC.cmake
===================================================================
--- trunk/Administration/cmake/FindXercesC.cmake	2011-06-07 16:08:08 UTC (rev 1)
+++ trunk/Administration/cmake/FindXercesC.cmake	2011-06-07 16:10:22 UTC (rev 2)
@@ -0,0 +1,104 @@
+# - Try to find Xerces-C
+# Once done this will define
+#
+#  XERCESC_FOUND - system has Xerces-C
+#  XERCESC_INCLUDE - the Xerces-C include directory
+#  XERCESC_LIBRARY - Link these to use Xerces-C
+#  XERCESC_VERSION - Xerces-C found version
+
+IF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
+# in cache already
+SET(XERCESC_FIND_QUIETLY TRUE)
+ENDIF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
+
+OPTION(XERCESC_STATIC "Set to ON to link your project with static library (instead of DLL)." ON)
+
+IF (NOT  ${XERCESC_WAS_STATIC} STREQUAL ${XERCESC_STATIC})
+UNSET(XERCESC_LIBRARY CACHE)
+UNSET(XERCESC_LIBRARY_DEBUG CACHE)
+ENDIF (NOT  ${XERCESC_WAS_STATIC} STREQUAL ${XERCESC_STATIC})
+
+SET(XERCESC_WAS_STATIC ${XERCESC_STATIC} CACHE INTERNAL "" )
+
+FIND_PATH(XERCESC_INCLUDE NAMES xercesc/util/XercesVersion.hpp
+PATHS 
+$ENV{XERCESC_INCLUDE_DIR}
+${XERCESC_INCLUDE_DIR}
+ /usr/local/include
+ /usr/include
+)
+
+IF (XERCESC_STATIC)
+FIND_LIBRARY(XERCESC_LIBRARY NAMES xerces-c_static_3 xerces-c-3.1 xerces-c
+ PATHS
+ $ENV{XERCESC_LIBRARY_DIR}
+ ${XERCESC_LIBRARY_DIR}
+ /usr/lib
+ /usr/local/lib
+)
+FIND_LIBRARY(XERCESC_LIBRARY_DEBUG NAMES xerces-c_static_3D xerces-c-3.1D
+ PATHS
+ $ENV{XERCESC_LIBRARY_DIR}
+ ${XERCESC_LIBRARY_DIR}
+ /usr/lib
+ /usr/local/lib
+)
+ADD_DEFINITIONS( -DXERCES_STATIC_LIBRARY )
+ELSE (XERCESC_STATIC)
+FIND_LIBRARY(XERCESC_LIBRARY NAMES xerces-c_3
+ PATHS
+ $ENV{XERCESC_LIBRARY_DIR}
+ ${XERCESC_LIBRARY_DIR}
+)
+FIND_LIBRARY(XERCESC_LIBRARY_DEBUG NAMES xerces-c_3D
+ PATHS
+ $ENV{XERCESC_LIBRARY_DIR}
+ ${XERCESC_LIBRARY_DIR}
+)
+ENDIF (XERCESC_STATIC)
+
+IF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
+SET(XERCESC_FOUND TRUE)
+ELSE (XERCESC_INCLUDE AND XERCESC_LIBRARY)
+SET(XERCESC_FOUND FALSE)
+ENDIF (XERCESC_INCLUDE AND XERCESC_LIBRARY)
+
+IF(XERCESC_FOUND)
+
+FIND_PATH(XERCESC_XVERHPPPATH NAMES XercesVersion.hpp PATHS
+ ${XERCESC_INCLUDE}
+ PATH_SUFFIXES xercesc/util)
+
+IF ( ${XERCESC_XVERHPPPATH} STREQUAL XERCESC_XVERHPPPATH-NOTFOUND )
+ SET(XERCES_VERSION "0")
+ELSE( ${XERCESC_XVERHPPPATH} STREQUAL XERCESC_XVERHPPPATH-NOTFOUND )
+ FILE(READ ${XERCESC_XVERHPPPATH}/XercesVersion.hpp XVERHPP)
+
+ STRING(REGEX MATCHALL "\n *#define XERCES_VERSION_MAJOR +[0-9]+" XVERMAJ
+   ${XVERHPP})
+ STRING(REGEX MATCH "\n *#define XERCES_VERSION_MINOR +[0-9]+" XVERMIN
+   ${XVERHPP})
+ STRING(REGEX MATCH "\n *#define XERCES_VERSION_REVISION +[0-9]+" XVERREV
+   ${XVERHPP})
+
+ STRING(REGEX REPLACE "\n *#define XERCES_VERSION_MAJOR +" ""
+   XVERMAJ ${XVERMAJ})
+ STRING(REGEX REPLACE "\n *#define XERCES_VERSION_MINOR +" ""
+   XVERMIN ${XVERMIN})
+ STRING(REGEX REPLACE "\n *#define XERCES_VERSION_REVISION +" ""
+   XVERREV ${XVERREV})
+
+ SET(XERCESC_VERSION ${XVERMAJ}.${XVERMIN}.${XVERREV})
+
+ENDIF ( ${XERCESC_XVERHPPPATH} STREQUAL XERCESC_XVERHPPPATH-NOTFOUND )
+
+IF(NOT XERCESC_FIND_QUIETLY)
+ MESSAGE(STATUS "Found Xerces-C: ${XERCESC_LIBRARY}")
+ MESSAGE(STATUS "              : ${XERCESC_INCLUDE}")
+ MESSAGE(STATUS "       Version: ${XERCESC_VERSION}")
+ENDIF(NOT XERCESC_FIND_QUIETLY)
+ELSE(XERCESC_FOUND)
+MESSAGE(FATAL_ERROR "Could not find Xerces-C !")
+ENDIF(XERCESC_FOUND)
+
+MARK_AS_ADVANCED(XERCESC_INCLUDE XERCESC_LIBRARY)



More information about the Greater-commits mailing list