[IGSTK-Developers] IGSTK main library-sandbox cross build system
David Gobbi
dgobbi at atamai.com
Sat Jan 14 10:32:07 EST 2006
Hi Andinet,
I'm with Stephen. I added comments similar to his on the Wiki before I read my email this
morning:
http://public.kitware.com/IGSTKWIKI/index.php/Main_library-sandbox_cross-build_system
- David
--- Andinet Enquobahrie <andinet.enqu at kitware.com> wrote:
> Hi Stephen,
>
> Thank you for your comments...
>
> > Some ideas:
> > 1) The IGSTK subdir in the sandbox should replicate the directory
> > structure of IGSTK. That is, the sandbox/IGSTK dir should not be a
> > flat directory just in case the same filename is used in different
> > IGSTK subdirs.
>
> If I am not wrong, the bug fixes and feature adds are implemented only
> in the source and header files in the IGSTK/Source subdirectory. Hence,
> we won't have a file name collision problem.
>
> >
> > 2) With this process - do we need the rest of the sandbox? Couldn't
> > the entire sandbox be put into the sandbox/IGSTK subdir. Then code
> > review would just go thru the files in the sandbox/IGSTK subdir.
> >
> >
> I take it when you say the "entire sandbox", you are referring to the
> files in Sandbox/Source subdirectory ( We have also Example applications
> in the Sandbox). This can be done. I just thought that keeping them
> separate would be cleaner and also CMake can easily decide whether it
> will need to generate a new IGSTK library or not by just checking if
> there are any files in the IGSTK subdirectory. If there are no files in
> the subdirectory, already-built IGSTK lib will be linked to the Sandbox
> library.
>
> -Andinet
>
> >
> > Andinet Enquobahrie wrote:
> >
> >> Folks,
> >>
> >> On the tcon yesterday, we discussed the need for IGSTK main
> >> library-sandbox cross build system which accomodates changes to the
> >> main library.
> >> The main motivations behind such a build system are
> >>
> >> 1. Expedite development and testing of new classes in the sandbox
> >> which require minor (light-weight) modification of the main library
> >> 2. Enforce minor changes in the main library to pass through the
> >> regular review process
> >>
> >> To implement this scheme, we will be using cmake language capability.
> >> The envisaged implementation is as follows
> >>
> >> 1. IGSTK subdirectory will be created in the Sandbox
> >> 2. The developer who is interested in making minor modifications to
> >> a particular file in the main library, will make a copy this file to
> >> the IGSTK subdirectory.
> >> 3. CMake file in the sandbox is modified so that
> >> 3.1 The build system checks if there are any files in the
> >> IGSTK sub-directory.
> >> 3.2. If there are files in the IGSTK subdirectory, a new IGSTK
> >> library will be generated. To generate this new IGSTK main library
> >> 3.2.1. All source files in the main library except the
> >> ones with new versions in the IGSTK subdirectory of the Sandbox and
> >> source files in the IGSTK subdirectory are
> >> used.
> >> 3.2.2. If modified header files exist in the IGSTK
> >> subdirectory of the sandbox, then these modified header are included
> >> before the header files in the
> >> main library during compilation.
> >> 3.3 If there are no files in the IGSTK subdirectory, the
> >> already-built IGSTK library will be used.
> >>
> >> How does this cross-build system affect bug fix process?
> >>
> >> If bug fixes are made on files that are not currently in the IGSTK
> >> subdirectory, then there will not be a change in the process.
> >> However, if bug fixes are made on files that are
> >> currently in the IGSTK subdirectory, then the developer who fixs bugs
> >> in the main library is responsible to make the corresponding changes
> >> to the version in the IGSTK
> >> subdirectory of the Sandbox.
> >>
> >> How does this cross-build system affect code review process?
> >>
> >> During our regular code review process for release, the new version
> >> of the IGSTK main library programs stored in the IGSTK subdirectory
> >> will be reviewed in addition to
> >> the new files in the sandbox.
> >>
> >> Please, let me have your comments.
> >>
> >> Thanks
> >>
> >> -Andinet
> >>
> >> PS: By the way, I have posted this message in its entirety to the
> >> wiki...
> >>
> >> http://public.kitware.com/IGSTKWIKI/index.php/Main_library-sandbox_cross-build_system
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >> _______________________________________________
> >> IGSTK-Developers mailing list
> >> IGSTK-Developers at public.kitware.com
> >> http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-developers
> >>
> >
>
>
> _______________________________________________
> IGSTK-Developers mailing list
> IGSTK-Developers at public.kitware.com
> http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-developers
>
More information about the IGSTK-Developers
mailing list