Skip to content

Commit 272a06f

Browse files
Set up link order correctly (I hope)
1 parent 2942050 commit 272a06f

File tree

8 files changed

+46
-41
lines changed

8 files changed

+46
-41
lines changed

connectivity/netsocket/tests/TESTS/CMakeLists.txt

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,37 @@ if("TARGET_STM32H7" IN_LIST MBED_TARGET_DEFINITIONS)
1212
endif()
1313

1414
add_subdirectory(common)
15+
16+
# List of libraries for all netsocket tests to link.
17+
# We have to be a bit careful here, because, in order to build tests with both lwip and nanostack, we have
18+
# configured neither of the network stacks to provide the default implementation.
19+
# Instead, the defaults are contained in the mbed-netsocket-tests-use-xxx libraries under common.
20+
# Where we need to be careful is, any .a files that call OnboardNetworkStack::get_default_instance() need
21+
# to appear BEFORE mbed-netsocket-tests-use-xxx on the link line, or you will get an undefined reference
22+
# error. In CMake, there's no way to specify this kind of dependency except in the link line to the final
23+
# executable. This means we need to list them out explicitly here.
24+
set(MBED_NETSOCKET_TEST_COMMON_LIBS
25+
mbed-netsocket-tests-common-inc)
26+
27+
# Pull in cellular if cellular is the default network interface (used by NetworkInterfaceDefaults.cpp)
28+
if("MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE=CELLULAR" IN_LIST MBED_CONFIG_DEFINITIONS)
29+
list(APPEND MBED_NETSOCKET_TEST_COMMON_LIBS mbed-cellular)
30+
endif()
31+
32+
# Similarly if mesh networking is used bring in that library
33+
if("MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE=MESH" IN_LIST MBED_CONFIG_DEFINITIONS)
34+
list(APPEND MBED_NETSOCKET_TEST_COMMON_LIBS mbed-nanostack-mbed_mesh_api)
35+
endif()
36+
37+
# Similarly if wifi networking is used bring in that library
38+
if("MBED_CONF_TARGET_NETWORK_DEFAULT_INTERFACE_TYPE=WIFI" IN_LIST MBED_CONFIG_DEFINITIONS)
39+
list(APPEND MBED_NETSOCKET_TEST_COMMON_LIBS mbed-wifi)
40+
endif()
41+
42+
list(APPEND MBED_NETSOCKET_TEST_COMMON_LIBS mbed-netsocket-api)
43+
44+
set(MBED_NETSOCKET_TEST_COMMON_LIBS_LWIPSTACK ${MBED_NETSOCKET_TEST_COMMON_LIBS} mbed-netsocket-tests-use-lwipstack)
45+
set(MBED_NETSOCKET_TEST_COMMON_LIBS_NANOSTACK ${MBED_NETSOCKET_TEST_COMMON_LIBS} mbed-netsocket-tests-use-nanostack)
46+
1547
add_subdirectory(netsocket)
1648
add_subdirectory(network)

connectivity/netsocket/tests/TESTS/netsocket/dns/CMakeLists.txt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,7 @@ mbed_greentea_add_test(
3333
TEST_SOURCES
3434
${TEST_SOURCE_LIST}
3535
TEST_REQUIRED_LIBS
36-
mbed-netsocket-tests-common-inc
37-
mbed-netsocket-api
38-
mbed-netsocket-tests-use-lwipstack
36+
${MBED_NETSOCKET_TEST_COMMON_LIBS_LWIPSTACK}
3937
TEST_SKIPPED
4038
${TEST_SKIPPED}
4139
)
@@ -46,9 +44,7 @@ mbed_greentea_add_test(
4644
TEST_SOURCES
4745
${TEST_SOURCE_LIST}
4846
TEST_REQUIRED_LIBS
49-
mbed-netsocket-tests-common-inc
50-
mbed-netsocket-api
51-
mbed-netsocket-tests-use-nanostack
47+
${MBED_NETSOCKET_TEST_COMMON_LIBS_NANOSTACK}
5248
TEST_SKIPPED
5349
${TEST_SKIPPED}
5450
)

connectivity/netsocket/tests/TESTS/netsocket/tcp/CMakeLists.txt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,7 @@ mbed_greentea_add_test(
3737
TEST_SOURCES
3838
${TEST_SOURCE_LIST}
3939
TEST_REQUIRED_LIBS
40-
mbed-netsocket-tests-common-inc
41-
mbed-netsocket-api
42-
mbed-netsocket-tests-use-lwipstack
40+
${MBED_NETSOCKET_TEST_COMMON_LIBS_LWIPSTACK}
4341
TEST_SKIPPED
4442
${TEST_SKIPPED}
4543
)
@@ -50,9 +48,7 @@ mbed_greentea_add_test(
5048
TEST_SOURCES
5149
${TEST_SOURCE_LIST}
5250
TEST_REQUIRED_LIBS
53-
mbed-netsocket-tests-common-inc
54-
mbed-netsocket-api
55-
mbed-netsocket-tests-use-nanostack
51+
${MBED_NETSOCKET_TEST_COMMON_LIBS_NANOSTACK}
5652
TEST_SKIPPED
5753
${TEST_SKIPPED}
5854
)

connectivity/netsocket/tests/TESTS/netsocket/tls/CMakeLists.txt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,9 @@ mbed_greentea_add_test(
3737
TEST_SOURCES
3838
${TEST_SOURCE_LIST}
3939
TEST_REQUIRED_LIBS
40-
mbed-netsocket-tests-common-inc
4140
mbed-storage-blockdevice
4241
mbed-storage-littlefs
43-
mbed-netsocket-api
44-
mbed-netsocket-tests-use-lwipstack
42+
${MBED_NETSOCKET_TEST_COMMON_LIBS_LWIPSTACK}
4543
TEST_SKIPPED
4644
${TEST_SKIPPED}
4745
)
@@ -52,11 +50,9 @@ mbed_greentea_add_test(
5250
TEST_SOURCES
5351
${TEST_SOURCE_LIST}
5452
TEST_REQUIRED_LIBS
55-
mbed-netsocket-tests-common-inc
5653
mbed-storage-blockdevice
5754
mbed-storage-littlefs
58-
mbed-netsocket-api
59-
mbed-netsocket-tests-use-nanostack
55+
${MBED_NETSOCKET_TEST_COMMON_LIBS_NANOSTACK}
6056
TEST_SKIPPED
6157
${TEST_SKIPPED}
6258
)

connectivity/netsocket/tests/TESTS/netsocket/udp/CMakeLists.txt

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,7 @@ mbed_greentea_add_test(
3333
TEST_SOURCES
3434
${TEST_SOURCE_LIST}
3535
TEST_REQUIRED_LIBS
36-
mbed-netsocket-tests-common-inc
37-
mbed-netsocket-api
38-
mbed-netsocket-tests-use-lwipstack
36+
${MBED_NETSOCKET_TEST_COMMON_LIBS_LWIPSTACK}
3937
TEST_SKIPPED
4038
${TEST_SKIPPED}
4139
)
@@ -46,9 +44,7 @@ mbed_greentea_add_test(
4644
TEST_SOURCES
4745
${TEST_SOURCE_LIST}
4846
TEST_REQUIRED_LIBS
49-
mbed-netsocket-tests-common-inc
50-
mbed-netsocket-api
51-
mbed-netsocket-tests-use-nanostack
47+
${MBED_NETSOCKET_TEST_COMMON_LIBS_NANOSTACK}
5248
TEST_SKIPPED
5349
${TEST_SKIPPED}
54-
)
50+
)

connectivity/netsocket/tests/TESTS/network/emac/CMakeLists.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,8 @@ mbed_greentea_add_test(
2626
TEST_SOURCES
2727
${TEST_SOURCE_LIST}
2828
TEST_REQUIRED_LIBS
29-
mbed-netsocket
3029
mbed-emac-test-utils
31-
mbed-netsocket-tests-common-inc
30+
${MBED_NETSOCKET_TEST_COMMON_LIBS} # We don't want LwIP or nanostack
3231
TEST_SKIPPED
3332
${TEST_SKIPPED}
3433
)

connectivity/netsocket/tests/TESTS/network/interface/CMakeLists.txt

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,7 @@ mbed_greentea_add_test(
1919
TEST_SOURCES
2020
${TEST_SOURCE_LIST}
2121
TEST_REQUIRED_LIBS
22-
mbed-netsocket
23-
mbed-netsocket-tests-common-inc
24-
mbed-netsocket-api
25-
mbed-netsocket-tests-use-lwipstack
22+
${MBED_NETSOCKET_TEST_COMMON_LIBS_LWIPSTACK}
2623
TEST_SKIPPED
2724
${TEST_SKIPPED}
2825
)
@@ -33,10 +30,7 @@ mbed_greentea_add_test(
3330
TEST_SOURCES
3431
${TEST_SOURCE_LIST}
3532
TEST_REQUIRED_LIBS
36-
mbed-netsocket
37-
mbed-netsocket-tests-common-inc
38-
mbed-netsocket-api
39-
mbed-netsocket-tests-use-nanostack
33+
${MBED_NETSOCKET_TEST_COMMON_LIBS_NANOSTACK}
4034
TEST_SKIPPED
4135
${TEST_SKIPPED}
4236
)

connectivity/netsocket/tests/TESTS/network/wifi/CMakeLists.txt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,7 @@ mbed_greentea_add_test(
3939
TEST_SOURCES
4040
${TEST_SOURCE_LIST}
4141
TEST_REQUIRED_LIBS
42-
mbed-netsocket-tests-common-inc
43-
mbed-netsocket-api
44-
mbed-netsocket-tests-use-lwipstack
42+
${MBED_NETSOCKET_TEST_COMMON_LIBS_LWIPSTACK}
4543
TEST_SKIPPED
4644
${TEST_SKIPPED}
4745
)
@@ -52,9 +50,7 @@ mbed_greentea_add_test(
5250
TEST_SOURCES
5351
${TEST_SOURCE_LIST}
5452
TEST_REQUIRED_LIBS
55-
mbed-netsocket-tests-common-inc
56-
mbed-netsocket-api
57-
mbed-netsocket-tests-use-nanostack
53+
${MBED_NETSOCKET_TEST_COMMON_LIBS_NANOSTACK}
5854
TEST_SKIPPED
5955
${TEST_SKIPPED}
6056
)

0 commit comments

Comments
 (0)