In message <[email protected]> John Tytgat <[email protected]> wrote:
> 1. Some time I've investigated to upgrade binutils 2.17 we're currently > using, to 2.19 (atm 2.20 is the latest release) while sticking to > the stable GCC 4.1.1. Frankly this turned out to be a nightmare as > the latest binutils and gcc releases have migrated to autotools 2.64 > and having to use in the same tree autotools 2.64 (for binutils > 2.19/2.20) and autotools 2.59 (for gcc 4.1.1) is just asking for > trouble. > Hence, I've experimented to build binutils and gcc separately instead > of doing this in one tree and that works out fine (see svn > gccsdk/branches/joty/binutils-gcc-separation). This allows us to > have different autotools versions to be used and migrate binutils > and gcc independently from each other. > This change is a also using a Makefile instead of the build-it script > which allows more easily to continue (or re-do a part of) the total > build. > Actually I plan to merge this to trunk very soon. I concluded this development of build redesign based on a Makefile. Before I merge my developers/joty/binutils-gcc-separation branch to trunk, I would like to hear some feedback of people having tried out this new build system and hopefully confirming this turns out to be easier and less prone to subtilities, like e.g. we got in <URL:http://www.riscos.info/pipermail/gcc/2009-November/004976.html>. So anyone who like to spend some CPU cycles and bandwidth on their Unix alike computer (especially interested in Ubuntu 9.10 and Cygwin users), please try out the following: Create an empty directory (not in an existing GCCSDK 4 build directory !) and in that directory: $ svn://svn.riscos.info/gccsdk/branches/developers/joty/binutils-gcc-separation gcc4 $ cd gcc4 $ ./build-world -> edit 'gccsdk-params' file and change definitions of GCCSDK_INSTALL_CROSSBIN and GCCSDK_INSTALL_ENV to 2 (currently) unexisting subdirectories where files can be installed. E.g.: export GCCSDK_INSTALL_CROSSBIN=/tmp/gccsdk/cross/bin export GCCSDK_INSTALL_ENV=/tmp/gccsdk/env $ ./build-world If last command ends with something *different* than "Built and installed GCCSDK cross compiler ok. Check out the README for examples of how to use the cross compiler or Autobuilder." please send me the 'build-cross-output.txt' log file, otherwise just an ack "it worked on my XYZ system" would be greatly appreciated. Note that rerunning 'build-world' will overwrite the existing 'build-cross-output.txt' log file. You can do a start over from scratch after a 'make distclean' (if you don't want to fetch the binutils/gcc/ autoconf/automake sources again, use 'make clean' instead). The build prerequisites can be found in README's "0. Required build tools" section (the exact versions on autoconf/automake are no longer needed, just an autoconf v2.58 or later is fine; we'll build the exact required autoconf/automake versions ourselves). There is a rough sanity check for those tools in 'build-world' script. I've also a pending set of changes for the binutils 2.17 -> 2.20 upgrade but those really need this new build system first. Looking forward to the feedback ;-) John. -- John Tytgat, in his comfy chair at home BASS [email protected] ARM powered, RISC OS driven _______________________________________________ GCCSDK mailing list [email protected] Bugzilla: http://www.riscos.info/bugzilla/index.cgi List Info: http://www.riscos.info/mailman/listinfo/gcc Main Page: http://www.riscos.info/index.php/GCCSDK
