gcc: split up the build process into three distinct stages (minimal, initial, final...
[openwrt.git] / toolchain / gcc / initial / Makefile
1 GCC_VARIANT:=initial
2
3 include ../common.mk
4
5 GCC_CONFIGURE += \
6         --with-newlib \
7         --with-sysroot=$(BUILD_DIR_TOOLCHAIN)/$(LIBC)-dev \
8         --enable-languages=c \
9         --disable-shared \
10         --disable-threads \
11
12 define Host/Compile
13         $(CP) $(BUILD_DIR_TOOLCHAIN)/linux-dev/* $(BUILD_DIR_TOOLCHAIN)/$(LIBC)-dev/
14         $(GCC_MAKE) -C $(GCC_BUILD_DIR) \
15                 all-build-libiberty \
16                 all-gcc \
17                 $(if $(GCC_BUILD_TARGET_LIBGCC),all-target-libgcc)
18 endef
19
20 define Host/Install
21         $(GCC_MAKE) -C $(GCC_BUILD_DIR) \
22                 install-gcc \
23                 $(if $(GCC_BUILD_TARGET_LIBGCC),install-target-libgcc)
24
25         # XXX: glibc insists on linking against libgcc_eh
26         ( cd $(TOOLCHAIN_DIR)/usr/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(PKG_VERSION) ; \
27                 [ -e libgcc_eh.a ] || ln -sf libgcc.a libgcc_eh.a ; \
28                 cp libgcc.a libgcc_initial.a; \
29         )
30 endef
31
32 $(eval $(call HostBuild))