cmake_minimum_required(VERSION 3.6) project(qsort) if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build, options are: Debug Release RelWithDebInfo MinSizeRel." FORCE) endif(NOT CMAKE_BUILD_TYPE) set(CMAKE_CXX_STANDARD 11) set(SOURCE_FILES main.cpp mqsort.cpp) add_executable(qsort ${SOURCE_FILES}) add_custom_target(test-all COMMAND ${CMAKE_BINARY_DIR}/qsort i 100000 100 COMMAND ${CMAKE_BINARY_DIR}/qsort l 100000 100 COMMAND ${CMAKE_BINARY_DIR}/qsort f 100000 100 COMMAND ${CMAKE_BINARY_DIR}/qsort d 100000 100 DEPENDS qsort)