diff options
Diffstat (limited to 'multimedia/obuparse')
-rw-r--r-- | multimedia/obuparse/Makefile | 18 | ||||
-rw-r--r-- | multimedia/obuparse/distinfo | 6 | ||||
-rw-r--r-- | multimedia/obuparse/files/patch-CMakeLists.txt | 78 | ||||
-rw-r--r-- | multimedia/obuparse/files/patch-Makefile | 33 |
4 files changed, 89 insertions, 46 deletions
diff --git a/multimedia/obuparse/Makefile b/multimedia/obuparse/Makefile index f0d5f5b76336..6e156c658e1a 100644 --- a/multimedia/obuparse/Makefile +++ b/multimedia/obuparse/Makefile @@ -1,5 +1,6 @@ PORTNAME= obuparse -DISTVERSION= g20241212 +DISTVERSIONPREFIX= v +DISTVERSION= 2.0.1 CATEGORIES= multimedia MAINTAINER= diizzy@FreeBSD.org @@ -9,22 +10,19 @@ WWW= https://github.com/dwbuiten/obuparse LICENSE= ISCL LICENSE_FILE= ${WRKSRC}/LICENSE -USES= gmake +USES= cmake USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= dwbuiten -GH_TAGNAME= 918524a - -MAKE_ARGS+= PREFIX="${STAGEDIR}${PREFIX}" - -INSTALL_TARGET= install-shared PLIST_FILES= include/obuparse.h \ lib/libobuparse.so \ - lib/libobuparse.so.1 + lib/libobuparse.so.2 \ + lib/libobuparse.so.${DISTVERSION} -post-install: - ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libobuparse.so.1 +post-patch: + @${REINPLACE_CMD} -e 's|%%DISTVERSION%%|${DISTVERSION}|g' \ + ${PATCH_WRKSRC}/CMakeLists.txt .include <bsd.port.mk> diff --git a/multimedia/obuparse/distinfo b/multimedia/obuparse/distinfo index 2cf89e5bdd7f..a877f417306f 100644 --- a/multimedia/obuparse/distinfo +++ b/multimedia/obuparse/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1743990877 -SHA256 (dwbuiten-obuparse-g20241212-918524a_GH0.tar.gz) = b23bb4a6eeb77514a5bbc64448666f62cea94bce5346b6ee605b76386a776804 -SIZE (dwbuiten-obuparse-g20241212-918524a_GH0.tar.gz) = 29526 +TIMESTAMP = 1756578144 +SHA256 (dwbuiten-obuparse-v2.0.1_GH0.tar.gz) = 99198db70a34f5448a188983208d52aac8b1ed5d076913d3f621b5abffc3cb71 +SIZE (dwbuiten-obuparse-v2.0.1_GH0.tar.gz) = 29651 diff --git a/multimedia/obuparse/files/patch-CMakeLists.txt b/multimedia/obuparse/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..9b8ca2dc856a --- /dev/null +++ b/multimedia/obuparse/files/patch-CMakeLists.txt @@ -0,0 +1,78 @@ +--- CMakeLists.txt.orig 2025-08-30 18:33:06 UTC ++++ CMakeLists.txt +@@ -0,0 +1,75 @@ ++cmake_minimum_required(VERSION 3.15) ++ ++project(OBUParse VERSION %%DISTVERSION%% LANGUAGES C) ++ ++# --- Set Standard Output Directories --- ++set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) ++set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) ++set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) ++ ++# --- Build Options --- ++# On MSVC, we only build static to avoid DLL export complexity and naming collisions. ++# On other platforms (including MinGW on Windows), we can build both. ++option(BUILD_SHARED_LIBS "Build the shared library" ON) ++option(BUILD_STATIC_LIBS "Build the static library" OFF) ++ ++if(NOT BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS) ++ message(FATAL_ERROR "You must choose to build at least one library type.") ++endif() ++ ++# --- Library Targets --- ++ ++if(BUILD_SHARED_LIBS) # This block will now be skipped on MSVC ++ add_library(obuparse_shared SHARED obuparse.c) ++ set_target_properties(obuparse_shared PROPERTIES ++ OUTPUT_NAME "obuparse" ++ VERSION ${PROJECT_VERSION} ++ SOVERSION 2 ++ EXPORT_NAME "shared" ++ ) ++ target_include_directories(obuparse_shared PUBLIC ++ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> ++ $<INSTALL_INTERFACE:include> ++ ) ++ add_library(OBUParse::shared ALIAS obuparse_shared) ++endif() ++ ++if(BUILD_STATIC_LIBS) ++ add_library(obuparse_static STATIC obuparse.c) ++ # The naming collision only happens with MSVC, not MinGW. ++ if(MSVC) ++ set_target_properties(obuparse_static PROPERTIES OUTPUT_NAME "obuparses") ++ else() ++ set_target_properties(obuparse_static PROPERTIES OUTPUT_NAME "obuparse") ++ endif() ++ set_target_properties(obuparse_static PROPERTIES EXPORT_NAME "static") ++ target_include_directories(obuparse_static PUBLIC ++ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> ++ $<INSTALL_INTERFACE:include> ++ ) ++ add_library(OBUParse::static ALIAS obuparse_static) ++endif() ++ ++# --- Installation --- ++include(GNUInstallDirs) ++ ++# Install the public header file ++install(FILES obuparse.h ++ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" ++) ++ ++set(BUILT_TARGETS "") ++if(TARGET obuparse_static) ++ list(APPEND BUILT_TARGETS obuparse_static) ++endif() ++if(TARGET obuparse_shared) ++ list(APPEND BUILT_TARGETS obuparse_shared) ++endif() ++ ++# Install the library targets that were built, and the tool ++install(TARGETS ${BUILT_TARGETS} ++ EXPORT OBUParseTargets ++ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" ++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" ++ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" ++) diff --git a/multimedia/obuparse/files/patch-Makefile b/multimedia/obuparse/files/patch-Makefile deleted file mode 100644 index b371f44188b8..000000000000 --- a/multimedia/obuparse/files/patch-Makefile +++ /dev/null @@ -1,33 +0,0 @@ ---- Makefile.orig 2023-07-12 18:02:40 UTC -+++ Makefile -@@ -1,9 +1,9 @@ - PREFIX=/usr/local - --CFLAGS := -O3 -std=c99 -Wall -Wextra -g -fPIC -I. $(CPPFLAGS) -+CFLAGS += -std=c99 -Wall -Wextra -fPIC -I. $(CPPFLAGS) - LDFLAGS += --CC := $(CROSS)gcc --AR := $(CROSS)ar -+CC := $(CC) -+AR := $(AR) - - ifneq (,$(findstring mingw,$(CC))) - LIBSUF=.dll -@@ -11,7 +11,7 @@ ifneq (,$(findstring mingw,$(CC))) - SYSTEM=MINGW - else - LIBSUF=.so -- LDFLAGS=-Wl,--version-script,obuparse.v -+ LDFLAGS+= -Wl,--version-script,obuparse.v - endif - - all: libobuparse$(LIBSUF) libobuparse.a -@@ -24,7 +24,7 @@ libobuparse.a: obuparse.o - $(AR) rcs $@ $^ - - libobuparse$(LIBSUF): obuparse.o -- $(CC) $(LDFLAGS) -shared $^ -o $@ -+ $(CC) $(LDFLAGS) -shared $^ -o $@ -Wl,-soname,libobuparse$(LIBSUF).1 - - install: install-shared install-static - |