Skip to content

Commit

Permalink
math/glm: update 0.9.9.8 → 1.0.1
Browse files Browse the repository at this point in the history
Some parts of glm were retroactively marked as experimental, and using
now leads to a compile error - added override for this error to consumers
which need it.
  • Loading branch information
AMDmi3 committed Mar 1, 2024
1 parent ec9a6fb commit b35bdcd
Show file tree
Hide file tree
Showing 14 changed files with 122 additions and 44 deletions.
2 changes: 2 additions & 0 deletions astro/calcmysky/Makefile
Expand Up @@ -20,4 +20,6 @@ USE_QT= buildtools:build qmake:build core gui opengl widgets

CMAKE_ARGS= -DQT_VERSION:STRING=5

CXXFLAGS+= -DGLM_ENABLE_EXPERIMENTAL # GLM_GTX_transform is an experimental extension

.include <bsd.port.mk>
2 changes: 2 additions & 0 deletions games/aquaria/Makefile
Expand Up @@ -40,6 +40,8 @@ CMAKE_OFF= AQUARIA_INTERNAL_FREETYPE \
LDFLAGS+= -Wl,--as-needed # avoid overlinking (vorbis deps)
LDFLAGS_i386= -Wl,-z,notext -Wl,--no-check-dynamic-relocations

CXXFLAGS+= -DGLM_ENABLE_EXPERIMENTAL # GLM_GTX_transform is an experimental extension

DESKTOP_ENTRIES="${GH_PROJECT}" \
"" \
"${DATADIR}/${PORTNAME}.png" \
Expand Down
2 changes: 2 additions & 0 deletions games/irrlamb/Makefile
Expand Up @@ -33,6 +33,8 @@ CONFIGURE_ENV= LOCALBASE="${LOCALBASE}"

LDFLAGS_i386= -Wl,-znotext

CXXFLAGS+= -DGLM_ENABLE_EXPERIMENTAL # GLM_GTX_rotate_vector is an experimental extension

PORTDOCS= *
PORTDATA= *

Expand Down
2 changes: 2 additions & 0 deletions games/solarus/Makefile
Expand Up @@ -29,6 +29,8 @@ USE_SDL= sdl2 ttf2 image2
USE_GL= gl glu
USE_LDCONFIG= yes

CXXFLAGS+= -DGLM_ENABLE_EXPERIMENTAL # GLM_GTX_matrix_transform_2d is an experimental extension

OPTIONS_DEFINE= LUAJIT
OPTIONS_DEFAULT_amd64= LUAJIT
OPTIONS_DEFAULT_i386= LUAJIT
Expand Down
2 changes: 2 additions & 0 deletions graphics/libgltf/Makefile
Expand Up @@ -24,4 +24,6 @@ INSTALL_TARGET= install-strip

PLIST_SUB= VERSION=${PORTVERSION:R}

CXXFLAGS+= -DGLM_ENABLE_EXPERIMENTAL # uses experimental extensions when checking for glm in configure

.include <bsd.port.mk>
22 changes: 4 additions & 18 deletions math/glm/Makefile
@@ -1,39 +1,25 @@
PORTNAME= glm
PORTVERSION= 0.9.9.8
PORTVERSION= 1.0.1
PORTEPOCH= 1
CATEGORIES= math graphics

MAINTAINER= amdmi3@FreeBSD.org
COMMENT= C++ mathematics library for software based on the OpenGL GLSL
WWW= https://glm.g-truc.net/
WWW= https://github.com/g-truc/glm

LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/copying.txt

USES= cmake compiler:c++11-lang pkgconfig
USE_GITHUB= yes
GH_ACCOUNT= g-truc
NO_ARCH= yes

SUB_FILES= glm.pc
CMAKE_OFF= GLM_BUILD_LIBRARY

PORTDOCS= *

OPTIONS_DEFINE= TEST DOCS
TEST_CMAKE_BOOL= GLM_TEST_ENABLE
TEST_TEST_TARGET= test

post-patch:
@${REINPLACE_CMD} -e '/printf/ s|EndTime - StartTime|static_cast<long>(&)|' \
${WRKSRC}/test/core/core_func_matrix.cpp

do-install:
@cd ${WRKSRC} && ${COPYTREE_SHARE} "glm" ${STAGEDIR}${PREFIX}/include \
"-not -name CMakeLists.txt"
@${MKDIR} ${STAGEDIR}${PREFIX}/lib/cmake/glm
${INSTALL_DATA} ${WRKSRC}/cmake/glm/*.cmake ${STAGEDIR}${PREFIX}/lib/cmake/glm
${INSTALL_DATA} ${WRKDIR}/glm.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig

do-install-DOCS-on:
@cd ${WRKSRC} && ${COPYTREE_SHARE} "doc *.md" ${STAGEDIR}${DOCSDIR}

.include <bsd.port.mk>
6 changes: 3 additions & 3 deletions math/glm/distinfo
@@ -1,3 +1,3 @@
TIMESTAMP = 1615332075
SHA256 (g-truc-glm-0.9.9.8_GH0.tar.gz) = 7d508ab72cb5d43227a3711420f06ff99b0a0cb63ee2f93631b162bfe1fe9592
SIZE (g-truc-glm-0.9.9.8_GH0.tar.gz) = 4368032
TIMESTAMP = 1709055434
SHA256 (g-truc-glm-1.0.1_GH0.tar.gz) = 9f3174561fd26904b23f0db5e560971cbf9b3cbda0b280f04d5c379d03bf234c
SIZE (g-truc-glm-1.0.1_GH0.tar.gz) = 4567161
7 changes: 0 additions & 7 deletions math/glm/files/glm.pc.in

This file was deleted.

11 changes: 0 additions & 11 deletions math/glm/files/patch-glm_ext_quaternion__common.inl

This file was deleted.

60 changes: 60 additions & 0 deletions math/glm/files/patch-glm_gtx_bit.hpp
@@ -0,0 +1,60 @@
This is needed to fix x11-wm/gamescope with glm 1.0.1

https://github.com/g-truc/glm/issues/1269

--- glm/gtx/bit.hpp.orig 2024-02-27 17:19:47 UTC
+++ glm/gtx/bit.hpp
@@ -46,7 +46,7 @@ namespace glm
/// @see gtc_round
/// @see gtx_bit
template<typename genIUType>
- GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoAbove(genIUType Value);
+ GLM_FUNC_DECL genIUType powerOfTwoAbove(genIUType Value);

/// Return the power of two number which value is just higher the input value.
/// Deprecated, use ceilPowerOfTwo from GTC_round instead
@@ -54,7 +54,7 @@ namespace glm
/// @see gtc_round
/// @see gtx_bit
template<length_t L, typename T, qualifier Q>
- GLM_DEPRECATED GLM_FUNC_DECL vec<L, T, Q> powerOfTwoAbove(vec<L, T, Q> const& value);
+ GLM_FUNC_DECL vec<L, T, Q> powerOfTwoAbove(vec<L, T, Q> const& value);

/// Return the power of two number which value is just lower the input value.
/// Deprecated, use floorPowerOfTwo from GTC_round instead
@@ -62,7 +62,7 @@ namespace glm
/// @see gtc_round
/// @see gtx_bit
template<typename genIUType>
- GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoBelow(genIUType Value);
+ GLM_FUNC_DECL genIUType powerOfTwoBelow(genIUType Value);

/// Return the power of two number which value is just lower the input value.
/// Deprecated, use floorPowerOfTwo from GTC_round instead
@@ -70,7 +70,7 @@ namespace glm
/// @see gtc_round
/// @see gtx_bit
template<length_t L, typename T, qualifier Q>
- GLM_DEPRECATED GLM_FUNC_DECL vec<L, T, Q> powerOfTwoBelow(vec<L, T, Q> const& value);
+ GLM_FUNC_DECL vec<L, T, Q> powerOfTwoBelow(vec<L, T, Q> const& value);

/// Return the power of two number which value is the closet to the input value.
/// Deprecated, use roundPowerOfTwo from GTC_round instead
@@ -78,7 +78,7 @@ namespace glm
/// @see gtc_round
/// @see gtx_bit
template<typename genIUType>
- GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoNearest(genIUType Value);
+ GLM_FUNC_DECL genIUType powerOfTwoNearest(genIUType Value);

/// Return the power of two number which value is the closet to the input value.
/// Deprecated, use roundPowerOfTwo from GTC_round instead
@@ -86,7 +86,7 @@ namespace glm
/// @see gtc_round
/// @see gtx_bit
template<length_t L, typename T, qualifier Q>
- GLM_DEPRECATED GLM_FUNC_DECL vec<L, T, Q> powerOfTwoNearest(vec<L, T, Q> const& value);
+ GLM_FUNC_DECL vec<L, T, Q> powerOfTwoNearest(vec<L, T, Q> const& value);

/// @}
} //namespace glm
19 changes: 19 additions & 0 deletions math/glm/files/patch-test_CMakeLists.txt
@@ -0,0 +1,19 @@
--- test/CMakeLists.txt.orig 2024-02-27 17:19:47 UTC
+++ test/CMakeLists.txt
@@ -11,7 +11,7 @@ if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
endif()

if(NOT GLM_DISABLE_AUTO_DETECTION)
- add_compile_options(-Werror -Weverything)
+ add_compile_options(-Weverything)
endif()

elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
@@ -20,7 +20,6 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
endif()

if(NOT GLM_DISABLE_AUTO_DETECTION)
- add_compile_options(-Werror)
# add_compile_options(-Wpedantic)
# add_compile_options(-Wall)
# add_compile_options(-Wextra)
11 changes: 11 additions & 0 deletions math/glm/files/patch-test_core_core__func_matrix.cpp
@@ -0,0 +1,11 @@
--- test/core/core_func_matrix.cpp.orig 2024-02-27 17:19:47 UTC
+++ test/core/core_func_matrix.cpp
@@ -392,7 +392,7 @@ static int test_inverse_perf(std::size_t Count, std::s
//glm::uint Ulp = 0;
//Ulp = glm::max(glm::float_distance(*Dst, *Src), Ulp);

- std::printf("inverse<%s>(%f): %lu\n", Message, static_cast<double>(Diff), EndTime - StartTime);
+ std::printf("inverse<%s>(%f): %lu\n", Message, static_cast<double>(Diff), (unsigned long)(EndTime - StartTime));

return 0;
}
18 changes: 13 additions & 5 deletions math/glm/pkg-plist
Expand Up @@ -6,6 +6,7 @@ include/glm/detail/_swizzle.hpp
include/glm/detail/_swizzle_func.hpp
include/glm/detail/_vectorize.hpp
include/glm/detail/compute_common.hpp
include/glm/detail/compute_vector_decl.hpp
include/glm/detail/compute_vector_relational.hpp
include/glm/detail/func_common.inl
include/glm/detail/func_common_simd.inl
Expand Down Expand Up @@ -62,6 +63,7 @@ include/glm/detail/type_vec4.inl
include/glm/detail/type_vec4_simd.inl
include/glm/exponential.hpp
include/glm/ext.hpp
include/glm/ext/_matrix_vectorize.hpp
include/glm/ext/matrix_clip_space.hpp
include/glm/ext/matrix_clip_space.inl
include/glm/ext/matrix_common.hpp
Expand Down Expand Up @@ -120,6 +122,8 @@ include/glm/ext/matrix_int4x3.hpp
include/glm/ext/matrix_int4x3_sized.hpp
include/glm/ext/matrix_int4x4.hpp
include/glm/ext/matrix_int4x4_sized.hpp
include/glm/ext/matrix_integer.hpp
include/glm/ext/matrix_integer.inl
include/glm/ext/matrix_projection.hpp
include/glm/ext/matrix_projection.inl
include/glm/ext/matrix_relational.hpp
Expand Down Expand Up @@ -170,6 +174,8 @@ include/glm/ext/scalar_integer.hpp
include/glm/ext/scalar_integer.inl
include/glm/ext/scalar_packing.hpp
include/glm/ext/scalar_packing.inl
include/glm/ext/scalar_reciprocal.hpp
include/glm/ext/scalar_reciprocal.inl
include/glm/ext/scalar_relational.hpp
include/glm/ext/scalar_relational.inl
include/glm/ext/scalar_uint_sized.hpp
Expand Down Expand Up @@ -213,6 +219,8 @@ include/glm/ext/vector_integer.hpp
include/glm/ext/vector_integer.inl
include/glm/ext/vector_packing.hpp
include/glm/ext/vector_packing.inl
include/glm/ext/vector_reciprocal.hpp
include/glm/ext/vector_reciprocal.inl
include/glm/ext/vector_relational.hpp
include/glm/ext/vector_relational.inl
include/glm/ext/vector_uint1.hpp
Expand All @@ -227,6 +235,7 @@ include/glm/ext/vector_ulp.hpp
include/glm/ext/vector_ulp.inl
include/glm/fwd.hpp
include/glm/geometric.hpp
include/glm/glm.cppm
include/glm/glm.hpp
include/glm/gtc/bitfield.hpp
include/glm/gtc/bitfield.inl
Expand Down Expand Up @@ -255,7 +264,6 @@ include/glm/gtc/quaternion_simd.inl
include/glm/gtc/random.hpp
include/glm/gtc/random.inl
include/glm/gtc/reciprocal.hpp
include/glm/gtc/reciprocal.inl
include/glm/gtc/round.hpp
include/glm/gtc/round.inl
include/glm/gtc/type_aligned.hpp
Expand Down Expand Up @@ -344,11 +352,12 @@ include/glm/gtx/normal.inl
include/glm/gtx/normalize_dot.hpp
include/glm/gtx/normalize_dot.inl
include/glm/gtx/number_precision.hpp
include/glm/gtx/number_precision.inl
include/glm/gtx/optimum_pow.hpp
include/glm/gtx/optimum_pow.inl
include/glm/gtx/orthonormalize.hpp
include/glm/gtx/orthonormalize.inl
include/glm/gtx/pca.hpp
include/glm/gtx/pca.inl
include/glm/gtx/perpendicular.hpp
include/glm/gtx/perpendicular.inl
include/glm/gtx/polar_coordinates.hpp
Expand Down Expand Up @@ -417,6 +426,5 @@ include/glm/vec2.hpp
include/glm/vec3.hpp
include/glm/vec4.hpp
include/glm/vector_relational.hpp
lib/cmake/glm/glmConfig-version.cmake
lib/cmake/glm/glmConfig.cmake
libdata/pkgconfig/glm.pc
%%DATADIR%%/glmConfig.cmake
%%DATADIR%%/glmConfigVersion.cmake
2 changes: 2 additions & 0 deletions x11-wm/gamescope/Makefile
Expand Up @@ -47,6 +47,8 @@ PLIST_FILES= bin/${PORTNAME} \
lib/libVkLayer_FROG_${PORTNAME}_wsi_${MESON_ARCH_FAMILY}.so \
share/vulkan/implicit_layer.d/VkLayer_FROG_${PORTNAME}_wsi.${MESON_ARCH_FAMILY}.json

CXXFLAGS+= -DGLM_ENABLE_EXPERIMENTAL # GLM_GTX_string_cast is an experimental extension

# https://github.com/freebsd/drm-kmod/issues/271
PORTSCOUT= ignore:1

Expand Down

0 comments on commit b35bdcd

Please sign in to comment.