I have the following in my lists: if(TARGET CustomTarget) message("TARGET CustomTarget") else() message("NOT TARGET CustomTarget") endif() add_custom_command(TARGET CustomTarget PRE_BUILD COMMAND CustomCommand.exe USES_TERMINAL )
In my output I get: TARGET CustomTarget CMake Error at Some/Path/CMakeLists.txt:52 (add_custom_command ): The target name "CustomTarget" is unknown in this context. It seems like the if() shows that there is a target with the desired name. Am I missing something? On Thu, Apr 16, 2015 at 11:47 AM, Daniel Dilts <dilts...@gmail.com> wrote: > I moved the add_custom_target to the 4th line of my top-level > CMakeLists.txt. The only lines before it are cmake_minimum_required, > project, and a single set. I also made sure that the name of the target > matches the target name in add_custom_command and add_dependencies. I am > still getting the same set of errors. > > On Wed, Apr 15, 2015 at 6:00 PM, Mark Abraham <mark.j.abra...@gmail.com> > wrote: > >> Hi, >> >> CMakeLists.txt files are processed from start to finish, so if you want >> to refer to a target created in a subdirectory, then you need to have added >> that subdirectory before using that target. >> >> Mark >> On 16/04/2015 1:25 am, "Daniel Dilts" <dilts...@gmail.com> wrote: >> >>> I have a function that does something like this: >>> >>> add_dependencies(${LibraryName} SomeTarget) >>> add_custom_command(TARGET SomeTarget PRE_BUILD >>> COMMAND MyExecutable.exe >>> USES_TERMINAL >>> ) >>> >>> It creates the dependency without any issues, but it gives the following >>> error on the custom command: >>> >>> CMake Error at CMakeLists.txt:37 (add_custom_command): >>> The target name "SomeTarget" is unknown in this context. >>> >>> SomeTarget is created using add_library later in the build system. >>> >>> Is there some way to make this work? SomeTarget is created deeper in >>> the build system (3-5 directories down). >>> >>> -- >>> >>> Powered by www.kitware.com >>> >>> Please keep messages on-topic and check the CMake FAQ at: >>> http://www.cmake.org/Wiki/CMake_FAQ >>> >>> Kitware offers various services to support the CMake community. For more >>> information on each offering, please visit: >>> >>> CMake Support: http://cmake.org/cmake/help/support.html >>> CMake Consulting: http://cmake.org/cmake/help/consulting.html >>> CMake Training Courses: http://cmake.org/cmake/help/training.html >>> >>> Visit other Kitware open-source projects at >>> http://www.kitware.com/opensource/opensource.html >>> >>> Follow this link to subscribe/unsubscribe: >>> http://public.kitware.com/mailman/listinfo/cmake >>> >> >
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake