Makefile 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  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. PKG_NAME:= perl
  5. PKG_VERSION:= 5.24.1
  6. PKG_RELEASE:= 1
  7. PKG_HASH:= ebe7c66906d4fb55449380ab1b7e004eeef52c38d3443fa301f8e17a1a4cb67f
  8. PKG_DESCR:= perl interpreter
  9. PKG_SECTION:= dev/lang
  10. PKG_NEEDS:= threads
  11. PKG_URL:= http://www.perl.org/
  12. PKG_SITES:= http://www.cpan.org/src/
  13. PKG_NOPARALLEL:= 1
  14. PC_VERSION:= 1.1.5
  15. PC_SITE:= https://github.com/arsv/perl-cross/releases/download/$(PC_VERSION)
  16. DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
  17. include ${ADK_TOPDIR}/mk/host.mk
  18. include ${ADK_TOPDIR}/mk/package.mk
  19. $(eval $(call HOST_template,PERL,perl,${PKG_VERSION}-${PKG_RELEASE}))
  20. $(eval $(call PKG_template,PERL,perl,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  21. HOST_STYLE:= manual
  22. INSTALL_TARGET:= install.perl
  23. CONFIG_STYLE:= minimal
  24. CONFIGURE_ARGS:= --target=$(GNU_TARGET_NAME) \
  25. --target-tools-prefix=$(TARGET_CROSS) \
  26. --prefix=/usr \
  27. -Dld="$(TARGET_CC)" \
  28. -Dccflags="$(TARGET_CFLAGS)" \
  29. -Dldflags="$(TARGET_LDFLAGS) -lm" \
  30. -Dmydomain="" \
  31. -Dmyuname="OpenADK" \
  32. -Dosname=linux \
  33. -Dosvers=4.0 \
  34. -Dperladmin=root
  35. ifeq ($(ADK_TARGET_USE_STATIC_LIBS_ONLY),y)
  36. CONFIGURE_ARGS+= --all-static --no-dynaloader
  37. endif
  38. host-configure:
  39. (cd ${WRKBUILD}; ${BASH} ./Configure -des -Duseperlio -Dprefix=${STAGING_HOST_DIR}/usr)
  40. perl-hostinstall:
  41. (cd ${WRKBUILD} && env CC_FOR_BUILD="gcc" ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \
  42. ${HOST_MAKE_FLAGS} ${HOST_INSTALL_TARGET})
  43. mv ${STAGING_HOST_DIR}/usr/bin/perl ${STAGING_HOST_DIR}/usr/bin/perl-host
  44. pre-configure:
  45. (if [ ! -f $(DL_DIR)/perl-cross-$(PC_VERSION).tar.gz ]; then \
  46. cd $(DL_DIR); wget $(PC_SITE)/perl-cross-$(PC_VERSION).tar.gz; \
  47. fi)
  48. (cd $(WRKSRC); tar --strip-components=1 -xf $(DL_DIR)/perl-cross-$(PC_VERSION).tar.gz)
  49. perl-install:
  50. ${INSTALL_DIR} ${IDIR_PERL}/usr/bin
  51. ${INSTALL_DIR} ${IDIR_PERL}/usr/lib/perl5/${PKG_VERSION}
  52. ${CP} ${WRKINST}/usr/lib/perl5/${PKG_VERSION}/* \
  53. ${IDIR_PERL}/usr/lib/perl5/${PKG_VERSION}
  54. ${INSTALL_BIN} ${WRKINST}/usr/bin/perl ${IDIR_PERL}/usr/bin/
  55. rm -rf $(IDIR_PERL)/usr/lib/perl5/pod
  56. find $(IDIR_PERL)/usr/lib/perl5/ -name 'extralibs.ld' -print0 | xargs -0 rm -f
  57. find $(IDIR_PERL)/usr/lib/perl5/ -name '*.bs' -print0 | xargs -0 rm -f
  58. find $(IDIR_PERL)/usr/lib/perl5/ -name '.packlist' -print0 | xargs -0 rm -f
  59. include ${ADK_TOPDIR}/mk/host-bottom.mk
  60. include ${ADK_TOPDIR}/mk/pkg-bottom.mk