0c2dcd3837323e06cd3db8bb2239396cbf7060e7
[openwrt.git] / toolchain / uClibc / Makefile
1 PATH_PREFIX=.
2
3 include ./common.mk
4
5 HOST_STAMP_BUILT:=$(HOST_BUILD_DIR)/.built
6 HOST_STAMP_INSTALLED:=$(TOOLCHAIN_DIR)/stamp/.uclibc_installed
7
8 define Host/SetToolchainInfo
9         $(SED) 's,^\(LIBC_TYPE\)=.*,\1=$(PKG_NAME),' $(TOOLCHAIN_DIR)/info.mk
10         $(SED) 's,^\(LIBC_URL\)=.*,\1=http://www.uclibc.org/,' $(TOOLCHAIN_DIR)/info.mk
11         $(SED) 's,^\(LIBC_VERSION\)=.*,\1=$(PKG_VERSION),' $(TOOLCHAIN_DIR)/info.mk
12         $(SED) 's,^\(LIBC_SO_VERSION\)=.*,\1=$(LIBC_SO_VERSION),' $(TOOLCHAIN_DIR)/info.mk
13 endef
14
15 define Host/Compile
16         $(SED) 's,^CROSS=.*,CROSS=$(TARGET_CROSS),g' $(HOST_BUILD_DIR)/Rules.mak
17         $(UCLIBC_MAKE) $(TOOLCHAIN_JOBS) PREFIX= all
18 endef
19
20 define Host/Install
21         $(call Host/SetToolchainInfo)
22         $(UCLIBC_MAKE) PREFIX="$(TOOLCHAIN_DIR)/" install_runtime install_dev
23         $(CP) $(HOST_BUILD_DIR)/libc/libc_so.a $(TOOLCHAIN_DIR)/lib/
24         $(CP) $(HOST_BUILD_DIR)/libpthread/*/libpthread_so.a $(TOOLCHAIN_DIR)/lib/
25         ( cd $(TOOLCHAIN_DIR) ; \
26                 for d in lib usr/lib ; do \
27                   for f in libc.so libpthread.so libgcc_s.so ; do \
28                     if [ -f $$$$d/$$$$f -a ! -L $$$$d/$$$$f ] ; then \
29                       $(SED) 's,/usr/lib/,,g;s,/lib/,,g' $$$$d/$$$$f ; \
30                     fi \
31                   done \
32                 done \
33         )
34         rm -f \
35                 $(TOOLCHAIN_DIR)/lib/libresolv*.so* \
36                 $(TOOLCHAIN_DIR)/lib/libnsl*.so*
37 endef
38
39 $(eval $(call HostBuild))