b.liu | e958203 | 2025-04-17 19:18:16 +0800 | [diff] [blame] | 1 | # |
| 2 | # Copyright (C) 2012-2013 OpenWrt.org |
| 3 | # |
| 4 | # This is free software, licensed under the GNU General Public License v2. |
| 5 | # See /LICENSE for more information. |
| 6 | # |
| 7 | include $(TOPDIR)/rules.mk |
| 8 | include $(INCLUDE_DIR)/target.mk |
| 9 | |
| 10 | PKG_NAME:=musl |
| 11 | PKG_VERSION:=1.2.5 |
| 12 | PKG_RELEASE:=1 |
| 13 | |
| 14 | PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz |
| 15 | PKG_SOURCE_URL:=https://musl.libc.org/releases/ |
| 16 | PKG_HASH:=a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4 |
| 17 | PKG_CPE_ID:=cpe:/a:musl-libc:musl |
| 18 | |
| 19 | LIBC_SO_VERSION:=$(PKG_VERSION) |
| 20 | PATCH_DIR:=$(PATH_PREFIX)/patches |
| 21 | |
| 22 | BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN) |
| 23 | HOST_BUILD_PREFIX:=$(TOOLCHAIN_DIR) |
| 24 | HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)-$(PKG_VERSION) |
| 25 | |
| 26 | include $(INCLUDE_DIR)/host-build.mk |
| 27 | include $(INCLUDE_DIR)/hardening.mk |
| 28 | |
| 29 | TARGET_CFLAGS:= $(filter-out -O%,$(TARGET_CFLAGS)) |
| 30 | TARGET_CFLAGS+= $(if $(CONFIG_MUSL_DISABLE_CRYPT_SIZE_HACK),,-DCRYPT_SIZE_HACK) |
| 31 | |
| 32 | MUSL_CONFIGURE:= \ |
| 33 | $(TARGET_CONFIGURE_OPTS) \ |
| 34 | CFLAGS="$(TARGET_CFLAGS)" \ |
| 35 | CROSS_COMPILE="$(TARGET_CROSS)" \ |
| 36 | $(HOST_BUILD_DIR)/configure \ |
| 37 | --prefix=/ \ |
| 38 | --host=$(GNU_HOST_NAME) \ |
| 39 | --target=$(REAL_GNU_TARGET_NAME) \ |
| 40 | --disable-gcc-wrapper \ |
| 41 | --enable-debug \ |
| 42 | --enable-optimize |
| 43 | |
| 44 | define Host/Configure |
| 45 | ln -snf $(PKG_NAME)-$(PKG_VERSION) $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME) |
| 46 | ( cd $(HOST_BUILD_DIR); rm -f config.cache; \ |
| 47 | $(MUSL_CONFIGURE) \ |
| 48 | ); |
| 49 | endef |
| 50 | |
| 51 | define Host/Clean |
| 52 | rm -rf \ |
| 53 | $(HOST_BUILD_DIR) \ |
| 54 | $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME) \ |
| 55 | $(BUILD_DIR_TOOLCHAIN)/$(LIBC)-dev |
| 56 | endef |