1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-18 19:49:40 +00:00

sysutils/ttyd: Only link with shared library

Due to how upstream handles libraries ttyd picks up both static and
shared library of libwebsockets which is not intended. The least
intrusive way I found is to simply detect it using pkgconfig instead.
While at it, disable check for git to determine version.

Reported by:	Jeff Schmidt <jeff.jschmidt@gmail.com>
Approved by:	portmgr (blanket, build fix)
This commit is contained in:
Daniel Engberg 2023-02-22 02:45:23 +01:00
parent 513c2583ad
commit 35c73981e5
2 changed files with 22 additions and 0 deletions

View File

@ -18,6 +18,8 @@ USES= cmake pkgconfig ssl
USE_GITHUB= yes
GH_ACCOUNT= tsl0922
CMAKE_ARGS= -DCMAKE_DISABLE_FIND_PACKAGE_Git:BOOL=True
PLIST_FILES= bin/${PORTNAME} \
share/man/man1/ttyd.1.gz

View File

@ -0,0 +1,20 @@
--- CMakeLists.txt.orig 2023-01-18 03:42:54 UTC
+++ CMakeLists.txt
@@ -58,11 +58,15 @@ if(JSON-C_FOUND)
SET(JSON-C_LIBRARIES "${JSON-C_LIBRARY}")
endif()
+find_package(PkgConfig REQUIRED)
find_package(ZLIB REQUIRED)
-find_package(Libwebsockets 3.2.0 REQUIRED)
+pkg_search_module(LIBWEBSOCKETS REQUIRED libwebsockets>=3.2.0)
+if(LIBWEBSOCKETS_FOUND)
+ message(STATUS "Found LIBWEBSOCKETS: ${LIBWEBSOCKETS_LINK_LIBRARIES} - Version: ${LIBWEBSOCKETS_VERSION}")
+endif()
set(INCLUDE_DIRS ${ZLIB_INCLUDE_DIR} ${LIBWEBSOCKETS_INCLUDE_DIRS} ${JSON-C_INCLUDE_DIRS} ${LIBUV_INCLUDE_DIRS})
-set(LINK_LIBS ${ZLIB_LIBRARIES} ${LIBWEBSOCKETS_LIBRARIES} ${JSON-C_LIBRARIES} ${LIBUV_LIBRARIES})
+set(LINK_LIBS ${ZLIB_LIBRARIES} ${LIBWEBSOCKETS_LINK_LIBRARIES} ${JSON-C_LIBRARIES} ${LIBUV_LIBRARIES})
set (CMAKE_REQUIRED_INCLUDES ${INCLUDE_DIRS})
include(CheckSymbolExists)