TODO: Need to be more complete.
CreateDirectory $INSTDIR\doc\r
setOutPath $INSTDIR\doc\r
file /nonfatal /r @CMAKE_HOME_DIRECTORY@\doc\html\r
-\r
+ file /r @CMAKE_HOME_DIRECTORY@\doc\HelloWorld\r
+ \r
# define uninstaller name\r
writeUninstaller $INSTDIR\uninstaller@BIN_EXE@\r
\r
!define env_hklm 'HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"'\r
!define env_hkcu 'HKCU "Environment"'\r
# Set Variables\r
- WriteRegExpandStr ${env_hklm} SIMGRID_ROOT $INSTDIR\lib\r
- WriteRegExpandStr ${env_hklm} GRAS_ROOT $INSTDIR\lib\r
+ WriteRegExpandStr ${env_hklm} SIMGRID_ROOT $INSTDIR\r
+ WriteRegExpandStr ${env_hklm} GRAS_ROOT $INSTDIR\r
WriteRegExpandStr ${env_hklm} SIMGRID_VERSION @SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@\r
\r
MessageBox MB_OK "Installation was successful."\r
+### This is a template for building targets with simgrid
cmake_minimum_required(VERSION 2.8)
+
### Need to set rc ccompiler before enable language
if(WIN32)
SET(CMAKE_RC_COMPILER "windres")
set(CMAKE_C_FLAGS "" CACHE TYPE INTERNAL FORCE)
set(CMAKE_EXE_LINKER_FLAGS "" CACHE TYPE INTERNAL FORCE)
-########
-## GCC #
-########
-exec_program("${CMAKE_C_COMPILER} --version" OUTPUT_VARIABLE "COMPILER_C_VERSION")
-string(REGEX MATCH "[0-9].[0-9].[0-9]" COMPILER_C_VERSION "${COMPILER_C_VERSION}")
-string(REGEX MATCH "^[0-9].[0-9]" COMPILER_C_VERSION_MAJOR_MINOR "${COMPILER_C_VERSION}")
-string(REPLACE "${COMPILER_C_VERSION_MAJOR_MINOR}." "" COMPILER_C_VERSION_PATCH "${COMPILER_C_VERSION}")
-
###############################
# Test the build dependencies #
###############################
-include(FindSimGrid.cmake)
-
-#########
-# FLAGS #
-#########
-set(INCLUDE_PATH "-I$ENV{SIMGRID_ROOT}/include -I$ENV{SIMGRID_ROOT}/src -I$ENV{SIMGRID_ROOT}/src/include")
-set(LIB_PATH "-L$ENV{SIMGRID_ROOT}/lib")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${INCLUDE_PATH} ${LIB_PATH}")
+include(FindPCRE.cmake)
+message(STATUS "Looking for lib Simgrid")
+if("$ENV{SIMGRID_ROOT}" STREQUAL "")
+ message(STATUS "Looking for lib Simgrid - Not found")
+ message(FATAL_ERROR "Simgrid not found, reinstall it or set SIMGRID_ROOT")
+else("$ENV{SIMGRID_ROOT}" STREQUAL "")
+ link_directories($ENV{SIMGRID_ROOT}/lib)
+ include_directories($ENV{SIMGRID_ROOT}/include)
+ include_directories($ENV{SIMGRID_ROOT}/src)
+ include_directories($ENV{SIMGRID_ROOT}/src/include)
+ add_library(libsimgrid STATIC IMPORTED)
+ message(STATUS "Looking for lib Simgrid - found")
+endif("$ENV{SIMGRID_ROOT}" STREQUAL "")
###########
# TARGETS #
###########
-add_executable(HelloWorld HelloWorld)
-target_link_libraries(HelloWorld simgrid)
\ No newline at end of file
+#########################
+# add_executable #
+# args1 target name #
+# args2 sources #
+#########################
+add_executable(HelloWorld HelloWorld.c)
+# Any targets need to be linked with simgrid and pcre
+target_link_libraries(HelloWorld simgrid pcre)
--- /dev/null
+### SET THE LIBRARY EXTENSION AND GCC VERSION
+if(APPLE) #MAC
+ set(LIB_EXE "dylib")
+else(APPLE)
+ if(WIN32) #WINDOWS
+ set(LIB_EXE "a")
+ set(BIN_EXE ".exe")
+ else(WIN32) #UNIX
+ set(LIB_EXE "so")
+ endif(WIN32)
+endif(APPLE)
+
+find_library(PATH_PCRE_LIB
+ NAMES pcre
+ HINTS
+ $ENV{LD_LIBRARY_PATH}
+ $ENV{PCRE_LIBRARY_PATH}
+ PATH_SUFFIXES lib/ GnuWin32/lib
+ PATHS
+ /opt
+ /opt/local
+ /opt/csw
+ /sw
+ /usr)
+
+find_path(PATH_PCRE_H "pcre.h"
+ HINTS
+ $ENV{LD_LIBRARY_PATH}
+ $ENV{PCRE_LIBRARY_PATH}
+ PATH_SUFFIXES include/ GnuWin32/include
+ PATHS
+ /opt
+ /opt/local
+ /opt/csw
+ /sw
+ /usr)
+
+set(HAVE_PCRE_LIB 0)
+
+message(STATUS "Looking for pcre.h")
+if(PATH_PCRE_H)
+message(STATUS "Looking for pcre.h - found")
+else(PATH_PCRE_H)
+message(STATUS "Looking for pcre.h - not found")
+endif(PATH_PCRE_H)
+
+message(STATUS "Looking for lib pcre")
+if(PATH_PCRE_LIB)
+message(STATUS "Looking for lib pcre - found")
+else(PATH_PCRE_LIB)
+message(STATUS "Looking for lib pcre - not found")
+endif(PATH_PCRE_LIB)
+
+if(PATH_PCRE_LIB AND PATH_PCRE_H)
+ string(REGEX REPLACE "/libpcre.*[.]${LIB_EXE}$" "" PATHLIBPCRE "${PATH_PCRE_LIB}")
+ string(REGEX REPLACE "/pcre.h" "" PATH_PCRE_H "${PATH_PCRE_H}")
+ string(REGEX MATCH "-L${PATHLIBPCRE} " operation "${CMAKE_C_FLAGS}")
+ if(NOT operation)
+ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-L${PATHLIBPCRE} ")
+ endif(NOT operation)
+ string(REGEX MATCH "-I${PATH_PCRE_H} " operation "${CMAKE_C_FLAGS}")
+ if(NOT operation)
+ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}-I${PATH_PCRE_H} ")
+ endif(NOT operation)
+ set(HAVE_PCRE_LIB 1)
+else(PATH_PCRE_LIB)
+ message(FATAL_ERROR "Please install the libpcre3-dev package or equivalent before using it.")
+endif(PATH_PCRE_LIB AND PATH_PCRE_H)
+
+mark_as_advanced(PATH_PCRE_H)
+mark_as_advanced(PATH_PCRE_LIB)
\ No newline at end of file
+++ /dev/null
-#IF YOU HAVE INSTALL SIMGRID IN A SPECIAL DIRECTORY
-#YOU CAN SPECIFY SIMGRID_ROOT OR GRAS_ROOT
-
-# TO CALL THIS FILE USE
- #set(CMAKE_MODULE_PATH
- #${CMAKE_MODULE_PATH}
- #${CMAKE_HOME_DIRECTORY}/buildtools/Cmake/Modules
- #)
-
-find_library(HAVE_SIMGRID_LIB
- NAME simgrid
- HINTS
- $ENV{LD_LIBRARY_PATH}
- $ENV{GRAS_ROOT}
- $ENV{SIMGRID_ROOT}
- PATH_SUFFIXES lib64 lib
- PATHS
- /opt
- /opt/local
- /opt/csw
- /sw
- /usr
-)
-
-find_path(HAVE_GRAS_H gras.h
- HINTS
- $ENV{GRAS_ROOT}
- $ENV{SIMGRID_ROOT}
- PATH_SUFFIXES include
- PATHS
- /opt
- /opt/local
- /opt/csw
- /sw
- /usr
-)
-
-find_program(HAVE_TESH
- NAMES tesh
- HINTS
- $ENV{GRAS_ROOT}
- $ENV{SIMGRID_ROOT}
- PATH_SUFFIXES bin
- PATHS
- /opt
- /opt/local
- /opt/csw
- /sw
- /usr
-)
-
-find_program(HAVE_GRAS_STUB
- NAMES gras_stub_generator
- HINTS
- $ENV{GRAS_ROOT}
- $ENV{SIMGRID_ROOT}
- PATH_SUFFIXES bin
- PATHS
- /opt
- /opt/local
- /opt/csw
- /sw
- /usr
-)
-
-message(STATUS "Looking for lib SimGrid")
-if(HAVE_SIMGRID_LIB)
- message(STATUS "Looking for lib SimGrid - found")
- if(CMAKE_CACHE_MAJOR_VERSION EQUAL "2" AND CMAKE_CACHE_MINOR_VERSION GREATER "7") #need cmake version 2.8
- get_filename_component(simgrid_version ${HAVE_SIMGRID_LIB} REALPATH)
- string(REPLACE "${HAVE_SIMGRID_LIB}." "" simgrid_version "${simgrid_version}")
- string(REGEX MATCH "^[0-9]" SIMGRID_MAJOR_VERSION "${simgrid_version}")
- string(REGEX MATCH "^[0-9].[0-9]" SIMGRID_MINOR_VERSION "${simgrid_version}")
- string(REGEX MATCH "^[0-9].[0-9].[0-9]" SIMGRID_PATCH_VERSION "${simgrid_version}")
- string(REGEX REPLACE "^${SIMGRID_MINOR_VERSION}." "" SIMGRID_PATCH_VERSION "${SIMGRID_PATCH_VERSION}")
- string(REGEX REPLACE "^${SIMGRID_MAJOR_VERSION}." "" SIMGRID_MINOR_VERSION "${SIMGRID_MINOR_VERSION}")
- message(STATUS "Simgrid version : ${SIMGRID_MAJOR_VERSION}.${SIMGRID_MINOR_VERSION}")
- endif(CMAKE_CACHE_MAJOR_VERSION EQUAL "2" AND CMAKE_CACHE_MINOR_VERSION GREATER "7")
-else(HAVE_SIMGRID_LIB)
- message(STATUS "Looking for lib SimGrid - not found")
-endif(HAVE_SIMGRID_LIB)
-
-message(STATUS "Looking for gras.h")
-if(HAVE_GRAS_H)
-message(STATUS "Looking for gras.h - found")
-else(HAVE_GRAS_H)
-message(STATUS "Looking for gras.h - not found")
-endif(HAVE_GRAS_H)
-
-if(HAVE_TESH)
-message(STATUS "Found Tesh: ${HAVE_TESH}")
-endif(HAVE_TESH)
-
-if(HAVE_GRAS_STUB)
-message(STATUS "Found gras_stub_generator: ${HAVE_GRAS_STUB}")
-endif(HAVE_GRAS_STUB)
\ No newline at end of file