summaryrefslogtreecommitdiff
path: root/mk/uclibc.mk
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2013-01-06 00:15:41 +0100
committerAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2013-01-06 00:15:41 +0100
commit03c4c8ba15488540a989d69434928014ac8ab733 (patch)
tree2bd4919ffad89b604390ca797a5c6b994a688d05 /mk/uclibc.mk
parentbce8ebc06c0e58f5b3d6557476e47a023c5436bb (diff)
downloadembtoolkit-03c4c8ba15488540a989d69434928014ac8ab733.tar.gz
embtoolkit-03c4c8ba15488540a989d69434928014ac8ab733.tar.bz2
embtoolkit-03c4c8ba15488540a989d69434928014ac8ab733.tar.xz
Toolchain: eglibc/uClibc: improve dummy libc install after headers install
Signed-off-by: Abdoulaye Walsimou Gaye <awg@embtoolkit.org>
Diffstat (limited to 'mk/uclibc.mk')
-rwxr-xr-xmk/uclibc.mk17
1 files changed, 15 insertions, 2 deletions
diff --git a/mk/uclibc.mk b/mk/uclibc.mk
index c0bb148..65fc473 100755
--- a/mk/uclibc.mk
+++ b/mk/uclibc.mk
@@ -57,6 +57,20 @@ UCLIBC_MAKE_OPTS += KERNEL_HEADERS="$(embtk_sysroot)/usr/include/"
UCLIBC_MAKE_OPTS += UCLIBC_EXTRA_CFLAGS="$(EMBTK_UCLIBC_CFLAGS)"
#
+# Install dummy uClibc needed to build gcc stage 2
+#
+define __embtk_install_uclibc_dummy
+ $(TARGETGCC) -nostdlib -nostartfiles -shared -x c /dev/null \
+ -o $(embtk_sysroot)/$(LIBDIR)/libc.so.0
+ echo '/* GNU ld script - Dummy uClibc linker script. */' \
+ > $(embtk_sysroot)/usr/$(LIBDIR)/libc.so
+ $(TARGETGCC) -Wl,--verbose 2>&1 | sed -n '/OUTPUT_FORMAT/,/)/p' \
+ >> $(embtk_sysroot)/usr/$(LIBDIR)/libc.so
+ echo 'GROUP(AS_NEEDED(libc.so.0))' \
+ >> $(embtk_sysroot)/usr/$(LIBDIR)/libc.so
+endef
+
+#
# uClibc libraries install
#
define embtk_install_uclibc
@@ -76,8 +90,7 @@ define __embtk_install_uclibc_headers
$(MAKE) -C $(UCLIBC_BUILD_DIR) $(UCLIBC_MAKE_OPTS) install_headers
$(MAKE) -C $(UCLIBC_BUILD_DIR) $(UCLIBC_MAKE_OPTS) install_startfiles
$(MAKE) -C $(UCLIBC_BUILD_DIR) $(UCLIBC_MAKE_OPTS) install_startfiles
- $(TARGETGCC) -nostdlib -nostartfiles -shared -x c /dev/null \
- -o $(embtk_sysroot)/usr/$(LIBDIR)/libc.so
+ $(__embtk_install_uclibc_dummy)
touch $(call __embtk_pkg_dotinstalled_f,uclibc_headers)
endef