⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uclibc.mk

📁 sm86xx rootfs来源包括补丁( GPL )的
💻 MK
字号:
############################################################### uClibc (the C library)##############################################################ifndef $(UCLIBC_CONFIG_FILE)ifeq ($(BR2_ENABLE_LOCALE),y)UCLIBC_CONFIG_FILE=toolchain/uClibc/uClibc.config-locale-$(BR2_UCLIBC_VERSION)elseUCLIBC_CONFIG_FILE=toolchain/uClibc/uClibc.config-$(BR2_UCLIBC_VERSION)endifendif#ifeq ($(BR2_UCLIBC_VERSION_SNAPSHOT),y)## Be aware that this changes daily....#UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc#UCLIBC_SOURCE:=uClibc-$(strip $(subst ",, $(BR2_USE_UCLIBC_SNAPSHOT))).tar.bz2 "))#UCLIBC_SITE:=http://www.uclibc.org/downloads/snapshots#else# Note: 0.9.26 has known problems.  So best use a snapshot until .27 is out.# Anticipate the change.VERSION:=$(shell echo $(BR2_UCLIBC_VERSION))UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc-$(VERSION)UCLIBC_SOURCE:=uClibc-$(VERSION).tar.bz2UCLIBC_SITE:=$(DOWNLOAD_SITE)#endifUCLIBC_TARGET_ARCH:=$(shell echo $(ARCH) | sed -e s'/-.*//' \		-e 's/i.86/i386/' \		-e 's/sparc.*/sparc/' \		-e 's/arm.*/arm/g' \		-e 's/m68k.*/m68k/' \		-e 's/ppc/powerpc/g' \		-e 's/v850.*/v850/g' \		-e 's/sh64/sh/' \		-e 's/sh[234].*/sh/' \		-e 's/mips.*/mips/' \		-e 's/mipsel.*/mips/' \		-e 's/cris.*/cris/' \)$(DL_DIR)/$(UCLIBC_SOURCE):	mkdir -p $(DL_DIR)	$(WGET) -P $(DL_DIR) $(UCLIBC_SITE)/$(UCLIBC_SOURCE)$(UCLIBC_DIR)/.unpacked: $(DL_DIR)/$(UCLIBC_SOURCE)	mkdir -p $(TOOL_BUILD_DIR)	bzcat $(DL_DIR)/$(UCLIBC_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -	touch $(UCLIBC_DIR)/.unpackedUCLIBC_PATCH_LIST := $(wildcard $(BASE_DIR)/toolchain/uClibc/*_$(VERSION)*.patch).PHONY: uclibc-echo-patch-listuclibc-echo-patch-list:	@echo $(UCLIBC_PATCH_LIST)$(UCLIBC_DIR)/.patched: $(UCLIBC_DIR)/.unpacked $(UCLIBC_PATCH_LIST)	toolchain/patch-kernel.sh $(UCLIBC_DIR) toolchain/uClibc \*_$(VERSION)*.patch	touch $@.PHONY: uclibc-patcheduclibc-patched: $(UCLIBC_DIR)/.patched$(UCLIBC_DIR)/.configured: $(UCLIBC_DIR)/.patched $(LINUX_HEADERS_DIR)/.configured	$(SED) 's,^CROSS=.*,CROSS=$(TARGET_CROSS),g' $(UCLIBC_DIR)/Rules.mak	cp $(UCLIBC_CONFIG_FILE) $(UCLIBC_DIR)/.config	$(SED) 's,^.*TARGET_$(UCLIBC_TARGET_ARCH).*,TARGET_$(UCLIBC_TARGET_ARCH)=y,g' \		$(UCLIBC_DIR)/.config	$(SED) 's,^TARGET_ARCH.*,TARGET_ARCH=\"$(UCLIBC_TARGET_ARCH)\",g' $(UCLIBC_DIR)/.config	$(SED) 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(LINUX_HEADERS_DIR)\",g' \		$(UCLIBC_DIR)/.config	$(SED) 's,^RUNTIME_PREFIX=.*,RUNTIME_PREFIX=\"/\",g' \		$(UCLIBC_DIR)/.config	$(SED) 's,^DEVEL_PREFIX=.*,DEVEL_PREFIX=\"/usr/\",g' \		$(UCLIBC_DIR)/.config	$(SED) 's,^SHARED_LIB_LOADER_PREFIX=.*,SHARED_LIB_LOADER_PREFIX=\"/lib\",g' \		$(UCLIBC_DIR)/.configifeq ($(BR2_LARGEFILE),y)	$(SED) 's,^.*UCLIBC_HAS_LFS.*,UCLIBC_HAS_LFS=y,g' $(UCLIBC_DIR)/.configelse	$(SED) 's,^.*UCLIBC_HAS_LFS.*,UCLIBC_HAS_LFS=n,g' $(UCLIBC_DIR)/.configendif	$(SED) 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g' $(UCLIBC_DIR)/.configifeq ($(BR2_SOFT_FLOAT),y)	$(SED) 's,.*HAS_FPU.*,HAS_FPU=n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,g' $(UCLIBC_DIR)/.configendif	mkdir -p $(TOOL_BUILD_DIR)/uClibc_dev/usr/include	mkdir -p $(TOOL_BUILD_DIR)/uClibc_dev/usr/lib	mkdir -p $(TOOL_BUILD_DIR)/uClibc_dev/lib	$(MAKE1) -C $(UCLIBC_DIR) \		PREFIX=$(TOOL_BUILD_DIR)/uClibc_dev/ \		DEVEL_PREFIX=/usr/ \		RUNTIME_PREFIX=$(TOOL_BUILD_DIR)/uClibc_dev/ \		HOSTCC="$(HOSTCC)" \		pregen install_dev;	touch $(UCLIBC_DIR)/.configured$(UCLIBC_DIR)/lib/libc.a: $(UCLIBC_DIR)/.configured $(LIBFLOAT_TARGET)	$(MAKE1) -C $(UCLIBC_DIR) \		PREFIX= \		DEVEL_PREFIX=/ \		RUNTIME_PREFIX=/ \		HOSTCC="$(HOSTCC)" \		all	touch -c $(UCLIBC_DIR)/lib/libc.a#$(STAGING_DIR)/lib/libc.a: $(UCLIBC_DIR)/lib/libc.a#	$(MAKE1) -C $(UCLIBC_DIR) \#		PREFIX=$(STAGING_DIR)/ \#		DEVEL_PREFIX=/ \#		RUNTIME_PREFIX=/ \#		install_runtime#	$(MAKE1) -C $(UCLIBC_DIR) \#		PREFIX=$(STAGING_DIR)/ \#		DEVEL_PREFIX=/ \#		RUNTIME_PREFIX=/ \#		install_dev#	# Build the host utils.  Need to add an install target...#	$(MAKE1) -C $(UCLIBC_DIR)/utils \#		PREFIX=$(STAGING_DIR) \#		HOSTCC="$(HOSTCC)" \#		hostutils#	touch -c $(STAGING_DIR)/lib/libc.aifneq ($(TARGET_DIR),)#$(TARGET_DIR)/lib/libc.so.0: $(STAGING_DIR)/lib/libc.a#	$(MAKE1) -C $(UCLIBC_DIR) \#		PREFIX=$(TARGET_DIR) \#		DEVEL_PREFIX=/usr/ \#		RUNTIME_PREFIX=/ \#		install_runtime#	touch -c $(TARGET_DIR)/lib/libc.so.0$(TARGET_DIR)/usr/bin/ldd: $(UCLIBC_DIR)/.configured	$(MAKE1) -C $(UCLIBC_DIR) $(TARGET_CONFIGURE_OPTS) \		PREFIX=$(TARGET_DIR) utils install_utils	touch -c $(TARGET_DIR)/usr/bin/lddUCLIBC_TARGETS=$(TARGET_DIR)/lib/libc.so.0uclibc-target-utils: $(TARGET_DIR)/usr/bin/lddTARGETS += uclibc-target-utilsendifuclibc-configured: $(UCLIBC_DIR)/.configured#uclibc: $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gcc $(STAGING_DIR)/lib/libc.a \#	$(UCLIBC_TARGETS)#uclibc: $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gcc $(STAGING_DIR)/lib/libc.a uclibc-source: $(DL_DIR)/$(UCLIBC_SOURCE)uclibc-configured-source: uclibc-sourceuclibc-clean:	-$(MAKE1) -C $(UCLIBC_DIR) clean	rm -f $(UCLIBC_DIR)/.configuclibc-dirclean:	rm -rf $(UCLIBC_DIR)############################################################### uClibc for the target just needs its header files# and whatnot installed.##############################################################ifneq ($(TARGET_DIR),)$(TARGET_DIR)/usr/lib/libc.a: $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/lib/libc.a	$(MAKE1) -C $(UCLIBC_DIR) \		PREFIX=$(TARGET_DIR) \		DEVEL_PREFIX=/usr/ \		RUNTIME_PREFIX=/ \		install_dev	touch -c $(TARGET_DIR)/usr/lib/libc.auclibc_target: gcc uclibc $(TARGET_DIR)/usr/lib/libc.a $(TARGET_DIR)/usr/bin/ldduclibc_target-clean:	rm -f $(TARGET_DIR)/includeuclibc_target-dirclean:	rm -f $(TARGET_DIR)/includeendif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -