summaryrefslogtreecommitdiff
path: root/media-libs/opencollada
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
commitbfd9c39e4712ebdb442d4ca0673061faed1e70e1 (patch)
tree0d7a74b4463ee387f9cf9368ceb1b757f694f72a /media-libs/opencollada
parentf716a9fe6455d39eef01e718aae68dae61c19704 (diff)
downloadbaldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.gz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.xz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.zip
Revert "Adding metadata"
This reverts commit f716a9fe6455d39eef01e718aae68dae61c19704.
Diffstat (limited to 'media-libs/opencollada')
-rw-r--r--media-libs/opencollada/Manifest1
-rw-r--r--media-libs/opencollada/files/opencollada-1.6.63-pcre-fix.patch14
-rw-r--r--media-libs/opencollada/files/opencollada-1.6.68-cmake-fixes.patch122
-rw-r--r--media-libs/opencollada/files/opencollada-1.6.68-cmake4.patch11
-rw-r--r--media-libs/opencollada/files/opencollada-1.6.68-fix-null-conversion.patch12
-rw-r--r--media-libs/opencollada/files/opencollada-1.6.68-gcc13.patch35
-rw-r--r--media-libs/opencollada/files/opencollada-1.6.68-unbundle-zlib.patch39
-rw-r--r--media-libs/opencollada/files/opencollada-1.6.68-werror.patch11
-rw-r--r--media-libs/opencollada/metadata.xml15
-rw-r--r--media-libs/opencollada/opencollada-1.6.68-r2.ebuild85
10 files changed, 345 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..3b7c5d96f0f9
--- /dev/null
+++ b/media-libs/opencollada/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/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>
+ <upstream>
+ <remote-id type="github">KhronosGroup/OpenCOLLADA</remote-id>
+ </upstream>
+</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"
+}