rob@76
|
1 cmake_minimum_required(VERSION 2.6)
|
rob@76
|
2 PROJECT(TestOscpack)
|
rob@76
|
3
|
rob@76
|
4 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})
|
rob@76
|
5
|
rob@76
|
6 # separate versions of NetworkingUtils.cpp and UdpSocket.cpp are provided for Win32 and POSIX
|
rob@76
|
7 # the IpSystemTypePath selects the correct ones based on the current platform
|
rob@76
|
8
|
rob@76
|
9 IF(WIN32)
|
rob@76
|
10 set(IpSystemTypePath ip/win32)
|
rob@76
|
11 set(LIBS ${LIBS} Ws2_32 winmm)
|
rob@76
|
12 ELSE(WIN32)
|
rob@76
|
13 set(IpSystemTypePath ip/posix)
|
rob@76
|
14 ENDIF(WIN32)
|
rob@76
|
15
|
rob@76
|
16 ADD_LIBRARY(oscpack
|
rob@76
|
17
|
rob@76
|
18 ip/IpEndpointName.h
|
rob@76
|
19 ip/IpEndpointName.cpp
|
rob@76
|
20
|
rob@76
|
21 ip/NetworkingUtils.h
|
rob@76
|
22 ${IpSystemTypePath}/NetworkingUtils.cpp
|
rob@76
|
23
|
rob@76
|
24 ip/UdpSocket.h
|
rob@76
|
25 ${IpSystemTypePath}/UdpSocket.cpp
|
rob@76
|
26
|
rob@76
|
27 ip/PacketListener.h
|
rob@76
|
28 ip/TimerListener.h
|
rob@76
|
29
|
rob@76
|
30 osc/OscTypes.h
|
rob@76
|
31 osc/OscTypes.cpp
|
rob@76
|
32 osc/OscHostEndianness.h
|
rob@76
|
33 osc/OscException.h
|
rob@76
|
34 osc/OscPacketListener.h
|
rob@76
|
35 osc/MessageMappingOscPacketListener.h
|
rob@76
|
36 osc/OscReceivedElements.h
|
rob@76
|
37 osc/OscReceivedElements.cpp
|
rob@76
|
38 osc/OscPrintReceivedElements.h
|
rob@76
|
39 osc/OscPrintReceivedElements.cpp
|
rob@76
|
40 osc/OscOutboundPacketStream.h
|
rob@76
|
41 osc/OscOutboundPacketStream.cpp
|
rob@76
|
42
|
rob@76
|
43 )
|
rob@76
|
44
|
rob@76
|
45
|
rob@76
|
46 ADD_EXECUTABLE(OscUnitTests tests/OscUnitTests.cpp)
|
rob@76
|
47 TARGET_LINK_LIBRARIES(OscUnitTests oscpack ${LIBS})
|
rob@76
|
48
|
rob@76
|
49 ADD_EXECUTABLE(OscSendTests tests/OscSendTests.cpp)
|
rob@76
|
50 TARGET_LINK_LIBRARIES(OscSendTests oscpack ${LIBS})
|
rob@76
|
51
|
rob@76
|
52 ADD_EXECUTABLE(OscReceiveTest tests/OscReceiveTest.cpp)
|
rob@76
|
53 TARGET_LINK_LIBRARIES(OscReceiveTest oscpack ${LIBS})
|
rob@76
|
54
|
rob@76
|
55
|
rob@76
|
56 ADD_EXECUTABLE(OscDump examples/OscDump.cpp)
|
rob@76
|
57 TARGET_LINK_LIBRARIES(OscDump oscpack ${LIBS})
|
rob@76
|
58
|
rob@76
|
59 ADD_EXECUTABLE(SimpleReceive examples/SimpleReceive.cpp)
|
rob@76
|
60 TARGET_LINK_LIBRARIES(SimpleReceive oscpack ${LIBS})
|
rob@76
|
61
|
rob@76
|
62 ADD_EXECUTABLE(SimpleSend examples/SimpleSend.cpp)
|
rob@76
|
63 TARGET_LINK_LIBRARIES(SimpleSend oscpack ${LIBS})
|
rob@76
|
64
|
rob@76
|
65
|
rob@76
|
66 if(MSVC)
|
rob@76
|
67 # Force to always compile with W4
|
rob@76
|
68 if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
|
rob@76
|
69 string(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
rob@76
|
70 else()
|
rob@76
|
71 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
|
rob@76
|
72 endif()
|
rob@76
|
73 elseif(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
|
rob@76
|
74 # Update if necessary
|
rob@76
|
75 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wno-long-long -pedantic")
|
rob@76
|
76 endif()
|