- Add initial support for ndk-gdb. Enable via new 'URHO3D_NDK_GDB' build option.
- Enhance rake android task: more effective loop to wait for Android device, ability to pick library to run from SampleLauncher from the adb shell.
- Fix "buildvm" tool name for Android to derive from the correct NDK ABI CMake's variable.
- Fix Android toolchain to copy shared STL library to the correct Android library output directory.
- Runtime and archive output directories change to mingw-Bin and mingw-Lib, respectively.
- Enable SCP_TO_TARGET build option for all cross-compiling build process (except Android).
- Enable LuaJIT support for MinGW cross-compiling build.
- Cache MinGW toolchain path and sysroot.
- Fix "object file is too big" issue when building Assimp library in debug build using MinGW.
- Reorder the build processes documentation section to match the Readme.txt file.
The luajit executable should now be able to generate Lua bytecode files in Bin/ directory under the project root directory or in any directory when Urho3D SDK is installed in the filesystem.
Since the CMake minimum is bumped up, set the policy CMP0022 to NEW. Incidentally it is also required to be so to stop the static libraries dependency from being transitively get included to other targets that links to Urho3D shared library.
- Close issue #67, Urho3D iOS library should be built correctly now (either as single arch or as multiple archs Mach-O universal binary). Urho3D library build for Mac OS X and iOS platforms do not rely on CMake hack 'object-collecting' approach anymore. It uses Apple static linker 'ld' tool to merge all objects from third-party *.a directly.
- Add new custom target (Urho3D_universal) for iOS platform to build a single Mach-O universal binary library consists of both iphoneos (universal ARM archs) and iphonesimulator (i386 arch).
- Introduce PLATFORM_PREFIX (ios-, raspi-, android-) to prefix the build and output directories (Build, Bin, Lib).
- Correct Xcode-specific build setting for Mac OS X desktop build to use the latest OS X SDK but set deployment target to current OS X of the build system, unless CMAKE_OSX_DEPLOYMENT_TARGET is set explicitly to build for other target.
- Temporary workaround for CMake/Xcode generator bug where it always appends '/build' path element to SYMROOT attribute and as such the items in Products are always rendered as red as if they are not yet built.
- Change Assimp target to use setup_library() macro so that it gets the same settings (and workaround) as all other targets.
- Add a conditional check to prevent MSVC to build 'buildvm-android' target as it is not supported at this moment.
- Prevent 'make clean' or its equivalent to remove the generated ScriptAPI.dox and LuaScriptAPI.dox in the 'Docs' subdirectory.
- Always refresh the generated API Doxygen files before building 'doc' target when the tools are available.
- Move document-build binary directory into the respective project main binary directory.
The initial target architecture detection for LuaJIT on Raspberry Pi native build was painfully slow due to the amount of output produced by compiler.
The filter reduces the number of output rows and speeds up the process significantly.
The following platforms should be now supported:
Windows, Linux, Mac OS X, IOS, Android, and Raspberry Pi. Not all platforms are fully tested yet.
Cross-compilation may work on GCC/CLang only.