Makefile 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. include $(ADK_TOPDIR)/rules.mk
  4. include ../rules.mk
  5. TARGET_CFLAGS:= $(filter-out -ffast-math,$(TARGET_CFLAGS))
  6. # glibc does not compile with Os
  7. TARGET_CFLAGS:= $(subst Os,O2,$(TARGET_CFLAGS))
  8. ifneq ($(ADK_DEBUG),)
  9. TARGET_CFLAGS+= -O2
  10. endif
  11. include Makefile.inc
  12. include ${ADK_TOPDIR}/mk/buildhlp.mk
  13. GLIBC_MAKEOPTS+= cross-compiling=yes
  14. ifeq (${ADK_MAKE_PARALLEL},y)
  15. GLIBC_MAKEOPTS+= PARALLELMFLAGS="-j$(ADK_MAKE_JOBS)"
  16. endif
  17. GLIBC_BUILD_DIR_FINAL:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-final
  18. $(WRKBUILD)/.configured:
  19. mkdir -p $(GLIBC_BUILD_DIR_FINAL)
  20. (cd $(GLIBC_BUILD_DIR_FINAL); \
  21. ${GLIBC_ENV} \
  22. $(WRKBUILD)/configure \
  23. --prefix=/usr \
  24. --enable-shared \
  25. --enable-stackguard-randomization \
  26. ${GLIBC_CONFOPTS} \
  27. );
  28. touch $@
  29. $(WRKBUILD)/.compiled:
  30. ${GLIBC_ENV} $(MAKE) ${GLIBC_MAKEOPTS} asm-CPPFLAGS='$${CFLAGS}' -C $(GLIBC_BUILD_DIR_FINAL) all
  31. touch $@
  32. $(WRKBUILD)/.installed:
  33. ${GLIBC_ENV} $(MAKE) -C $(GLIBC_BUILD_DIR_FINAL) install_root=$(STAGING_TARGET_DIR) install
  34. touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs.h
  35. touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs-{32,x32,64,soft,hard}.h
  36. mkdir -p ${STAGING_TARGET_DIR}/etc
  37. ${INSTALL_DATA} ${WRKBUILD}/posix/gai.conf ${STAGING_TARGET_DIR}/etc
  38. ${INSTALL_DATA} ${WRKBUILD}/nss/nsswitch.conf ${STAGING_TARGET_DIR}/etc
  39. touch $@
  40. $(WRKBUILD)/.final:
  41. touch $@
  42. include ${ADK_TOPDIR}/mk/toolchain.mk