early-access version 2853

This commit is contained in:
pineappleEA
2022-07-23 03:01:36 +02:00
parent 1f2b5081b5
commit 1f111bb69c
8955 changed files with 418777 additions and 999 deletions

View File

@@ -0,0 +1,13 @@
diff --git a/dom/CMakeLists.txt b/dom/CMakeLists.txt
index 62e1b8a..7ff49b5 100644
--- a/dom/CMakeLists.txt
+++ b/dom/CMakeLists.txt
@@ -28,7 +28,7 @@ if( OPT_COLLADA14 )
install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/1.4 DESTINATION ${COLLADA_DOM_INCLUDE_INSTALL_DIR} COMPONENT ${COMPONENT_PREFIX}-dev PATTERN ".svn" EXCLUDE PATTERN ".~" EXCLUDE)
endif()
-add_library(collada-dom SHARED ${COLLADA_BASE_SOURCES})
+add_library(collada-dom ${COLLADA_BASE_SOURCES})
target_link_libraries(collada-dom ${COLLADA_LIBS})
set_target_properties(collada-dom PROPERTIES
COMPILE_FLAGS "${COLLADA_COMPILE_FLAGS}"

View File

@@ -0,0 +1,28 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO rdiankov/collada-dom
REF d37ae7532e350b87c88712e9f6ab4b1f440d20cd
SHA512 cb923d296219765096f5246cc7a2b69712931f58171ae885dbdbd215fca86d911c34d12748d3304d6a5a350dc737ff0caead2495acac488af5431b437cbacc7d
HEAD_REF v2.5.0
PATCHES
vs-version-detection.patch
use-uriparser.patch
use-vcpkg-minizip.patch
fix-shared-keyword.patch
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
)
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/collada_dom-2.5)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
file(INSTALL ${SOURCE_PATH}/licenses/license_e.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
vcpkg_fixup_pkgconfig()

View File

@@ -0,0 +1,127 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3ec1527..3f044d3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -237,23 +237,29 @@ else()
set(MINIZIP_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/dom/external-libs/minizip-1.1 ${ZLIB_INCLUDE_DIR})
endif()
-pkg_check_modules(liburiparser liburiparser)
-
-if(liburiparser_FOUND)
- set(liburiparser_CFLAGS_OTHERS "-DUSE_URIPARSER")
+find_package(UriParser)
+if(URIPARSER_FOUND)
+ set(URIPARSER_CFLAGS_OTHERS "-DUSE_URIPARSER")
+ set(URIPARSER_LIBRARIES ${URIPARSER_LIBRARY})
+ message(STATUS "liburiparser found")
else()
- # try using pcrecpp
- pkg_check_modules(libpcrecpp libpcrecpp)
- if( libpcrecpp_FOUND )
+ pkg_check_modules(liburiparser liburiparser)
+ if(liburiparser_FOUND)
+ set(URIPARSER_CFLAGS_OTHERS "-DUSE_URIPARSER")
+ message(STATUS "liburiparser found")
+ else()
+ # try using pcrecpp
+ pkg_check_modules(libpcrecpp libpcrecpp)
+ if( libpcrecpp_FOUND )
set(CMAKE_REQUIRED_INCLUDES ${libpcrecpp_INCLUDE_DIRS})
check_include_file_cxx(pcrecpp.h HAVE_PCRECPP_H)
set(CMAKE_REQUIRED_INCLUDES)
if( NOT HAVE_PCRECPP_H )
- set(libpcrecpp_FOUND 0)
+ set(libpcrecpp_FOUND 0)
+ endif()
endif()
- endif()
- if( NOT libpcrecpp_FOUND )
+ if( NOT libpcrecpp_FOUND )
message(STATUS "System pcre not found, using local from sources")
# include the local pcre
add_subdirectory(dom/external-libs/pcre-8.02)
@@ -262,6 +268,7 @@ else()
set(libpcrecpp_LIBRARIES pcrecpp_local)
set(libpcrecpp_CFLAGS_OTHERS "-DPCRE_STATIC")
set(libpcrecpp_LDFLAGS_OTHERS)
+ endif()
endif()
endif()
diff --git a/cmake-modules/FindUriParser.cmake b/cmake-modules/FindUriParser.cmake
new file mode 100644
index 0000000..91f466b
--- /dev/null
+++ b/cmake-modules/FindUriParser.cmake
@@ -0,0 +1,35 @@
+# Find the UriParser library
+# Defines:
+
+# URIPARSER_INCLUDE_DIR - uriparser include directory
+# URIPARSER_LIBRARY - uriparser library file
+# URIPARSER_FOUND - TRUE if uriparser is found
+
+if (URIPARSER_INCLUDE_DIR)
+ #check cache
+ set(URIPARSER_FIND_QUIETLY TRUE)
+endif ()
+
+if (NOT URIPARSER_INCLUDE_DIR)
+ find_path(URIPARSER_INCLUDE_DIR NAMES Uri.h PATH_SUFFIXES uriparser)
+ set(URIPARSER_INCLUDE_DIR ${URIPARSER_INCLUDE_DIR}/uriparser CACHE PATH "uriparser includes")
+endif ()
+
+find_library(URIPARSER_LIBRARY NAMES uriparser)
+
+if (URIPARSER_INCLUDE_DIR AND URIPARSER_LIBRARY)
+ set(URIPARSER_FOUND TRUE)
+ set(UriParser_FOUND TRUE)
+endif ()
+
+if (URIPARSER_FOUND)
+ if (NOT URIPARSER_FIND_QUIETLY)
+ message(STATUS "Found UriParser library: ${URIPARSER_LIBRARY}")
+ endif ()
+else ()
+ if (NOT URIPARSER_FIND_QUIETLY)
+ message(FATAL_ERROR "Could NOT find UriParser library")
+ else ()
+ message(STATUS "Could NOT find UriParser library")
+ endif ()
+endif ()
diff --git a/dom/CMakeLists.txt b/dom/CMakeLists.txt
index f7ffb27..62e1b8a 100644
--- a/dom/CMakeLists.txt
+++ b/dom/CMakeLists.txt
@@ -1,6 +1,6 @@
set(COLLADA_INTERNAL_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR}/include)
include_directories(${COLLADA_INTERNAL_INCLUDE})
-set(COLLADA_LIBS minizip ${liburiparser_LIBRARIES} ${libpcrecpp_LIBRARIES} ${ZLIB_LIBRARIES} ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY})
+set(COLLADA_LIBS minizip ${URIPARSER_LIBRARIES} ${libpcrecpp_LIBRARIES} ${ZLIB_LIBRARIES} ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY})
file(GLOB dae_files ${CMAKE_CURRENT_SOURCE_DIR}/src/dae/*.cpp)
if( LIBXML2_FOUND )
@@ -13,7 +13,7 @@ file(GLOB stddatabase_files ${CMAKE_CURRENT_SOURCE_DIR}/src/modules/STLDatabase/
file(GLOB stderrplugin_files ${CMAKE_CURRENT_SOURCE_DIR}/src/modules/stdErrPlugin/*.cpp)
set(COLLADA_BASE_SOURCES ${dae_files} ${libxmlplugin_files} ${stddatabase_files} ${stderrplugin_files})
-set(COLLADA_COMPILE_FLAGS "${liburiparser_CFLAGS_OTHERS} ${libpcrecpp_CFLAGS_OTHERS} ${EXTRA_COMPILE_FLAGS} ${Boost_CFLAGS}")
+set(COLLADA_COMPILE_FLAGS "${URIPARSER_CFLAGS_OTHERS} ${libpcrecpp_CFLAGS_OTHERS} ${EXTRA_COMPILE_FLAGS} ${Boost_CFLAGS}")
# create dynamic libraries
set(COLLADA_COMPILE_FLAGS "${COLLADA_COMPILE_FLAGS} -DDOM_DYNAMIC -DDOM_EXPORT")
diff --git a/dom/src/dae/daeURI.cpp b/dom/src/dae/daeURI.cpp
index 3a8f815..1623753 100644
--- a/dom/src/dae/daeURI.cpp
+++ b/dom/src/dae/daeURI.cpp
@@ -790,7 +790,7 @@ bool cdom::parseUriRef(const string& uriRef,
scheme = fromRange(uri.scheme);
authority = fromRange(uri.hostText);
path = fromList(uri.pathHead, "/");
- if (uri.absolutePath != URI_TRUE and uri.hostText.first == NULL)
+ if (uri.absolutePath != URI_TRUE && uri.hostText.first == NULL)
path = path.erase(0, 1);
query = fromRange(uri.query);
fragment = fromRange(uri.fragment);

View File

@@ -0,0 +1,13 @@
diff --git a/dom/src/modules/LIBXMLPlugin/daeLIBXMLPlugin.cpp b/dom/src/modules/LIBXMLPlugin/daeLIBXMLPlugin.cpp
index 4536275..77651f9 100644
--- a/dom/src/modules/LIBXMLPlugin/daeLIBXMLPlugin.cpp
+++ b/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

16
externals/vcpkg/ports/collada-dom/vcpkg.json vendored Executable file
View File

@@ -0,0 +1,16 @@
{
"name": "collada-dom",
"version-string": "2.5.0",
"port-version": 6,
"description": "The COLLADA Document Object Model (DOM) is an application programming interface (API) that provides a C++ object representation of a COLLADA XML instance document.",
"homepage": "https://github.com/rdiankov/collada-dom",
"dependencies": [
"boost-filesystem",
"boost-system",
"libxml2",
"minizip",
"pcre",
"uriparser",
"zlib"
]
}

View File

@@ -0,0 +1,39 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2596a23..3ec1527 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.6.0)
+cmake_minimum_required (VERSION 3.7.0)
project (collada-dom)
set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE )
@@ -89,14 +89,22 @@ string(TOUPPER ${COMPONENT_PREFIX} COMPONENT_PREFIX_UPPER)
set(CPACK_COMPONENTS_ALL ${COMPONENT_PREFIX}-base ${COMPONENT_PREFIX}-dev)
if( MSVC )
- if( MSVC70 OR MSVC71 )
- set(MSVC_PREFIX "vc70")
- elseif( MSVC80 )
- set(MSVC_PREFIX "vc80")
- elseif( MSVC90 )
+ if( MSVC_VERSION GREATER_EQUAL 1910 )
+ set(MSVC_PREFIX "vc140")
+ elseif( MSVC_VERSION GREATER_EQUAL 1900 )
+ set(MSVC_PREFIX "vc130")
+ elseif( MSVC_VERSION GREATER_EQUAL 1800 )
+ set(MSVC_PREFIX "vc120")
+ elseif( MSVC_VERSION GREATER_EQUAL 1700 )
+ set(MSVC_PREFIX "vc110")
+ elseif( MSVC_VERSION GREATER_EQUAL 1600 )
+ set(MSVC_PREFIX "vc100")
+ elseif( MSVC_VERSION GREATER_EQUAL 1500 )
set(MSVC_PREFIX "vc90")
+ elseif( MSVC_VERSION GREATER_EQUAL 1400 )
+ set(MSVC_PREFIX "vc80")
else()
- set(MSVC_PREFIX "vc100")
+ set(MSVC_PREFIX "vc70")
endif()
set(COLLADA_DOM_LIBRARY_SUFFIX "${COLLADA_DOM_SOVERSION}-${COLLADA_PRECISION}-${MSVC_PREFIX}-mt")
else()