[urho3d] Add new port (#14538)

* [urho3d] Add new port

* [urho3d] Build master branch

* [urho3d] Fix osx build

* [urho3d] Fix windows build

* [urho3d] Update to newest version

* [urho3d] Add versions info

* [urho3d] arm and uwp are not supported

* [urho3d] Update versions info

* [urho3d] Convert CONTROL to vcpkg.json

* [urho3d] Update portfile.cmake to use newer cmake functions

* [urho3d] Fix ExternalProject_Add error

* [urho3d] Update versions info
This commit is contained in:
Todor Prokopov 2021-04-29 03:32:42 +03:00 committed by GitHub
parent 0b14f8595c
commit 655e1b4dab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 512 additions and 0 deletions

View File

@ -0,0 +1,36 @@
diff --git a/Source/ThirdParty/AngelScript/CMakeLists.txt b/Source/ThirdParty/AngelScript/CMakeLists.txt
index 6709cf5fc..4842f20b1 100644
--- a/Source/ThirdParty/AngelScript/CMakeLists.txt
+++ b/Source/ThirdParty/AngelScript/CMakeLists.txt
@@ -44,10 +44,10 @@ if (ARM)
elseif (MSVC AND URHO3D_64BIT)
enable_language (ASM_MASM)
# Commented out due to cmake bug - todo: Recheck if this workaround is still necessary when increasing CMake minimum version
- #set (ASM_FILES source/as_callfunc_x64_msvc_asm.asm)
+ set (ASM_FILES source/as_callfunc_x64_msvc_asm.asm)
# As a temporary workaround
- add_custom_command (OUTPUT as_callfunc_x64_msvc_asm.obj COMMAND ${CMAKE_ASM_MASM_COMPILER} -Fo ${CMAKE_CURRENT_BINARY_DIR}/as_callfunc_x64_msvc_asm.obj -c ${CMAKE_CURRENT_SOURCE_DIR}/source/as_callfunc_x64_msvc_asm.asm DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/source/as_callfunc_x64_msvc_asm.asm COMMENT "Temporary workaround for MASM")
- set (ASM_FILES ${CMAKE_CURRENT_BINARY_DIR}/as_callfunc_x64_msvc_asm.obj ${CMAKE_CURRENT_SOURCE_DIR}/source/as_callfunc_x64_msvc_asm.asm)
+ #add_custom_command (OUTPUT as_callfunc_x64_msvc_asm.obj COMMAND ${CMAKE_ASM_MASM_COMPILER} -Fo ${CMAKE_CURRENT_BINARY_DIR}/as_callfunc_x64_msvc_asm.obj -c ${CMAKE_CURRENT_SOURCE_DIR}/source/as_callfunc_x64_msvc_asm.asm DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/source/as_callfunc_x64_msvc_asm.asm COMMENT "Temporary workaround for MASM")
+ #set (ASM_FILES ${CMAKE_CURRENT_BINARY_DIR}/as_callfunc_x64_msvc_asm.obj ${CMAKE_CURRENT_SOURCE_DIR}/source/as_callfunc_x64_msvc_asm.asm)
endif ()
list (APPEND SOURCE_FILES ${ASM_FILES})
diff --git a/Source/ThirdParty/LibCpuId/CMakeLists.txt b/Source/ThirdParty/LibCpuId/CMakeLists.txt
index 0aecafb06..677fd4b84 100644
--- a/Source/ThirdParty/LibCpuId/CMakeLists.txt
+++ b/Source/ThirdParty/LibCpuId/CMakeLists.txt
@@ -33,10 +33,10 @@ endif ()
if (MSVC AND URHO3D_64BIT)
enable_language (ASM_MASM)
# Commented out due to cmake bug
- #set (ASM_FILES src/masm-x64.asm)
+ set (ASM_FILES src/masm-x64.asm)
# As a temporary workaround
- add_custom_command (OUTPUT masm-x64.obj COMMAND ${CMAKE_ASM_MASM_COMPILER} -Fo ${CMAKE_CURRENT_BINARY_DIR}/masm-x64.obj -c ${CMAKE_CURRENT_SOURCE_DIR}/src/masm-x64.asm DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src/masm-x64.asm COMMENT "Temporary workaround for MASM")
- set (ASM_FILES ${CMAKE_CURRENT_BINARY_DIR}/masm-x64.obj ${CMAKE_CURRENT_SOURCE_DIR}/src/masm-x64.asm)
+ #add_custom_command (OUTPUT masm-x64.obj COMMAND ${CMAKE_ASM_MASM_COMPILER} -Fo ${CMAKE_CURRENT_BINARY_DIR}/masm-x64.obj -c ${CMAKE_CURRENT_SOURCE_DIR}/src/masm-x64.asm DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src/masm-x64.asm COMMENT "Temporary workaround for MASM")
+ #set (ASM_FILES ${CMAKE_CURRENT_BINARY_DIR}/masm-x64.obj ${CMAKE_CURRENT_SOURCE_DIR}/src/masm-x64.asm)
endif ()
# Define source files

View File

@ -0,0 +1,12 @@
diff --git a/Source/Urho3D/CMakeLists.txt b/Source/Urho3D/CMakeLists.txt
index ae341cb3e..743302069 100644
--- a/Source/Urho3D/CMakeLists.txt
+++ b/Source/Urho3D/CMakeLists.txt
@@ -316,6 +316,7 @@ if (URHO3D_LUA)
else ()
set (ALTERNATE_COMMAND CMAKE_COMMAND ${CMAKE_COMMAND} -E env CC=${SAVED_CC} CXX=${SAVED_CXX} CI=$ENV{CI} ${CMAKE_COMMAND})
endif ()
+ set(CMAKE_DISABLE_SOURCE_CHANGES OFF)
ExternalProject_Add (tolua++
SOURCE_DIR ${CMAKE_SOURCE_DIR}/Source/ThirdParty/toluapp/src/bin
CMAKE_ARGS -D URHO3D_DEPLOYMENT_TARGET=generic -D DEST_RUNTIME_DIR=${CMAKE_BINARY_DIR}/bin/tool -D BAKED_CMAKE_SOURCE_DIR=${CMAKE_SOURCE_DIR} -D URHO3D_UPDATE_SOURCE_TREE=${URHO3D_UPDATE_SOURCE_TREE} -D CMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}

27
ports/urho3d/macosx.patch Normal file
View File

@ -0,0 +1,27 @@
diff --git a/Source/ThirdParty/Assimp/contrib/zlib/gzguts.h b/Source/ThirdParty/Assimp/contrib/zlib/gzguts.h
index 6378d468a..c8563db52 100644
--- a/Source/ThirdParty/Assimp/contrib/zlib/gzguts.h
+++ b/Source/ThirdParty/Assimp/contrib/zlib/gzguts.h
@@ -38,6 +38,9 @@
#if defined(__TURBOC__) || defined(_MSC_VER) || defined(_WIN32)
# include <io.h>
#endif
+#ifdef __APPLE__
+# include <unistd.h>
+#endif
#if defined(_WIN32)
# define WIDECHAR
diff --git a/Source/ThirdParty/Civetweb/src/civetweb.c b/Source/ThirdParty/Civetweb/src/civetweb.c
index 4d26e0a83..2bd577e81 100644
--- a/Source/ThirdParty/Civetweb/src/civetweb.c
+++ b/Source/ThirdParty/Civetweb/src/civetweb.c
@@ -167,6 +167,8 @@ mg_static_assert(sizeof(void *) >= sizeof(int), "data type size check");
#endif
+#include <stdlib.h>
+
#if !defined(DEBUG_TRACE)
#if defined(DEBUG)

View File

@ -0,0 +1,62 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO urho3d/Urho3D
REF fff115a0c0cd50b8a34dfa20b4c5f33eb4f765c8
SHA512 4bddcd1d4165b74134a499616710c382d0463db24382aaa3111b8b38e82818053144d4ecb0ba7156589da1e18d85c0f20e0d847237291685ea80957f0bf7f8be
HEAD_REF master
PATCHES
asm_files.patch
macosx.patch
shared_libs.patch
externalproject.patch
)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
set(URHO3D_LIB_TYPE "STATIC")
else()
set(URHO3D_LIB_TYPE "SHARED")
endif()
vcpkg_cmake_configure(
SOURCE_PATH ${SOURCE_PATH}
OPTIONS
-DURHO3D_LIB_TYPE=${URHO3D_LIB_TYPE}
-DURHO3D_C++11=ON
-DURHO3D_PCH=OFF
)
vcpkg_cmake_install()
if(EXISTS ${CURRENT_PACKAGES_DIR}/share/Urho3D/CMake/Modules)
vcpkg_cmake_config_fixup(CONFIG_PATH share/Urho3D/CMake/Modules)
endif()
if(EXISTS ${CURRENT_PACKAGES_DIR}/share/CMake/Modules)
vcpkg_cmake_config_fixup(CONFIG_PATH share/CMake/Modules)
endif()
vcpkg_copy_pdbs()
file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools)
file(RENAME ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/tools/${PORT})
if(EXISTS ${CURRENT_PACKAGES_DIR}/share/Urho3D/Resources)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/Urho3D/Resources/Autoload ${CURRENT_PACKAGES_DIR}/tools/${PORT}/Autoload)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/Urho3D/Resources/CoreData ${CURRENT_PACKAGES_DIR}/tools/${PORT}/CoreData)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/Urho3D/Resources/Data ${CURRENT_PACKAGES_DIR}/tools/${PORT}/Data)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/Urho3D/Resources)
endif()
if(EXISTS ${CURRENT_PACKAGES_DIR}/share/Resources)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/Resources/Autoload ${CURRENT_PACKAGES_DIR}/tools/${PORT}/Autoload)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/Resources/CoreData ${CURRENT_PACKAGES_DIR}/tools/${PORT}/CoreData)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/Resources/Data ${CURRENT_PACKAGES_DIR}/tools/${PORT}/Data)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/Resources)
endif()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/Urho3D/LuaScript/pkgs)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/Urho3D/ThirdParty/LuaJIT/jit)
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

View File

@ -0,0 +1,337 @@
diff --git a/Source/ThirdParty/AngelScript/CMakeLists.txt b/Source/ThirdParty/AngelScript/CMakeLists.txt
index 763dacd9c..3507c0d28 100644
--- a/Source/ThirdParty/AngelScript/CMakeLists.txt
+++ b/Source/ThirdParty/AngelScript/CMakeLists.txt
@@ -58,7 +58,7 @@ list (APPEND SOURCE_FILES ${ASM_FILES})
set (INCLUDE_DIRS include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library (install dependency for Urho3D/Script/APITemplates.h)
install_header_files (DIRECTORY include/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/AngelScript FILES_MATCHING PATTERN *.h) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/Assimp/code/CMakeLists.txt b/Source/ThirdParty/Assimp/code/CMakeLists.txt
index bdd82340e..55839dae0 100644
--- a/Source/ThirdParty/Assimp/code/CMakeLists.txt
+++ b/Source/ThirdParty/Assimp/code/CMakeLists.txt
@@ -938,7 +938,7 @@ set (SOURCE_FILES ${assimp_src})
list (APPEND TARGET_PROPERTIES XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH YES)
# Setup target
-setup_library ()
+setup_library (STATIC)
IF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER)
TARGET_LINK_LIBRARIES(Assimp optimized ${C4D_RELEASE_LIBRARIES})
diff --git a/Source/ThirdParty/Box2D/CMakeLists.txt b/Source/ThirdParty/Box2D/CMakeLists.txt
index 6768fe4c0..2ca2c89e6 100644
--- a/Source/ThirdParty/Box2D/CMakeLists.txt
+++ b/Source/ThirdParty/Box2D/CMakeLists.txt
@@ -183,7 +183,7 @@ source_group(Rope FILES ${BOX2D_Rope_SRCS} ${BOX2D_Rope_HDRS})
set (INCLUDE_DIRS .)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library (install dependency for Urho3D/Urho2D/PhysicsWorld2D.h and Urho3D/Urho2D/RigidBody2D.h)
install_header_files (DIRECTORY Box2D DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty FILES_MATCHING PATTERN *.h)
diff --git a/Source/ThirdParty/Bullet/CMakeLists.txt b/Source/ThirdParty/Bullet/CMakeLists.txt
index 3e0419087..dbd506af0 100644
--- a/Source/ThirdParty/Bullet/CMakeLists.txt
+++ b/Source/ThirdParty/Bullet/CMakeLists.txt
@@ -41,7 +41,7 @@ define_source_files (RECURSE GLOB_CPP_PATTERNS src/*.cpp GLOB_H_PATTERNS src/*.h
set (INCLUDE_DIRS src)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library (install dependency for Urho3D/Physics/PhysicsWorld.h, Urho3D/Physics/RigidBody.h, and Urho3D/Physics/PhysicsUtils.h)
install_header_files (DIRECTORY src/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/Bullet FILES_MATCHING PATTERN *.h) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/Civetweb/CMakeLists.txt b/Source/ThirdParty/Civetweb/CMakeLists.txt
index a2d41caad..6b64ed719 100644
--- a/Source/ThirdParty/Civetweb/CMakeLists.txt
+++ b/Source/ThirdParty/Civetweb/CMakeLists.txt
@@ -61,7 +61,7 @@ define_source_files (GLOB_CPP_PATTERNS src/*.c GLOB_H_PATTERNS include/*.h)
set (INCLUDE_DIRS include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Link OpenSSL libraries
if (URHO3D_SSL)
diff --git a/Source/ThirdParty/Detour/CMakeLists.txt b/Source/ThirdParty/Detour/CMakeLists.txt
index 7d78b5aeb..2fe08df47 100644
--- a/Source/ThirdParty/Detour/CMakeLists.txt
+++ b/Source/ThirdParty/Detour/CMakeLists.txt
@@ -30,7 +30,7 @@ define_source_files (GLOB_CPP_PATTERNS Source/*.cpp GLOB_H_PATTERNS Include/*.h)
set (INCLUDE_DIRS Include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY Include/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/Detour FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/DetourCrowd/CMakeLists.txt b/Source/ThirdParty/DetourCrowd/CMakeLists.txt
index d8f915372..8b3d7d135 100644
--- a/Source/ThirdParty/DetourCrowd/CMakeLists.txt
+++ b/Source/ThirdParty/DetourCrowd/CMakeLists.txt
@@ -30,7 +30,7 @@ define_source_files (GLOB_CPP_PATTERNS Source/*.cpp GLOB_H_PATTERNS Include/*.h)
set (INCLUDE_DIRS Include ../Detour/Include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY Include/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/DetourCrowd FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/DetourTileCache/CMakeLists.txt b/Source/ThirdParty/DetourTileCache/CMakeLists.txt
index 519fdae17..edf38ee27 100644
--- a/Source/ThirdParty/DetourTileCache/CMakeLists.txt
+++ b/Source/ThirdParty/DetourTileCache/CMakeLists.txt
@@ -30,7 +30,7 @@ define_source_files (GLOB_CPP_PATTERNS Source/*.cpp GLOB_H_PATTERNS Include/*.h)
set (INCLUDE_DIRS Include ../Detour/Include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY Include/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/DetourTileCache FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/ETCPACK/CMakeLists.txt b/Source/ThirdParty/ETCPACK/CMakeLists.txt
index 555b2c28c..9f3dd54a0 100644
--- a/Source/ThirdParty/ETCPACK/CMakeLists.txt
+++ b/Source/ThirdParty/ETCPACK/CMakeLists.txt
@@ -27,6 +27,6 @@ set (TARGET_NAME ETCPACK)
set (SOURCE_FILES source/etcdec.cxx)
# Setup target
-setup_library ()
+setup_library (STATIC)
diff --git a/Source/ThirdParty/FreeType/CMakeLists.txt b/Source/ThirdParty/FreeType/CMakeLists.txt
index 306af2e34..bbc4cab0a 100644
--- a/Source/ThirdParty/FreeType/CMakeLists.txt
+++ b/Source/ThirdParty/FreeType/CMakeLists.txt
@@ -78,7 +78,7 @@ set (SOURCE_FILES
set (INCLUDE_DIRS include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY include/freetype DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY)
diff --git a/Source/ThirdParty/GLEW/CMakeLists.txt b/Source/ThirdParty/GLEW/CMakeLists.txt
index 9ec4ab843..d5feebd96 100644
--- a/Source/ThirdParty/GLEW/CMakeLists.txt
+++ b/Source/ThirdParty/GLEW/CMakeLists.txt
@@ -33,7 +33,7 @@ define_source_files (GLOB_CPP_PATTERNS *.c)
set (INCLUDE_DIRS .)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library (install dependency for OGLGraphicsImpl.h)
install_header_files (DIRECTORY ./ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/GLEW FILES_MATCHING PATTERN *.h) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/LZ4/CMakeLists.txt b/Source/ThirdParty/LZ4/CMakeLists.txt
index 579407338..57f93de92 100644
--- a/Source/ThirdParty/LZ4/CMakeLists.txt
+++ b/Source/ThirdParty/LZ4/CMakeLists.txt
@@ -27,7 +27,7 @@ set (TARGET_NAME LZ4)
define_source_files (GLOB_CPP_PATTERNS *.c)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY ./ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/LZ4 FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/LibCpuId/CMakeLists.txt b/Source/ThirdParty/LibCpuId/CMakeLists.txt
index 6c4ab7291..5c4cc5069 100644
--- a/Source/ThirdParty/LibCpuId/CMakeLists.txt
+++ b/Source/ThirdParty/LibCpuId/CMakeLists.txt
@@ -47,7 +47,7 @@ list (APPEND SOURCE_FILES ${ASM_FILES})
set (INCLUDE_DIRS src)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY src/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/LibCpuId FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/Lua/CMakeLists.txt b/Source/ThirdParty/Lua/CMakeLists.txt
index a24c75025..f62491fa7 100644
--- a/Source/ThirdParty/Lua/CMakeLists.txt
+++ b/Source/ThirdParty/Lua/CMakeLists.txt
@@ -34,7 +34,7 @@ if (READLINE_FOUND)
endif ()
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library (no direct dependencies but library user may need them)
install_header_files (DIRECTORY src/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/Lua FILES_MATCHING PATTERN *.h) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/LuaJIT/CMakeLists.txt b/Source/ThirdParty/LuaJIT/CMakeLists.txt
index c86cd0755..f1ec9250d 100644
--- a/Source/ThirdParty/LuaJIT/CMakeLists.txt
+++ b/Source/ThirdParty/LuaJIT/CMakeLists.txt
@@ -470,7 +470,7 @@ if (XCODE)
endif ()
endif ()
endif ()
-setup_library (${EXCLUDE_FROM_ALL})
+setup_library (STATIC ${EXCLUDE_FROM_ALL})
if (XCODE AND NOT ARCH) # These variables are used to control the recursion as this script is recursive in nature on Xcode
# Add external and custom targets to build Mach-O universal binary LuaJIT sub-library
include (ExternalProject)
diff --git a/Source/ThirdParty/MojoShader/CMakeLists.txt b/Source/ThirdParty/MojoShader/CMakeLists.txt
index db48047ce..82394e70d 100644
--- a/Source/ThirdParty/MojoShader/CMakeLists.txt
+++ b/Source/ThirdParty/MojoShader/CMakeLists.txt
@@ -31,7 +31,7 @@ if (MSVC)
endif (MSVC)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY ./ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/MojoShader FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/PugiXml/CMakeLists.txt b/Source/ThirdParty/PugiXml/CMakeLists.txt
index 1298ae9af..ccddcd965 100644
--- a/Source/ThirdParty/PugiXml/CMakeLists.txt
+++ b/Source/ThirdParty/PugiXml/CMakeLists.txt
@@ -27,7 +27,7 @@ set (TARGET_NAME PugiXml)
define_source_files (GLOB_CPP_PATTERNS src/*.cpp GLOB_H_PATTERNS src/*.hpp)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY src/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/PugiXml FILES_MATCHING PATTERN *.hpp BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/Recast/CMakeLists.txt b/Source/ThirdParty/Recast/CMakeLists.txt
index 618f28a51..643278164 100644
--- a/Source/ThirdParty/Recast/CMakeLists.txt
+++ b/Source/ThirdParty/Recast/CMakeLists.txt
@@ -30,7 +30,7 @@ define_source_files (GLOB_CPP_PATTERNS Source/*.cpp GLOB_H_PATTERNS Include/*.h)
set (INCLUDE_DIRS Include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY Include/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/Recast FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/SDL/CMakeLists.txt b/Source/ThirdParty/SDL/CMakeLists.txt
index 5c4ef27da..9f48ca53c 100644
--- a/Source/ThirdParty/SDL/CMakeLists.txt
+++ b/Source/ThirdParty/SDL/CMakeLists.txt
@@ -1600,7 +1600,7 @@ file (GLOB H_FILES include/*.h) # Adding the headers into source files list
list (APPEND SOURCE_FILES ${H_FILES})
# Setup target as STATIC library (as the result we never use EXTRA_LDFLAGS linker flags)
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library (install dependency for InputEvents.h)
install_header_files (DIRECTORY include/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/SDL FILES_MATCHING PATTERN *.h USE_FILE_SYMLINK) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/SLikeNet/CMakeLists.txt b/Source/ThirdParty/SLikeNet/CMakeLists.txt
index 0fef2defa..c2bfaabc9 100644
--- a/Source/ThirdParty/SLikeNet/CMakeLists.txt
+++ b/Source/ThirdParty/SLikeNet/CMakeLists.txt
@@ -62,7 +62,7 @@ set (SOURCE_FILES ${CPP_FILES} ${H_FILES})
set (INCLUDE_DIRS Source/include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY Source/include/slikenet/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/SLikeNet FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/SQLite/CMakeLists.txt b/Source/ThirdParty/SQLite/CMakeLists.txt
index 0c42972b0..0cd33bfd3 100644
--- a/Source/ThirdParty/SQLite/CMakeLists.txt
+++ b/Source/ThirdParty/SQLite/CMakeLists.txt
@@ -42,7 +42,7 @@ endforeach ()
set (SOURCE_FILES src/sqlite3.c)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library
install_header_files (DIRECTORY src/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/SQLite FILES_MATCHING PATTERN *.h) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/StanHull/CMakeLists.txt b/Source/ThirdParty/StanHull/CMakeLists.txt
index faf4e3858..34362e419 100644
--- a/Source/ThirdParty/StanHull/CMakeLists.txt
+++ b/Source/ThirdParty/StanHull/CMakeLists.txt
@@ -27,7 +27,7 @@ set (TARGET_NAME StanHull)
define_source_files ()
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY ./ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/StanHull FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/WebP/CMakeLists.txt b/Source/ThirdParty/WebP/CMakeLists.txt
index 7072f4663..54737cc82 100644
--- a/Source/ThirdParty/WebP/CMakeLists.txt
+++ b/Source/ThirdParty/WebP/CMakeLists.txt
@@ -32,7 +32,7 @@ if (ANDROID)
endif ()
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY src/webp/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/webp FILES_MATCHING PATTERN *.h BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/ik/CMakeLists.txt b/Source/ThirdParty/ik/CMakeLists.txt
index 6868c6d88..57290a821 100644
--- a/Source/ThirdParty/ik/CMakeLists.txt
+++ b/Source/ThirdParty/ik/CMakeLists.txt
@@ -75,7 +75,7 @@ configure_file (include/ik/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/gener
set (INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR}/include/generated include)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building the Urho3D library
install_header_files (DIRECTORY include/ik/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/ik FILES_MATCHING PATTERN *.h USE_FILE_SYMLINK BUILD_TREE_ONLY) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/nanodbc/CMakeLists.txt b/Source/ThirdParty/nanodbc/CMakeLists.txt
index ca59b6acf..628a27d2f 100644
--- a/Source/ThirdParty/nanodbc/CMakeLists.txt
+++ b/Source/ThirdParty/nanodbc/CMakeLists.txt
@@ -36,7 +36,7 @@ if (ODBC_DEFINES)
endif ()
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library
install_header_files (DIRECTORY nanodbc/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/nanodbc FILES_MATCHING PATTERN *.h) # Note: the trailing slash is significant
diff --git a/Source/ThirdParty/toluapp/src/lib/CMakeLists.txt b/Source/ThirdParty/toluapp/src/lib/CMakeLists.txt
index c84ed5c01..5a26bf2b5 100644
--- a/Source/ThirdParty/toluapp/src/lib/CMakeLists.txt
+++ b/Source/ThirdParty/toluapp/src/lib/CMakeLists.txt
@@ -30,7 +30,7 @@ define_source_files (GLOB_CPP_PATTERNS *.c)
set (INCLUDE_DIRS ../../include ../../../Lua${JIT}/src)
# Setup target
-setup_library ()
+setup_library (STATIC)
# Install headers for building and using the Urho3D library (no direct dependencies but library user may need them)
install_header_files (DIRECTORY ../../include/ DESTINATION ${DEST_INCLUDE_DIR}/ThirdParty/toluapp FILES_MATCHING PATTERN *.h) # Note: the trailing slash is significant

View File

@ -0,0 +1,8 @@
set(URHO3D_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
if(NOT URHO3D_LIBRARIES)
_find_package(${ARGS})
endif()
set(CMAKE_MODULE_PATH ${URHO3D_PREV_MODULE_PATH})

17
ports/urho3d/vcpkg.json Normal file
View File

@ -0,0 +1,17 @@
{
"name": "urho3d",
"version-date": "2021-03-01",
"description": "Urho3D is a free lightweight, cross-platform 2D and 3D game engine implemented in C++ and released under the MIT license. Greatly inspired by OGRE and Horde3D.",
"homepage": "https://github.com/urho3d/Urho3D",
"supports": "!(arm | uwp)",
"dependencies": [
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}

View File

@ -6220,6 +6220,10 @@
"baseline": "1.0.5",
"port-version": 1
},
"urho3d": {
"baseline": "2021-03-01",
"port-version": 0
},
"uriparser": {
"baseline": "0.9.4",
"port-version": 0

9
versions/u-/urho3d.json Normal file
View File

@ -0,0 +1,9 @@
{
"versions": [
{
"git-tree": "1f456f57b63fe4e73605d2b2b5827aa4db385438",
"version-date": "2021-03-01",
"port-version": 0
}
]
}