Commit Graph

9836 Commits

Author SHA1 Message Date
Yao Wei Tjong 姚伟忠
0b218946f3 For CI - add new WebAssembly CI build. 2017-03-05 08:46:29 +08:00
Yao Wei Tjong 姚伟忠
d7eded9178 Add new build option to enable WASM support.
Remove redundant Emscripten build option for pre-generating the system libraries because newer Emscripten version has fixed the cache lock issue.
2017-03-05 08:46:29 +08:00
Yao Wei Tjong 姚伟忠
75a5a06cd2 Make the CMake/Android toolchain file compatible with NDK 13c. 2017-03-05 08:46:22 +08:00
Yao Wei Tjong 姚伟忠
f1ac8a80e9 Minor refactor on CheckCompilerToolchain module. 2017-03-05 08:46:22 +08:00
Yao Wei Tjong 姚伟忠
0c88c99112 Allow possibility of building Urho3D without C++ exceptions feature.
Disallow Android build to turn off C++ RTTI feature.
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 姚伟忠
22542ec06d Adapt to newer CMake that identifies Clang on Apple as "AppleClang". 2017-03-05 08:45:39 +08:00
Yao Wei Tjong 姚伟忠
06638436c0 Prevent *-PREFIX and *-SYSROOT changes after the initial configuration.
When in try_compile() mode, quickly obtain the previously cached values stored in the (inner scope) environment variables and bypass all the checks (which are already done when the toolchain file is being processed at the start of CMake run).
2017-03-05 08:45:39 +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 姚伟忠
84ad86e79e Fix toolchain files to honor *-PREFIX and *-SYSROOT as build options.
Due to the CMake try_compile() limitation, initial build option values (i.e. not env-vars) were not visible to all the CMake checks during inital configuration, preventing the build option from functioning as expected.
2017-03-05 08:45:39 +08:00
Yao Wei Tjong 姚伟忠
98bdf13583 Enhance toolchain files to first check on suitable ccache symlink.
If a suitable symlink is found in the standard ccache symlink directory then skip creating fallback symlink in the build tree.
2017-03-05 08:45:39 +08:00
Yao Wei Tjong 姚伟忠
f32cbb72b0 Rename Urho3D-CMake-common.cmake module to UrhoCommon.cmake.
To be consistent with the other modules. Drop the '3D' simply because it sticks out in 'Urho3DCommon'.
2017-03-05 08:45:39 +08:00
Yao Wei Tjong 姚伟忠
d64b2e9aeb Fix auto-detection of host tool for Android cross-compiling build.
After using CMAKE_SYSROOT in the android.toolchain.cmake module, CMake will only find Doxygen when CMAKE_FIND_ROOT_PATH_MODE_PROGRAM is set to to NEVER. It is actually weird why it was working before when it was set to ONLY previously.
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 姚伟忠
2738ca2546 Skip subsequent processing of toolchain file during inital config. 2017-03-05 08:45:39 +08:00
Yao Wei Tjong 姚伟忠
4fbe1ff134 Add custom command to automatically strip main target on Release build. 2017-03-05 08:45:39 +08:00
Yao Wei Tjong 姚伟忠
f7c9cfa95e Regex replace single bracket with double bracket in all shell scripts. 2017-03-05 08:45:38 +08:00
Yao Wei Tjong 姚伟忠
3b02eeb5eb For CI - suppress all the 3rd-party libraries' warnings.
Somehow after bumping up the CMake minimum version, CMake configures Xcode to work "better" with xcpretty that now the warnings are piping through the xcpretty's filter. Unfortunately when performing CI build, this is undesirable because not only now the log size is swelling, the build is slower too.
2017-03-05 08:45:38 +08:00
Yao Wei Tjong 姚伟忠
73c97d9f64 Only add defines at the scope they are actually required. 2017-03-05 08:45:38 +08:00
Yao Wei Tjong 姚伟忠
3d9eb3f694 Bake CC and CXX env-vars in case they are short lived in init process. 2017-03-05 08:45:38 +08:00
Yao Wei Tjong 姚伟忠
bbbbdb0108 Check native compiler toolchain is available before proceeding.
Some cross-compiling build tree configuration needs native compiler toolchain for host tool building via ExternalProject_Add(). This additional check ensures the native compiler toolchain is available up front before the build tree is even generated. Close #1300.
2017-03-05 08:45:21 +08:00
Yao Wei Tjong 姚伟忠
9f19d51c08 Remove older constructs that have been earmarked previously. 2017-03-05 08:34:41 +08:00
Yao Wei Tjong 姚伟忠
3475afba54 Bump the CMake minimum version in the CMakeLists.txt files. 2017-03-05 08:34:41 +08:00
Yao Wei Tjong 姚伟忠
0f471ce263 For CI - upgrade CMake to version 3.2.3. 2017-03-05 08:34:41 +08:00
urho3d-travis-ci
e63db60b9a Travis CI: API documentation update at 2017-03-04 18:23:30 UTC.
[ci package]

Commit: c9331a6cc9

Message: Merge pull request #1832 from eugeneko/master

Extract some code to increase reusability.
2017-03-04 18:23:30 +00:00
Eugene Kozlov
c9331a6cc9 Merge pull request #1832 from eugeneko/master
Extract some code to increase reusability.
2017-03-04 21:13:31 +03:00
Lasse Öörni
9ef6c6397a Clarify license / author information of assets where not otherwise mentioned. Closes #1844. 2017-03-04 18:36:33 +02:00
Eugene Kozlov
d60e96c866 Add script binding for Node::IsChildOf. 2017-03-04 19:13:20 +03:00
Eugene Kozlov
0c400e3d9d Split Engine::Initialize 2017-03-04 19:13:20 +03:00
Eugene Kozlov
94bf1f3a85 Prepare to extract code from Engine::Initialize. 2017-03-04 19:13:20 +03:00
Eugene Kozlov
76ddec737e Add Node::IsChildOf member function. 2017-03-04 19:13:20 +03:00
Eugene Kozlov
042efb8943 Add [POD]Vector::IndexOf function. 2017-03-04 19:13:20 +03:00
urho3d-travis-ci
f219fb5d23 Travis CI: API documentation update at 2017-03-04 14:22:17 UTC.
[ci package]

Commit: 07da64de58

Message: Fix registration of NamedPipe to AngelScript API to use the proper class.
2017-03-04 14:22:17 +00:00
Lasse Öörni
07da64de58 Fix registration of NamedPipe to AngelScript API to use the proper class. 2017-03-04 15:59:03 +02:00
Lasse Öörni
fbe80c964e Merge remote-tracking branch 'rokups/AbstractFile' 2017-03-04 15:23:05 +02:00
1vanK
658baf4f3a Add info about shapes to PhysicsEvents2D 2017-03-04 14:00:07 +02:00
Yao Wei Tjong 姚伟忠
e45275e689 Add conditional compiler define for MSVC compiler.
Fix #1845 [skip travis]
2017-03-04 13:13:08 +08:00
urho3d-travis-ci
8230d0bb99 Travis CI: API documentation update at 2017-03-02 20:19:12 UTC.
[ci package]

Commit: 08fd3b7690

Message: Minor documentation expansion on use of std::bind() for events.

commit 873adf5565f8537f9d06f69a649c57635ab1c2de
Merge: 0a19418 f75a784
Author: carnalis <carnalis.j@gmail.com>
Date:   Thu Mar 2 14:25:42 2017 -0500

    Merge branch 'master' of github.com:carnalis/Urho3D

commit 0a1941814ec656d31bb5399c919ba516a2cda7cb
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 13 21:24:53 2017 -0500

    Minor documentation expansion on use of std::bind() for events.

commit f75a784102708998841302c70736be39eeb2300d
Merge: 84a1f82 06d2100
Author: carnalis <carnalis.j@gmail.com>
Date:   Thu Mar 2 04:42:56 2017 -0500

    Merge branch 'master' of github.com:carnalis/Urho3D

commit 84a1f827752335260b7a5bd6a180613bd018af7e
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 13 21:24:53 2017 -0500

    Minor documentation expansion on use of std::bind() for events.

commit 06d210045af24646a6161daeaff28fd9828dccfd
Merge: 20877d0 71e9501
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 20 09:59:31 2017 -0500

    Merge branch 'master' of github.com:carnalis/Urho3D

commit 20877d01c805f58234798f6a0b1baeeee1e1628e
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 13 21:24:53 2017 -0500

    Minor documentation expansion on use of std::bind() for events.

commit 71e9501934cc9a67eeae1d0c524dbc11a1bd96db
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 13 21:24:53 2017 -0500

    Minor documentation expansion on use of std::bind() for events.
2017-03-02 20:19:12 +00:00
Lasse Öörni
08fd3b7690 Minor documentation expansion on use of std::bind() for events.
commit 873adf5565f8537f9d06f69a649c57635ab1c2de
Merge: 0a19418 f75a784
Author: carnalis <carnalis.j@gmail.com>
Date:   Thu Mar 2 14:25:42 2017 -0500

    Merge branch 'master' of github.com:carnalis/Urho3D

commit 0a1941814ec656d31bb5399c919ba516a2cda7cb
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 13 21:24:53 2017 -0500

    Minor documentation expansion on use of std::bind() for events.

commit f75a784102708998841302c70736be39eeb2300d
Merge: 84a1f82 06d2100
Author: carnalis <carnalis.j@gmail.com>
Date:   Thu Mar 2 04:42:56 2017 -0500

    Merge branch 'master' of github.com:carnalis/Urho3D

commit 84a1f827752335260b7a5bd6a180613bd018af7e
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 13 21:24:53 2017 -0500

    Minor documentation expansion on use of std::bind() for events.

commit 06d210045af24646a6161daeaff28fd9828dccfd
Merge: 20877d0 71e9501
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 20 09:59:31 2017 -0500

    Merge branch 'master' of github.com:carnalis/Urho3D

commit 20877d01c805f58234798f6a0b1baeeee1e1628e
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 13 21:24:53 2017 -0500

    Minor documentation expansion on use of std::bind() for events.

commit 71e9501934cc9a67eeae1d0c524dbc11a1bd96db
Author: carnalis <carnalis.j@gmail.com>
Date:   Fri Jan 13 21:24:53 2017 -0500

    Minor documentation expansion on use of std::bind() for events.
2017-03-02 21:57:20 +02:00
Lasse Öörni
874f853c1f Change Quaternion Slerp & Nlerp parameters to use a const reference by using a sign variable instead. Closes #1835. 2017-03-02 21:52:05 +02:00
urho3d-travis-ci
70186e700e Travis CI: API documentation update at 2017-03-01 19:27:37 UTC.
[ci package]

Commit: 00816efec2

Message: Add XMLElement::GetInt64 & GetUInt64 for completeness.
2017-03-01 19:27:37 +00:00
Lasse Öörni
00816efec2 Add XMLElement::GetInt64 & GetUInt64 for completeness. 2017-03-01 21:13:42 +02:00
Lasse Öörni
39c41dc6a6 Shorten long long int to long long. 2017-03-01 20:29:18 +02:00
Lasse Öörni
5c299dd2e2 Merge remote-tracking branch 'rokups/feature/int64-variant' 2017-03-01 20:21:43 +02:00
Rokas Kupstys
ea655297dc Added AbstractFile class. It is used as parent class for classes that implement both Serializer and Deserialized. 2017-03-01 12:44:30 +02:00
Rokas Kupstys
6a7a57eace More 64bit variant work, lua and angelscript bindings. 2017-03-01 12:42:27 +02:00
Rokas Kupstys
f90dde08fe 64bit integer variant 2017-02-28 17:21:19 +02:00
Yao Wei Tjong 姚伟忠
69b7a9d59b For CI - correct the "master" branch name for Web-CI build.
[ci only: Web] [skip appveyor]
2017-02-27 23:00:13 +08:00
Lasse Öörni
d710b2984f Merge pull request #1834 from 1vanK/master
Rename CheckDrawableVisibility() to CheckDrawableVisibilityWork() to …
2017-02-27 10:35:04 +02:00
Yao Wei Tjong 姚伟忠
5fe936e460 For CI - only upload web samples when it is a master CI build.
[ci skip]
2017-02-26 10:42:42 +08:00