Following is a part of my CMakeLists.txt file.
file(GLOB SOURCES "xyz/*.cpp")
message("${SOURCES}")
list(REMOVE_ITEM SOURCES "src1.cpp")
message("${SOURCES}")
Here in file "xyz/*.cpp"
is a relative path.
Content of ${SOURCES}
is the same before and after REMOVE_ITEM
.
Why is list(REMOVE_ITEM)
not working in my case? Any help would be invaluable.
I got a solution for your problem. The idea behind my solution is, to get the full path of the special cpp file, because I saw, that the command file(GLOB SOURCES "src/*.cpp")
gives me a list of full paths. After getting the full path of the special file, I could do a remove from the list. Here is a small example
cmake_minimum_required(VERSION 3.4)
project(list_remove_item_ex)
file(GLOB SOURCES "src/*.cpp")
# this is the file I want to exclude / remove from the list
get_filename_component(full_path_test_cpp ${CMAKE_CURRENT_SOURCE_DIR}/src/test.cpp ABSOLUTE)
message("${full_path_test_cpp}")
list(REMOVE_ITEM SOURCES "${full_path_test_cpp}")
message("${SOURCES}")
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With