From fe63e88d30454ca5cdb5446bbd2d8cbc1fe08312 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Fri, 8 May 2015 17:07:44 +0200 Subject: [PATCH 1/5] Updated toolchains submodule. --- toolchains | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolchains b/toolchains index 02f028c94..a4683ed56 160000 --- a/toolchains +++ b/toolchains @@ -1 +1 @@ -Subproject commit 02f028c94f68b352d81509593fa5f64ac2eca244 +Subproject commit a4683ed5662754a6498e64f30064b9f118f78285 From 57f19dbbc262b8ce9e13f1757520afbffc7ab072 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Fri, 8 May 2015 17:35:28 +0200 Subject: [PATCH 2/5] Platform: don't define ScreenedApplication for AndroidApplication. Not done yet. --- src/Magnum/Platform/AndroidApplication.cpp | 3 --- src/Magnum/Platform/AndroidApplication.h | 2 -- 2 files changed, 5 deletions(-) diff --git a/src/Magnum/Platform/AndroidApplication.cpp b/src/Magnum/Platform/AndroidApplication.cpp index 1139df088..303d0f85f 100644 --- a/src/Magnum/Platform/AndroidApplication.cpp +++ b/src/Magnum/Platform/AndroidApplication.cpp @@ -253,7 +253,4 @@ void AndroidApplication::exec(android_app* state, std::unique_ptruserData = nullptr; } -template class BasicScreen; -template class BasicScreenedApplication; - }} diff --git a/src/Magnum/Platform/AndroidApplication.h b/src/Magnum/Platform/AndroidApplication.h index 1db8aa2a9..abfbefa61 100644 --- a/src/Magnum/Platform/AndroidApplication.h +++ b/src/Magnum/Platform/AndroidApplication.h @@ -585,8 +585,6 @@ header is included this macro is also aliased to `MAGNUM_APPLICATION_MAIN()`. #ifndef DOXYGEN_GENERATING_OUTPUT #ifndef MAGNUM_APPLICATION_MAIN typedef AndroidApplication Application; -typedef BasicScreen Screen; -typedef BasicScreenedApplication ScreenedApplication; #define MAGNUM_APPLICATION_MAIN(className) MAGNUM_ANDROIDAPPLICATION_MAIN(className) #else #undef MAGNUM_APPLICATION_MAIN From 01500264fe1287b29df4ac36fd43b9cd09373aa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Fri, 8 May 2015 17:35:51 +0200 Subject: [PATCH 3/5] package/ci: fix build dir for android. --- package/ci/jenkins-android.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package/ci/jenkins-android.xml b/package/ci/jenkins-android.xml index a5b1543a2..d215debc0 100644 --- a/package/ci/jenkins-android.xml +++ b/package/ci/jenkins-android.xml @@ -67,8 +67,8 @@ else deprecated_build_flag=OFF fi -mkdir -p build-nacl-${toolchain}-${compatibility} -cd build-nacl-${toolchain}-${compatibility} +mkdir -p build-android-${toolchain}-${compatibility} +cd build-android-${toolchain}-${compatibility} cmake .. \ -DCMAKE_BUILD_TYPE=Release \ From 5b135ccf9c6477a6fad230f72a77408f2e865786 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Fri, 8 May 2015 20:52:28 +0200 Subject: [PATCH 4/5] doc: work around Doxygen/Markdown conflicts. It seems like I'm doing this once a week and someone is putting the asterisks at the start of the line again and again. --- doc/building.dox | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/doc/building.dox b/doc/building.dox index 7250b7cd5..eef79a46e 100644 --- a/doc/building.dox +++ b/doc/building.dox @@ -432,9 +432,9 @@ Emscripten supports dynamic libraries only to simplify porting and they are generally slower, thus `BUILD_STATIC` is implicitly enabled. Then create build directory and run cmake and build command in it. The -toolchain needs access to its platform file, so be sure to properly set -**absolute** path to `modules/` directory containing `Platform/Emscripten.cmake`. -Also set `CMAKE_INSTALL_PREFIX` to path contained in `EMSCRIPTEN_TOOLCHAIN_PATH`. +toolchain needs access to its platform file, so be sure to properly set **absolute** +path to `modules/` directory containing `Platform/Emscripten.cmake`. Also set +`CMAKE_INSTALL_PREFIX` to path contained in `EMSCRIPTEN_TOOLCHAIN_PATH`. mkdir build-emscripten && cd build-emscripten cmake .. \ @@ -508,9 +508,9 @@ named `PKGBUILD-android-arm` and `PKGBUILD-android-x86`, see In `package/ci/` there are `jenkins.xml` and `jenkins-gltests.xml` files containing job configuration, one for build and non-GL tests and the other for -GL tests only. Setup your Jenkins server, enable the **Git** and -**Text-finder** plugin and download the CLI application from here (replace -`localhost:8080` with your server name): +GL tests only. Setup your Jenkins server, enable the **Git** and **Text-finder** +plugin and download the CLI application from here (replace `localhost:8080` +with your server name): http://localhost:8080/cli @@ -522,11 +522,11 @@ replace `localhost:8080` with your server name, replace `update-job` with java -jar ~/jenkins-cli.jar -s http://localhost:8080 update-job Magnum-GLTests < package/ci/jenkins-gltests.xml Build is done using **Ninja** build system and everything possible is enabled, -thus you need also **SDL2**, **GLUT** and **OpenAL** libraries. It expects that -**GCC** >= 4.8.1, 4.7 and **Clang** are installed and there are **OpenGL**, -**OpenGL ES 2.0** and **OpenGL ES 3.0** librares as it tries to compile the -library with every combination of them. You can add/remove the axes in -`axes/hudson.matrix.TextAxis` or via the web interface later. +thus you need also **SDL2**, **GLUT** and **OpenAL** libraries. It expects +that **GCC** >= 4.8.1, 4.7 and **Clang** are installed and there +are **OpenGL**, **OpenGL ES 2.0** and **OpenGL ES 3.0** librares as it tries to +compile the library with every combination of them. You can add/remove the axes +in `axes/hudson.matrix.TextAxis` or via the web interface later. Magnum-GLTests depend on active X11 session, thus they should be run from Jenkins instance running on graphical user session. From a9aee1935dce7ad69a7246886716a5515472b94a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Fri, 8 May 2015 21:00:00 +0200 Subject: [PATCH 5/5] Platform: cleanup in AndroidApplication. --- src/Magnum/Platform/AndroidApplication.cpp | 8 ++++---- src/Magnum/Platform/AndroidApplication.h | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Magnum/Platform/AndroidApplication.cpp b/src/Magnum/Platform/AndroidApplication.cpp index 303d0f85f..c61d2c379 100644 --- a/src/Magnum/Platform/AndroidApplication.cpp +++ b/src/Magnum/Platform/AndroidApplication.cpp @@ -67,7 +67,7 @@ AndroidApplication::AndroidApplication(const Arguments& arguments, std::nullptr_ AndroidApplication::~AndroidApplication() { eglMakeCurrent(_display, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); - eglDestroyContext(_display, _context); + eglDestroyContext(_display, _glContext); eglDestroySurface(_display, _surface); eglTerminate(_display); } @@ -127,16 +127,16 @@ bool AndroidApplication::tryCreateContext(const Configuration& configuration) { #endif EGL_NONE }; - if(!(_context = eglCreateContext(_display, config, EGL_NO_CONTEXT, contextAttributes))) { + if(!(_glContext = eglCreateContext(_display, config, EGL_NO_CONTEXT, contextAttributes))) { Error() << "Platform::AndroidApplication::tryCreateContext(): cannot create EGL context:" << Implementation::eglErrorString(eglGetError()); return false; } /* Make the context current */ - CORRADE_INTERNAL_ASSERT_OUTPUT(eglMakeCurrent(_display, _surface, _surface, _context)); + CORRADE_INTERNAL_ASSERT_OUTPUT(eglMakeCurrent(_display, _surface, _surface, _glContext)); - _c.reset(new Platform::Context); + _context.reset(new Platform::Context); return true; } diff --git a/src/Magnum/Platform/AndroidApplication.h b/src/Magnum/Platform/AndroidApplication.h index abfbefa61..aa96ca5b6 100644 --- a/src/Magnum/Platform/AndroidApplication.h +++ b/src/Magnum/Platform/AndroidApplication.h @@ -310,9 +310,9 @@ class AndroidApplication { EGLDisplay _display; EGLSurface _surface; - EGLContext _context; + EGLContext _glContext; - std::unique_ptr _c; + std::unique_ptr _context; std::unique_ptr _logOutput; CORRADE_ENUMSET_FRIEND_OPERATORS(Flags) @@ -485,7 +485,7 @@ class AndroidApplication::MouseEvent: public InputEvent { } private: - MouseEvent(AInputEvent* event): InputEvent(event) {} + explicit MouseEvent(AInputEvent* event): InputEvent(event) {} }; /** @@ -561,7 +561,7 @@ class AndroidApplication::MouseMoveEvent: public InputEvent { } private: - MouseMoveEvent(AInputEvent* event): InputEvent(event) {} + explicit MouseMoveEvent(AInputEvent* event): InputEvent(event) {} }; CORRADE_ENUMSET_OPERATORS(AndroidApplication::MouseMoveEvent::Buttons)