mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-01 19:30:13 -06:00
GHS: Update tests and notes
-- add new tests for custom commands -- minor test cleanup Fixes #15995 Fixes #18909 Fixes #15902
This commit is contained in:
5
Help/release/dev/ghs-custom-commands.rst
Normal file
5
Help/release/dev/ghs-custom-commands.rst
Normal file
@@ -0,0 +1,5 @@
|
||||
ghs_custom_commands
|
||||
-------------------
|
||||
|
||||
* The :generator:`Green Hills MULTI` generator now supports
|
||||
:command:`add_custom_command` and :command:`add_custom_target`
|
||||
@@ -2391,6 +2391,9 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
|
||||
add_test_GhsMulti(compiler_options_kernel GhsMultiCompilerOptions Kernel "-DRUN_TEST=KERNEL_FLAGS -DRUN_TEST_BUILD_TYPE=DEBUG")
|
||||
add_test_GhsMulti(try_compile_copy GhsMultiCopyFile "" "")
|
||||
add_test_GhsMulti(ghs_platform GhsMultiPlatform "" "")
|
||||
add_test_GhsMulti(custom_target GhsMultiCustomTarget "" "")
|
||||
add_test_GhsMulti(dep_order GhsMultiDepOrder "" "")
|
||||
add_test_GhsMulti(external_project GhsMultiExternalProject "" "")
|
||||
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/GhsMulti/${ghs_config_name}")
|
||||
#unset ghs config variables
|
||||
unset(ghs_config_name)
|
||||
|
||||
110
Tests/GhsMulti/GhsMultiCustomTarget/CMakeLists.txt
Normal file
110
Tests/GhsMulti/GhsMultiCustomTarget/CMakeLists.txt
Normal file
@@ -0,0 +1,110 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
|
||||
|
||||
project(test C)
|
||||
|
||||
# Tests assume no previous builds in the build directory
|
||||
file(REMOVE_RECURSE ${CMAKE_CURRENT_BINARY_DIR}/build)
|
||||
|
||||
macro (test_output)
|
||||
if (BUILD_OUTPUT STREQUAL EXPECTED_LINES )
|
||||
message("Build OK")
|
||||
else()
|
||||
message("BUILD_OUTPUT")
|
||||
foreach(Line IN LISTS BUILD_OUTPUT)
|
||||
message("${Line}")
|
||||
endforeach()
|
||||
message("EXPECTED_LINES")
|
||||
foreach(Line IN LISTS EXPECTED_LINES)
|
||||
message("${Line}")
|
||||
endforeach()
|
||||
message(SEND_ERROR "Build KO")
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
message("Copy project")
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/src/CMakeLists.txt COPYONLY)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/exe1.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/lib1.c
|
||||
DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/src
|
||||
)
|
||||
|
||||
message("Building ALL target")
|
||||
try_compile(RESULT
|
||||
${CMAKE_CURRENT_BINARY_DIR}/build
|
||||
${CMAKE_CURRENT_BINARY_DIR}/src
|
||||
test
|
||||
CMAKE_FLAGS
|
||||
-DCMAKE_EXE_LINKER_FLAGS=${CMAKE_EXE_LINKER_FLAGS}
|
||||
OUTPUT_VARIABLE BUILD_OUTPUT)
|
||||
|
||||
message("Output from build:\n${BUILD_OUTPUT}")
|
||||
|
||||
#filter outputs
|
||||
string(REPLACE "\r" "" BUILD_OUTPUT "${BUILD_OUTPUT}")
|
||||
string(REPLACE "\n" ";" BUILD_OUTPUT "${BUILD_OUTPUT}")
|
||||
list(FILTER BUILD_OUTPUT INCLUDE REGEX "^.*CT:")
|
||||
|
||||
unset(EXPECTED_LINES)
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_empty_prebuild")
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_empty_postbuild")
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_cmd")
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_cmd_prebuild")
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_cmd_postbuild")
|
||||
|
||||
test_output()
|
||||
|
||||
message("Building target_update_files target")
|
||||
try_compile(RESULT
|
||||
${CMAKE_CURRENT_BINARY_DIR}/build
|
||||
${CMAKE_CURRENT_BINARY_DIR}/src
|
||||
test target_update_files
|
||||
CMAKE_FLAGS
|
||||
-DCMAKE_EXE_LINKER_FLAGS=${CMAKE_EXE_LINKER_FLAGS}
|
||||
OUTPUT_VARIABLE BUILD_OUTPUT)
|
||||
|
||||
message("Output from build:\n${BUILD_OUTPUT}")
|
||||
|
||||
#filter outputs
|
||||
string(REPLACE "\r" "" BUILD_OUTPUT "${BUILD_OUTPUT}")
|
||||
string(REPLACE "\n" ";" BUILD_OUTPUT "${BUILD_OUTPUT}")
|
||||
list(FILTER BUILD_OUTPUT INCLUDE REGEX "^.*CT:")
|
||||
|
||||
unset(EXPECTED_LINES)
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_empty_prebuild")
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_empty_postbuild")
|
||||
list(APPEND EXPECTED_LINES "CT: generate C file another_file")
|
||||
list(APPEND EXPECTED_LINES "CT: generate text file dependsA")
|
||||
list(APPEND EXPECTED_LINES "CT: generate text file out_of_order_dep")
|
||||
list(APPEND EXPECTED_LINES "CT: generate text files A, B, and C")
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_update_files")
|
||||
|
||||
test_output()
|
||||
|
||||
message("Rerun target_update_files target")
|
||||
try_compile(RESULT
|
||||
${CMAKE_CURRENT_BINARY_DIR}/build
|
||||
${CMAKE_CURRENT_BINARY_DIR}/src
|
||||
test target_update_files
|
||||
CMAKE_FLAGS
|
||||
-DCMAKE_EXE_LINKER_FLAGS=${CMAKE_EXE_LINKER_FLAGS}
|
||||
OUTPUT_VARIABLE BUILD_OUTPUT)
|
||||
|
||||
message("Output from build:\n${BUILD_OUTPUT}")
|
||||
|
||||
#filter outputs
|
||||
string(REPLACE "\r" "" BUILD_OUTPUT "${BUILD_OUTPUT}")
|
||||
string(REPLACE "\n" ";" BUILD_OUTPUT "${BUILD_OUTPUT}")
|
||||
list(FILTER BUILD_OUTPUT INCLUDE REGEX "^.*CT:")
|
||||
|
||||
unset(EXPECTED_LINES)
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_empty_prebuild")
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_empty_postbuild")
|
||||
list(APPEND EXPECTED_LINES "CT: generate text files A, B, and C")
|
||||
list(APPEND EXPECTED_LINES "CT: Processing target_update_files")
|
||||
|
||||
test_output()
|
||||
108
Tests/GhsMulti/GhsMultiCustomTarget/CMakeLists.txt.in
Normal file
108
Tests/GhsMulti/GhsMultiCustomTarget/CMakeLists.txt.in
Normal file
@@ -0,0 +1,108 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
|
||||
|
||||
project(test C)
|
||||
|
||||
if(CMAKE_C_COMPILER_ID STREQUAL "GHS")
|
||||
add_link_options("-non_shared")
|
||||
endif()
|
||||
|
||||
add_library(lib1 lib1.c)
|
||||
|
||||
set(TEST_MISSING_TARGET_SRC 0)
|
||||
set(TEST_MISSING_TARGET_DEP 0)
|
||||
set(TEST_MISSING_DEP 0)
|
||||
set(TEST_DEP_CYCLE 0)
|
||||
|
||||
add_executable(exe1 exe1.c)
|
||||
target_link_libraries(exe1 lib1)
|
||||
|
||||
add_custom_target(target_cmd ALL
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "target_cmd" > target_cmd
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "target_cmd_extra" > target_cmd_extra.txt
|
||||
BYPRODUCTS target_cmd target_cmd_extra.txt
|
||||
COMMENT "CT: Processing target_cmd")
|
||||
|
||||
add_custom_command(TARGET target_cmd PRE_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "target_cmd_prebuild" > target_cmd_prebuild.txt
|
||||
BYPRODUCTS target_cmd_prebuild.txt
|
||||
COMMENT "CT: Processing target_cmd_prebuild")
|
||||
#event does not run for custom targets
|
||||
add_custom_command(TARGET target_cmd PRE_LINK
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "executing target_cmd_prelink commands"
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "target_cmd_prelink" > target_cmd_prelink.txt
|
||||
BYPRODUCTS target_cmd_prelink.txt
|
||||
COMMENT "CT: Processing target_cmd_prelink")
|
||||
add_custom_command(TARGET target_cmd POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "executing target_cmd_postbuild commands"
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "target_cmd_postbuild" > target_cmd_postbuild.txt
|
||||
BYPRODUCTS target_cmd_postbuild.txt
|
||||
COMMENT "CT: Processing target_cmd_postbuild")
|
||||
|
||||
add_custom_target(target_empty ALL
|
||||
COMMENT "CT: Processing target_empty")
|
||||
|
||||
add_custom_command(TARGET target_empty PRE_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "target_empty_prebuild" > target_empty_prebuild.txt
|
||||
BYPRODUCTS target_empty_prebuild.txt
|
||||
COMMENT "CT: Processing target_empty_prebuild")
|
||||
add_custom_command(TARGET target_empty POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "target_empty_postbuild" > target_empty_postbuild.txt
|
||||
BYPRODUCTS target_empty_postbuild.txt
|
||||
COMMENT "CT: Processing target_empty_postbuild")
|
||||
|
||||
add_dependencies(target_cmd target_empty)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT out_of_order_dep.txt
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "out_of_order_dep" > out_of_order_dep.txt
|
||||
COMMENT "CT: generate text file out_of_order_dep"
|
||||
DEPENDS dependsA.txt
|
||||
)
|
||||
|
||||
if(TEST_MISSING_TARGET_SRC)
|
||||
set(SRC_FILE does_not_exist)
|
||||
endif()
|
||||
if(TEST_MISSING_TARGET_DEP)
|
||||
set(DEP_FILE does_not_exist)
|
||||
endif()
|
||||
|
||||
add_custom_target(target_update_files
|
||||
DEPENDS genc_do_not_list.txt ${DEP_FILE}
|
||||
SOURCES gena.txt genb.txt another_file.c ${SRC_FILE}
|
||||
BYPRODUCTS junkit.txt
|
||||
COMMAND ${CMAKE_COMMAND} -E copy another_file.c junkit.txt
|
||||
COMMENT "CT: Processing target_update_files")
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT force_rebuild gena.txt genb.txt genc_do_not_list.txt
|
||||
COMMAND ${CMAKE_COMMAND} -E copy dependsA.txt gena.txt
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "genb" > genb.txt
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "genc" > genc_do_not_list.txt
|
||||
DEPENDS out_of_order_dep.txt dependsA.txt
|
||||
COMMENT "CT: generate text files A, B, and C"
|
||||
)
|
||||
|
||||
if(TEST_MISSING_DEP)
|
||||
set(MISSING_DEP MISSING_DEP)
|
||||
endif()
|
||||
if(TEST_DEP_CYCLE)
|
||||
set(DEP_CYCLE out_of_order_dep.txt)
|
||||
endif()
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT dependsA.txt
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "dependsA" > dependsA.txt
|
||||
DEPENDS ${MISSING_DEP} ${DEP_CYCLE} another_file.c
|
||||
COMMENT "CT: generate text file dependsA"
|
||||
)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT another_file.c
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "//auto-gen file" > another_file.c
|
||||
COMMENT "CT: generate C file another_file"
|
||||
)
|
||||
|
||||
add_dependencies(target_update_files target_empty)
|
||||
5
Tests/GhsMulti/GhsMultiCustomTarget/exe1.c
Normal file
5
Tests/GhsMulti/GhsMultiCustomTarget/exe1.c
Normal file
@@ -0,0 +1,5 @@
|
||||
extern int func(void);
|
||||
int main(void)
|
||||
{
|
||||
return func();
|
||||
}
|
||||
4
Tests/GhsMulti/GhsMultiCustomTarget/lib1.c
Normal file
4
Tests/GhsMulti/GhsMultiCustomTarget/lib1.c
Normal file
@@ -0,0 +1,4 @@
|
||||
int func(void)
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
12
Tests/GhsMulti/GhsMultiDepOrder/CMakeLists.txt
Normal file
12
Tests/GhsMulti/GhsMultiDepOrder/CMakeLists.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
|
||||
|
||||
project(test C)
|
||||
|
||||
#set_property( GLOBAL PROPERTY GLOBAL_DEPENDS_DEBUG_MODE 1)
|
||||
add_subdirectory(exec)
|
||||
add_subdirectory(lib)
|
||||
add_subdirectory(protolib)
|
||||
add_dependencies(lib1 proto)
|
||||
11
Tests/GhsMulti/GhsMultiDepOrder/exec/CMakeLists.txt
Normal file
11
Tests/GhsMulti/GhsMultiDepOrder/exec/CMakeLists.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
|
||||
|
||||
add_executable(exe1 exe1.c)
|
||||
target_link_libraries(exe1 lib1)
|
||||
target_include_directories(exe1 PRIVATE "${test_BINARY_DIR}")
|
||||
if(CMAKE_C_COMPILER_ID STREQUAL "GHS")
|
||||
target_link_options(exe1 PRIVATE "-non_shared")
|
||||
endif()
|
||||
8
Tests/GhsMulti/GhsMultiDepOrder/exec/exe1.c
Normal file
8
Tests/GhsMulti/GhsMultiDepOrder/exec/exe1.c
Normal file
@@ -0,0 +1,8 @@
|
||||
#include "lib1.h"
|
||||
#include "p.h"
|
||||
|
||||
int main(void)
|
||||
{
|
||||
return func1() + func2() + func3() + func1p() + func2p() + func3p() +
|
||||
PROTO1 + PROTO2 + PROTO3;
|
||||
}
|
||||
17
Tests/GhsMulti/GhsMultiDepOrder/lib/CMakeLists.txt
Normal file
17
Tests/GhsMulti/GhsMultiDepOrder/lib/CMakeLists.txt
Normal file
@@ -0,0 +1,17 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
add_library(lib1 STATIC
|
||||
func1.c lib1.h
|
||||
"${test_BINARY_DIR}/protolib/proto1.c"
|
||||
"${test_BINARY_DIR}/protolib/proto1.h")
|
||||
set_source_files_properties(
|
||||
"${test_BINARY_DIR}/protolib/proto1.c"
|
||||
"${test_BINARY_DIR}/protolib/proto1.h"
|
||||
PROPERTIES GENERATED 1)
|
||||
target_include_directories(lib1 PRIVATE "${test_BINARY_DIR}/protolib"
|
||||
PUBLIC .)
|
||||
add_custom_command( TARGET lib1 POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy "${test_BINARY_DIR}/protolib/proto1.h" "${test_BINARY_DIR}/p.h"
|
||||
COMMENT "Copy ${test_BINARY_DIR}/protolib/proto1.h ${test_BINARY_DIR}/p.h"
|
||||
BYPRODUCTS "${test_BINARY_DIR}/p.h")
|
||||
17
Tests/GhsMulti/GhsMultiDepOrder/lib/func1.c
Normal file
17
Tests/GhsMulti/GhsMultiDepOrder/lib/func1.c
Normal file
@@ -0,0 +1,17 @@
|
||||
#include "lib1.h"
|
||||
#include "proto1.h"
|
||||
|
||||
int func1(void)
|
||||
{
|
||||
return 1 + PROTO1;
|
||||
}
|
||||
|
||||
int func2(void)
|
||||
{
|
||||
return 2 + PROTO2;
|
||||
}
|
||||
|
||||
int func3(void)
|
||||
{
|
||||
return 3 + PROTO3;
|
||||
}
|
||||
3
Tests/GhsMulti/GhsMultiDepOrder/lib/lib1.h
Normal file
3
Tests/GhsMulti/GhsMultiDepOrder/lib/lib1.h
Normal file
@@ -0,0 +1,3 @@
|
||||
extern int func1(void);
|
||||
extern int func2(void);
|
||||
extern int func3(void);
|
||||
28
Tests/GhsMulti/GhsMultiDepOrder/protolib/CMakeLists.txt
Normal file
28
Tests/GhsMulti/GhsMultiDepOrder/protolib/CMakeLists.txt
Normal file
@@ -0,0 +1,28 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
|
||||
|
||||
add_custom_target(proto ALL
|
||||
DEPENDS proto1.c
|
||||
proto1.h
|
||||
SOURCES
|
||||
${test_SOURCE_DIR}/protolib/proto1.c.in
|
||||
${test_SOURCE_DIR}/protolib/proto1.h.in
|
||||
COMMENT "Creating proto files")
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT proto1.c
|
||||
COMMAND ${CMAKE_COMMAND} -E copy
|
||||
${test_SOURCE_DIR}/protolib/proto1.c.in proto1.c
|
||||
DEPENDS ${test_SOURCE_DIR}/protolib/proto1.c.in
|
||||
COMMENT "generate proto C files"
|
||||
)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT proto1.h
|
||||
COMMAND ${CMAKE_COMMAND} -E copy
|
||||
${test_SOURCE_DIR}/protolib/proto1.h.in proto1.h
|
||||
DEPENDS ${test_SOURCE_DIR}/protolib/proto1.h.in
|
||||
COMMENT "generate proto H files"
|
||||
)
|
||||
16
Tests/GhsMulti/GhsMultiDepOrder/protolib/proto1.c.in
Normal file
16
Tests/GhsMulti/GhsMultiDepOrder/protolib/proto1.c.in
Normal file
@@ -0,0 +1,16 @@
|
||||
#include "proto1.h"
|
||||
|
||||
int func1p(void)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
int func2p(void)
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
|
||||
int func3p(void)
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
7
Tests/GhsMulti/GhsMultiDepOrder/protolib/proto1.h.in
Normal file
7
Tests/GhsMulti/GhsMultiDepOrder/protolib/proto1.h.in
Normal file
@@ -0,0 +1,7 @@
|
||||
extern int func1p(void);
|
||||
extern int func2p(void);
|
||||
extern int func3p(void);
|
||||
|
||||
#define PROTO1 0x1
|
||||
#define PROTO2 0x2
|
||||
#define PROTO3 0x3
|
||||
14
Tests/GhsMulti/GhsMultiExternalProject/CMakeLists.txt
Normal file
14
Tests/GhsMulti/GhsMultiExternalProject/CMakeLists.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
|
||||
|
||||
project(test C)
|
||||
include(ExternalProject)
|
||||
|
||||
ExternalProject_Add(another_project
|
||||
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/empty
|
||||
BINARY_DIR empty_build
|
||||
INSTALL_COMMAND ""
|
||||
TEST_COMMAND ""
|
||||
)
|
||||
@@ -0,0 +1,8 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
|
||||
|
||||
project(empty NONE)
|
||||
|
||||
message("EMPTY PROJECT")
|
||||
@@ -1,4 +1,3 @@
|
||||
add_executable(App Main.c)
|
||||
target_include_directories(App PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../Lib)
|
||||
target_link_libraries(App Lib)
|
||||
target_compile_options(App PUBLIC "-non_shared")
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
add_library(Lib HelperFun.c HelperFun.h)
|
||||
target_include_directories(Lib PUBLIC .)
|
||||
|
||||
@@ -18,3 +18,4 @@ target_link_options(kernel PRIVATE -kernel)
|
||||
|
||||
# create monolith INTEGRITY application
|
||||
add_executable(monolith test.int)
|
||||
add_dependencies(monolith vas)
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
int main(void)
|
||||
{
|
||||
return -42;
|
||||
}
|
||||
@@ -13,7 +13,7 @@ endif()
|
||||
|
||||
if(RUN_TEST STREQUAL "SINGLE_EXEC")
|
||||
add_executable(exe1 exe.c)
|
||||
set(targets_to_install ${targets_to_install} exe1)
|
||||
set(targets_to_install exe1)
|
||||
endif()
|
||||
|
||||
if(RUN_TEST STREQUAL "SINGLE_EXEC_RENAMED")
|
||||
@@ -22,7 +22,7 @@ if(RUN_TEST STREQUAL "SINGLE_EXEC_RENAMED")
|
||||
set_property(TARGET exe1 PROPERTY RUNTIME_OUTPUT_DIRECTORY ${name}_bin_$<CONFIG>)
|
||||
set_property(TARGET exe1 PROPERTY OUTPUT_NAME ${name}_$<CONFIG>)
|
||||
set_property(TARGET exe1 PROPERTY SUFFIX .bin)
|
||||
set(targets_to_install ${targets_to_install} exe1)
|
||||
set(targets_to_install exe1)
|
||||
endif()
|
||||
|
||||
if(RUN_TEST STREQUAL "EXEC_AND_LIB")
|
||||
@@ -33,7 +33,7 @@ if(RUN_TEST STREQUAL "EXEC_AND_LIB")
|
||||
|
||||
add_executable(exe1 exe1.c)
|
||||
target_link_libraries(exe1 lib1)
|
||||
set(targets_to_install ${targets_to_install} exe1 lib1)
|
||||
set(targets_to_install exe1 lib1)
|
||||
endif()
|
||||
|
||||
install(TARGETS ${targets_to_install}
|
||||
|
||||
@@ -5,8 +5,6 @@ cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
|
||||
|
||||
project(test C)
|
||||
|
||||
add_custom_target(testTarget ALL echo this is a test)
|
||||
|
||||
add_library(sharedLib SHARED file.c)
|
||||
|
||||
add_library(moduleLib MODULE file.c)
|
||||
|
||||
Reference in New Issue
Block a user