From 1119b23048a58fd61199f9ac950b689ca34b036b Mon Sep 17 00:00:00 2001 From: Diogo Pereira Date: Wed, 24 Jan 2018 20:28:36 +0000 Subject: x11-misc/j4-dmenu-desktop: new package Closes: https://github.com/gentoo/gentoo/pull/6933 Package-Manager: Portage-2.3.19, Repoman-2.3.6 --- .../files/j4-dmenu-desktop-2.16_system_catch.patch | 183 +++++++++++++++++++++ 1 file changed, 183 insertions(+) create mode 100644 x11-misc/j4-dmenu-desktop/files/j4-dmenu-desktop-2.16_system_catch.patch (limited to 'x11-misc/j4-dmenu-desktop/files/j4-dmenu-desktop-2.16_system_catch.patch') diff --git a/x11-misc/j4-dmenu-desktop/files/j4-dmenu-desktop-2.16_system_catch.patch b/x11-misc/j4-dmenu-desktop/files/j4-dmenu-desktop-2.16_system_catch.patch new file mode 100644 index 000000000000..7becf7d3f75a --- /dev/null +++ b/x11-misc/j4-dmenu-desktop/files/j4-dmenu-desktop-2.16_system_catch.patch @@ -0,0 +1,183 @@ +From 210926d23d0f40277b549ca490f876f93c3ffb6d Mon Sep 17 00:00:00 2001 +From: Diogo Pereira +Date: Wed, 24 Jan 2018 16:44:03 +0000 +Subject: [PATCH 1/3] CMake: simplify GCC version check + +--- + CMakeLists.txt | 18 +++--------------- + 1 file changed, 3 insertions(+), 15 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 392db54..78a71c0 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -2,21 +2,9 @@ cmake_minimum_required(VERSION 2.8) + + project(j4-dmenu) + +-exec_program( +- ${CMAKE_CXX_COMPILER} +- ARGS --version +- OUTPUT_VARIABLE _compiler_output +- ) +-string(REGEX REPLACE "(\n.*$)" "" cxx_compiler_version "${_compiler_output}") +-string(REGEX REPLACE "([^0-9.])|([0-9.][^0-9.])" "" cxx_compiler_version "${cxx_compiler_version}") +- +-if(CMAKE_COMPILER_IS_GNUCXX) +- if(${cxx_compiler_version} VERSION_LESS "4.7.0") +- set(CXX_OPT "-std=c++0x") +- else() +- set(CXX_OPT "-std=c++11") +- endif() +-elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang") ++if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.7") ++ set(CXX_OPT "-std=c++0x") ++else() + set(CXX_OPT "-std=c++11") + endif() + + +From e6e05d0170554246118c2dffe5395a982e1af250 Mon Sep 17 00:00:00 2001 +From: Diogo Pereira +Date: Wed, 24 Jan 2018 16:53:39 +0000 +Subject: [PATCH 2/3] CMake: clean up and reorder CMAKE_CXX_FLAGS + +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 78a71c0..1b3f2b0 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -8,7 +8,7 @@ else() + set(CXX_OPT "-std=c++11") + endif() + +-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_OPT} ${CXX_OPT} -Wall -pedantic -Wextra -O2") ++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_OPT} -Wall -Wextra -pedantic -O2") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG") + + if(NOT DEFINED NO_TESTS) + +From 7be5116d0d6d80522517a58bb6e45ca1cdcd9612 Mon Sep 17 00:00:00 2001 +From: Diogo Pereira +Date: Wed, 24 Jan 2018 17:51:28 +0000 +Subject: [PATCH 3/3] CMake: add option to disable downloading Catch + +--- + CMakeLists.txt | 90 ++++++++++++++++++++++++++++++---------------------------- + 1 file changed, 47 insertions(+), 43 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 1b3f2b0..17605e8 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -2,6 +2,9 @@ cmake_minimum_required(VERSION 2.8) + + project(j4-dmenu) + ++option(WITH_TESTS "Build and run tests" ON) ++option(WITH_GIT_CATCH "Use a Git checkout of Catch to build the tests" ON) ++ + if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.7") + set(CXX_OPT "-std=c++0x") + else() +@@ -11,53 +14,54 @@ endif() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_OPT} -Wall -Wextra -pedantic -O2") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG") + +-if(NOT DEFINED NO_TESTS) +- include(ExternalProject) +- +- ExternalProject_Add( +- catch +- PREFIX ${CMAKE_BINARY_DIR}/catch +- GIT_TAG Catch1.x +- GIT_REPOSITORY https://github.com/catchorg/Catch2 +- TIMEOUT 10 +- UPDATE_COMMAND git pull +- CONFIGURE_COMMAND "" +- BUILD_COMMAND "" +- INSTALL_COMMAND "" +- LOG_DOWNLOAD ON +- ) +- +- # Expose required variable (CATCH_INCLUDE_DIR) to parent scope +- ExternalProject_Get_Property(catch source_dir) +- set(CATCH_INCLUDE_DIR ${source_dir}/include CACHE INTERNAL "Path to include folder for Catch") +- +- # Includes Catch in the project: +- #add_subdirectory(${EXT_PROJECTS_DIR}/catch) +- include_directories(${CATCH_INCLUDE_DIR} ${COMMON_INCLUDES}) +- +- add_definitions(-DTEST_FILES="${CMAKE_CURRENT_SOURCE_DIR}/test_files/") +- ++if(WITH_TESTS) + enable_testing(true) +- + add_test( +- NAME j4-dmenu-tests +- COMMAND j4-dmenu-tests +- ) +- ++ NAME j4-dmenu-tests ++ COMMAND j4-dmenu-tests ++ ) + add_executable( +- j4-dmenu-tests +- src/Test.cc +- src/TestApplication.cc +- src/TestApplicationRunner.cc +- src/TestSearchPath.cc +- src/TestLocaleSuffixes.cc +- src/TestFileFinder.cc +- src/TestFormatters.cc +- ) +- +- add_dependencies(j4-dmenu-tests catch) +-endif(NOT DEFINED NO_TESTS) ++ j4-dmenu-tests ++ src/Test.cc ++ src/TestApplication.cc ++ src/TestApplicationRunner.cc ++ src/TestSearchPath.cc ++ src/TestLocaleSuffixes.cc ++ src/TestFileFinder.cc ++ src/TestFormatters.cc ++ ) ++ add_definitions(-DTEST_FILES="${CMAKE_CURRENT_SOURCE_DIR}/test_files/") + ++ if(WITH_GIT_CATCH) ++ include(ExternalProject) ++ ExternalProject_Add( ++ catch ++ PREFIX ${CMAKE_BINARY_DIR}/catch ++ GIT_TAG Catch1.x ++ GIT_REPOSITORY https://github.com/catchorg/Catch2 ++ TIMEOUT 10 ++ UPDATE_COMMAND git pull ++ CONFIGURE_COMMAND "" ++ BUILD_COMMAND "" ++ INSTALL_COMMAND "" ++ LOG_DOWNLOAD ON ++ ) ++ add_dependencies(j4-dmenu-tests catch) ++ ++ # Expose required variable (CATCH_INCLUDE_DIR) to parent scope ++ ExternalProject_Get_Property(catch source_dir) ++ set(CATCH_INCLUDE_DIR ${source_dir}/include CACHE INTERNAL "Path to include folder for Catch") ++ else() ++ # Use system-installed version of Catch ++ find_path(CATCH_INCLUDE_DIR catch.hpp PATH_SUFFIXES catch) ++ if(NOT CATCH_INCLUDE_DIR) ++ message(FATAL_ERROR "Catch include directory not found") ++ endif() ++ endif(WITH_GIT_CATCH) ++ ++ # Include Catch in the project ++ include_directories(${CATCH_INCLUDE_DIR} ${COMMON_INCLUDES}) ++endif(WITH_TESTS) + + add_executable( + j4-dmenu-desktop -- cgit v1.2.3-65-gdbad