forked from qt-creator/qt-creator
CMake: Small clean-up of CMake Wizards
* Updated CMake minimum version to 3.5 (Ubuntu LTS 16.04) * Lowercase commands * Used the target name instead of ${PROJECT_NAME}, which nobody uses in practice * No string quotes around the source filenames, which do not contain spaces Change-Id: Ide9b3eb85535213798c6c35e08624cae080ebd9d Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
committed by
Cristian Adam
parent
5ac71e485a
commit
36135aa261
@@ -1,7 +1,6 @@
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 3.1)
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
PROJECT(%{TestCaseName}
|
||||
LANGUAGES CXX)
|
||||
project(%{TestCaseName} LANGUAGES CXX)
|
||||
|
||||
@if "%{TestFrameWork}" == "QtTest"
|
||||
|
||||
@@ -10,38 +9,46 @@ find_package(Qt5Test REQUIRED)
|
||||
find_package(Qt5Gui REQUIRED)
|
||||
@endif
|
||||
|
||||
SET(CMAKE_AUTOMOC ON)
|
||||
SET(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
SET(CMAKE_CXX_STANDARD 11)
|
||||
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
ENABLE_TESTING()
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
add_executable(${PROJECT_NAME} %{TestCaseFileWithCppSuffix})
|
||||
add_test(${PROJECT_NAME} COMMAND ${PROJECT_NAME})
|
||||
set(CMAKE_AUTOUIC ON)
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTORCC ON)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
enable_testing()
|
||||
|
||||
add_executable(%{TestCaseName} %{TestCaseFileWithCppSuffix})
|
||||
add_test(%{TestCaseName} COMMAND %{TestCaseName})
|
||||
|
||||
@if "%{RequireGUI}" == "true"
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Gui Qt5::Test)
|
||||
target_link_libraries(%{TestCaseName} PRIVATE Qt5::Gui Qt5::Test)
|
||||
@else
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Test)
|
||||
target_link_libraries(%{TestCaseName} PRIVATE Qt5::Test)
|
||||
@endif
|
||||
|
||||
@endif
|
||||
@if "%{TestFrameWork}" == "QtQuickTest"
|
||||
find_package(Qt5QuickTest REQUIRED)
|
||||
|
||||
SET(CMAKE_AUTOMOC ON)
|
||||
SET(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
SET(CMAKE_CXX_STANDARD 11)
|
||||
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
ENABLE_TESTING()
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
set(CMAKE_AUTOUIC ON)
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTORCC ON)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
enable_testing()
|
||||
|
||||
# no need to copy around qml test files for shadow builds - just set the respective define
|
||||
add_definitions(-DQUICK_TEST_SOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
|
||||
add_executable(${PROJECT_NAME} %{MainCppName})
|
||||
add_test(${PROJECT_NAME} COMMAND ${PROJECT_NAME})
|
||||
add_executable(%{TestCaseName} %{MainCppName})
|
||||
add_test(%{TestCaseName} COMMAND %{TestCaseName})
|
||||
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::QuickTest)
|
||||
target_link_libraries(%{TestCaseName} PRIVATE Qt5::QuickTest)
|
||||
|
||||
@endif
|
||||
@if "%{TestFrameWork}" == "GTest"
|
||||
@@ -53,14 +60,14 @@ add_definitions(-DGTEST_LANGUAGE_CXX11)
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
if ($ENV{GOOGLETEST_DIR})
|
||||
SET(GOOGLETEST_DIR $ENV{GOOGLETEST_DIR})
|
||||
set(GOOGLETEST_DIR $ENV{GOOGLETEST_DIR})
|
||||
else ()
|
||||
message(WARNING "Using googletest src dir specified at Qt Creator wizard")
|
||||
SET(GOOGLETEST_DIR "%{GTestRepository}")
|
||||
set(GOOGLETEST_DIR "%{GTestRepository}")
|
||||
endif ()
|
||||
if (EXISTS ${GOOGLETEST_DIR})
|
||||
SET(GTestSrc ${GOOGLETEST_DIR}/googletest)
|
||||
SET(GMockSrc ${GOOGLETEST_DIR}/googlemock)
|
||||
set(GTestSrc ${GOOGLETEST_DIR}/googletest)
|
||||
set(GMockSrc ${GOOGLETEST_DIR}/googlemock)
|
||||
else ()
|
||||
message( FATAL_ERROR "No googletest src dir found - set GOOGLETEST_DIR to enable!")
|
||||
endif ()
|
||||
@@ -68,19 +75,22 @@ endif ()
|
||||
|
||||
include_directories(${GTestSrc} ${GTestSrc}/include ${GMockSrc} ${GMockSrc}/include)
|
||||
|
||||
add_executable(${PROJECT_NAME} %{MainCppName} %{TestCaseFileWithHeaderSuffix}
|
||||
add_executable(%{TestCaseName} %{MainCppName} %{TestCaseFileWithHeaderSuffix}
|
||||
${GTestSrc}/src/gtest-all.cc
|
||||
${GMockSrc}/src/gmock-all.cc)
|
||||
add_test(${PROJECT_NAME} COMMAND ${PROJECT_NAME})
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Threads::Threads)
|
||||
add_test(%{TestCaseName} COMMAND %{TestCaseName})
|
||||
target_link_libraries(%{TestCaseName} PRIVATE Threads::Threads)
|
||||
|
||||
@endif
|
||||
@if "%{TestFrameWork}" == "BoostTest"
|
||||
SET(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
ENABLE_TESTING()
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
add_executable(${PROJECT_NAME} %{MainCppName})
|
||||
add_test(${PROJECT_NAME} COMMAND ${PROJECT_NAME})
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
enable_testing()
|
||||
|
||||
add_executable(%{TestCaseName} %{MainCppName})
|
||||
add_test(%{TestCaseName} COMMAND %{TestCaseName})
|
||||
|
||||
if (DEFINED ENV{BOOST_INCLUDE_DIR})
|
||||
set(BOOST_INCLUDE_DIR $ENV{BOOST_INCLUDE_DIR})
|
||||
|
@@ -1,12 +1,17 @@
|
||||
cmake_minimum_required(VERSION 3.0.0)
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(%{ProjectName} VERSION 0.1 LANGUAGES CXX)
|
||||
project(%{ProjectName} LANGUAGES CXX)
|
||||
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
set(CMAKE_AUTOUIC ON)
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTORCC ON)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(Qt5Core)
|
||||
|
||||
add_executable(${PROJECT_NAME} "%{CppFileName}")
|
||||
|
||||
target_link_libraries(${PROJECT_NAME} Qt5::Core)
|
||||
add_executable(%{ProjectName} %{CppFileName})
|
||||
target_link_libraries(%{ProjectName} Qt5::Core)
|
||||
|
@@ -1,4 +1,4 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(%{ProjectName} LANGUAGES CXX)
|
||||
|
||||
@@ -15,21 +15,21 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
find_package(Qt5 COMPONENTS %{QtModuleUpperCase} REQUIRED)
|
||||
@endif
|
||||
|
||||
add_library(${PROJECT_NAME} %{JS: %{IsStatic} ? 'STATIC' : 'SHARED'}
|
||||
add_library(%{ProjectName} %{JS: %{IsStatic} ? 'STATIC' : 'SHARED'}
|
||||
@if '%{Type}' === 'shared'
|
||||
"%{GlobalHdrFileName}"
|
||||
%{GlobalHdrFileName}
|
||||
@endif
|
||||
"%{SrcFileName}"
|
||||
"%{HdrFileName}"
|
||||
%{SrcFileName}
|
||||
%{HdrFileName}
|
||||
@if %{IsQtPlugin}
|
||||
"%{PluginJsonFile}"
|
||||
%{PluginJsonFile}
|
||||
@endif
|
||||
)
|
||||
@if '%{QtModule}' != 'none'
|
||||
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::%{QtModuleUpperCase})
|
||||
target_link_libraries(%{ProjectName} PRIVATE Qt5::%{QtModuleUpperCase})
|
||||
@endif
|
||||
@if '%{IsShared}'
|
||||
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE %{LibraryDefine})
|
||||
target_compile_definitions(%{ProjectName} PRIVATE %{LibraryDefine})
|
||||
@endif
|
||||
|
@@ -1,4 +1,5 @@
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(%{ProjectName})
|
||||
add_executable(${PROJECT_NAME} "%{CFileName}")
|
||||
project(%{ProjectName} LANGUAGES C)
|
||||
|
||||
add_executable(%{ProjectName} %{CFileName})
|
||||
|
@@ -1,4 +1,8 @@
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(%{ProjectName})
|
||||
add_executable(${PROJECT_NAME} "%{CppFileName}")
|
||||
project(%{ProjectName} LANGUAGES CXX)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
add_executable(%{ProjectName} %{CppFileName})
|
||||
|
@@ -1,23 +1,28 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(%{ProjectName} LANGUAGES CXX)
|
||||
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
set(CMAKE_AUTOUIC ON)
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTORCC ON)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(Qt5 COMPONENTS Core Quick REQUIRED)
|
||||
|
||||
if(ANDROID)
|
||||
add_library(${PROJECT_NAME} SHARED "%{MainCppFileName}" "qml.qrc")
|
||||
add_library(%{ProjectName} SHARED %{MainCppFileName} qml.qrc)
|
||||
else()
|
||||
add_executable(${PROJECT_NAME} "%{MainCppFileName}" "qml.qrc")
|
||||
add_executable(%{ProjectName} %{MainCppFileName} qml.qrc)
|
||||
endif()
|
||||
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:QT_QML_DEBUG>)
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Core Qt5::Quick)
|
||||
target_compile_definitions(%{ProjectName}
|
||||
PRIVATE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:QT_QML_DEBUG>)
|
||||
target_link_libraries(%{ProjectName}
|
||||
PRIVATE Qt5::Core Qt5::Quick)
|
||||
|
||||
# QtCreator supports the following variables for Android, which are identical to qmake Android variables.
|
||||
# Check http://doc.qt.io/qt-5/deployment-android.html for more information.
|
||||
|
@@ -1,23 +1,25 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(%{ProjectName} LANGUAGES CXX)
|
||||
|
||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
set(CMAKE_AUTOUIC ON)
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTORCC ON)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(Qt5 COMPONENTS Widgets REQUIRED)
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
"%{MainFileName}"
|
||||
"%{SrcFileName}"
|
||||
"%{HdrFileName}"
|
||||
add_executable(%{ProjectName}
|
||||
%{MainFileName}
|
||||
%{SrcFileName}
|
||||
%{HdrFileName}
|
||||
@if %{GenerateForm}
|
||||
"%{FormFileName}"
|
||||
%{FormFileName}
|
||||
@endif
|
||||
)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Qt5::Widgets)
|
||||
target_link_libraries(%{ProjectName} PRIVATE Qt5::Widgets)
|
||||
|
Reference in New Issue
Block a user