Commit 9cae5745 authored by pi's avatar pi
Browse files

New port: devel/collada-dom

A C++ library that provides an API to the COLLADA Document Object Model

The COLLADA Document Object Model (DOM) is an application programming
interface (API) that provides a C++ object representation of a COLLADA
XML instance document.

This project is a library for loading and saving COLLADA documents
that can contain 2D, 3D, physics and other types of content. It allows
developers to create applications that can exchange COLLADA documents
with commercial content creation tools such as Maya, Max or Softimage.

This project is a very lightweight version of the Sourceforce Collada
Repository. It maintains only the base collada parser with minimal
dependencies.

WWW: https://github.com/rdiankov/collada-dom

PR:		240635
Submitted by:	Trenton Schulz <trueos@norwegianrockcat.com>
parent cec0c645
......@@ -361,6 +361,7 @@
SUBDIR += codesearch-py
SUBDIR += codeville
SUBDIR += codeworker
SUBDIR += collada-dom
SUBDIR += colorgcc
SUBDIR += colormake
SUBDIR += commit-patch
......
# $FreeBSD$
PORTNAME= collada-dom
DISTVERSION= 2.5.0
CATEGORIES= devel
MAINTAINER= trueos@norwegianrockcat.com
COMMENT= COLLADA Document Object Model (DOM) C++ Library
LICENSE= MIT
LIB_DEPENDS+= libminizip.so:archivers/minizip \
libpcre.so:devel/pcre \
libboost_filesystem.so:devel/boost-libs \
libboost_system.so:devel/boost-libs
USES= cmake gnome
USE_LDCONFIG= yes
USE_GNOME+= libxml2
USE_GITHUB= yes
GH_ACCOUNT= rdiankov
GH_PROJECT= collada-dom
GH_TAGNAME= v${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX}
.include <bsd.port.mk>
TIMESTAMP = 1557428395
SHA256 (rdiankov-collada-dom-2.5.0-v2.5.0_GH0.tar.gz) = 3be672407a7aef60b64ce4b39704b32816b0b28f61ebffd4fbd02c8012901e0d
SIZE (rdiankov-collada-dom-2.5.0-v2.5.0_GH0.tar.gz) = 4509266
--- CMakeLists.txt.orig 2019-05-09 19:44:01 UTC
+++ CMakeLists.txt
@@ -2,6 +2,8 @@ cmake_minimum_required (VERSION 2.6.0)
project (collada-dom)
set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE )
+set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+
# Define here the needed parameters
set (COLLADA_DOM_VERSION_MAJOR 2)
set (COLLADA_DOM_VERSION_MINOR 5)
@@ -138,7 +140,7 @@ if( APPLE OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
add_definitions("-Dftello64=ftello")
endif()
-set(COLLADA_DOM_INCLUDE_INSTALL_DIR "include/collada-dom${COLLADA_DOM_SOVERSION}")
+set(COLLADA_DOM_INCLUDE_INSTALL_DIR "include/collada-dom")
set(COLLADA_DOM_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/dom/include)
set(COLLADA_DOM_LINK_DIRS "")
--- dom/src/dae/daeDom.cpp.orig 2019-05-09 19:35:00 UTC
+++ dom/src/dae/daeDom.cpp
@@ -111,7 +111,7 @@ daeInt getDomAnyID(DAE& dae)
return ColladaDOM141::domAny::ID();
}
#endif
- return NULL;
+ return 0;
}
daeInt getDomSourceID(DAE& dae)
@@ -126,7 +126,7 @@ daeInt getDomSourceID(DAE& dae)
return ColladaDOM141::domSource::ID();
}
#endif
- return NULL;
+ return 0;
}
daeInt getDomCOLLADAID(const char* specversion)
@@ -141,7 +141,7 @@ daeInt getDomCOLLADAID(const char* specversion)
return ColladaDOM141::domCOLLADA::ID();
}
#endif
- return NULL;
+ return 0;
}
void copyElementAny(daeElementRef dstAny, daeElement* srcAny)
--- dom/src/dae/daeUtils.cpp.orig 2019-05-09 19:37:18 UTC
+++ dom/src/dae/daeUtils.cpp
@@ -152,7 +152,7 @@ char cdom::getFileSeparator() {
const string& cdom::getSystemTmpDir() {
#ifdef WIN32
static string tmpDir = string(getenv("TMP")) + getFileSeparator();
-#elif defined(__linux__) || defined(__linux)
+#elif defined(__linux__) || defined(__linux) || defined(__FreeBSD__)
static string tmpDir = "/tmp/";
#elif defined __APPLE_CC__
static string tmpDir = string(getenv("TMPDIR"));
@@ -171,7 +171,7 @@ string cdom::getRandomFileName() {
std::string tmp(tmpnam(&tmpbuffer[0]));
#ifdef WIN32
randomSegment = tmp.substr(tmp.find_last_of('\\')+1);
-#elif defined(__linux__) || defined(__linux)
+#elif defined(__linux__) || defined(__linux) || defined(__FreeBSD__)
randomSegment = tmp.substr(tmp.find_last_of('/')+1);
#elif defined __APPLE_CC__
randomSegment = tmp.substr(tmp.find_last_of('/')+1);
--- dom/src/modules/LIBXMLPlugin/daeLIBXMLPlugin.cpp.orig 2019-05-09 19:36:39 UTC
+++ dom/src/modules/LIBXMLPlugin/daeLIBXMLPlugin.cpp
@@ -32,7 +32,7 @@
#include <iomanip>
using namespace std;
-#include <zip.h> // for saving compressed files
+#include <minizip/zip.h> // for saving compressed files
#ifdef _WIN32
#include <iowin32.h>
#else
A C++ library that provides an API to the COLLADA Document Object Model
The COLLADA Document Object Model (DOM) is an application programming
interface (API) that provides a C++ object representation of a COLLADA
XML instance document.
This project is a library for loading and saving COLLADA documents
that can contain 2D, 3D, physics and other types of content. It allows
developers to create applications that can exchange COLLADA documents
with commercial content creation tools such as Maya, Max or Softimage.
This project is a very lightweight version of the Sourceforce Collada
Repository. It maintains only the base collada parser with minimal
dependencies.
WWW: https://github.com/rdiankov/collada-dom
This diff is collapsed.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment