我有一个文件,其中包含我想用tar存档的文件列表.我们称之为mylist.txt
它包含:
file1.txt
file2.txt
...
file10.txt
Run Code Online (Sandbox Code Playgroud)
有没有办法可以发出mylist.txt作为输入的TAR命令?就像是
tar -cvf allfiles.tar -[someoption?] mylist.txt
Run Code Online (Sandbox Code Playgroud)
所以它就像我发出这个命令一样:
tar -cvf allfiles.tar file1.txt file2.txt file10.txt
Run Code Online (Sandbox Code Playgroud) 使用CMake,我如何获得进入可执行目标的所有源文件的列表,包括此可执行文件所依赖的所有目标中的所有源?
我们在代码库中有一个模式,其中初始化调用者是由构建系统根据源树中的文件名和路径生成的.因此,我需要可执行目标所依赖的所有源文件的完整路径(或相对于源根目录).
我正在尝试在子项目中组织目标(在本例中为poco),但是我发现无法为ALIAS目标修改属性。我希望外部项目中的目标位于它们自己的文件夹中,而不是扩展到项目树中的所有位置(例如Visual Studio生成器)。有没有更简单的方法来添加具有自己属性的项目?
所以代替:
- CMakePredefinedTargets
- ALL_BUILD
- INSTALL
- ...
- MyTargets
- SomeLibrary
- SomeExe
- CppUnit
- Crypto
- Data
- ...
Run Code Online (Sandbox Code Playgroud)
我想要:
- CMakePredefinedTargets
- ALL_BUILD
- INSTALL
- ...
- MyTargets
- SomeLibrary
- SomeExe
- Poco
- CppUnit
- Crypto
- Data
- ...
Run Code Online (Sandbox Code Playgroud)
我的尝试:
function(add_subdirectory_with_folder folder_name)
function(add_library name type)
_add_library(${ARGV})
set_target_properties(${name}
PROPERTIES
FOLDER "${folder_name}"
)
endfunction()
add_subdirectory(${ARGN})
endfunction()
# External Libs
add_subdirectory_with_folder("Poco" libs/poco)
Run Code Online (Sandbox Code Playgroud)
poco库中的示例目标:
add_library( "${LIBNAME}" ${LIB_MODE} ${SRCS} )
add_library( "${POCO_LIBNAME}" ALIAS "${LIBNAME}") …Run Code Online (Sandbox Code Playgroud)