Cmake add_custom_command?

Use add_custom_command's to create a file transformation chain.

Use add_custom_command's to create a file transformation chain *.(cxx|hxx) -> *_(cxx|hxx)_tro *_(cxx|hxx)_tro -> Foo. Trx and make the last transformation an first class entity in cmake by using add_custom_target. By default this target won't be build, unless you mark it with ALL or let another target that is built depend on it.

Set(SOURCES foo. Cxx foo. Hxx) add_library(Foo ${SOURCES}) set(trofiles) foreach(_file ${SOURCES}) string(REPLACE "." "_" file_tro ${_file}) set(file_tro "${file_tro}_tro") add_custom_command( OUTPUT ${file_tro} COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/trans.

Pl ${CMAKE_CURRENT_SOURCE_DIR}/${_file} -o ${file_tro} DEPENDS ${_file} ) list(APPEND trofiles ${file_tro}) endforeach() add_custom_command( OUTPUT Foo. Trx COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/combine.Pl ${trofiles} -o Foo. Trx DEPENDS ${trofiles} ) add_custom_target(do_trofiles DEPENDS Foo.

Trx) add_dependencies(Foo do_trofiles).

You want to create a custom target that consumes the output of the custom commands. Then use ADD_DEPENDENCIES to make sure the commands are run in the right order. This might be sort of close to what you want: cmake.org/Wiki/CMake_FAQ#How_do_I_use_CM... Basically one add_custom_command for each file generated, collect a list of those files (trofiles), then use add_custom_target with a DEPENDS on the list trofiles.

Then use add_dependencies to make the LibraryTarget depend on the custom target. Then the custom target should be built before the library target is built.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions