common.mk 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  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. PKG_NAME:=musl
  10. PKG_VERSION:=1.2.2
  11. PKG_RELEASE:=1
  12. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  13. PKG_SOURCE_URL:=https://musl.libc.org/releases/
  14. PKG_HASH:=9b969322012d796dc23dda27a35866034fa67d8fb67e0e2c45c913c3d43219dd
  15. LIBC_SO_VERSION:=$(PKG_VERSION)
  16. PATCH_DIR:=$(PATH_PREFIX)/patches
  17. BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN)
  18. HOST_BUILD_PREFIX:=$(TOOLCHAIN_DIR)
  19. HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)-$(PKG_VERSION)
  20. include $(INCLUDE_DIR)/host-build.mk
  21. include $(INCLUDE_DIR)/hardening.mk
  22. TARGET_CFLAGS:= $(filter-out -O%,$(TARGET_CFLAGS))
  23. TARGET_CFLAGS+= $(if $(CONFIG_MUSL_DISABLE_CRYPT_SIZE_HACK),,-DCRYPT_SIZE_HACK)
  24. MUSL_CONFIGURE:= \
  25. $(TARGET_CONFIGURE_OPTS) \
  26. CFLAGS="$(TARGET_CFLAGS)" \
  27. CROSS_COMPILE="$(TARGET_CROSS)" \
  28. $(HOST_BUILD_DIR)/configure \
  29. --prefix=/ \
  30. --host=$(GNU_HOST_NAME) \
  31. --target=$(REAL_GNU_TARGET_NAME) \
  32. --disable-gcc-wrapper \
  33. --enable-debug \
  34. --enable-optimize
  35. define Host/Configure
  36. ln -snf $(PKG_NAME)-$(PKG_VERSION) $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)
  37. ( cd $(HOST_BUILD_DIR); rm -f config.cache; \
  38. $(MUSL_CONFIGURE) \
  39. );
  40. endef
  41. define Host/Clean
  42. rm -rf \
  43. $(HOST_BUILD_DIR) \
  44. $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME) \
  45. $(BUILD_DIR_TOOLCHAIN)/$(LIBC)-dev
  46. endef