Makefile 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  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 ${TOPDIR}/rules.mk
  4. include ${TOPDIR}/toolchain/gcc/Makefile.inc
  5. PKG_NAME:= gcc
  6. PKG_DESCR:= GNU C compiler
  7. PKG_SECTION:= lang
  8. PKG_OPTS:= noremove
  9. PKG_DEPENDS:= libmpc libgmp mpfr
  10. PKG_BUILDDEP:= libmpc gmp mpfr
  11. PKG_ARCH_DEPENDS:= !avr32
  12. PKG_SUBPKGS:= GCC GXX
  13. PKGSD_GXX:= GNU C++ compiler
  14. WRKBUILD= ${WRKDIR}/${PKG_NAME}-obj
  15. include ${TOPDIR}/mk/package.mk
  16. $(eval $(call PKG_template,GCC,gcc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  17. $(eval $(call PKG_template,GXX,g++,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  18. TARGET_CPPFLAGS:= ''
  19. TARGET_CFLAGS:= ''
  20. TARGET_CXXFLAGS:= $(filter-out -fstack-protector,$(TARGET_CXXFLAGS))
  21. ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
  22. CONFIGURE_ARGS+= --with-abi=$(ADK_TARGET_ABI)
  23. endif
  24. ifneq ($(ADK_PACKAGE_GXX),)
  25. CONFIGURE_ARGS+= --enable-languages=c,c++
  26. else
  27. CONFIGURE_ARGS+= --enable-languages=c
  28. endif
  29. CONFIGURE_ENV+= have_sys_sdt_h=no
  30. CONFIGURE_ARGS+= --host=$(REAL_GNU_TARGET_NAME) \
  31. --target=$(REAL_GNU_TARGET_NAME) \
  32. --disable-__cxa_atexit \
  33. --without-headers \
  34. --libexecdir=/usr/lib \
  35. --disable-libssp \
  36. --disable-sjlj-exceptions \
  37. --disable-biarch \
  38. --disable-libmudflap \
  39. --disable-libgomp \
  40. --disable-multilib \
  41. --disable-libstdcxx-pch \
  42. --enable-cxx-flags="${TARGET_LDFLAGS}"
  43. # disable honour cflags stuff
  44. XAKE_FLAGS+= GCC_HONOUR_COPTS=s
  45. pre-configure:
  46. $(SED) 's@\./fixinc\.sh@-c true@' $(WRKSRC)/gcc/Makefile.in
  47. gcc-install:
  48. ${INSTALL_DIR} ${IDIR_GCC}/usr/lib/gcc ${IDIR_GCC}/usr/bin
  49. ${INSTALL_DIR} ${IDIR_GCC}/lib
  50. ${INSTALL_BIN} ${WRKINST}/usr/bin/gcc ${IDIR_GCC}/usr/bin/
  51. cd ${IDIR_GCC}/usr/bin/ && ln -sf gcc cc
  52. ${INSTALL_BIN} ${WRKINST}/usr/bin/cpp ${IDIR_GCC}/usr/bin/
  53. cd ${IDIR_GCC}/lib && ln -sf ../usr/bin/cpp .
  54. ${CP} ${WRKINST}/usr/lib/gcc/* ${IDIR_GCC}/usr/lib/gcc/
  55. rm -rf ${IDIR_GCC}/usr/lib/gcc/*/*/install-tools
  56. g++-install:
  57. ${INSTALL_DIR} ${IDIR_GXX}/usr/bin
  58. ${INSTALL_DIR} ${IDIR_GXX}/usr/include/c++
  59. ${INSTALL_BIN} ${WRKINST}/usr/bin/g++ ${IDIR_GXX}/usr/bin/
  60. cd ${IDIR_GXX}/usr/bin/ && ln -sf g++ c++
  61. ${CP} ${WRKINST}/usr/include/c++/* ${IDIR_GXX}/usr/include/c++/
  62. include ${TOPDIR}/mk/pkg-bottom.mk