Just in general on this topic: build system has several distinct uses. 1. For ordinary users downloading the source. The build has to work from scratch. Since everything has to be built, we don't need to bother with dependency checking.
2. For ordinary users upgrading from source (GitHub). Typically this should do some dependency checking to speed up the build, but it isn't critical. 3. For developers working on Felix. This is the most painful, since we want to rebuild only those things we're interested in at the time. Even if some detail of some tool changes due to an edit, whilst debugging our small area of Felix we just don't care to rebuild everything. The current build system has two phases: first we build using fbuild/python and this also needs Ocaml for the compiler. Then we rebuild everything, but this time using the Felix build tools built using the previous step. Generally this rebuild is enough for debugging and testing as well as upgrading. however it can sometimes be overly conservative and build too much, and it can also break if build tools themselves become out of date: then you're trying to build new build tools with the old build tools and it just might not work. If a file is hard coded and you reorganise the file layout, it won't work (even if you adjusted the build tool sources). There are various "escapes" that allow shortcutting the rebuilding or backtracking further in the bootstrapping process if something breaks. For example to run a new version of a build tool you can just run "flx" on the source instead of the old binary, but clearly this won't work if "flx" itself is the problem. In the worst case you have to go back to the full bootstrapping process using fbuild/python. I'm working to improve this (because I have a slow machine and I have to live with 4 hour build/test cycles sometimes). But of course its just one of hundreds of things that could use more people working on them :) -- john skaller skal...@users.sourceforge.net http://felix-lang.org ------------------------------------------------------------------------------ Android apps run on BlackBerry 10 Introducing the new BlackBerry 10.2.1 Runtime for Android apps. Now with support for Jelly Bean, Bluetooth, Mapview and more. Get your Android app in front of a whole new audience. Start now. http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language