Skip to content

Commit 2234d03

Browse files
committed
see CHANGES.md
1 parent 36839f5 commit 2234d03

6 files changed

Lines changed: 9 additions & 56 deletions

File tree

CHANGES.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
> Important! `fs::TemporaryDirectory()` which is not used often was moved to `sys::TemporaryDirectory()` to avoid a circular dependency between SysAPI and FsAPI. This is a symantic versioning breaking change (though a small one)
66
7-
7+
- Updates to CMake test structure, added `API_test` target
88
- Improved performance of `File::get_line()`
99
- Add `StrackString<>::truncate()` method
1010
- Better test integration with super projects (`api_tests` target)

CMakeLists.txt

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,11 @@
11
cmake_minimum_required (VERSION 3.12)
22

3-
if(NOT SOS_SDK_PATH)
4-
set(SOS_SDK_PATH $ENV{SOS_SDK_PATH})
5-
endif()
6-
7-
set(CMAKE_MODULE_PATH ${SOS_SDK_PATH}/cmake)
8-
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_MODULE_PATH}/sos-toolchain.cmake)
9-
103
set(API_PROJECT_VERSION 1.1.0 CACHE INTERNAL "API version")
114
project(API
125
LANGUAGES CXX C
136
VERSION ${API_PROJECT_VERSION}
147
)
158

16-
include(sos-sdk)
17-
18-
19-
if(SOS_IS_ARM AND NOT DEFINED API_IS_SDK)
20-
include(StratifyOS)
21-
endif()
22-
23-
include(CTest)
249

2510
add_subdirectory(libraries/API API)
2611
add_subdirectory(libraries/VarAPI VarAPI)
@@ -33,7 +18,11 @@ add_subdirectory(libraries/TestAPI TestAPI)
3318

3419
option(API_IS_TEST "Enable test builds for API" OFF)
3520

21+
# Always available so dependency libs can use it
22+
add_custom_target(API_test ALL)
23+
3624
if(API_IS_TEST)
25+
include(CTest)
3726
add_subdirectory(tests tests)
3827
endif()
3928

libraries/API.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ function(api_add_test_executable NAME RAM_SIZE DEPENDENCIES)
111111
sos_sdk_app_target(RELEASE ${LOCAL_NAME} "unittest" release ${SOS_ARCH})
112112
message(STATUS "API UnitTest Executable ${RELEASE_TARGET}")
113113
add_executable(${RELEASE_TARGET})
114-
add_dependencies(api_tests ${RELEASE_TARGET})
114+
add_dependencies(API_test ${RELEASE_TARGET})
115115
target_sources(${RELEASE_TARGET}
116116
PRIVATE
117117
${CMAKE_CURRENT_SOURCE_DIR}/src/main.cpp

tests/API/api.cmake

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
macro(api_test_executable NAME DIRECTORIES)
33
sos_sdk_app_target(RELEASE ${NAME} "unittest" release ${SOS_ARCH})
44
add_executable(${RELEASE_TARGET})
5-
add_dependencies(api_tests ${RELEASE_TARGET})
5+
add_dependencies(API_test ${RELEASE_TARGET})
66

77
target_sources(${RELEASE_TARGET}
88
PRIVATE
@@ -55,6 +55,7 @@ macro(api_test_executable NAME DIRECTORIES)
5555

5656
if (SOS_IS_LINK)
5757
sos_sdk_add_test(${NAME} "unittest" release)
58+
set_tests_properties(${NAME}_release PROPERTIES DEPENDS API_Test)
5859
#sos_sdk_add_test(${NAME} "unittest" coverage)
5960
endif ()
6061

tests/CMakeLists.txt

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,5 @@
11
cmake_minimum_required(VERSION 3.12)
22

3-
if (NOT SOS_SDK_PATH)
4-
set(SOS_SDK_PATH $ENV{SOS_SDK_PATH})
5-
endif ()
6-
7-
set(CMAKE_MODULE_PATH ${SOS_SDK_PATH}/cmake)
8-
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_MODULE_PATH}/sos-toolchain.cmake)
9-
include(sos-sdk)
10-
11-
add_custom_target(api_tests)
123

134
add_subdirectory(API testsAPI)
145
add_subdirectory(ChronoAPI testsChronoAPI)
@@ -17,25 +8,4 @@ add_subdirectory(VarAPI testsVarAPI)
178
add_subdirectory(ThreadAPI testsThreadAPI)
189

1910

20-
add_custom_target(coverage
21-
DEPENDS coverage_test
22-
coverage_ThreadAPI_coverage_link
23-
coverage_FsAPI_coverage_link
24-
coverage_ChronoAPI_coverage_link
25-
coverage_VarAPI_coverage_link
26-
)
27-
28-
add_custom_target(coverage_test
29-
COMMAND ctest -VV
30-
DEPENDS clean_coverage
31-
)
32-
33-
add_custom_target(clean_coverage
34-
DEPENDS
35-
clean_coverage_ThreadAPI_coverage_link
36-
clean_coverage_FsAPI_coverage_link
37-
clean_coverage_ChronoAPI_coverage_link
38-
clean_coverage_VarAPI_coverage_link
39-
)
40-
4111

tests/ThreadAPI/CMakeLists.txt

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
11
#Copy this file to the application project folder as CMakeLists.txt
22
cmake_minimum_required(VERSION 3.12)
33

4-
if (NOT SOS_SDK_PATH)
5-
set(SOS_SDK_PATH $ENV{SOS_SDK_PATH})
6-
endif ()
7-
8-
set(CMAKE_MODULE_PATH ${SOS_SDK_PATH}/cmake)
9-
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_MODULE_PATH}/sos-toolchain.cmake)
10-
include(sos-sdk)
11-
124
get_filename_component(SOS_NAME ${CMAKE_CURRENT_LIST_DIR} NAME)
135
project(${SOS_NAME} CXX C)
146

@@ -27,3 +19,4 @@ set(DIRECTORIES
2719
api_test_executable(ThreadAPI "${DIRECTORIES}")
2820

2921

22+

0 commit comments

Comments
 (0)