On Mon, Oct 24, 2011 at 2:09 PM, Zhenqiang Chen zhenqiang.chen@linaro.org wrote:
Summary:
- Exercise crosstool-ng and summarize the gaps.
Details:
- Exercise crosstool-ng
(1) Sync with lp:~linaro-toolchain-dev/crosstool-ng/linaro. (2) Try to config linux-host-baremental-target an mingw32-host-baremental-target. (3) Try to build the toolchain for both embedded toolchain and linaro-gcc-4.6-2011.10 with the config. . C compiler for linux and mingw32 hosts and c++ compiler for linux host can be built without any change. . C++ compiler for mingw32 host can be built after PCH is disabled.
Yip, I saw that too.
. GDB-cross build fail due to dependence packages.
- Gaps in crosstool-ng
(1) Improve GDB-cross scripts to download and build the dependence packages: expat and ncurses. Or put expat and ncurses as companion_libraries.
mkedwards has these scripted up at: https://github.com/mkedwards/crosstool-ng/tree/master/scripts/build/companio...
We should add these in upstream. I'd rather focus on GCC first, get that out as a prototype, then add GDB.
(2) To remove dependence, embedded toolchain requires more prerequisites like zlib. New config and scripts are required to support the packages.
GCC and similar ship with a copy of zlib. I wonder if we should use that?
(3) Currently, the embedded toolchain source packages are released as a tarball, which includes gcc, gmp, etc. New scripts are required to support it.
We should check what needs to be done to meet the licenses. All of the tarballs used in building the binary are in .build/taraballs.
(4) To make sure the toolchain can run with lower version glibc like redhat4/5, the embedded toolchain requires lower version native gcc4.3.6 to build it.
Why is this? The RHEL 5 GCC 4.1 builds the glibc compiler just fine.
To support it, . Users can build the native gcc manually, or . Enhance the scripts to add one step to build native gcc. (5) All the default package configurations are different from embedded toolchain internal build scripts. Since the configurations in embedded toolchain had been tuned and tested, we will change the configurations in crosstool-ng if they do not match and not configurable. The same rule will apply for linaro toolchain.
Yip. We should make them configurable and get that upstream.
-- Michael