1
0
Fork 0
mirror of https://git.freebsd.org/ports.git synced 2025-05-01 02:56:39 -04:00

multimedia/vid.stab: Update to 1.1.1

- Take maintainership
- Use pathfix instead of custom replacement
- Fix CPU instruction set detection
This commit is contained in:
Jason E. Hale 2024-10-31 19:52:02 -04:00
parent a73e58c372
commit df20ad1be5
4 changed files with 51 additions and 53 deletions

View file

@ -1,25 +1,22 @@
PORTNAME= vid.stab
PORTVERSION= 0.98.2
DISTVERSIONPREFIX= v
DISTVERSION= 1.1.1
CATEGORIES= multimedia
MAINTAINER= ports@FreeBSD.org
MAINTAINER= jhale@FreeBSD.org
COMMENT= Video stabilization library
WWW= http://public.hronopik.de/vid.stab/
LICENSE= GPLv2 GPLv3
LICENSE_COMB= dual
LICENSE= GPLv2+
USES= cmake pathfix
PATHFIX_CMAKELISTSTXT= create_pkgconfig_file.cmake
USE_GITHUB= yes
GH_ACCOUNT= georgmartius
USE_LDCONFIG= yes
CMAKE_ARGS= -DCPUINFO:STRING="${MACHINE_CPU}"
PORTSCOUT= skipv:before_complex_transforms
USE_GITHUB= yes
GH_ACCOUNT= georgmartius
GH_TAGNAME= release-0.98b
USES= cmake
USE_LDCONFIG= yes
pre-configure:
@${REINPLACE_CMD} -e 's,lib$${LIB_SUFFIX}/pkgconfig,libdata/pkgconfig,' \
${WRKSRC}/CMakeModules/create_pkgconfig_file.cmake
.include <bsd.port.mk>

View file

@ -1,2 +1,3 @@
SHA256 (georgmartius-vid.stab-0.98.2-release-0.98b_GH0.tar.gz) = 530f0bf7479ec89d9326af3a286a15d7d6a90fcafbb641e3b8bdb8d05637d025
SIZE (georgmartius-vid.stab-0.98.2-release-0.98b_GH0.tar.gz) = 73582
TIMESTAMP = 1730363156
SHA256 (georgmartius-vid.stab-v1.1.1_GH0.tar.gz) = 9001b6df73933555e56deac19a0f225aae152abbc0e97dc70034814a1943f3d4
SIZE (georgmartius-vid.stab-v1.1.1_GH0.tar.gz) = 80717

View file

@ -1,39 +1,39 @@
--- CMakeModules/FindSSE.cmake.orig 2014-03-12 19:42:49 UTC
--- CMakeModules/FindSSE.cmake.orig 2022-05-30 15:49:01 UTC
+++ CMakeModules/FindSSE.cmake
@@ -40,6 +40,36 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
ELSE (SSE41_TRUE)
set(SSE4_1_FOUND false CACHE BOOL "SSE4.1 available on host")
ENDIF (SSE41_TRUE)
+ELSEIF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
+ EXEC_PROGRAM(make ARGS "-V MACHINE_CPU" OUTPUT_VARIABLE CPUINFO)
@@ -1,10 +1,32 @@ include(CheckCCompilerFlag)
# Check if SSE instructions are available by the compiler and target platform (be aware of cross compilation)
include(CheckCCompilerFlag)
-check_c_compiler_flag(-msse2 HAVE_SSE2)
-check_c_compiler_flag(-msse3 HAVE_SSE3)
-check_c_compiler_flag(-mssse3 HAVE_SSSE3)
-check_c_compiler_flag(-msse4.1 HAVE_SSE4_1)
+if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
+ string(REGEX MATCH "sse2" FREEBSD_SSE2 ${CPUINFO})
+ if(FREEBSD_SSE2)
+ check_c_compiler_flag(-msse2 HAVE_SSE2)
+ endif()
+
+ STRING(REGEX MATCH "(^|[^s])sse2" SSE2_TRUE ${CPUINFO})
+ IF (SSE2_TRUE)
+ set(SSE2_FOUND true CACHE BOOL "SSE2 available on host")
+ ELSE (SSE2_TRUE)
+ set(SSE2_FOUND false CACHE BOOL "SSE2 available on host")
+ ENDIF (SSE2_TRUE)
+ string(REGEX MATCH "(^|[^s])sse3" FREEBSD_SSE3 ${CPUINFO})
+ if(FREEBSD_SSE3)
+ check_c_compiler_flag(-msse3 HAVE_SSE3)
+ endif()
+
+ STRING(REGEX MATCH "(^|[^s])sse3" SSE3_TRUE ${CPUINFO})
+ IF (SSE3_TRUE)
+ set(SSE3_FOUND true CACHE BOOL "SSE3 available on host")
+ ELSE (SSE3_TRUE)
+ set(SSE3_FOUND false CACHE BOOL "SSE3 available on host")
+ ENDIF (SSE3_TRUE)
+ string(REGEX MATCH "ssse3" FREEBSD_SSSE3 ${CPUINFO})
+ if(FREEBSD_SSSE3)
+ check_c_compiler_flag(-mssse3 HAVE_SSSE3)
+ endif()
+
+ STRING(REGEX MATCH "ssse3" SSSE3_TRUE ${CPUINFO})
+ IF (SSSE3_TRUE)
+ set(SSSE3_FOUND true CACHE BOOL "SSSE3 available on host")
+ ELSE (SSSE3_TRUE)
+ set(SSSE3_FOUND false CACHE BOOL "SSSE3 available on host")
+ ENDIF (SSSE3_TRUE)
+
+ STRING(REGEX MATCH "sse41" SSE41_TRUE ${CPUINFO})
+ IF (SSE41_TRUE)
+ set(SSE4_1_FOUND true CACHE BOOL "SSE4.1 available on host")
+ ELSE (SSE41_TRUE)
+ set(SSE4_1_FOUND false CACHE BOOL "SSE4.1 available on host")
+ ENDIF (SSE41_TRUE)
ELSEIF(CMAKE_SYSTEM_NAME MATCHES "Darwin")
EXEC_PROGRAM("/usr/sbin/sysctl -n machdep.cpu.features" OUTPUT_VARIABLE
CPUINFO)
+ string(REGEX MATCH "sse41" FREEBSD_SSE41 ${CPUINFO})
+ if(FREEBSD_SSE41)
+ check_c_compiler_flag(-msse4.1 HAVE_SSE4_1)
+ endif()
+else()
+ check_c_compiler_flag(-msse2 HAVE_SSE2)
+ check_c_compiler_flag(-msse3 HAVE_SSE3)
+ check_c_compiler_flag(-mssse3 HAVE_SSSE3)
+ check_c_compiler_flag(-msse4.1 HAVE_SSE4_1)
+endif()
# Some compilers understand SSE flags, even when target platform doesn't support it (Clang with arm target)
# It is necessary try to compile actual code

View file

@ -15,5 +15,5 @@ include/vid.stab/transformtype_operations.h
include/vid.stab/vidstabdefines.h
include/vid.stab/vsvector.h
lib/libvidstab.so
lib/libvidstab.so.0.9
lib/libvidstab.so.1.2
libdata/pkgconfig/vidstab.pc