net-libs/ixwebsocket: Add new package

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Adrian Schollmeyer <nex+b-g-o@nexadn.de>
This commit is contained in:
Adrian Schollmeyer
2021-09-20 16:28:11 +02:00
parent 4d165314b0
commit 230ae6504e
7 changed files with 210 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 77d2f6b..665c35f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -206,14 +206,6 @@ if (USE_ZLIB)
target_compile_definitions(ixwebsocket PUBLIC IXWEBSOCKET_USE_ZLIB)
endif()
-# brew install libdeflate
-find_package(Deflate)
-if (DEFLATE_FOUND)
- include_directories(${DEFLATE_INCLUDE_DIRS})
- target_link_libraries(ixwebsocket ${DEFLATE_LIBRARIES})
- target_compile_definitions(ixwebsocket PUBLIC IXWEBSOCKET_USE_DEFLATE)
-endif()
-
if (WIN32)
target_link_libraries(ixwebsocket wsock32 ws2_32 shlwapi)
add_definitions(-D_CRT_SECURE_NO_WARNINGS)

View File

@@ -0,0 +1,28 @@
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 661aebb..bab73c7 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -11,15 +11,12 @@ option(USE_TLS "Add TLS support" ON)
# Shared sources
set (TEST_TARGET_NAMES
- IXSocketTest
IXSocketConnectTest
IXWebSocketServerTest
IXWebSocketTestConnectionDisconnection
IXUrlParserTest
- IXHttpClientTest
IXUnityBuildsTest
IXHttpTest
- IXDNSLookupTest
IXWebSocketSubProtocolTest
# IXWebSocketBroadcastTest ## FIXME was depending on cobra / take a broadcast server from ws
IXStrCaseCompareTest
@@ -33,7 +30,6 @@ if (UNIX)
# Fail on Windows in CI probably because the pathing is wrong and
# some resource files cannot be found
- IXHttpServerTest
IXWebSocketChatTest
)
endif()

View File

@@ -0,0 +1,34 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 77d2f6b..4c64106 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -238,23 +238,25 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
target_compile_options(ixwebsocket PRIVATE /MP)
endif()
+include(GNUInstallDirs)
+
target_include_directories(ixwebsocket PUBLIC
$<BUILD_INTERFACE:${IXWEBSOCKET_INCLUDE_DIRS}/>
- $<INSTALL_INTERFACE:include/ixwebsocket>
+ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/ixwebsocket>
)
set_target_properties(ixwebsocket PROPERTIES PUBLIC_HEADER "${IXWEBSOCKET_HEADERS}")
install(TARGETS ixwebsocket
EXPORT ixwebsocket
- ARCHIVE DESTINATION lib
- PUBLIC_HEADER DESTINATION include/ixwebsocket/
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ixwebsocket/
)
install(EXPORT ixwebsocket
FILE ixwebsocket-config.cmake
NAMESPACE ixwebsocket::
- DESTINATION lib/cmake/ixwebsocket)
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/ixwebsocket)
if (USE_WS OR USE_TEST)
include(FetchContent)

View File

@@ -0,0 +1,55 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 77d2f6b..86c7172 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -257,13 +257,9 @@ install(EXPORT ixwebsocket
DESTINATION lib/cmake/ixwebsocket)
if (USE_WS OR USE_TEST)
- include(FetchContent)
- FetchContent_Declare(spdlog
- GIT_REPOSITORY "https://github.com/gabime/spdlog"
- GIT_TAG "v1.8.0"
- GIT_SHALLOW 1)
-
- FetchContent_MakeAvailable(spdlog)
+ find_package(spdlog REQUIRED)
+ find_package(fmt REQUIRED)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DSPDLOG_FMT_EXTERNAL")
if (USE_WS)
add_subdirectory(ws)
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 661aebb..ab0c92e 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -66,7 +66,7 @@ target_include_directories(ixwebsocket_test PRIVATE
../third_party
)
target_link_libraries(ixwebsocket_test ixwebsocket)
-target_link_libraries(ixwebsocket_test spdlog)
+target_link_libraries(ixwebsocket_test spdlog::spdlog fmt::fmt)
foreach(TEST_TARGET_NAME ${TEST_TARGET_NAMES})
add_executable(${TEST_TARGET_NAME}
@@ -89,7 +89,7 @@ foreach(TEST_TARGET_NAME ${TEST_TARGET_NAMES})
target_link_libraries(${TEST_TARGET_NAME} ixwebsocket_test)
target_link_libraries(${TEST_TARGET_NAME} ixwebsocket)
- target_link_libraries(${TEST_TARGET_NAME} spdlog)
+ target_link_libraries(${TEST_TARGET_NAME} spdlog fmt)
add_test(NAME ${TEST_TARGET_NAME}
COMMAND ${TEST_TARGET_NAME}
diff --git a/ws/CMakeLists.txt b/ws/CMakeLists.txt
index 98f15de..10834e5 100644
--- a/ws/CMakeLists.txt
+++ b/ws/CMakeLists.txt
@@ -31,6 +31,6 @@ add_executable(ws
# library with the most dependencies come first
target_link_libraries(ws ixwebsocket)
-target_link_libraries(ws spdlog)
+target_link_libraries(ws spdlog::spdlog fmt::fmt)
install(TARGETS ws RUNTIME DESTINATION bin)