modified code to match cmake mode
This commit is contained in:
parent
6eb6225e2a
commit
ac2de4f5de
@ -7,12 +7,12 @@ PROJECT (CustomCommand)
|
|||||||
# Lib and exe path
|
# Lib and exe path
|
||||||
#
|
#
|
||||||
SET (LIBRARY_OUTPUT_PATH
|
SET (LIBRARY_OUTPUT_PATH
|
||||||
${PROJECT_BINARY_DIR}/bin/ CACHE PATH
|
${PROJECT_BINARY_DIR}/bin/ CACHE PATH
|
||||||
"Single output directory for building all libraries.")
|
"Single output directory for building all libraries.")
|
||||||
|
|
||||||
SET (EXECUTABLE_OUTPUT_PATH
|
SET (EXECUTABLE_OUTPUT_PATH
|
||||||
${PROJECT_BINARY_DIR}/bin/ CACHE PATH
|
${PROJECT_BINARY_DIR}/bin/ CACHE PATH
|
||||||
"Single output directory for building all executables.")
|
"Single output directory for building all executables.")
|
||||||
|
|
||||||
################################################################
|
################################################################
|
||||||
#
|
#
|
||||||
@ -26,10 +26,10 @@ ADD_EXECUTABLE(generator generator.cxx)
|
|||||||
# is instantiated for the output, with GENERATED 1
|
# is instantiated for the output, with GENERATED 1
|
||||||
# at the end of the day this becomes a what in VS ?
|
# at the end of the day this becomes a what in VS ?
|
||||||
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/generated.c
|
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/generated.c
|
||||||
DEPENDS generator
|
DEPENDS generator
|
||||||
COMMAND ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/generator
|
COMMAND ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/generator
|
||||||
ARGS ${PROJECT_BINARY_DIR}/generated.c
|
ARGS ${PROJECT_BINARY_DIR}/generated.c
|
||||||
)
|
)
|
||||||
|
|
||||||
################################################################
|
################################################################
|
||||||
#
|
#
|
||||||
@ -43,36 +43,36 @@ ADD_EXECUTABLE(wrapper wrapper.cxx)
|
|||||||
# is instantiated for the output, with GENERATED 1
|
# is instantiated for the output, with GENERATED 1
|
||||||
# at the end of the day this becomes a what in VS ?
|
# at the end of the day this becomes a what in VS ?
|
||||||
ADD_CUSTOM_COMMAND(
|
ADD_CUSTOM_COMMAND(
|
||||||
OUTPUT ${PROJECT_BINARY_DIR}/wrapped.c
|
OUTPUT ${PROJECT_BINARY_DIR}/wrapped.c
|
||||||
DEPENDS wrapper
|
DEPENDS wrapper
|
||||||
MAIN_DEPENDENCY ${PROJECT_SOURCE_DIR}/wrapped.h
|
MAIN_DEPENDENCY ${PROJECT_SOURCE_DIR}/wrapped.h
|
||||||
COMMAND ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/wrapper
|
COMMAND ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/wrapper
|
||||||
ARGS ${PROJECT_BINARY_DIR}/wrapped.c ${PROJECT_SOURCE_DIR}/wrapped.h
|
ARGS ${PROJECT_BINARY_DIR}/wrapped.c ${PROJECT_SOURCE_DIR}/wrapped.h
|
||||||
)
|
)
|
||||||
|
|
||||||
################################################################
|
################################################################
|
||||||
#
|
#
|
||||||
# Test creating files from a custom target
|
# Test creating files from a custom target
|
||||||
#
|
#
|
||||||
################################################################
|
################################################################
|
||||||
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/doc1.dvi
|
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/doc1.dvi
|
||||||
DEPENDS ${PROJECT_SOURCE_DIR}/doc1.tex
|
DEPENDS ${PROJECT_SOURCE_DIR}/doc1.tex
|
||||||
COMMAND ${CMAKE_COMMAND}
|
COMMAND ${CMAKE_COMMAND}
|
||||||
ARGS -E copy ${PROJECT_SOURCE_DIR}/doc1.tex
|
ARGS -E copy ${PROJECT_SOURCE_DIR}/doc1.tex
|
||||||
${PROJECT_BINARY_DIR}/doc1.dvi
|
${PROJECT_BINARY_DIR}/doc1.dvi
|
||||||
)
|
)
|
||||||
|
|
||||||
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/doc1.h
|
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/doc1.h
|
||||||
DEPENDS ${PROJECT_BINARY_DIR}/doc1.dvi
|
DEPENDS ${PROJECT_BINARY_DIR}/doc1.dvi
|
||||||
COMMAND ${CMAKE_COMMAND}
|
COMMAND ${CMAKE_COMMAND}
|
||||||
ARGS -E copy ${PROJECT_BINARY_DIR}/doc1.dvi
|
ARGS -E copy ${PROJECT_BINARY_DIR}/doc1.dvi
|
||||||
${PROJECT_BINARY_DIR}/doc1.h
|
${PROJECT_BINARY_DIR}/doc1.h
|
||||||
)
|
)
|
||||||
|
|
||||||
ADD_CUSTOM_TARGET(TDocument ALL
|
ADD_CUSTOM_TARGET(TDocument ALL
|
||||||
${CMAKE_COMMAND} -E echo "building doc1.h"
|
${CMAKE_COMMAND} -E echo "building doc1.h"
|
||||||
DEPENDS ${PROJECT_BINARY_DIR}/doc1.h
|
DEPENDS ${PROJECT_BINARY_DIR}/doc1.h
|
||||||
)
|
)
|
||||||
|
|
||||||
################################################################
|
################################################################
|
||||||
#
|
#
|
||||||
@ -80,18 +80,18 @@ ADD_CUSTOM_TARGET(TDocument ALL
|
|||||||
#
|
#
|
||||||
################################################################
|
################################################################
|
||||||
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/foo.pre
|
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/foo.pre
|
||||||
DEPENDS ${PROJECT_SOURCE_DIR}/foo.in
|
DEPENDS ${PROJECT_SOURCE_DIR}/foo.in
|
||||||
COMMAND ${CMAKE_COMMAND}
|
COMMAND ${CMAKE_COMMAND}
|
||||||
ARGS -E copy ${PROJECT_SOURCE_DIR}/foo.in
|
ARGS -E copy ${PROJECT_SOURCE_DIR}/foo.in
|
||||||
${PROJECT_BINARY_DIR}/foo.pre
|
${PROJECT_BINARY_DIR}/foo.pre
|
||||||
)
|
)
|
||||||
|
|
||||||
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/foo.c
|
ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/foo.c
|
||||||
DEPENDS TDocument ${PROJECT_BINARY_DIR}/foo.pre
|
DEPENDS TDocument ${PROJECT_BINARY_DIR}/foo.pre
|
||||||
COMMAND ${CMAKE_COMMAND}
|
COMMAND ${CMAKE_COMMAND}
|
||||||
ARGS -E copy ${PROJECT_BINARY_DIR}/foo.pre
|
ARGS -E copy ${PROJECT_BINARY_DIR}/foo.pre
|
||||||
${PROJECT_BINARY_DIR}/foo.c
|
${PROJECT_BINARY_DIR}/foo.c
|
||||||
)
|
)
|
||||||
|
|
||||||
# add the library
|
# add the library
|
||||||
ADD_EXECUTABLE(CustomCommand
|
ADD_EXECUTABLE(CustomCommand
|
||||||
@ -102,4 +102,4 @@ ADD_EXECUTABLE(CustomCommand
|
|||||||
|
|
||||||
# must add a dependency on TDocument otherwise it might never build and
|
# must add a dependency on TDocument otherwise it might never build and
|
||||||
# the CustomCommand executable really needs doc1.h
|
# the CustomCommand executable really needs doc1.h
|
||||||
ADD_DEPENDENCIES(CustomCommand TDocument)
|
ADD_DEPENDENCIES(CustomCommand TDocument)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user