source: freewrt/toolchain/uClibc/Makefile@ e1d8bd8

freewrt_2_0
Last change on this file since e1d8bd8 was e1d8bd8, checked in by Waldemar Brodkorb <wbx@…>, 4 months ago

prepare for cleaner header situation, use staging directory

  • Property mode set to 100644
File size: 2.4 KB
RevLine 
[2e24236]1# $FreeWRT$
[475ad56]2
[2e24236]3include $(TOPDIR)/rules.mk
[8e4e7a3]4include ../rules.mk
[475ad56]5
[6977d0e]6PKG_NAME:= uClibc
7PKG_VERSION:= 0.9.28
8PKG_MD5SUM:= 1ada58d919a82561061e4741fb6abd29
9PKG_BUILD_DIR:= $(TOOLCHAIN_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
[c150c30]10SOURCE:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2
[6977d0e]11PKG_SOURCE_URL:= http://www.uclibc.org/downloads
[475ad56]12
13UCLIBC_TARGET_ARCH:=$(shell echo $(ARCH) | sed -e s'/-.*//' \
14 -e 's/i.86/i386/' \
15 -e 's/sparc.*/sparc/' \
16 -e 's/arm.*/arm/g' \
17 -e 's/m68k.*/m68k/' \
18 -e 's/ppc/powerpc/g' \
19 -e 's/v850.*/v850/g' \
20 -e 's/sh64/sh/' \
21 -e 's/sh[234].*/sh/' \
22 -e 's/mips.*/mips/' \
23 -e 's/mipsel.*/mips/' \
24 -e 's/cris.*/cris/' \
25)
26
27
[8e4e7a3]28$(DL_DIR)/$(SOURCE):
[475ad56]29 mkdir -p $(DL_DIR)
[c0fdf2d]30 $(SCRIPT_DIR)/download.pl $(DL_DIR) $(SOURCE) $(PKG_MD5SUM) $(PKG_SOURCE_URL) $(MAKE_TRACE)
[475ad56]31
[6977d0e]32$(PKG_BUILD_DIR)/.unpacked: $(DL_DIR)/$(SOURCE)
[8e4e7a3]33 ${EXTRACT_CMD}
[6977d0e]34 $(PATCH) $(PKG_BUILD_DIR) ./patches
35 touch $(PKG_BUILD_DIR)/.unpacked
[475ad56]36
[6977d0e]37$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.unpacked
38 $(SED) 's,^CROSS=.*,CROSS=$(TARGET_CROSS),g' $(PKG_BUILD_DIR)/Rules.mak
39 $(CP) ./files/config.$(ARCH) $(PKG_BUILD_DIR)/.config
[475ad56]40 $(SED) 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(LINUX_HEADERS_DIR)\",g' \
[6977d0e]41 $(PKG_BUILD_DIR)/.config
42 $(SED) 's,^.*UCLIBC_HAS_LFS.*,UCLIBC_HAS_LFS=y,g' $(PKG_BUILD_DIR)/.config
43 $(SED) 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g' $(PKG_BUILD_DIR)/.config
[e1d8bd8]44 mkdir -p $(STAGING_DIR)/usr/include
45 mkdir -p $(STAGING_DIR)/usr/lib
46 mkdir -p $(STAGING_DIR)/lib
[6977d0e]47 $(MAKE) -C $(PKG_BUILD_DIR) \
[e1d8bd8]48 PREFIX=$(STAGING_DIR) \
[475ad56]49 DEVEL_PREFIX=/usr/ \
[e1d8bd8]50 RUNTIME_PREFIX=$(STAGING_DIR) \
[475ad56]51 HOSTCC="$(HOSTCC)" \
52 CPU_CFLAGS="$(TARGET_CFLAGS)" \
53 pregen install_dev;
[6977d0e]54 touch $(PKG_BUILD_DIR)/.configured
[475ad56]55
[6977d0e]56$(PKG_BUILD_DIR)/lib/libc.a: $(PKG_BUILD_DIR)/.configured $(LIBFLOAT_TARGET)
57 $(MAKE) -C $(PKG_BUILD_DIR) \
[475ad56]58 PREFIX= \
59 DEVEL_PREFIX=/ \
60 RUNTIME_PREFIX=/ \
61 HOSTCC="$(HOSTCC)" \
62 CPU_CFLAGS="$(TARGET_CFLAGS)" \
63 all
[6977d0e]64 touch -c $(PKG_BUILD_DIR)/lib/libc.a
[475ad56]65
[6977d0e]66$(STAGING_DIR)/lib/libc.a: $(PKG_BUILD_DIR)/lib/libc.a
67 $(MAKE) -C $(PKG_BUILD_DIR) \
[475ad56]68 PREFIX=$(STAGING_DIR)/ \
69 DEVEL_PREFIX=/ \
70 RUNTIME_PREFIX=/ \
71 install_runtime
[6977d0e]72 $(MAKE) -C $(PKG_BUILD_DIR) \
[475ad56]73 PREFIX=$(STAGING_DIR)/ \
74 DEVEL_PREFIX=/ \
75 RUNTIME_PREFIX=/ \
76 install_dev
[8936285]77 echo $(PKG_VERSION) >$(STAGING_DIR)/uclibc_version
[475ad56]78 touch -c $(STAGING_DIR)/lib/libc.a
79
[8e4e7a3]80source: $(DL_DIR)/$(SOURCE)
[6977d0e]81prepare: $(PKG_BUILD_DIR)/.configured
82compile: $(PKG_BUILD_DIR)/lib/libc.a
[475ad56]83install: $(STAGING_DIR)/lib/libc.a $(UCLIBC_TARGETS)
84clean:
[e1d8bd8]85 rm -rf $(PKG_BUILD_DIR)
Note: See TracBrowser for help on using the repository browser.