On Nov 30, 2015, at 6:33 PM, Rom Walton <[email protected]> wrote: > The master branch is setup for active 7.7/7.8 development. This is the > perfect time to do a little refactoring of the source tree. Moving project > files for IDEs around shouldn't have any effect on the 7.6 tree.
Having such major differences between the master and 7.6 branches would require maintaining significantly different files in the two branches, complicating support beyond what I am willing to do as a volunteer. It would also make porting more difficult and complicated, leading to a greater chance of inadvertently breaking things in the 7.6 branch. To expedite the cleanup of 7.6, we should try to keep the branches as similar as possible until we can declare the 7.6 release final. This means committing only critical bug fixes to either branch for now. > Call the directory ./builds/mac_xcode_50. As I explained earlier, I am very strongly opposed to specifying an Xcode version in the directory structure: > I also feel that, at least on the Mac, making the tree structure Xcode > version specific (builds/mac_xcode_60, packages/mac_xcode_60) is ill-advised, > because it implies that we will maintain multiple Xcode projects over time, > which is a significant amount of extra work is unlikely to be needed, and > makes the directory structure unnecessarily complex. I get the impression > that this is more of an issue with MSW. On Nov 30, 2015, at 6:33 PM, Rom Walton <[email protected]> wrote: > There is quite a bit of documentation for building things (even on Windows), > it is just scattered across several wiki pages. That just confirms that work is needed to consolidate them and make them easy to find. If you are concerned that the source tree "requires somebody to hunt around for project files if they are not already familiar with the BOINC system", then it is even worse to have to hunt around the wiki for build instructions. You can put effort into cleaning up build instructions on the wiki without jeopardizing the 7.6 release. Note also that, if we rearrange the source tree, and the build instructions exit only on the wiki, they will have to explain h differences in building older versions with the older tree structure) as well as those with the newer structure. Because the build instructions can change over time, the Mac build instructions for each BOINC version are included in the mac_build directory for that version, with the latest set of instructions on the wiki. And the Mac build instructions always say: > Note: the information in this document changes from time to time for > different versions of BOINC. For any version of BOINC source files, the > corresponding version of this document can be found in the source tree at: > boinc/mac_build/HowToBuildBOINC_XCode.rtf Cheers, --Charlie -- Charlie Fenton [email protected] BOINC / SETI@home Macintosh & Windows Programmer Space Sciences Laboratory UC Berkeley On Nov 30, 2015, at 6:33 PM, Rom Walton <[email protected]> wrote: > The master branch is setup for active 7.7/7.8 development. This is the > perfect time to do a little refactoring of the source tree. Moving project > files for IDEs around shouldn't have any effect on the 7.6 tree. > > Call the directory ./builds/mac_xcode_50. > > As far as changes to the project files themselves, I suspect it'll require a > fair amount of work for all platforms. > > There is quite a bit of documentation for building things (even on Windows), > it is just scattered across several wiki pages. > > For example building all the libraries used by BOINC on Windows can be found > here: > http://boinc.berkeley.edu/trac/wiki/AdminDepLibs > > ----- Rom > > -----Original Message----- > From: boinc_dev [mailto:[email protected]] On Behalf Of > Charlie Fenton > Sent: Monday, November 30, 2015 7:50 PM > To: boinc_dev email List <[email protected]> > Subject: Re: [boinc_dev] Proposal: Moving IDE project files and installer > packages > > First of all, the Mac screensaver can _not_ be built with Xcode 6; it must > currently be built with Xcode 5 for backward compatibility with OS 10.6 and > OS 10.7. > > However, I have been working with Christian for the last week to enable > Travis-CI build on the Mac, and have checked in a build script that modifies > certain build settings so that I can be built under Xcode 6 or later for > analysis. Note that building with this script under Xcode 6 makes the > screensaver incompatible with OS 10.6 and OS 10.7. > > Christian and I have been discussing the possibility of making similar > changes to the source tree layout, and I have been resisting moving the > mac_build and mac_installer directories for a number of reasons. > > The proposed restructuring involves significant changes to my build > instructions, build scripts, and the Xcode project itself, all of which use > relative directory references throughout. > > In particular, I feel very strongly that such major changes should not be > made while we are still trying to get a bug-free public release out of BOINC > 7.6.x. Any such restructuring should wait until that release is well > established and should be part of the 7.7 / 7.8 development cycle. This is > not the right time to restructure the source tree. > > I also disagree with Rom's initial assertion, at least on the Mac, that : >> Our source tree directory structure is looking a little unwieldy and >> requires somebody to hunt around for project files if they are not already >> familiar with the BOINC system. > > I have spent a huge amount of time and effort keeping the build instructions > for the Mac clear, accurate and up to date. All one has to do is read the > documentation for the Mac. As Christian has already pointed out, the problem > is that no one has created or maintained the corresponding documentation for > other platforms. > > I also feel that, at least on the Mac, making the tree structure Xcode > version specific (builds/mac_xcode_60, packages/mac_xcode_60) is ill-advised, > because it implies that we will maintain multiple Xcode projects over time, > which is a significant amount of extra work is unlikely to be needed, and > makes the directory structure unnecessarily complex. I get the impression > that this is more of an issue with MSW. > > Cheers, > --Charlie > > -- > On Nov 30, 2015, at 2:06 PM, David Anderson <[email protected]> wrote: > >> That sounds good, except I'd give the directories clearer names, like >> builds/win_vs2010 >> builds/mac_xcode_60 >> builds/win_mingw >> packages/win_installshield_2011 >> packages/mac_xcode_60 >> >> Also, and maybe more importantly, the documentation needs to be improved. >> Someone wanting to build the BOINC client would start by looking at >> http://boinc.berkeley.edu/trac/wiki/CompileClient >> not by poking around the source tree. >> If they find clear instructions here, >> it doesn't really matter where the build files. >> >> This document is currently deficient. >> E.g. the instructions for building the client on Linux are mixed up >> with stuff about how to install and run the client, which doesn't belong >> here. >> Also, there are no references about how to build the Win client with MinGW. >> >> -- D >> >> On 11/30/2015 1:13 PM, Rom Walton wrote: >>> Howdy Folks, >>> >>> Our source tree directory structure is looking a little unwieldy and >>> requires somebody to hunt around for project files if they are not already >>> familiar with the BOINC system. >>> >>> How does everyone feel about moving the various IDE project files, platform >>> build scripts, and CI build scripts to a 'builds' directory? >>> >>> For instance: >>> >>> * ./win_build would be moved to ./builds/vs2010 >>> >>> * ./mac_build would be moved to ./builds/xc60 >>> >>> * ./build and ./mac3rdParty would be moved too ./builds/travis-ci. >>> >>> * ./xcompile would be moved to ./builds/xcompile. >>> >>> How does everyone feel about moving the installer project files to packages? >>> >>> For instance: >>> >>> * ./win_build/installerv2 would be moved to ./packages/is2011 >>> >>> * ./mac_installer would be moved to ./packages/xc60 >>> >>> Thoughts? >>> >>> ----- Rom >>> >>> _______________________________________________ >>> boinc_dev mailing list >>> [email protected] >>> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev >>> To unsubscribe, visit the above URL and (near bottom of page) enter >>> your email address. >> >> _______________________________________________ >> boinc_dev mailing list >> [email protected] >> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev >> To unsubscribe, visit the above URL and (near bottom of page) enter >> your email address. >> > > _______________________________________________ > boinc_dev mailing list > [email protected] > http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev > To unsubscribe, visit the above URL and > (near bottom of page) enter your email address. > _______________________________________________ > boinc_dev mailing list > [email protected] > http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev > To unsubscribe, visit the above URL and > (near bottom of page) enter your email address. > _______________________________________________ boinc_dev mailing list [email protected] http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address.
