editors/bee-host: upgrade to 1.4.0

Release notes at https://github.com/rosmanov/bee-host/releases/tag/1.4.0
This commit is contained in:
Thierry Thomas 2025-06-30 18:28:47 +02:00
parent ee87b743fb
commit 05285c6c7b
3 changed files with 93 additions and 37 deletions

View File

@ -1,5 +1,5 @@
PORTNAME= bee-host
DISTVERSION= 1.3.7-3
DISTVERSION= 1.4.0
CATEGORIES= editors www
MAINTAINER= thierry@FreeBSD.org
@ -8,14 +8,15 @@ WWW= https://github.com/rosmanov/bee-host
LICENSE= MIT
LIB_DEPENDS= libcjson.so:devel/libcjson
LIB_DEPENDS= libuv.so:devel/libuv \
libcjson.so:devel/libcjson
USE_GITHUB= yes
GH_ACCOUNT= rosmanov
USES= cmake:noninja localbase:ldflags shebangfix
SHEBANG_GLOB= *.sh
LDFLAGS+= -lcjson -lcjson_utils
LDFLAGS+= -lcjson -lcjson_utils -luv
CMAKE_ARGS= -DCMAKE_DOC_DIR:PATH=${DOCSDIR_REL}
OPTIONS_DEFINE= DOCS

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1746552217
SHA256 (rosmanov-bee-host-1.3.7-3_GH0.tar.gz) = a9b023f313754716f4ac2ce05615711d3df334e5cbf06ed4de0d94dd17e9a5d1
SIZE (rosmanov-bee-host-1.3.7-3_GH0.tar.gz) = 31443
TIMESTAMP = 1751299136
SHA256 (rosmanov-bee-host-1.4.0_GH0.tar.gz) = 8fac983e514f259a496f00e82f5b2d6f101fb85e9af75abcb4310b575488a668
SIZE (rosmanov-bee-host-1.4.0_GH0.tar.gz) = 35909

View File

@ -1,57 +1,112 @@
--- CMakeLists.txt.orig 2025-04-21 15:28:54 UTC
--- CMakeLists.txt.orig 2025-06-08 19:16:44 UTC
+++ CMakeLists.txt
@@ -39,27 +39,7 @@ set(EXTERNAL_DIR ${CMAKE_CURRENT_BINARY_DIR}/external)
@@ -43,94 +43,10 @@ set(EXTERNAL_DIR ${CMAKE_CURRENT_BINARY_DIR}/external)
set(EXTERNAL_DIR ${CMAKE_CURRENT_BINARY_DIR}/external)
-# cJSON and cJSONUtils
-ExternalProject_Add(cjson
- GIT_REPOSITORY "https://github.com/DaveGamble/cJSON"
- GIT_TAG "v1.7.15"
- PREFIX "${EXTERNAL_DIR}/cJSON"
- BUILD_IN_SOURCE 1
- TEST_COMMAND ""
- INSTALL_COMMAND ""
- CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
-set(cjson_cmake_args
- -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
- -DBUILD_SHARED_AND_STATIC_LIBS=On
- -DBUILD_SHARED_LIBS=Off
- -DENABLE_CJSON_TEST=Off
- -DENABLE_CJSON_UTILS=On
- -DENABLE_TARGET_EXPORT=On
- )
- -DCMAKE_POLICY_VERSION_MINIMUM=3.5
- -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
- -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
- -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
- -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
- -DCMAKE_EXE_LINKER_FLAGS=${CMAKE_EXE_LINKER_FLAGS}
- -DCMAKE_SHARED_LINKER_FLAGS=${CMAKE_SHARED_LINKER_FLAGS}
- -DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}
- -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
-)
-if(uppercase_CMAKE_SYSTEM_NAME MATCHES WINDOWS)
- list(APPEND cjson_cmake_args -DWIN32=ON)
-endif()
+# cJSON and cJSONUtils installed from devel/libcjso
-ExternalProject_Add(cjson
- GIT_REPOSITORY "https://github.com/DaveGamble/cJSON"
- GIT_TAG "v1.7.18"
- PREFIX "${EXTERNAL_DIR}/cJSON"
- BUILD_IN_SOURCE 1
- TEST_COMMAND ""
- INSTALL_COMMAND ""
- CMAKE_ARGS ${cjson_cmake_args}
-)
-ExternalProject_Get_Property(cjson source_dir)
-ExternalProject_Get_Property(cjson binary_dir)
-ExternalProject_Get_Property(cjson download_dir)
-set(CJSON_SOURCE_DIR "${source_dir}")
-set(CJSON_BINARY_DIR "${binary_dir}")
-set(CJSON_DOWNLOAD_DIR "${download_dir}")
+# cJSON and cJSONUtils installed from devel/libcjson
-if (CMAKE_C_COMPILER_ID STREQUAL "MSVC")
- set(CJSON_STATIC_NAME "cjson.lib")
-else()
- set(CJSON_STATIC_NAME "libcjson.a")
-endif()
-# Full path to the expected built static lib
-set(CJSON_STATIC_LIB "${CJSON_BINARY_DIR}/${CJSON_STATIC_NAME}")
+# libuv installed from devel/libuv
-set(LIBUV_TAG v1.51.0)
-set(EXTERNAL_DIR ${CMAKE_CURRENT_BINARY_DIR}/external)
-
-set(libuv_cmake_args
- -DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}
- -DCMAKE_SYSTEM_PROCESSOR=${CMAKE_SYSTEM_PROCESSOR}
- -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
- -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
- -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
- -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
- -DCMAKE_EXE_LINKER_FLAGS=${CMAKE_EXE_LINKER_FLAGS}
- -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
- -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
- -DLIBUV_BUILD_TESTS=OFF
- -DLIBUV_BUILD_EXAMPLES=OFF
- -DLIBUV_INSTALL=OFF
- -DCMAKE_POSITION_INDEPENDENT_CODE=ON
- -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
-)
-# Append UV_DISABLE_CLOCK_GETTIME only for Windows
-if(uppercase_CMAKE_SYSTEM_NAME MATCHES WINDOWS)
- list(APPEND libuv_cmake_args -DWIN32=ON)
-endif()
-
-ExternalProject_Add(libuv_ep
- GIT_REPOSITORY "https://github.com/libuv/libuv.git"
- GIT_TAG "${LIBUV_TAG}"
- PREFIX "${EXTERNAL_DIR}/libuv"
- CMAKE_ARGS ${libuv_cmake_args}
- INSTALL_COMMAND ""
- TEST_COMMAND ""
-)
-ExternalProject_Get_Property(libuv_ep source_dir)
-ExternalProject_Get_Property(libuv_ep binary_dir)
-set(LIBUV_SOURCE_DIR "${source_dir}")
-set(LIBUV_BINARY_DIR "${binary_dir}")
-if (CMAKE_C_COMPILER_ID STREQUAL "MSVC")
- set(LIBUV_STATIC_NAME "uv.lib")
-else()
- set(LIBUV_STATIC_NAME "libuv.a")
-endif()
-# Full path to the expected built static lib
-set(LIBUV_STATIC_LIB "${LIBUV_BINARY_DIR}/${LIBUV_STATIC_NAME}")
-
# beectl
set(BEECTL_SRCS
@@ -70,21 +50,13 @@ set(BEECTL_SRCS
src/mkstemps.c
# This is nasty, but I couldn't find a way to use CMAKE_TOOLCHAIN_FILE
# for the external project (see comments below.)
- "${CJSON_SOURCE_DIR}/cJSON.c"
)
src/beectl.c
@@ -189,8 +105,6 @@ set_property(TARGET beectl PROPERTY C_STANDARD 11) # C
endif()
add_executable(beectl ${BEECTL_SRCS})
-# Workaround for CMake versions which require the cJSON.c file to exist before
-# downloading the external project.
-add_custom_command(TARGET beectl PRE_BUILD
- BYPRODUCTS "${CJSON_SOURCE_DIR}/cJSON.c"
- COMMAND touch "${CJSON_SOURCE_DIR}/cJSON.c")
-
target_compile_features(beectl PRIVATE c_variadic_macros)
target_include_directories(beectl PRIVATE "${CJSON_DOWNLOAD_DIR}")
set_property(TARGET beectl PROPERTY C_STANDARD 11) # C11
-add_dependencies(beectl cjson)
-add_dependencies(beectl libuv_ep)
# The following would be better approach than including cJSON files in our
# source list. But the build fails when cross-compiling, since
@@ -126,14 +98,14 @@ set(BEECTL_MANIFEST_TARGET_PATH "${CMAKE_INSTALL_PREFI
@@ -233,14 +147,14 @@ set(BEECTL_MANIFEST_TARGET_PATH "${CMAKE_INSTALL_PREFI
message(STATUS "CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}")
set(BEECTL_MANIFEST_TARGET_PATH "${CMAKE_INSTALL_PREFIX}/bin/beectl")
@ -68,7 +123,7 @@
endif()
# RPM package properties
@@ -288,7 +260,7 @@ else(uppercase_CMAKE_SYSTEM_NAME MATCHES WINDOWS)
@@ -416,7 +330,7 @@ else(uppercase_CMAKE_SYSTEM_NAME MATCHES WINDOWS)
COMPONENT config)
else(uppercase_CMAKE_SYSTEM_NAME MATCHES WINDOWS)
# Install host app