On 05/31/2013 04:47 PM, Dick Hollenbeck wrote:
> In revision 4183 the boost headers have been removed from the repo.
> 
> The CMakeLists.txt build environment now downloads those one time and 
> installs them in the
> source tree upon first build.  


In revision 4190:

a) I made the download directory configurable,

b) but it defaults now to ".downloads-by-cmake" rather than downloads-by-cmake.


This period lets me skip this dir when grepping in tree.  If you want to avoid
re-downloading, then checkout version 4190 and manually rename your 
downloads-by-cmake
directory to .downloads-by-cmake immediately before your first build, and the 
build will
skip the download step.  Otherwise you will end up with both directories.

Sorry, but I think we've got this bridge crossed now and the disruptions are 
behind us.
The configure-ability of the directory also brings the benefit of putting it in 
some out
of tree global place.

Dick





> Subsequent builds will work as before, that is after boost
> is downloaded, un-tarred, patched, and copied to include/boost/*.
> 
> 
> (The PPA engine will however have to download them each time I suppose since 
> it starts
> with a pristine bzr checkout each time.)
> 
> 
> 
> ----< Revision Summary >--------------------------------------------
> 
> This revision makes include/boost/* files into an "external project" 
> according to CMake's
> ExternalProject_Add() function. The main advantages to this strategy are:
> 
> 1) it is easier to track the totality of all patches made to the particular 
> version of
> boost in use.
> 
> 2) The procedure for the download and patching is extremely well documented 
> and
> reproducable, unlike now, so therefore *easier to upgrade to new boost*.
> 
> 3) You get the full set of boost headers.
> 
> 4) The KiCad repo is smaller.
> 
> 
> The mechanism uses a new directory in the source tree called 
> downloads-by-cmake to hold
> the boost*.tar.bz2 file. This download happens only one time, ever. Then the 
> tar file is
> expanded, and it is put into a scratch bazaar repo so that changes can be 
> tracked. Then it
> is patched. Then a portion of the patched boost, namely the header portion, 
> is copied into
> the KiCad source tree at include/boost just as now. So the end result is the 
> same by the
> time a build is undertaken.
> 
> The scratch repo remains in downloads-by-cmake, so that patches can be 
> re-generated from
> there at any time in the future for the ExternalProject_Add() mechanism. You 
> can delete
> the directory downloads-by-cmake to get a fresh start at any time.
> 


_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to