cal3d, bump version (#2673)

This commit is contained in:
Schrijvers Luc
2018-06-24 04:54:45 +02:00
committed by waddlesplash
parent 2c8a0114c9
commit defc74d3f8
2 changed files with 450 additions and 0 deletions

View File

@@ -0,0 +1,89 @@
SUMMARY="Skeletal based character animation library"
DESCRIPTION="Cal3D is a skeletal based 3D character animation library written \
in C++ in a platform-/graphic API-independent way. Originally designed to \
be used in a 3D client for Worldforge, it evolved into a stand-alone product \
which can be used in many different kinds of projects. It supports \
combining animations, actions and morph targets (facial expressions) through \
a \"mixer\"."
HOMEPAGE="https://mp3butcher.github.io/Cal3D/"
COPYRIGHT="2001-2006 Mekensleep
Laurent Desmecht
Loic Dachary
Bruno Heidelberger"
LICENSE="GNU LGPL v2.1"
REVISION="1"
SOURCE_URI="https://github.com/mp3butcher/Cal3D/archive/$portVersion.tar.gz"
CHECKSUM_SHA256="fce2f57128bbefbcd4cee2d45337165e94614bc839c84e9c22b9bd988f10a440"
SOURCE_FILENAME="cal3d-$portVersion.tar.gz"
SOURCE_DIR="Cal3D-$portVersion/cal3d"
PATCHES="cal3d-$portVersion.patchset"
ARCHITECTURES="!x86_gcc2 x86 ?x86_64"
SECONDARY_ARCHITECTURES="x86"
libVersion=12.0.0
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
PROVIDES="
cal3d$secondaryArchSuffix = $portVersion
cmd:cal3d_converter$secondaryArchSuffix
lib:libcal3d$secondaryArchSuffix = $libVersionCompat
"
REQUIRES="
haiku$secondaryArchSuffix
# lib:libunittest++$secondaryArchSuffix
"
PROVIDES_devel="
cal3d${secondaryArchSuffix}_devel = $portVersion
devel:libcal3d$secondaryArchSuffix = $libVersionCompat
"
REQUIRES_devel="
cal3d$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
# devel:libunittest++$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:aclocal
cmd:autoconf
cmd:autoheader
cmd:automake
cmd:awk
cmd:gcc$secondaryArchSuffix
cmd:libtoolize$secondaryArchSuffix
cmd:make
cmd:pkg_config$secondaryArchSuffix
"
defineDebugInfoPackage cal3d$secondaryArchSuffix \
"$binDir"/cal3d_converter \
"$libDir"/libcal3d.so.$libVersion
PATCH()
{
sed -i 's/AM_USE_UNITTESTCPP/#\ AM_USE_UNITTESTCPP/' configure.in
}
BUILD()
{
autoreconf -vfi
#sed -i 's/unittest++/\ UnitTest++/' configure
runConfigure ./configure
make $jobArgs
}
INSTALL()
{
make install
rm "$libDir"/*.la
prepareInstalledDevelLib libcal3d
fixPkgconfig
packageEntries devel \
"$developDir"
}

View File

@@ -0,0 +1,361 @@
From c39dfdfb1db301e7d06ab099b5c2e7124b0377d9 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@gmail.com>
Date: Sat, 9 Jun 2018 16:17:03 +0200
Subject: Update configure.in to current standards...
diff --git a/cal3d/configure.in b/cal3d/configure.in
index 8e7c5c5..060d899 100644
--- a/cal3d/configure.in
+++ b/cal3d/configure.in
@@ -13,7 +13,7 @@ dnl ************************************************************************
AC_INIT(src/cal3d/cal3d.h)
-AM_CONFIG_HEADER(config.h)
+AC_CONFIG_HEADERS(config.h)
AC_CANONICAL_SYSTEM
--
2.16.4
From 70299fe921c0879f4254720ba88b7b90be8df6db Mon Sep 17 00:00:00 2001
From: begasus <begasus@gmail.com>
Date: Sat, 9 Jun 2018 16:20:40 +0200
Subject: Fix gcc7 errors ...
diff --git a/cal3d/src/cal3d/loader.cpp b/cal3d/src/cal3d/loader.cpp
index 005296f..9032810 100644
--- a/cal3d/src/cal3d/loader.cpp
+++ b/cal3d/src/cal3d/loader.cpp
@@ -1308,7 +1308,7 @@ CalCoreKeyframe* CalLoader::loadCoreKeyframe(
if(!dataSrc.ok())
{
dataSrc.setError();
- return false;
+ return 0;
}
// allocate a new core keyframe instance
@@ -1928,11 +1928,11 @@ CalCoreSubmesh *CalLoader::loadCoreSubmesh(CalDataSource& dataSrc, int version)
CalCoreSubMorphTarget * morphTarget = new CalCoreSubMorphTarget();
if( !morphTarget ) {
dataSrc.setError();
- return false;
+ return 0;
}
if( !morphTarget->reserve(vertexCount) ) {
dataSrc.setError();
- return false;
+ return 0;
}
std::string morphName;
@@ -1974,7 +1974,7 @@ CalCoreSubmesh *CalLoader::loadCoreSubmesh(CalDataSource& dataSrc, int version)
}
if( ! dataSrc.ok() ) {
dataSrc.setError();
- return false;
+ return 0;
}
morphTarget->setBlendVertex(blendVertI, Vertex);
diff --git a/cal3d/src/cal3d/xmlformat.cpp b/cal3d/src/cal3d/xmlformat.cpp
index 2e882ac..eecb00f 100644
--- a/cal3d/src/cal3d/xmlformat.cpp
+++ b/cal3d/src/cal3d/xmlformat.cpp
@@ -89,16 +89,16 @@ static inline bool TexCoordFromXml( cal3d::TiXmlElement * texcoord, char const *
CalCoreMesh * pCoreMesh, CalCoreSubmesh * pCoreSubmesh)
{
if( !ValidateTag(texcoord, tag, pCoreMesh, pCoreSubmesh) ) {
- return false;
+ return 0;
}
cal3d::TiXmlNode * node = texcoord->FirstChild();
if( !ValidateTag(node, NULL, pCoreMesh, pCoreSubmesh) ) {
- return false;
+ return 0;
}
cal3d::TiXmlText* texcoorddata = node->ToText();
if(!ValidateTag(texcoorddata , NULL, pCoreMesh, pCoreSubmesh))
{
- return false;
+ return 0;
}
ReadPair( texcoorddata->Value(), &texCoord->u, &texCoord->v );
@@ -129,16 +129,16 @@ static inline bool CalVectorFromXml( cal3d::TiXmlElement * pos, char const * tag
CalCoreMesh * pCoreMesh, CalCoreSubmesh * pCoreSubmesh)
{
if( !ValidateTag(pos, tag, pCoreMesh, pCoreSubmesh) ) {
- return false;
+ return 0;
}
cal3d::TiXmlNode * node = pos->FirstChild();
if( !ValidateTag(node, NULL, pCoreMesh, pCoreSubmesh) ) {
- return false;
+ return 0;
}
cal3d::TiXmlText* posdata = node->ToText();
if(!ValidateTag(posdata, NULL, pCoreMesh, pCoreSubmesh))
{
- return false;
+ return 0;
}
ReadTripleFloat( posdata->Value(), &calVec->x, &calVec->y, &calVec->z );
return true;
@@ -362,13 +362,13 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(stricmp(firstChild->Attribute("MAGIC"),Cal::SKELETON_XMLFILE_EXTENSION)!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
if(atoi(firstChild->Attribute("VERSION")) < Cal::EARLIEST_COMPATIBLE_FILE_VERSION )
{
CalError::setLastError(CalError::INCOMPATIBLE_FILE_VERSION, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
skeleton = firstChild->NextSiblingElement();
@@ -382,7 +382,7 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!skeleton || stricmp(skeleton->Value(),"SKELETON")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
// allocate a new core skeleton instance
@@ -408,7 +408,7 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(stricmp(bone->Value(),"BONE")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
std::string strName=bone->Attribute("NAME");
@@ -433,7 +433,7 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!translation || stricmp( translation->Value(),"TRANSLATION")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
float tx, ty, tz;
@@ -442,13 +442,13 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!node)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
cal3d::TiXmlText* translationdata = node->ToText();
if(!translationdata)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
str.clear();
str.str("");
@@ -461,7 +461,7 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!rotation || stricmp(rotation->Value(),"ROTATION")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
float rx, ry, rz, rw;
@@ -470,13 +470,13 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!node)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
cal3d::TiXmlText* rotationdata = node->ToText();
if(!rotationdata)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
str.clear();
str.str("");
@@ -490,7 +490,7 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!rotation || stricmp(translationBoneSpace->Value(),"LOCALTRANSLATION")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
float txBoneSpace, tyBoneSpace, tzBoneSpace;
@@ -499,13 +499,13 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!node)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
cal3d::TiXmlText* translationBoneSpacedata = node->ToText();
if(!translationBoneSpacedata)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
str.clear();
str.str("");
@@ -518,7 +518,7 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!rotationBoneSpace || stricmp(rotationBoneSpace->Value(),"LOCALROTATION")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
float rxBoneSpace, ryBoneSpace, rzBoneSpace, rwBoneSpace;
@@ -527,13 +527,13 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!node)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
cal3d::TiXmlText* rotationBoneSpacedata = node->ToText();
if(!rotationBoneSpacedata)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
str.clear();
str.str("");
@@ -546,7 +546,7 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!parent ||stricmp(parent->Value(),"PARENTID")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
@@ -556,13 +556,13 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(!node)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
cal3d::TiXmlText* parentid = node->ToText();
if(!parentid)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
parentId = atoi(parentid->Value());
@@ -610,20 +610,20 @@ CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton(cal3d::TiXmlDocument & doc)
if(stricmp(child->Value(),"CHILDID")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
cal3d::TiXmlNode *node= child->FirstChild();
if(!node)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
cal3d::TiXmlText* childid = node->ToText();
if(!childid)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
int childId = atoi(childid->Value());
@@ -1058,13 +1058,13 @@ CalCoreAnimatedMorph *CalLoader::loadXmlCoreAnimatedMorph(cal3d::TiXmlDocument &
if(stricmp(firstChild->Attribute("MAGIC"),Cal::ANIMATEDMORPH_XMLFILE_EXTENSION)!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
if(atoi(firstChild->Attribute("VERSION")) < Cal::EARLIEST_COMPATIBLE_FILE_VERSION )
{
CalError::setLastError(CalError::INCOMPATIBLE_FILE_VERSION, __FILE__, __LINE__, strFilename);
- return false;
+ return 0;
}
animatedMorph = firstChild->NextSiblingElement();
@@ -1132,28 +1132,28 @@ CalCoreAnimatedMorph *CalLoader::loadXmlCoreAnimatedMorph(cal3d::TiXmlDocument &
pCoreMorphTrack->reserve(keyFrameCount);
unsigned int morphName = atoi(track->Attribute("MORPHNAME"));
- pCoreMorphTrack->setMorphID(morphName);
+ pCoreMorphTrack->setMorphID(morphName);
morphName = atoi(track->Attribute("MESHID"));
- pCoreMorphTrack->setTargetMesh(morphName);
-
- int numsubmeshtargetted=0;
- track->QueryIntAttribute("NUMSUBTARGET",&numsubmeshtargetted);
+ pCoreMorphTrack->setTargetMesh(morphName);
+
+ int numsubmeshtargetted=0;
+ track->QueryIntAttribute("NUMSUBTARGET",&numsubmeshtargetted);
+
-
- cal3d::TiXmlElement* keyframe= track->FirstChildElement();
+ cal3d::TiXmlElement* keyframe= track->FirstChildElement();
if(numsubmeshtargetted>0){
- //cal3d::TiXmlElement* submeshes= track->FirstChildElement();
+ //cal3d::TiXmlElement* submeshes= track->FirstChildElement();
for (int keyFrameId=0; keyFrameId<numsubmeshtargetted; ++keyFrameId)
- {
+ {
// load the core keyframe
if(!keyframe|| stricmp(keyframe->Value(),"SUBMESH")!=0)
{
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
return 0;
- }
+ }
pCoreMorphTrack->addTargetSubMesh(atoi(keyframe->Attribute("ID")));
- keyframe = keyframe->NextSiblingElement();
- }
+ keyframe = keyframe->NextSiblingElement();
+ }
}
for (int keyFrameId=0; keyFrameId<keyFrameCount; ++keyFrameId)
@@ -1644,7 +1644,7 @@ CalCoreMeshPtr CalLoader::loadXmlCoreMesh(cal3d::TiXmlDocument & doc)
CalError::setLastError(CalError::INVALID_FILE_FORMAT, __FILE__, __LINE__, strFilename);
return 0;
}
-
+
morphTarget->setName(morph->Attribute("NAME"));
cal3d::TiXmlElement * blendVert = morph->FirstChildElement();
--
2.16.4