Commit Graph

72 Commits

Author SHA1 Message Date
Yao Wei Tjong 姚伟忠
dabfdbd213
Remove unsupported build options for Web platform. 2020-01-12 14:19:44 +08:00
urho3d-travis-ci
1151b8a2d6 Travis CI: bump copyright to 2020. 2020-01-05 06:21:40 +00:00
urho3d-travis-ci
a476f0c401 Travis CI: bump copyright to 2019. 2019-01-12 01:00:16 +00:00
Yao Wei Tjong 姚伟忠
d3508fc246
Fix initial gradle sync. 2018-08-06 21:46:00 +08:00
Yao Wei Tjong 姚伟忠
d827f5ebfb
Proper segregation between Gradle modules. 2018-08-06 21:46:00 +08:00
urho3d-travis-ci
70049ba582 Travis CI: bump copyright to 2018.
[cache clear]
2018-01-01 05:35:37 +00:00
Yao Wei Tjong 姚伟忠
c7a0149dc9 Another sweep for tvOS conditional code branch. 2017-06-05 23:04:09 +08:00
Yao Wei Tjong 姚伟忠
1544a1631b Skip try_compile test when the found lib does not the armv7 arch. 2017-04-13 19:35:23 +08:00
Yao Wei Tjong 姚伟忠
9d84ccffe4 Initial attempt to support MODULE library type for Web platform.
Disallow memory growth when using MODULE lib-type.
Move the resource defining and checking logic into their own macros.
2017-03-26 22:18:35 +08:00
Yao Wei Tjong 姚伟忠
ff85c9522a Rename the module and toolchain names to follow new naming convention. 2017-03-06 22:12:27 +08:00
Yao Wei Tjong 姚伟忠
f1ac8a80e9 Minor refactor on CheckCompilerToolchain module. 2017-03-05 08:46:22 +08:00
Yao Wei Tjong 姚伟忠
2f8a80def4 Rewrite from scratch a new Android toolchain file.
The new toolchain file requires Android NDK r12b and above. Default to use 'arm-linux-androideabi-clang' toolchain and LLVM libc++ STL runtime.
Align all the compiler and linker flags according to new ndk-build configuration in Android NDK r12b, i.e. no more '-f[no-]strict-aliasing' and '-f[no-]omit-frame-pointer', but more stringent warnings check.
Improve over the old toolchain file where most of the options are now changeable after the initial configuration. The exceptions are ANDROID_NDK and ANDROID_TOOLCHAIN_NAME due to limitation of CMake.
Close #1441.
Other changes in this commit includes:
- Fix Android sample launcher app to support shared C++ STL runtime library.
- Remove temporary fix in FindUrho3D module as it is not required anymore with our new toolchain file.
- Fix Log::WriteRaw() method to pass the parameters correctly to __android_log_print() function.
- Fix enable_pch() macro to emit -fPIC compiler flags correctly based on target's POSITION_INDEPENDENT_CODE property.
- Fix linker flags for ld.bfd where it needs help to find the location of the rooted shared libraries. The flags are not required for ld.gold but they do no harm for gold linker.
- Enhance the CheckCompilerToolchain module to auto-detect if the NEON SIMD is enabled or not for Android build (based on the chosen ANDROID_ABI).
2017-03-05 08:45:40 +08:00
Yao Wei Tjong 姚伟忠
f7e2303cab Use "SmileyHack" to inject CMake vars to get the right output suffix.
This fixes known issues with output binary suffix in the custom emscripten.toolchain.cmake and FindUrho3D.cmake modules.
2017-03-05 08:45:39 +08:00
Yao Wei Tjong 姚伟忠
ffd24cafa1 Take advantage of CMAKE_SYSROOT available in the newer CMake.
Use CMAKE_SYSROOT to manage the sysroot automatically when cross-compiling instead of adding the '--sysroot' flag manually everywhere. We only need to add it manually in places where CMake does not, like in our custom GCC/Clang response file for PCH.
Differentiate between setting up header search path for system headers and for application headers so that GCC/Clang may suppress compilation warnings from the former, if any.
2017-03-05 08:45:39 +08:00
Yao Wei Tjong 姚伟忠
68d8681c2b Always use export header for auto-discovering the build options.
Fix #1796.
2017-02-05 21:01:21 +08:00
urho3d-travis-ci
ee054a1507 Travis CI: bump copyright to 2017.
[ccache clear]
2017-01-01 13:01:31 +00:00
Yao Wei Tjong 姚伟忠
918c965c82 Fix FindUrho3D.cmake module to consider MinGW as multilib compiler.
Fix #1527.
2016-08-21 02:31:53 +08:00
Yao Wei Tjong 姚伟忠
de3c2dc2b5 Fix cache datatype typo when caching the URHO3D_LIB_TYPE.
Credit to hsnabn. Close #1513.
2016-08-13 11:44:10 +08:00
Yao Wei Tjong 姚伟忠
b21ff1895e Fix overlinking of EGL library in FindVideoCore.cmake module.
Remove hardcoding of indirect dependency libraries list in the FindUrho3D.cmake module. Instead we now rely on the linker to find those indirect dependencies automatically with our hint via "-runpath-link" linker flag, especially when cross-compiling.
Also setup GLESv2 (and GLESv1_CM) for Raspberry-Pi in the same manner as generic ARM and Android platforms.
2016-08-07 18:22:46 +08:00
Yao Wei Tjong 姚伟忠
a01ee5ec30 For CI - add new CI jobs for 32-bit generic ARM builds. 2016-08-05 18:33:35 +08:00
Yao Wei Tjong 姚伟忠
64d975ba1a Add initial build support for generic ARM platform.
Add a new build option "ARM_ABI_FLAGS" for supplying additional ABI compiler flags when targeting generic arm.
Fix Linux build from using OpenGLES instead of GLEW, fix RPI build from using wrong OpenGLES library, fix iOS build from using arm-specific compiler flags directly which would cause problem in universal binary build containing iphonesimulator archs as well.
And other minor refactoring.
2016-06-10 17:17:21 +08:00
Yao Wei Tjong 姚伟忠
be2ae85427 Fix all the cross-compiling builds due to bugs in SDL CMakeLists.txt.
Fix SDL library build on iOS platform.
2016-03-16 01:45:09 +08:00
Yao Wei Tjong 姚伟忠
06bcfbeb7b Fix all the cross-compiling builds due to bugs in SDL CMakeLists.txt.
Fix SDL library build on Web platform.
2016-03-16 01:45:08 +08:00
Yao Wei Tjong 姚伟忠
3e40a5ebeb Fix all the cross-compiling builds due to bugs in SDL CMakeLists.txt.
Fix SDL library build on Windows platform.
2016-03-16 01:45:08 +08:00
Yao Wei Tjong 姚伟忠
71efb146cb Refactor the CPU instruction extensions detection mechanism.
Fix SDL build on the latest Raspbian Jessie release.
2016-03-16 01:45:08 +08:00
urho3d-travis-ci
c4f6f315ff Travis CI: bump copyright to 2016.
[ccache clear]
2016-01-26 13:55:03 +00:00
Yao Wei Tjong 姚伟忠
90c97b95c4 Fix try_run logic in FindUrho3D module to support MSVC static runtime.
Close #1140.
2016-01-22 19:13:51 +08:00
Yao Wei Tjong 姚伟忠
1066c52fb6 Fix build system to find 32-bit packages correctly on Linux. 2016-01-22 12:01:23 +08:00
Yao Wei Tjong 姚伟忠
da3a82979b Bake URHO3D_TESTING to ensure downstreams get consistent struct size. 2016-01-21 00:01:28 +08:00
Yao Wei Tjong 姚伟忠
df2e152a6c Fix 64-bit ABI detection on iOS platform again.
Older Xcode/lipo tool may not recognize 64-bit ARM arch as 'arm64' yet, so use 'x86_64' as the grep keyword instead.
[skip appveyor] [ci only: OSX]
2016-01-07 16:16:12 +08:00
Yao Wei Tjong 姚伟忠
bc64b053a3 Bake URHO3D_LUAJIT as downstream project needs extra linker flags.
Without these extra linker flags the executable would most likely get a runtime error, especially when targeting 64-bit OSX platform.
2016-01-06 16:38:59 +08:00
Yao Wei Tjong 姚伟忠
3c7b37c972 For Travis CI & AppVeyor - simplify SDK installation process.
The wait_for_block() was originally needed for iOS platform as it used to install very slowly (exceeds 10 minutes) due to configuration mistake. It should install just in a few minutes now.
2016-01-06 16:38:58 +08:00
Yao Wei Tjong 姚伟忠
f2e7eec61a Fix compiler ABI detection for iOS platform. 2016-01-06 16:38:58 +08:00
Yao Wei Tjong 姚伟忠
431559c2bd For Travis CI & AppVeyor - unified 'ci' rake task and spring cleaning. 2016-01-06 16:38:58 +08:00
Yao Wei Tjong 姚伟忠
891bde9325 Fix try_run() logic on WIN32 platform with both Release and Debug libs. 2015-12-28 17:01:35 +08:00
Yao Wei Tjong 姚伟忠
bf50a58a0a Fix clang-tools build.
[skip appveyor] [ci only: Annotate]
2015-12-27 15:51:28 +08:00
Yao Wei Tjong 姚伟忠
108705d0e2 Bake compiler defines used by the database subsystem.
The auto-discovered variables are removed as build options from cmake-gui when it is invoked by Urho3D downstream projects.
Still, ensure the auto-discovered variables prevail over conflicting values potentially specified by user manually or via CLI.
2015-12-26 19:38:17 +08:00
Yao Wei Tjong 姚伟忠
1c640da5d4 Document all the possible output variables.
[ci skip]
2015-12-25 22:22:40 +08:00
Yao Wei Tjong 姚伟忠
68e2813298 Attempt to use try_run logic to auto-discover build options.
For AppVeyor - let URHO3D_D3D11 be auto-discovered when scaffolding.
Close #1066.
2015-12-25 10:37:56 +08:00
Yao Wei Tjong 姚伟忠
a2122c3063 For downstream - fix try_compile logic on iOS build.
[skip appveyor] [ci only: OSX]
2015-12-22 22:15:14 +08:00
Yao Wei Tjong 姚伟忠
a3f24a38cb For downstream - fix try_compile logic on Android build.
[skip appveyor] [ci only: Android, Emscripten]
2015-12-20 23:23:59 +08:00
Yao Wei Tjong 姚伟忠
ad170b5893 For downstream - show try_compile output in case of compilation error.
[ci skip]
2015-12-18 00:00:51 +08:00
Yao Wei Tjong 姚伟忠
6e50708301 Modify the try_compile syntax to the one that CMake 2.8.7 supports.
Temporarily still exclude iOS and Android.
2015-12-17 22:27:03 +08:00
Yao Wei Tjong 姚伟忠
df18e41ee6 Fix try_compile execution for MinGW STATIC build and 32-bit build.
[ccache clear]
2015-12-16 23:37:57 +08:00
Yao Wei Tjong 姚伟忠
f471dd66dd Refactor installation structure for Windows platform.
Attempt to reenable the try_compile logic to verify if the found Urho3D
library is ABI-compatible with the chosen compiler toolchain.
2015-12-16 22:21:24 +08:00
Yao Wei Tjong 姚伟忠
4014a8c074 Temporarily disable try_compile as it does not work on older CMake. 2015-12-15 00:38:04 +08:00
Yao Wei Tjong 姚伟忠
20ed4836cd Use try_compile construct that is recognized by older CMake version.
Temporarily exclude the ABI check for MSVC as well. Sorry.
2015-12-15 00:12:40 +08:00
Yao Wei Tjong 姚伟忠
1b9b928de0 Temporarily exclude try_compile check for iOS build. 2015-12-14 23:47:55 +08:00
Yao Wei Tjong 姚伟忠
1cd242273e Verify found Urho3D library has matching ABI with the chosen compiler.
Check the CMake minimum version before setting project name as recommended by CMake.
Minor documentation update on how to setup downstream projects using Urho3D library as external library.
For AppVeyor - attempt to add scaffolding test using Urho3D SDK.
2015-12-14 22:43:00 +08:00
Yao Wei Tjong 姚伟忠
94469e689e Fix RPI static build. 2015-12-13 22:36:57 +08:00