diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-12 19:09:37 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-12 19:09:37 -0500 |
| commit | b590c8d7572b727d565cc0b8ff660d43569845de (patch) | |
| tree | 06f7a4102ea4e845df8b66660f252920d52952f9 /media-libs/opencollada | |
| parent | 24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff) | |
| download | baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip | |
Adding metadata
Diffstat (limited to 'media-libs/opencollada')
10 files changed, 343 insertions, 0 deletions
diff --git a/media-libs/opencollada/Manifest b/media-libs/opencollada/Manifest new file mode 100644 index 000000000000..a06cbc7d0249 --- /dev/null +++ b/media-libs/opencollada/Manifest @@ -0,0 +1 @@ +DIST opencollada-1.6.68.tar.gz 12098718 BLAKE2B 45e0cd788b50a9a528b120e3cf8385803fa3dab0baaf8e28026cea8bf9afb0ab6b3d37f1d67803c9a48dae94d41efb9b5da119f75bd22a697c50c332d626cde2 SHA512 1b875ac2f59344aa33486f9e7479f76e94d58d5b567f17438c002cbfb36685fb38420467804c9eb28657d71d7efad550a24873dfe940d781c2a733c831532173 diff --git a/media-libs/opencollada/files/opencollada-1.6.63-pcre-fix.patch b/media-libs/opencollada/files/opencollada-1.6.63-pcre-fix.patch new file mode 100644 index 000000000000..2d4077446dea --- /dev/null +++ b/media-libs/opencollada/files/opencollada-1.6.63-pcre-fix.patch @@ -0,0 +1,14 @@ +diff -purN a/COLLADABaseUtils/include/COLLADABUPcreCompiledPattern.h b/COLLADABaseUtils/include/COLLADABUPcreCompiledPattern.h +--- a/COLLADABaseUtils/include/COLLADABUPcreCompiledPattern.h 2018-07-19 01:10:56.000000000 +0100 ++++ b/COLLADABaseUtils/include/COLLADABUPcreCompiledPattern.h 2018-08-07 12:12:59.209871432 +0100 +@@ -12,9 +12,7 @@ + #define __COLLADABU_PCRECOMPILEDPATTERN_H__
+
+ #include "COLLADABUPrerequisites.h"
+-
+-struct real_pcre; +-typedef struct real_pcre pcre; ++#include <pcre.h>
+
+
+ namespace COLLADABU
diff --git a/media-libs/opencollada/files/opencollada-1.6.68-cmake-fixes.patch b/media-libs/opencollada/files/opencollada-1.6.68-cmake-fixes.patch new file mode 100644 index 000000000000..3d4be8dba1b9 --- /dev/null +++ b/media-libs/opencollada/files/opencollada-1.6.68-cmake-fixes.patch @@ -0,0 +1,122 @@ +From c3ed65c2c60b8744163b3a57cf24469e688536dd Mon Sep 17 00:00:00 2001 +From: Jonathan Scruggs <j.scruggs@gmail.com> +Date: Sat, 13 Jan 2018 11:54:44 +0000 +Subject: [PATCH] OpenCOLLADA/CMakeLists.txt + +Use CMAKE_BUILD_TYPE which can be overrided with custom distro types + +Adhere to GNU filesystem layout conventions. Not all distros and OSes +have directories in the same locations and they define the +GNUInstallDirs variables, so use those variables. Also, this enables +multi lib installations. + +Define the version variables to enable SONAME versioning on the +library files in case there is ABI changes in the future. +--- + CMakeLists.txt | 58 ++++++++++++++++++++++++++++++++++++---------------------- + 1 file changed, 36 insertions(+), 22 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 95abbe21..00ad8d6a 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -37,14 +37,41 @@ cmake_policy(SET CMP0010 NEW) + # Input directories must have CMakeLists.txt + cmake_policy(SET CMP0014 NEW) + +-# avoid having empty buildtype +-set(CMAKE_BUILD_TYPE_INIT "Release") + +-set(CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "Only do Release and Debug" FORCE ) +-mark_as_advanced(CMAKE_CONFIGURATION_TYPES) ++# Set Release type for builds where CMAKE_BUILD_TYPE is unset ++# This is usually a good default as this implictly enables ++# ++# CXXFLAGS = -O3 -DNDEBUG ++# ++if( NOT CMAKE_BUILD_TYPE ) ++ set( CMAKE_BUILD_TYPE "Release" ) ++endif() + + SET(CMAKE_DEBUG_POSTFIX "" CACHE STRING "Add this string to as suffix to Debug libraries, e.g.: xml2_d.lib " ) + ++# Adhere to GNU filesystem layout conventions ++include( GNUInstallDirs ) ++ ++ ++# #----------------------------------------------------------------------------- ++# Initialize project. ++ ++project(OPENCOLLADA) # must be after setting cmake_configuration_types ++ ++set(EXTERNAL_LIBRARIES ${OPENCOLLADA_SOURCE_DIR}/Externals) # external libraries ++set(CMAKE_MODULE_PATH "${EXTERNAL_LIBRARIES}/cmake-modules") ++ ++set(OPENCOLLADA_VERSION_MAJOR 1) ++set(OPENCOLLADA_VERSION_MINOR 6) ++set(OPENCOLLADA_VERSION_PATCH 68) ++set(OPENCOLLADA_VERSION ${OPENCOLLADA_VERSION_MAJOR}.${OPENCOLLADA_VERSION_MINOR}.${OPENCOLLADA_VERSION_PATCH}) ++ ++if(NOT SOVERSION) ++ set(SOVERSION ${OPENCOLLADA_VERSION_MAJOR}.${OPENCOLLADA_VERSION_MINOR} ++ CACHE STRING "Set the SO version in the SO name of the output library") ++endif() ++ ++ + #----------------------------------------------------------------------------- + # Macro's + +@@ -58,7 +85,7 @@ macro(opencollada_add_lib + + if (USE_STATIC) + add_library(${name}_static STATIC ${sources}) +- set_target_properties(${name}_static PROPERTIES OUTPUT_NAME ${name}) ++ set_target_properties(${name}_static PROPERTIES OUTPUT_NAME ${name} SOVERSION ${SOVERSION}) + foreach(target_lib ${target_libs}) + if(TARGET ${target_lib}_static) + target_link_libraries(${name}_static ${target_lib}_static) +@@ -84,7 +111,7 @@ macro(opencollada_add_lib + message(${name} " WARNING: Shared library support implemented for UNIX-like OS only") + endif () + add_library(${name}_shared SHARED ${sources}) +- set_target_properties(${name}_shared PROPERTIES OUTPUT_NAME ${name}) ++ set_target_properties(${name}_shared PROPERTIES OUTPUT_NAME ${name} SOVERSION ${SOVERSION}) + foreach(target_lib ${target_libs}) + if(TARGET ${target_lib}_shared) + target_link_libraries(${name}_shared ${target_lib}_shared) +@@ -145,19 +172,6 @@ endmacro() + # end copy + # -------- + +-#----------------------------------------------------------------------------- +-# Initialize project. +- +-project(OPENCOLLADA) # must be after setting cmake_configuration_types +- +-set(EXTERNAL_LIBRARIES ${OPENCOLLADA_SOURCE_DIR}/Externals) # external libraries +-set(CMAKE_MODULE_PATH "${EXTERNAL_LIBRARIES}/cmake-modules") +- +-set(OPENCOLLADA_VERSION_MAJOR 0) +-set(OPENCOLLADA_VERSION_MINOR 1) +-set(OPENCOLLADA_VERSION_PATCH 0) +-set(OPENCOLLADA_VERSION ${OPENCOLLADA_VERSION_MAJOR}.${OPENCOLLADA_VERSION_MINOR}.${OPENCOLLADA_VERSION_PATCH}) +- + + #----------------------------------------------------------------------------- + # Compiler warnings. +@@ -190,9 +204,9 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_WARNINGS}") + #----------------------------------------------------------------------------- + # Install vars + +-set(OPENCOLLADA_INST_INCLUDE ${CMAKE_INSTALL_PREFIX}/include/opencollada) +-set(OPENCOLLADA_INST_LIBRARY ${CMAKE_INSTALL_PREFIX}/lib/opencollada) +-set(OPENCOLLADA_INST_CMAKECONFIG ${OPENCOLLADA_INST_LIBRARY}/cmake) ++set(OPENCOLLADA_INST_INCLUDE ${CMAKE_INSTALL_FULL_INCLUDEDIR}/opencollada) ++set(OPENCOLLADA_INST_LIBRARY ${CMAKE_INSTALL_FULL_LIBDIR}/opencollada) ++set(OPENCOLLADA_INST_CMAKECONFIG ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/OpenCOLLADA) + + + #----------------------------------------------------------------------------- +-- +2.15.1 + diff --git a/media-libs/opencollada/files/opencollada-1.6.68-cmake4.patch b/media-libs/opencollada/files/opencollada-1.6.68-cmake4.patch new file mode 100644 index 000000000000..32a335009c9a --- /dev/null +++ b/media-libs/opencollada/files/opencollada-1.6.68-cmake4.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -18,7 +18,7 @@ if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR}) + endif() + endif() + +-cmake_minimum_required(VERSION 2.6) ++cmake_minimum_required(VERSION 2.6...4.0) + + + #----------------------------------------------------------------------------- diff --git a/media-libs/opencollada/files/opencollada-1.6.68-fix-null-conversion.patch b/media-libs/opencollada/files/opencollada-1.6.68-fix-null-conversion.patch new file mode 100644 index 000000000000..5a2fa46fe5a4 --- /dev/null +++ b/media-libs/opencollada/files/opencollada-1.6.68-fix-null-conversion.patch @@ -0,0 +1,12 @@ +diff -Naur a/COLLADAStreamWriter/src/COLLADASWLibraryAnimations.cpp b/COLLADAStreamWriter/src/COLLADASWLibraryAnimations.cpp +--- a/COLLADAStreamWriter/src/COLLADASWLibraryAnimations.cpp 2020-05-08 01:17:06.981501609 +1000 ++++ b/COLLADAStreamWriter/src/COLLADASWLibraryAnimations.cpp 2020-05-08 01:17:23.011549185 +1000 +@@ -62,7 +62,7 @@ + + //--------------------------------------------------------------- + LibraryAnimations::LibraryAnimations ( COLLADASW::StreamWriter * streamWriter ) +- : Library ( streamWriter, CSWC::CSW_ELEMENT_LIBRARY_ANIMATIONS ), mOpenAnimations ( NULL ) ++ : Library ( streamWriter, CSWC::CSW_ELEMENT_LIBRARY_ANIMATIONS ), mOpenAnimations ( 0 ) + {} + + //--------------------------------------------------------------- diff --git a/media-libs/opencollada/files/opencollada-1.6.68-gcc13.patch b/media-libs/opencollada/files/opencollada-1.6.68-gcc13.patch new file mode 100644 index 000000000000..e12771ca97a4 --- /dev/null +++ b/media-libs/opencollada/files/opencollada-1.6.68-gcc13.patch @@ -0,0 +1,35 @@ +https://bugs.gentoo.org/899750 +https://github.com/KhronosGroup/OpenCOLLADA/pull/656 + +From 84c8c9a02b4e5fe40465034563cb36527e865dac Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich <slyich@gmail.com> +Date: Mon, 11 Jul 2022 21:33:11 +0100 +Subject: [PATCH] DAEValidator: fix gcc-13 build + +On gcc-13 c++ headers don't include <stdint.h> implicitly any more. +This exposed build failure as: + + /build/source/DAEValidator/library/src/XmlDoc.cpp: In member function 'virtual void opencollada::XmlDoc::readFile(const std::string&)': + /build/source/DAEValidator/library/src/XmlDoc.cpp:59:17: error: 'uint32_t' was not declared in this scope + 59 | uint32_t signature = *reinterpret_cast<const uint32_t*>(content.data()); + | ^~~~~~~~ +--- a/DAEValidator/library/src/DaeValidator.cpp ++++ b/DAEValidator/library/src/DaeValidator.cpp +@@ -4,6 +4,7 @@ + #include "Strings.h" + #include "StringUtil.h" + #include <cmath> ++#include <cstdint> + #include "no_warning_iomanip" + #include "no_warning_iostream" + #include <set> +--- a/DAEValidator/library/src/XmlDoc.cpp ++++ b/DAEValidator/library/src/XmlDoc.cpp +@@ -1,5 +1,6 @@ + #include "Macros.h" + ++#include <cstdint> + #if IS_GNUC_AND_GNUC_VERSION_LT(5,1,1) + #include <cstring> + #endif + diff --git a/media-libs/opencollada/files/opencollada-1.6.68-unbundle-zlib.patch b/media-libs/opencollada/files/opencollada-1.6.68-unbundle-zlib.patch new file mode 100644 index 000000000000..5ff1361cff74 --- /dev/null +++ b/media-libs/opencollada/files/opencollada-1.6.68-unbundle-zlib.patch @@ -0,0 +1,39 @@ +https://bugs.gentoo.org/880407 + +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -288,7 +288,6 @@ add_subdirectory(common/libftoa) + add_subdirectory(${EXTERNAL_LIBRARIES}/UTF) + add_subdirectory(common/libBuffer) + add_subdirectory(${EXTERNAL_LIBRARIES}/MathMLSolver) +-add_subdirectory(${EXTERNAL_LIBRARIES}/zlib) + + # building OpenCOLLADA libs + add_subdirectory(COLLADABaseUtils) +--- a/DAEValidator/CMakeLists.txt ++++ b/DAEValidator/CMakeLists.txt +@@ -80,11 +80,8 @@ if (NOT LIBXML2_FOUND) + else () + list(APPEND Libraries ${LIBXML2_LIBRARIES}) + endif () +-if (USE_STATIC) +- list(APPEND Libraries zlib_static) +- else () +- list(APPEND Libraries zlib_shared) +- endif () ++find_package(ZLIB REQUIRED) ++list(APPEND Libraries ZLIB::ZLIB) + if (WIN32) + list(APPEND Libraries ws2_32.lib) + endif () +@@ -208,10 +205,3 @@ else () + include_directories(${LIBXML2_INCLUDE_DIR}) + endif () + +-# zlib +-if (USE_STATIC) +- add_dependencies(DAEValidatorExecutable zlib_static) +-else () +- add_dependencies(DAEValidatorExecutable zlib_shared) +-endif () +-include_directories("../Externals/zlib/include") diff --git a/media-libs/opencollada/files/opencollada-1.6.68-werror.patch b/media-libs/opencollada/files/opencollada-1.6.68-werror.patch new file mode 100644 index 000000000000..3a490d326ddc --- /dev/null +++ b/media-libs/opencollada/files/opencollada-1.6.68-werror.patch @@ -0,0 +1,11 @@ +--- a/DAEValidator/CMakeLists.txt ++++ b/DAEValidator/CMakeLists.txt +@@ -100,7 +100,7 @@ if (WIN32) + # C4820: 'bytes' bytes padding added after construct 'member_name' + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /Wall /WX /wd4505 /wd4514 /wd4592 /wd4710 /wd4711 /wd4820") + else () +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Werror") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall") + endif () + + add_custom_command( diff --git a/media-libs/opencollada/metadata.xml b/media-libs/opencollada/metadata.xml new file mode 100644 index 000000000000..51409125081c --- /dev/null +++ b/media-libs/opencollada/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person" proxied="yes"> + <email>negril.nx+gentoo@gmail.com</email> + <name>Paul Zander</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/media-libs/opencollada/opencollada-1.6.68-r2.ebuild b/media-libs/opencollada/opencollada-1.6.68-r2.ebuild new file mode 100644 index 000000000000..a4eea0f4bce2 --- /dev/null +++ b/media-libs/opencollada/opencollada-1.6.68-r2.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake edos2unix flag-o-matic + +DESCRIPTION="Stream based read/write library for COLLADA files" +HOMEPAGE="http://www.opencollada.org/" +SRC_URI="https://github.com/KhronosGroup/OpenCOLLADA/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/OpenCOLLADA-${PV}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="amd64 arm arm64 ppc64 x86" +IUSE="static-libs" + +RDEPEND=" + dev-libs/libpcre:= + dev-libs/libxml2:= + dev-libs/zziplib + media-libs/lib3ds + virtual/zlib:= +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-admin/chrpath + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${P}-fix-null-conversion.patch" + "${FILESDIR}/${P}-cmake-fixes.patch" + "${FILESDIR}/${PN}-1.6.63-pcre-fix.patch" + "${FILESDIR}/${PN}-1.6.68-gcc13.patch" + "${FILESDIR}/${PN}-1.6.68-werror.patch" + "${FILESDIR}/${PN}-1.6.68-cmake4.patch" + "${FILESDIR}/${PN}-1.6.68-unbundle-zlib.patch" +) + +src_prepare() { + edos2unix CMakeLists.txt + + cmake_src_prepare + + # Remove bundled depends that have portage equivalents + rm -rv Externals/{expat,lib3ds,LibXML,pcre,zlib,zziplib} || die + + # Remove unused build systems + rm -v Makefile scripts/{unixbuild.sh,vcproj2cmake.rb} || die + find "${S}" -name SConscript -delete || die +} + +src_configure() { + # bug 619670 + append-cxxflags -std=c++14 + + local mycmakeargs=( + -DUSE_SHARED=ON + -DUSE_STATIC=$(usex static-libs) + -DUSE_LIBXML=ON + ) + + cmake_src_configure +} + +src_install() { + cmake_src_install + + newenvd - 99opencollada <<- _EOF_ + LDPATH=/usr/$(get_libdir)/opencollada + _EOF_ + + # Remove insecure DAEValidator RUNPATH and install DAEValidator library + dolib.so "${BUILD_DIR}/lib/libDAEValidatorLibrary.so" + chrpath -d "${BUILD_DIR}/bin/DAEValidator" || die + + dobin "${BUILD_DIR}/bin/DAEValidator" + dobin "${BUILD_DIR}/bin/OpenCOLLADAValidator" + # Need to be in same directory as above binaries + docinto "/usr/bin" + dodoc "${BUILD_DIR}/bin/COLLADAPhysX3Schema.xsd" + dodoc "${BUILD_DIR}/bin/collada_schema_1_4_1.xsd" + dodoc "${BUILD_DIR}/bin/collada_schema_1_5.xsd" +} |
