Ok, I'll double-check this next monday. That's why I was confused. On the second thought if you have a list of sources you can add them as dependencies in addition to build rule, then step will be re-run as expected. May be it's my case.
Anyways I need to do some more investigation. Best wishes, Yuri On Aug 12, 2011 6:54 PM, "David Cole" <david.c...@kitware.com> wrote: > You can re-open the issue if you would like to have more discussion there. > > The build step does not always re-run. If you have an "update" step > before the build step, then the update step always re-runs, and the > build step after it, but many external projects do not have an update > step, or anything else that "always" forces a build when there's a > "Build Solution" executed on the containing project. (If it does, then > that's a bug, because it's only supposed to re-execute steps that > *need* to be re-executed.) > > > Thanks, > David > > > On Fri, Aug 12, 2011 at 10:46 AM, Yuri Timenkov <y...@timenkov.ru> wrote: >> Hello David, >> It seems that I can't add notes to closed bug, so I ask you directly. >> I don't quite understand what kind of automatic dependencies you're talking >> about. >> If I change file in this way and do "build solution" cmake will >> automatically launch build for external project. IIRC it always executes >> build when I build solution. >> As I said, for my local purposes I can use modified ExternalProject.cmake >> file, but I thought such feature might be useful for others. >> >> On Fri, Aug 12, 2011 at 5:24 PM, Mantis Bug Tracker >> <man...@public.kitware.com> wrote: >>> >>> A NOTE has been added to this issue. >>> ====================================================================== >>> http://public.kitware.com/Bug/view.php?id=12322 >>> ====================================================================== >>> Reported By: Yuri >>> Assigned To: David Cole >>> ====================================================================== >>> Project: CMake >>> Issue ID: 12322 >>> Category: CMake >>> Reproducibility: always >>> Severity: tweak >>> Priority: normal >>> Status: resolved >>> Resolution: won't fix >>> Fixed in Version: CMake 2.8.6 >>> ====================================================================== >>> Date Submitted: 2011-07-08 05:27 EDT >>> Last Modified: 2011-08-12 09:24 EDT >>> ====================================================================== >>> Summary: Ability to add source files to target created >>> with >>> ExternalProject >>> Description: >>> In my scenario I have part of project which should be built with different >>> toolset (Main project is built with VC2010, and some legacy libraries with >>> VC6 >>> and VS2005). >>> Basically nested project contains >>> set(Proj_SRCS src1.cpp src2.cpp...) >>> add_library(Proj MODULE ${Proj_SRCS}) >>> >>> So set() command may be moved into separate file which in turn could be >>> included >>> into main project. So I want to see them there to edit in IDE, but not >>> compile. >>> >>> The only possibility to add files to custom target - is specify SOURCES in >>> add_custom_target command (It's impossible to call cmTarget::AddSources >>> from >>> outside). However, ExternalProject_Add macro doesn't add any sources. >>> >>> Moreover, there is a kind of chicken-and-egg problem: all arguments are >>> parsed >>> and set as property on target. But you can't set property while there is >>> no >>> target. >>> >>> So as quick work-around I made private copy of ExternalProject.cmake and >>> pass >>> sources as directory property. >>> >>> So I'm asking for ideas how to properly implement this feature: modify >>> somehow >>> parameters parsing in ExternalProject, or may be introduce command which >>> allows >>> adding new sources to existing targets (I'm not sure if this will work, >>> but for >>> me it sounds like target_link_libraries command). >>> ====================================================================== >>> >>> ---------------------------------------------------------------------- >>> (0027196) David Cole (manager) - 2011-08-12 09:23 >>> http://public.kitware.com/Bug/view.php?id=12322#c27196 >>> ---------------------------------------------------------------------- >>> I don't think we should do this. >>> >>> If we allow source files from external projects to be added directly to >>> the IDE >>> representations of the external projects in the containing project, then >>> people >>> will expect the dependencies to work correctly automatically... >>> >>> The dependencies will not work automatically. You will have to forcefully >>> trigger an incremental rebuild of the external project on *any* build of >>> the >>> containing project, and then hope that its build system appropriately >>> picks up >>> only the incremental build changes necessary. >>> >>> I view this as fragile, and would not like to see it go in CMake unless it >>> can >>> be made robust, and shown to work automatically and as developers would >>> expect >>> in the vast majority of use cases. >>> >>> ---------------------------------------------------------------------- >>> (0027197) David Cole (manager) - 2011-08-12 09:24 >>> http://public.kitware.com/Bug/view.php?id=12322#c27197 >>> ---------------------------------------------------------------------- >>> If you need more help on this issue/topic, please send email to the CMake >>> users >>> list asking for advice there. There's a much wider readership of the >>> mailing >>> list than there is of the bug database. >>> >>> Issue History >>> Date Modified Username Field Change >>> ====================================================================== >>> 2011-07-08 05:27 Yuri New Issue >>> 2011-08-12 09:19 David Cole Assigned To => David Cole >>> 2011-08-12 09:19 David Cole Status new => assigned >>> 2011-08-12 09:23 David Cole Note Added: 0027196 >>> 2011-08-12 09:23 David Cole Status assigned => >>> resolved >>> 2011-08-12 09:23 David Cole Fixed in Version => CMake 2.8.6 >>> 2011-08-12 09:23 David Cole Resolution open => won't fix >>> 2011-08-12 09:24 David Cole Note Added: 0027197 >>> ====================================================================== >>> >> >>
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake