Cygwin-buildroot-toolchain build(s) Finally - working.

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Cygwin-buildroot-toolchain build(s) Finally - working.

Vellemans, Noel
Cygwin-buildroot-toolchain build(s) Finally - working.

Hi all,

I finally managed to get a Cygwin-toolchain-Build running for the latest buildroot-Git-tree.

I know it is officially not supported but as said before it's nice to have it working.

Basically I had 2 problems that took me some time to solve (or avoid) them.
1) a bug into gmp-0.9 that caused a build failure (only for 'shared' builds of the host-mpc)
2) The initial-compiler was not generating code for the crt1.S files and was not correctly probing the possible options while building uClibc.

<< snip>>
check_gcc=$(shell \
        if $(CC) $(1) -S -o /dev/null -xc /dev/null > /dev/null 2>&1; \
        then echo "$(1)"; else echo "$(2)"; fi)

CPU_CFLAGS-y += $(call check_gcc,-fno-asm,)
<< SNIP-END >>
The result for this was not correct.

Finally I ended up with one-solution (or work-around whatever you want to call it) for the both problems, I've build the host-gmp, host-mpfr, and host-mpc statically (as Yann does into the crosstool-NG)

This seems to solve all the W32-cygwin troubles for buildroot-toolchain-builds.

FYI: Is this cygwin-cross-toolchain tested?
Yes I did compile some SMALL 'sample-programs' and tested them on a real platform (imx-537 cortex-A8).

Regards Noel

Note: For the people that are interrested, these are the changes/patches that I needed to make for building a toolchain under CYGWIN.

diff --git a/package/gmp/ b/package/gmp/
index 5eb6ecc..da718b0 100644
--- a/package/gmp/
+++ b/package/gmp/
@@ -8,6 +8,6 @@ GMP_VERSION = 5.0.2
 GMP_SOURCE = gmp-$(GMP_VERSION).tar.bz2
+HOST_GMP_CONF_OPT=--disable-shared --enable-static
 $(eval $(call AUTOTARGETS))
 $(eval $(call AUTOTARGETS,host))
diff --git a/package/mpc/ b/package/mpc/
index 608c9f4..4eb0833 100644
--- a/package/mpc/
+++ b/package/mpc/
@@ -11,6 +11,6 @@ MPC_DEPENDENCIES = gmp mpfr
 HOST_MPC_DEPENDENCIES = host-gmp host-mpfr
+HOST_MPC_CONF_OPT = --disable-shared --enable-static
 $(eval $(call AUTOTARGETS))
 $(eval $(call AUTOTARGETS,host))
diff --git a/package/mpfr/ b/package/mpfr/
index 7f33599..543b887 100644
--- a/package/mpfr/
+++ b/package/mpfr/
@@ -11,6 +11,6 @@ MPFR_INSTALL_STAGING = YES
+HOST_MPFR_CONF_OPT = --disable-shared --enable-static
 $(eval $(call AUTOTARGETS))
 $(eval $(call AUTOTARGETS,host))

buildroot mailing list
[hidden email]