[CMake] failing target
Andrea Crotti
andrea.crotti.0 at gmail.com
Tue Mar 6 08:47:57 EST 2012
On 03/06/2012 01:45 PM, Michael Hertling wrote:
>
> Could you post the lines which define those targets psi.utility_install
> and install_all_eggs, or is this quite tricky, too? Do these lines stem
> from the same CMakeLists.txt? IIRC, the "no rule to make... needed by"
> error occurs when there's something wrong with the DEPENDS clause of
> ADD_CUSTOM_COMMAND/TARGET().
>
> Regards,
>
> Michael
Well I think it's something related to the platform, because both on my
Linux
box and windows it works perfectly.
This is the interesting part anyway:
foreach(egg ${egg_list})
#TODO: now I need to replace the name with only the last part of the path
get_filename_component(egg_name ${egg} NAME)
set(egg_install ${egg_name}_install)
# generate the list of targets to create more easily dependencies
list(APPEND egg_install_list ${egg_install})
add_custom_target(${egg_install}
COMMAND ${PYTHON_EXECUTABLE} setup.py -q bdist_egg -d
${EGG_BUILD_DIRECTORY}
WORKING_DIRECTORY ${egg}
)
endforeach()
add_custom_target(install_all_eggs
DEPENDS ${egg_install_list}
)
#TODO: add this target to the dependencies of run and packing if it works
add_custom_target(unzip_all_eggs
# unzip the eggs and clean up the zips
COMMAND ${PYTHON_EXECUTABLE} ${UNZIP_SCRIPT} ${EGG_BUILD_DIRECTORY}
${EGG_UNZIPPED_DIRECTORY}
# copy the two run files in the final destination
COMMAND ${CMAKE_COMMAND} -E copy ${EGG_BUILD_DIRECTORY}/${RUNNER}
${EGG_UNZIPPED_DIRECTORY}/${RUNNER}
COMMAND ${CMAKE_COMMAND} -E copy ${EGG_BUILD_DIRECTORY}/${C_RUNNER}
${EGG_UNZIPPED_DIRECTORY}/${C_RUNNER}
DEPENDS install_all_eggs
)
sdo the targets are generated at cmake-time reading from a file and then
there are few more targets that depend on
all of them.
Is there anything wrong in this part?
More information about the CMake
mailing list