]> Creatis software - bbtk.git/blob - kernel/cmake/BBTKWxWidgets.cmake
Modified GTK2 find mecanism for cmake > 2.4
[bbtk.git] / kernel / cmake / BBTKWxWidgets.cmake
1 #=======================================================================
2 # Looks for WxWidgets
3 # sets BBTK_WXWIDGETS_FOUND to true if found
4 #=======================================================================
5 MACRO(BBTK_FIND_WXWIDGETS)
6   IF(WIN32)
7     # Search WXWIDGETS
8     
9     #  WXWINDOWS_LIBRARY         = full path to the wxWindows library and linker flags on unix
10     #  CMAKE_WX_CXX_FLAGS        = compiler flags for building wxWindows 
11     #  WXWINDOWS_INCLUDE_PATH    = include path of wxWindows
12     SET(WXWINDOWS_USE_GL 1)
13     
14     #wxWidgets build related stuff
15     SET(WXW_USE_DEBUG ON)
16     SET(WXW_USE_UNICODE OFF)
17     SET(WXW_USE_SHARED ON)
18     SET(WXW_USE_UNIV OFF)
19     SET(WXW_USE_MONO OFF)
20     SET(WXW_FILE_VERSION "28")
21     SET(WXW_VERSION "2.8")
22     
23     #CMake Options
24     # Why forcing verbosity ?
25     # SET(CMAKE_VERBOSE_MAKEFILE TRUE)
26     
27     INCLUDE (${BBTK_CMAKE_DIR}/BBTKFindWxWidgetsWIN32.cmake)
28     #
29   
30   ELSE(WIN32)
31     # GTK2
32     INCLUDE(${BBTK_CMAKE_DIR}/BBTKFindGTK2.cmake)
33     # WX
34     # LG : Do not force but use what is installed !
35     # SET(wxWidgets_USE_LIBS base core gl)
36     # Can I require all my user to have the gl lib on linux, even if they do not really need it...
37     SET(WXGLCANVASLIBS "gl")
38
39     FIND_PACKAGE( wxWidgets REQUIRED) 
40     #
41     IF(wxWidgets_FOUND)
42       MESSAGE(STATUS "Looking for wxWidgets... found ${wxWidgets_CONFIG_EXECUTABLE}")
43     ENDIF(wxWidgets_FOUND)
44   ENDIF(WIN32)
45   
46
47
48 ENDMACRO(BBTK_FIND_WXWIDGETS)
49 #=======================================================================
50
51 #=======================================================================
52 MACRO(BBTK_USE_WXWIDGETS)
53   # Preprocessor settings
54   ADD_DEF( _USE_WXWIDGETS_ )
55   #
56   IF(WIN32)
57     # Clean ?
58     SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}${WXWIDGETS_CXX_FLAGS}")
59     SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}${WXWIDGETS_EXE_LINKER_FLAGS}")
60     #
61     ADD_DEFINITIONS( ${WXWIDGETS_DEFINITIONS}  )
62     #
63     INCLUDE_DIRECTORIES(${WXWIDGETS_INCLUDE_DIR})
64     LINK_DIRECTORIES( ${WXWIDGETS_LINK_DIRECTORIES} )
65     SET(BBTK_WXWIDGETS_LIBRARIES
66       ${WXWIDGETS_LIBRARIES}     
67       ${WXWIDGETS_LIBRARIES} wxmsw28d_aui      
68       debug msvcrtd
69       debug msvcprtd
70       optimized msvcrt
71       optimized msvcprt
72       )
73   ELSE(WIN32)
74     # GTK2
75     INCLUDE_DIRECTORIES(${GTK2_INCLUDE_DIRS})
76     LINK_DIRECTORIES(${GTK2_LIBRARY_DIRS})
77     LINK_LIBRARIES(${GTK2_LIBRARIES})
78     # WX
79     INCLUDE( ${wxWidgets_USE_FILE} )
80     MARK_AS_ADVANCED(wxWidgets_CONFIG_EXECUTABLE)
81     SET(BBTK_WXWIDGETS_LIBRARIES
82       ${GTK2_LIBRARIES}
83       ${wxWidgets_LIBRARIES}
84       )
85   ENDIF(WIN32)
86 ENDMACRO(BBTK_USE_WXWIDGETS)
87 #=======================================================================