aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ports/urho3d/asm_files.patch36
-rw-r--r--ports/urho3d/externalproject.patch12
-rw-r--r--ports/urho3d/macosx.patch27
-rw-r--r--ports/urho3d/portfile.cmake62
-rw-r--r--ports/urho3d/shared_libs.patch337
-rw-r--r--ports/urho3d/vcpkg-cmake-wrapper.cmake8
-rw-r--r--ports/urho3d/vcpkg.json17
-rw-r--r--versions/baseline.json4
-rw-r--r--versions/u-/urho3d.json9
9 files changed, 512 insertions, 0 deletions
diff --git a/ports/urho3d/asm_files.patch b/ports/urho3d/asm_files.patch
new file mode 100644
index 000000000..91318e1d7
--- /dev/null
+++ b/ports/urho3d/asm_files.patch
@@ -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
diff --git a/ports/urho3d/externalproject.patch b/ports/urho3d/externalproject.patch
new file mode 100644
index 000000000..89d5dba7f
--- /dev/null
+++ b/ports/urho3d/externalproject.patch
@@ -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}
diff --git a/ports/urho3d/macosx.patch b/ports/urho3d/macosx.patch
new file mode 100644
index 000000000..edcae1460
--- /dev/null
+++ b/ports/urho3d/macosx.patch
@@ -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)
+
diff --git a/ports/urho3d/portfile.cmake b/ports/urho3d/portfile.cmake
new file mode 100644
index 000000000..9e2246c7e
--- /dev/null
+++ b/ports/urho3d/portfile.cmake
@@ -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)
diff --git a/ports/urho3d/shared_libs.patch b/ports/urho3d/shared_libs.patch
new file mode 100644
index 000000000..15d81eb07
--- /dev/null
+++ b/ports/urho3d/shared_libs.patch
@@ -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
diff --git a/ports/urho3d/vcpkg-cmake-wrapper.cmake b/ports/urho3d/vcpkg-cmake-wrapper.cmake
new file mode 100644
index 000000000..83acec150
--- /dev/null
+++ b/ports/urho3d/vcpkg-cmake-wrapper.cmake
@@ -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})
diff --git a/ports/urho3d/vcpkg.json b/ports/urho3d/vcpkg.json
new file mode 100644
index 000000000..f1d12a597
--- /dev/null
+++ b/ports/urho3d/vcpkg.json
@@ -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
+ }
+ ]
+}
diff --git a/versions/baseline.json b/versions/baseline.json
index 68819c505..edcca312f 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -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
diff --git a/versions/u-/urho3d.json b/versions/u-/urho3d.json
new file mode 100644
index 000000000..3c81006ed
--- /dev/null
+++ b/versions/u-/urho3d.json
@@ -0,0 +1,9 @@
+{
+ "versions": [
+ {
+ "git-tree": "1f456f57b63fe4e73605d2b2b5827aa4db385438",
+ "version-date": "2021-03-01",
+ "port-version": 0
+ }
+ ]
+}