diff --git a/testing/compiz/APKBUILD b/testing/compiz/APKBUILD new file mode 100644 index 00000000000..d8d691de124 --- /dev/null +++ b/testing/compiz/APKBUILD @@ -0,0 +1,103 @@ +# Maintainer: leso-kn +pkgname=compiz +pkgver=0.9.14.2 +pkgrel=0 +pkgdesc="OpenGL window and compositing manager" +url="http://www.compiz.org/" +arch="all" +depends_dev=" + cython + dbus-glib-dev + glu-dev + gtk+3.0-dev + intltool + libjpeg-turbo-dev + libnotify-dev + libpng-dev + librsvg-dev + libsm-dev + libxext-dev + libxi-dev + libxinerama-dev + libwnck3-dev + mesa-dev + metacity-dev + protobuf-dev + python3-dev + startup-notification-dev + " +makedepends=" + $depends_dev + boost-dev + cairo-dev + cmake + glibmm-dev + gtest-dev + libice-dev + libx11-dev + libxcomposite-dev + libxcursor-dev + libxdamage-dev + libxml2-dev + libxrandr-dev + libxslt-dev + pango-dev + samurai + xz + " +subpackages=" + $pkgname-dev:_dev + $pkgname-utils:_utils:noarch + $pkgname-lang + $pkgname-pyc + " +license=MIT +source="$pkgname-$pkgver.tar.xz::https://launchpad.net/$pkgname/${pkgver%.*}/$pkgver/+download/$pkgname-$pkgver.tar.xz + basename.patch + boost.patch + gtest.patch + libgen.patch + opengl.patch + protobuf.patch + " + +build() { + CFLAGS="$CFLAGS -O2 -flto=auto" \ + CXXFLAGS="$CXXFLAGS -O2 -flto=auto" \ + cmake -S . -B build -G Ninja \ + -DCMAKE_BUILD_TYPE=None \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCOMPIZ_WERROR=OFF + cmake --build build +} + +check() { + ctest --test-dir build --output-on-failure +} + +package() { + DESTDIR="$pkgdir" cmake --install build +} + +_dev() { + default_dev + amove usr/share/cmake-* + amove usr/share/compiz/cmake + amove usr/share/compiz/xslt +} + +_utils() { + depends="py3-cairo" + pkgdesc="$pkgdesc (development utilities)" + + amove usr/bin/ccsm +} +sha512sums=" +6d064c65be2af5a9676021d35ade64d262f1ddff0e974bd711805b6975d99697bb188f4a13d919b6f0f26a49544305d397d6c74e790b7672caeffc38f74ab145 compiz-0.9.14.2.tar.xz +05c475278ed7d71f06678e2d445c57c7760cdfc9569f16b8f51447c1dce71d47d90da659598cf47625c5ca18eb582ada68c47e1124b1986a5bd28c4e1df346d6 basename.patch +669c32ad7e4428dbbc20bcc8f99764f2c0a28b0641b094fa89abcdf760df82d3fddaf1ac6b0596d0a80c1fe81e641c0ad64b550b93a6dfdf7f4759d687840a8f boost.patch +2bbc6456deb85474416049eed194d5df7ec6c445f61c8f691f05f86cfee761cb634011fa658f2cd04c6740fea00400d536437bc7f210730f6651c490e96cb6c9 gtest.patch +1b3ada1f7fe818cadff8729a3778f161776be4641e1bf36a2ab185921fbcff2e64b9a1d2576441913c7561e1d327612ebdd4a20fde9941a57b3f32e7084f444c libgen.patch +aa6b4ba66b512d8cb09b17cd7e30a0ac2ed64ed11ef17613587c1b16c8c6146b2b526aba580b04db03f5b653c4c08ba0e7c57f2edd732a535db5da9f61c7b8f5 opengl.patch +9dd0d4c2361fd56645d2f7b634dee32f1d44a67d36b53e550108acc78a8400bfd3c57132a8a029e9884b9f05cdd3a7533c65355d0a3dd80564544931eaced258 protobuf.patch +" diff --git a/testing/compiz/basename.patch b/testing/compiz/basename.patch new file mode 100644 index 00000000000..ab6a862d317 --- /dev/null +++ b/testing/compiz/basename.patch @@ -0,0 +1,13 @@ +diff --git a/plugins/colorfilter/src/colorfilter.cpp b/plugins/colorfilter/src/colorfilter.cpp +index ca7eb41..b7004b5 100644 +--- a/plugins/colorfilter/src/colorfilter.cpp ++++ b/plugins/colorfilter/src/colorfilter.cpp +@@ -262,7 +262,7 @@ ColorfilterScreen::loadFilters () + loaded = 0; + for (int i = 0; i < count; i++) + { +- name = CompString (basename (filters.at (i).s ().c_str ())); ++ name = CompString (basename ((char*)filters.at (i).s ().c_str ())); + if (boost::algorithm::ends_with (name, ".frag")) + name.erase (name.end () - 5, name.end ()); + file = filters.at (i).s (); diff --git a/testing/compiz/boost.patch b/testing/compiz/boost.patch new file mode 100644 index 00000000000..96c2ed9388c --- /dev/null +++ b/testing/compiz/boost.patch @@ -0,0 +1,27 @@ + +diff --git a/src/timer/src/timer.cpp b/src/timer/src/timer.cpp +index fb6a7ec..61221be 100644 +--- a/src/timer/src/timer.cpp ++++ b/src/timer/src/timer.cpp +@@ -168,7 +168,7 @@ PrivateTimer::PrivateTimer () : + mMaxTime (0), + mMinDeadline (0), + mMaxDeadline (0), +- mCallBack (NULL) ++ mCallBack ([]() -> int { return 0; }) + { + } + +diff --git a/plugins/mousepoll/src/mousepoll.cpp b/plugins/mousepoll/src/mousepoll.cpp +index 7b7e717..147a591 100644 +--- a/plugins/mousepoll/src/mousepoll.cpp ++++ b/plugins/mousepoll/src/mousepoll.cpp +@@ -201,7 +201,7 @@ MousePoller::getPosition () + MousePoller::MousePoller () : + mActive (false), + mPoint (0, 0), +- mCallback (NULL) ++ mCallback ([](const CompPoint &) { }) + { + } + diff --git a/testing/compiz/gtest.patch b/testing/compiz/gtest.patch new file mode 100644 index 00000000000..37eac2d8f57 --- /dev/null +++ b/testing/compiz/gtest.patch @@ -0,0 +1,101 @@ +diff --git a/compizconfig/gsettings/mocks/CMakeLists.txt b/compizconfig/gsettings/mocks/CMakeLists.txt +index 14fe51e..d105bb1 100644 +--- a/compizconfig/gsettings/mocks/CMakeLists.txt ++++ b/compizconfig/gsettings/mocks/CMakeLists.txt +@@ -8,7 +8,7 @@ if (GLIB_FOUND) + ${CMAKE_CURRENT_SOURCE_DIR}/../gsettings_backend_shared + ${GLIB_INCLUDE_DIRS}) + +- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") ++ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") + + add_library (compizconfig_ccs_gsettings_wrapper_mock STATIC + ${CMAKE_CURRENT_SOURCE_DIR}/ccs_gsettings_wrapper_mock.cpp +diff --git a/compizconfig/gsettings/tests/CMakeLists.txt b/compizconfig/gsettings/tests/CMakeLists.txt +index 9a81a5d..2e3bbb0 100644 +--- a/compizconfig/gsettings/tests/CMakeLists.txt ++++ b/compizconfig/gsettings/tests/CMakeLists.txt +@@ -16,7 +16,7 @@ pkg_check_modules (COMPIZCONFIG_TEST_GSETTINGS gio-2.0 glib-2.0) + + if (COMPIZCONFIG_TEST_GSETTINGS_FOUND) + +- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") ++ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") + + link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../libcompizconfig/tests) + link_directories (${CMAKE_CURRENT_BINARY_DIR}/../testenvironments) +diff --git a/compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt b/compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt +index 683c83f..7778503 100644 +--- a/compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt ++++ b/compizconfig/integration/gnome/gsettings/tests/CMakeLists.txt +@@ -11,7 +11,7 @@ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../mocks/libcompizconfig) + link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../tests/) + link_directories (${CMAKE_CURRENT_BINARY_DIR}/../src/) + +-set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") ++set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") + + add_executable (compizconfig_test_ccs_gnome_gsettings_integrated_setting + ${CMAKE_CURRENT_SOURCE_DIR}/compizconfig_test_ccs_gnome_gsettings_integrated_setting.cpp) +diff --git a/compizconfig/integration/gnome/tests/CMakeLists.txt b/compizconfig/integration/gnome/tests/CMakeLists.txt +index 30fd552..26fdff1 100644 +--- a/compizconfig/integration/gnome/tests/CMakeLists.txt ++++ b/compizconfig/integration/gnome/tests/CMakeLists.txt +@@ -8,7 +8,7 @@ include_directories (${CMAKE_CURRENT_SOURCE_DIR}/../../../gsettings/mocks) + include_directories (${CMAKE_SOURCE_DIR}/compizconfig/tests) + link_directories (${CMAKE_INSTALL_PREFIX}/lib) + +-set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") ++set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") + + add_library (compizconfig_ccs_mock_gnome_integrated_setting_composition + ${CMAKE_CURRENT_SOURCE_DIR}/compizconfig_ccs_mock_gnome_integrated_setting_composition.c) +diff --git a/compizconfig/libcompizconfig/tests/CMakeLists.txt b/compizconfig/libcompizconfig/tests/CMakeLists.txt +index a3a42f9..78446f4 100644 +--- a/compizconfig/libcompizconfig/tests/CMakeLists.txt ++++ b/compizconfig/libcompizconfig/tests/CMakeLists.txt +@@ -9,7 +9,7 @@ link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../mocks/libcompizconfig) + link_directories (${CMAKE_CURRENT_BINARY_DIR}/../../tests/) + link_directories (${CMAKE_CURRENT_BINARY_DIR}/../src/) + +-set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") ++set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") + + add_definitions (-DCONFIGDIR="${COMPIZCONFIG_CONFIG_DIR}") + +diff --git a/cmake/CompizCommon.cmake b/cmake/CompizCommon.cmake +index b567cfc..d06e86b 100644 +--- a/cmake/CompizCommon.cmake ++++ b/cmake/CompizCommon.cmake +@@ -54,7 +54,7 @@ set ( + + # Almost everything is a shared library now, so almost everything needs -fPIC + set (COMMON_FLAGS "-fPIC -Wall") +-set (COMMON_CXX_FLAGS "-std=c++11") ++set (COMMON_CXX_FLAGS "-std=c++14") + + option (COMPIZ_SUBOBJECT_LINKAGE_WARNINGS "Warn about subobject linkage" OFF) + if (NOT COMPIZ_SUBOBJECT_LINKAGE_WARNINGS) +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index fcf974f..997d050 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -16,7 +16,6 @@ add_subdirectory( servergrab ) + IF (COMPIZ_BUILD_TESTING) + add_subdirectory( privatescreen/tests ) + add_subdirectory( wrapsystem/tests ) +-add_subdirectory( plugin ) + add_subdirectory( option/tests ) + add_subdirectory( tests ) + ENDIF (COMPIZ_BUILD_TESTING) +diff --git a/tests/acceptance-tests/autopilot/CMakeLists.txt b/tests/acceptance-tests/autopilot/CMakeLists.txt +index 9999379..d6e1f7c 100644 +--- a/tests/acceptance-tests/autopilot/CMakeLists.txt ++++ b/tests/acceptance-tests/autopilot/CMakeLists.txt +@@ -7,6 +7,3 @@ set (COMPIZ_AUTOPILOT_ACCEPTANCE_TEST_LIBRARIES + + target_link_libraries (compiz_autopilot_acceptance_tests + ${COMPIZ_AUTOPILOT_ACCEPTANCE_TEST_LIBRARIES}) +- +-install (TARGETS compiz_autopilot_acceptance_tests +- RUNTIME DESTINATION ${exec_prefix}) diff --git a/testing/compiz/libgen.patch b/testing/compiz/libgen.patch new file mode 100644 index 00000000000..e191dfa6940 --- /dev/null +++ b/testing/compiz/libgen.patch @@ -0,0 +1,12 @@ +diff --git a/plugins/colorfilter/src/colorfilter.cpp b/plugins/colorfilter/src/colorfilter.cpp +index e2711fa..ca7eb41 100644 +--- a/plugins/colorfilter/src/colorfilter.cpp ++++ b/plugins/colorfilter/src/colorfilter.cpp +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + + using namespace boost::placeholders; + diff --git a/testing/compiz/opengl.patch b/testing/compiz/opengl.patch new file mode 100644 index 00000000000..c8a147da61c --- /dev/null +++ b/testing/compiz/opengl.patch @@ -0,0 +1,60 @@ +diff --git a/plugins/opengl/CMakeLists.txt b/plugins/opengl/CMakeLists.txt +index 63db12b..2fc6046 100644 +--- a/plugins/opengl/CMakeLists.txt ++++ b/plugins/opengl/CMakeLists.txt +@@ -21,7 +21,7 @@ include_directories (src/glxtfpbind/include) + else (USE_GLES) + find_package (OpenGL) + if (OPENGL_FOUND) +- compiz_plugin(opengl PLUGINDEPS composite LIBRARIES ${OPENGL_opengl_LIBRARY} ${OPENGL_glx_LIBRARY} ${INTERNAL_LIBRARIES} dl INCDIRS ${OPENGL_INCLUDE_DIR}) ++ compiz_plugin(opengl PLUGINDEPS composite LIBRARIES ${OPENGL_LIBRARIES} ${INTERNAL_LIBRARIES} dl INCDIRS ${OPENGL_INCLUDE_DIR}) + endif (OPENGL_FOUND) + endif (USE_GLES) + +diff --git a/cmake/plugin_extensions/CompizOpenGLFixups.cmake b/cmake/plugin_extensions/CompizOpenGLFixups.cmake +index 8691371..f230ceb 100644 +--- a/cmake/plugin_extensions/CompizOpenGLFixups.cmake ++++ b/cmake/plugin_extensions/CompizOpenGLFixups.cmake +@@ -4,7 +4,7 @@ if (${COMPIZ_CURRENT_PLUGIN} STREQUAL "opengl") + if (USE_GLES) + set (PKGCONFIG_LIBS "${OPENGL_egl_LIBRARY} -lGLESv2") + else (USE_GLES) +- set (PKGCONFIG_LIBS "${OPENGL_opengl_LIBRARY} ${OPENGL_glx_LIBRARY}") ++ set (PKGCONFIG_LIBS "${OPENGL_LIBRARIES}") + endif (USE_GLES) + endif (${COMPIZ_CURRENT_PLUGIN} STREQUAL "opengl") + +diff --git a/plugins/opengl/compiz-opengl.pc.in b/plugins/opengl/compiz-opengl.pc.in +index d8b0b79..12c55c7 100644 +--- a/plugins/opengl/compiz-opengl.pc.in ++++ b/plugins/opengl/compiz-opengl.pc.in +@@ -8,5 +8,5 @@ Description: Opengl compositing plugin for compiz + Version: @VERSION@ + + Requires: compiz compiz-composite +-Libs: @PKGCONFIG_LIBS@ -L${libdir} -lopengl ++Libs: -lGL -L${libdir} -lopengl + Cflags: @COMPIZ_CFLAGS@ -I${includedir}/compiz +\ No newline at end of file +diff --git a/plugins/opengl/src/screen.cpp b/plugins/opengl/src/screen.cpp +index fcf19ca..39bf966 100644 +--- a/plugins/opengl/src/screen.cpp ++++ b/plugins/opengl/src/screen.cpp +@@ -40,6 +40,7 @@ + + #include + #include ++#include + + using namespace boost::placeholders; + +@@ -1354,8 +1355,7 @@ GLScreen::GLScreen (CompScreen *s) : + GL::bufferAge = true; + } + +- priv->getProcAddress = (GL::GLXGetProcAddressProc) +- getProcAddress ("glXGetProcAddressARB"); ++ priv->getProcAddress = &glXGetProcAddressARB; + GL::bindTexImage = (GL::GLXBindTexImageProc) + getProcAddress ("glXBindTexImageEXT"); + GL::releaseTexImage = (GL::GLXReleaseTexImageProc) diff --git a/testing/compiz/protobuf.patch b/testing/compiz/protobuf.patch new file mode 100644 index 00000000000..3236f36a96e --- /dev/null +++ b/testing/compiz/protobuf.patch @@ -0,0 +1,12 @@ +diff --git a/compizconfig/libcompizconfig/src/CMakeLists.txt b/compizconfig/libcompizconfig/src/CMakeLists.txt +index 53d92f3..b740d06 100644 +--- a/compizconfig/libcompizconfig/src/CMakeLists.txt ++++ b/compizconfig/libcompizconfig/src/CMakeLists.txt +@@ -40,6 +40,7 @@ if (HAVE_PROTOBUF) + ${LIBCOMPIZCONFIG_FILES} + ${CMAKE_CURRENT_BINARY_DIR}/compizconfig.pb.cc + ) ++ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17") + set (LIBCOMPIZCONFIG_LIBRARIES + ${LIBCOMPIZCONFIG_LIBRARIES} + protobuf)