source: verona/libeXosip2/CMakeLists.txt @ 218:9a495e91c66b

Last change on this file since 218:9a495e91c66b was 218:9a495e91c66b, checked in by laurent@…, 2 years ago

add wcecompat include path instead of cutil

File size: 3.0 KB
Line 
1project(exosip2)
2
3set(EXOSIP2_VERSION_MAJOR 3)
4set(EXOSIP2_VERSION_MINOR 3)
5set(EXOSIP2_VERSION_MICRO 0)
6set(EXOSIP2_VERSION_STRING "3.3.0")
7
8file(GLOB EXOSIP2_SRCS src/*.c)
9
10if(ANDROID)
11  set(CMAKE_THREAD_LIBS_INIT "-lc")
12endif()
13include(FindThreads)
14include(FindOpenSSL)
15
16have_includes(fcntl.h sys/select.h sys/time.h sys/types.h semaphore.h )
17
18if(WIN32)
19  if(USE_CSL)
20    set(EXOSIP2_SRCS
21    ${EXOSIP2_SRCS}
22        platform/vsnet/eXcsl.def
23        )
24  else(USE_CSL)
25    set(EXOSIP2_SRCS
26    ${EXOSIP2_SRCS}
27    platform/vsnet/eXosip2.def
28    )
29  endif(USE_CSL)
30else(WIN32)
31  if(Threads_FOUND)
32    add_definitions(-DHAVE_PTHREAD)
33  endif(Threads_FOUND)
34  add_definitions(
35    -DHAVE_STRUCT_TIMEVAL
36  )
37endif(WIN32)
38
39if(NOT ANDROID)
40if(OPENSSL_FOUND)
41  add_definitions(-DHAVE_OPENSSL_SSL_H)
42endif(OPENSSL_FOUND)
43endif(NOT ANDROID)
44
45add_definitions(
46        ${OSIP2_DEFINITIONS}
47        -DSRV_RECORDS
48        -DENABLE_TRACE
49        -DENABLE_DEBUG
50        -DSTDC_HEADERS
51)
52
53if(USE_CSL)
54  add_definitions( -DHAVE_CSL )
55endif(USE_CSL)
56
57find_file(STDINT_H_FILE "stdint.h")
58if(WIN32 AND NOT CMAKE_UNDER_CE)
59  include_directories(include ${OSIP2_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}/../libs/util/cutil/include/cutil/msvc)
60else(WIN32 AND NOT CMAKE_UNDER_CE)
61        if(CMAKE_UNDER_CE)
62                include_directories(include ${OSIP2_INCLUDE_DIRS} ${WCECOMPAT_INCLUDE_DIRS})
63        else(CMAKE_UNDER_CE)
64                include_directories(include ${OSIP2_INCLUDE_DIRS})
65        endif(CMAKE_UNDER_CE)
66endif(WIN32 AND NOT CMAKE_UNDER_CE)
67link_directories(${OSIP2_LIBRARY_DIRS})
68
69
70add_library(exosip2 SHARED ${EXOSIP2_SRCS})
71
72if(NOT ANDROID)
73  set_target_properties(exosip2 PROPERTIES VERSION ${EXOSIP2_VERSION_STRING} SOVERSION ${EXOSIP2_VERSION_STRING})
74endif()
75
76set(EXOSIP2_LINK_LIBRARIES ${OSIP2_LIBRARIES})
77if(OPENSSL_FOUND)
78  set(EXOSIP2_LINK_LIBRARIES ${EXOSIP2_LINK_LIBRARIES} ${OPENSSL_LIBRARIES})
79endif(OPENSSL_FOUND)
80if(WIN32 AND NOT CMAKE_UNDER_CE)
81  set(EXOSIP2_LINK_LIBRARIES ${EXOSIP2_LINK_LIBRARIES} ${OSIPPARSER2_LIBRARIES} ws2_32 iphlpapi)
82endif(WIN32 AND NOT CMAKE_UNDER_CE)
83if(CMAKE_UNDER_CE)
84  set(EXOSIP2_LINK_LIBRARIES ${EXOSIP2_LINK_LIBRARIES} ${OSIPPARSER2_LIBRARIES} ws2 iphlpapi mmTimer)
85  include_directories(${WCECOMPAT_INCLUDE_DIRS})
86endif(CMAKE_UNDER_CE)
87if(NOT WIN32 AND NOT CMAKE_UNDER_CE)
88  if(Threads_FOUND AND NOT ANDROID)
89    set(EXOSIP2_LINK_LIBRARIES ${EXOSIP2_LINK_LIBRARIES}
90    ${CMAKE_THREAD_LIBS_INIT})
91  endif(Threads_FOUND AND NOT ANDROID)
92endif(NOT WIN32 AND NOT CMAKE_UNDER_CE)
93
94if(USE_CSL)
95  include_directories(${OSIP2_INCLUDE_DIRS} ${CSL_INCLUDE_DIRS} ${ACSLCORE_INCLUDE_DIRS})
96  set(EXOSIP2_LINK_LIBRARIES ${EXOSIP2_LINK_LIBRARIES} ${ACSLCORE_LIBRARIES})
97endif(USE_CSL)
98
99target_link_libraries(exosip2 ${EXOSIP2_LINK_LIBRARIES})
100
101set(EXOSIP2_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/include" CACHE PATH "Include path for eXosip2 library")
102set(EXOSIP2_DEFINITIONS "-DOSIP_MT" CACHE STRING  "Defines of EXOSIP2 users")
103set(EXOSIP2_LIBRARIES exosip2 CACHE STRING "exosip2 libraries")
104if(NOT WIN32 AND NOT USE_CSL)
105  add_executable(sip_reg tools/sip_reg.c)
106  target_link_libraries(sip_reg ${EXOSIP2_LIBRARIES} ${CMAKE_DL_LIBS})
107endif(NOT WIN32 AND NOT USE_CSL)
Note: See TracBrowser for help on using the repository browser.