- more changes for CI
This commit is contained in:
parent
19e1a65abb
commit
1061089d9b
|
|
@ -2,6 +2,7 @@ build_exe:
|
||||||
script:
|
script:
|
||||||
- mkdir -p build
|
- mkdir -p build
|
||||||
- cd build
|
- cd build
|
||||||
- cmake ../src
|
- git clone git@gitlab.com:dmytro.bogovych/libraries.git
|
||||||
|
- cmake -D PLATFORM_LIBS=libraries ../src
|
||||||
- cmake --build .
|
- cmake --build .
|
||||||
|
|
||||||
|
|
@ -3,50 +3,50 @@ project(rtphone)
|
||||||
cmake_minimum_required(VERSION 3.0)
|
cmake_minimum_required(VERSION 3.0)
|
||||||
|
|
||||||
macro(configure_msvc_runtime)
|
macro(configure_msvc_runtime)
|
||||||
if(MSVC)
|
if(MSVC)
|
||||||
# Default to statically-linked runtime.
|
# Default to statically-linked runtime.
|
||||||
if("${MSVC_RUNTIME}" STREQUAL "")
|
if("${MSVC_RUNTIME}" STREQUAL "")
|
||||||
set(MSVC_RUNTIME "static")
|
set(MSVC_RUNTIME "static")
|
||||||
endif()
|
|
||||||
# Set compiler options.
|
|
||||||
set(variables
|
|
||||||
CMAKE_C_FLAGS_DEBUG
|
|
||||||
CMAKE_C_FLAGS_MINSIZEREL
|
|
||||||
CMAKE_C_FLAGS_RELEASE
|
|
||||||
CMAKE_C_FLAGS_RELWITHDEBINFO
|
|
||||||
CMAKE_CXX_FLAGS_DEBUG
|
|
||||||
CMAKE_CXX_FLAGS_MINSIZEREL
|
|
||||||
CMAKE_CXX_FLAGS_RELEASE
|
|
||||||
CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
|
||||||
)
|
|
||||||
if(${MSVC_RUNTIME} STREQUAL "static")
|
|
||||||
message(STATUS
|
|
||||||
"rtphone: MSVC -> forcing use of statically-linked runtime."
|
|
||||||
)
|
|
||||||
foreach(variable ${variables})
|
|
||||||
if(${variable} MATCHES "/MD")
|
|
||||||
string(REGEX REPLACE "/MD" "/MT" ${variable} "${${variable}}")
|
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
# Set compiler options.
|
||||||
else()
|
set(variables
|
||||||
message(STATUS
|
CMAKE_C_FLAGS_DEBUG
|
||||||
"rtphone: MSVC -> forcing use of dynamically-linked runtime."
|
CMAKE_C_FLAGS_MINSIZEREL
|
||||||
)
|
CMAKE_C_FLAGS_RELEASE
|
||||||
foreach(variable ${variables})
|
CMAKE_C_FLAGS_RELWITHDEBINFO
|
||||||
if(${variable} MATCHES "/MT")
|
CMAKE_CXX_FLAGS_DEBUG
|
||||||
string(REGEX REPLACE "/MT" "/MD" ${variable} "${${variable}}")
|
CMAKE_CXX_FLAGS_MINSIZEREL
|
||||||
|
CMAKE_CXX_FLAGS_RELEASE
|
||||||
|
CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
||||||
|
)
|
||||||
|
if(${MSVC_RUNTIME} STREQUAL "static")
|
||||||
|
message(STATUS
|
||||||
|
"rtphone: MSVC -> forcing use of statically-linked runtime."
|
||||||
|
)
|
||||||
|
foreach(variable ${variables})
|
||||||
|
if(${variable} MATCHES "/MD")
|
||||||
|
string(REGEX REPLACE "/MD" "/MT" ${variable} "${${variable}}")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
else()
|
||||||
|
message(STATUS
|
||||||
|
"rtphone: MSVC -> forcing use of dynamically-linked runtime."
|
||||||
|
)
|
||||||
|
foreach(variable ${variables})
|
||||||
|
if(${variable} MATCHES "/MT")
|
||||||
|
string(REGEX REPLACE "/MT" "/MD" ${variable} "${${variable}}")
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
|
||||||
|
foreach(variable ${variables})
|
||||||
|
string(REGEX REPLACE "/Z[iI7]" ""
|
||||||
|
${variable}
|
||||||
|
"${${variable}}")
|
||||||
|
|
||||||
|
set(${variable} "${${variable}} /Zi /Oy-")
|
||||||
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
foreach(variable ${variables})
|
|
||||||
string(REGEX REPLACE "/Z[iI7]" ""
|
|
||||||
${variable}
|
|
||||||
"${${variable}}")
|
|
||||||
|
|
||||||
set(${variable} "${${variable}} /Zi /Oy-")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -59,28 +59,48 @@ set (rtphone_engine engine)
|
||||||
|
|
||||||
set (USE_AMR_CODEC OFF CACHE BOOL "Use AMR codec. Requires libraries.")
|
set (USE_AMR_CODEC OFF CACHE BOOL "Use AMR codec. Requires libraries.")
|
||||||
set (USE_EVS_CODEC OFF CACHE BOOL "Use EVS codec.")
|
set (USE_EVS_CODEC OFF CACHE BOOL "Use EVS codec.")
|
||||||
set (OPENSSL_SSL ssl CACHE STRING "Pointer to ssl library")
|
|
||||||
set (OPENSSL_CRYPTO crypto CACHE STRING "Pointer to crypto library")
|
|
||||||
set (OPENSSL_INCLUDE "/usr/local/include/openssl" CACHE STRING "Pointer to OpenSSL include files")
|
|
||||||
|
|
||||||
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
if (NOT PLATFORM_LIBS)
|
||||||
|
message(FATAL_ERROR "PLATFORM_LIBS must be defined before build! This project requires it to get access to OpenSSL 1.0.x headers")
|
||||||
message ("Using ssl library at ${OPENSSL_SSL}")
|
endif()
|
||||||
message ("Using crypto library at ${OPENSSL_CRYPTO}")
|
|
||||||
message ("Using OpenSSL include files from ${OPENSSL_INCLUDE}")
|
|
||||||
|
|
||||||
if (CMAKE_SYSTEM MATCHES "Windows*")
|
if (CMAKE_SYSTEM MATCHES "Windows*")
|
||||||
|
set (TARGET_WIN ON)
|
||||||
add_definitions(-DTARGET_WIN)
|
add_definitions(-DTARGET_WIN)
|
||||||
|
find_library(SSL_LIB ssl PATHES ${PLATFORM_LIBRARIES}/openssl/lib/win64)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (CMAKE_SYSTEM MATCHES "Linux*")
|
if (CMAKE_SYSTEM MATCHES "Linux*")
|
||||||
|
set (TARGET_LINUX ON)
|
||||||
add_definitions(-DTARGET_LINUX)
|
add_definitions(-DTARGET_LINUX)
|
||||||
|
|
||||||
|
find_library(SSL_LIB
|
||||||
|
NAMES ssl
|
||||||
|
PATHS ${PLATFORM_LIBS}/openssl/1.0/lin64
|
||||||
|
NO_DEFAULT_PATH)
|
||||||
|
|
||||||
|
find_library(CRYPTO_LIB
|
||||||
|
NAMES crypto
|
||||||
|
PATHS ${PLATFORM_LIBS}/openssl/1.0/lin64
|
||||||
|
NO_DEFAULT_PATH)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (CMAKE_SYSTEM MATCHES "Darwin*")
|
if (CMAKE_SYSTEM MATCHES "Darwin*")
|
||||||
|
set (TARGET_OSX ON)
|
||||||
add_definitions(-DTARGET_OSX)
|
add_definitions(-DTARGET_OSX)
|
||||||
|
find_library(SSL_LIB NAMES ssl PATHS ${PLATFORM_LIBS}/openssl/lib/osx NO_DEFAULT_PATH)
|
||||||
|
find_library(CRYPTO_LIB NAMES crypto PATHS ${PLATFORM_LIBS}/openssl/1.0/osx NO_DEFAULT_PATH)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
message(STATUS "SSL library: ${SSL_LIB}")
|
||||||
|
message(STATUS "Crypto library: ${CRYPTO_LIB}")
|
||||||
|
|
||||||
|
set (OPENSSL_INCLUDE "${PLATFORM_LIBS}/openssl/1.0/include")
|
||||||
|
|
||||||
|
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||||
|
|
||||||
|
message (STATUS "OpenSSL include files from ${OPENSSL_INCLUDE}")
|
||||||
|
|
||||||
set (RTPHONE_SOURCES
|
set (RTPHONE_SOURCES
|
||||||
${rtphone_engine}/media/MT_Statistics.cpp
|
${rtphone_engine}/media/MT_Statistics.cpp
|
||||||
${rtphone_engine}/media/MT_WebRtc.cpp
|
${rtphone_engine}/media/MT_WebRtc.cpp
|
||||||
|
|
@ -108,7 +128,7 @@ set (RTPHONE_SOURCES
|
||||||
${rtphone_engine}/endpoint/EP_NetworkQueue.cpp
|
${rtphone_engine}/endpoint/EP_NetworkQueue.cpp
|
||||||
${rtphone_engine}/endpoint/EP_Observer.cpp
|
${rtphone_engine}/endpoint/EP_Observer.cpp
|
||||||
${rtphone_engine}/endpoint/EP_Session.cpp
|
${rtphone_engine}/endpoint/EP_Session.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
set (RTPHONE_HEADERS
|
set (RTPHONE_HEADERS
|
||||||
${rtphone_engine}/media/MT_Statistics.h
|
${rtphone_engine}/media/MT_Statistics.h
|
||||||
|
|
@ -180,12 +200,12 @@ target_link_libraries(rtphone
|
||||||
|
|
||||||
target_include_directories(rtphone
|
target_include_directories(rtphone
|
||||||
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/engine>
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/engine>
|
||||||
|
|
||||||
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/libs/
|
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/libs/
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/libs/speex/include
|
${CMAKE_CURRENT_SOURCE_DIR}/libs/speex/include
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/libs/opus/include/
|
${CMAKE_CURRENT_SOURCE_DIR}/libs/opus/include/
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/libs/json
|
${CMAKE_CURRENT_SOURCE_DIR}/libs/json
|
||||||
)
|
)
|
||||||
|
|
||||||
configure_msvc_runtime()
|
configure_msvc_runtime()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue