2
1

gettext-tiny.mk 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. ################################################################################
  2. #
  3. # gettext-tiny
  4. #
  5. ################################################################################
  6. GETTEXT_TINY_VERSION = 0.3.2
  7. GETTEXT_TINY_SITE = $(call github,sabotage-linux,gettext-tiny,v$(GETTEXT_TINY_VERSION))
  8. GETTEXT_TINY_LICENSE = MIT, GPL-3.0+ (extra gettext)
  9. GETTEXT_TINY_INSTALL_STAGING = YES
  10. GETTEXT_TINY_LICENSE_FILES = LICENSE
  11. HOST_GETTEXT_TINY_LICENSE_FILES = LICENSE extra/COPYING
  12. GETTEXT_TINY_PROVIDES = gettext
  13. # needed for gettextize
  14. GETTEXT_TINY_ARCHIVE_VERSION = 0.20.1
  15. GETTEXT_TINY_EXTRA_GETTEXT_FILES = \
  16. gettext-tools/misc/gettextize.in \
  17. gettext-tools/po/Makevars.template \
  18. gettext-runtime/po/boldquot.sed \
  19. gettext-runtime/po/en@boldquot.header \
  20. gettext-runtime/po/en@quot.header \
  21. gettext-runtime/po/insert-header.sin \
  22. gettext-runtime/po/quot.sed \
  23. gettext-runtime/po/remove-potcdate.sin \
  24. gettext-runtime/po/Rules-quot \
  25. gettext-runtime/po/Makefile.in.in \
  26. COPYING
  27. HOST_GETTEXT_TINY_EXTRA_DOWNLOADS = $(GETTEXT_GNU_SITE)/$(GETTEXT_GNU_SOURCE)
  28. define HOST_GETTEXT_TINY_EXTRACT_GNU_GETTEXT
  29. mkdir -p $(@D)/gettext-gnu
  30. $(call suitable-extractor,$(GETTEXT_GNU_SOURCE)) \
  31. $(GETTEXT_TINY_DL_DIR)/$(GETTEXT_GNU_SOURCE) | \
  32. $(TAR) --strip-components=1 -C $(@D)/gettext-gnu $(TAR_OPTIONS) -
  33. endef
  34. HOST_GETTEXT_TINY_POST_EXTRACT_HOOKS += HOST_GETTEXT_TINY_EXTRACT_GNU_GETTEXT
  35. define HOST_GETTEXT_TINY_COPY_EXTRA_FILES
  36. $(foreach f,$(GETTEXT_TINY_EXTRA_GETTEXT_FILES),\
  37. $(INSTALL) -D -m 0644 $(@D)/gettext-gnu/$(f) $(@D)/extra/$(notdir $(f))
  38. )
  39. $(INSTALL) -D -m 0755 $(@D)/gettext-gnu/build-aux/config.rpath \
  40. $(@D)/build-aux/config.rpath
  41. endef
  42. HOST_GETTEXT_TINY_POST_PATCH_HOOKS += HOST_GETTEXT_TINY_COPY_EXTRA_FILES
  43. define HOST_GETTEXT_TINY_BUILD_CMDS
  44. $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
  45. $(HOST_CONFIGURE_OPTS) \
  46. prefix=$(HOST_DIR) \
  47. CFLAGS="$(HOST_CFLAGS) -fPIC" \
  48. LIBINTL=NONE
  49. cp $(@D)/extra/gettextize.in $(@D)/gettextize
  50. $(SED) 's,@PACKAGE@,gettext-tools,g;' $(@D)/gettextize
  51. $(SED) 's,@VERSION@,$(GETTEXT_GNU_VERSION),g;' $(@D)/gettextize
  52. $(SED) 's,@ARCHIVE_VERSION@,$(GETTEXT_TINY_ARCHIVE_VERSION),' $(@D)/gettextize
  53. $(SED) 's,@prefix@,$(HOST_DIR),g;' $(@D)/gettextize
  54. $(SED) 's,@datarootdir@,$${prefix}/share,g;' $(@D)/gettextize
  55. $(SED) 's,@datadir@,$${prefix}/share,g;' $(@D)/gettextize
  56. $(SED) 's,@PATH_SEPARATOR@,:,g;' $(@D)/gettextize
  57. $(SED) 's,@RELOCATABLE@,no,g;' $(@D)/gettextize
  58. $(SED) 's,@exec_prefix@,$${prefix},g;' $(@D)/gettextize
  59. $(SED) 's,@bindir@,$${exec_prefix}/bin,g;' $(@D)/gettextize
  60. endef
  61. define HOST_GETTEXT_TINY_INSTALL_CMDS
  62. $(Q)mkdir -p $(HOST_DIR)/share/gettext-tiny/po
  63. $(Q)mkdir -p $(HOST_DIR)/share/gettext-tiny/m4
  64. $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
  65. $(HOST_CONFIGURE_OPTS) \
  66. prefix=$(HOST_DIR) \
  67. LIBINTL=NONE install
  68. $(SED) '/read dummy/d' $(@D)/gettextize
  69. $(INSTALL) -m 0755 -D $(@D)/gettextize $(HOST_DIR)/bin/gettextize
  70. $(INSTALL) -m 0644 -D $(@D)/build-aux/config.rpath $(HOST_DIR)/share/gettext-tiny/config.rpath
  71. $(INSTALL) -m 0644 -D $(@D)/extra/Makefile.in.in $(HOST_DIR)/share/gettext-tiny/po/Makefile.in.in
  72. $(INSTALL) -m 0644 -D $(@D)/extra/boldquot.sed $(HOST_DIR)/share/gettext-tiny/po/boldquot.sed
  73. $(INSTALL) -m 0644 -D $(@D)/extra/en@boldquot.header $(HOST_DIR)/share/gettext-tiny/po/en@boldquot.header
  74. $(INSTALL) -m 0644 -D $(@D)/extra/en@quot.header $(HOST_DIR)/share/gettext-tiny/po/en@quot.header
  75. $(INSTALL) -m 0644 -D $(@D)/extra/insert-header.sin $(HOST_DIR)/share/gettext-tiny/po/insert-header.sin
  76. $(INSTALL) -m 0644 -D $(@D)/extra/quot.sed $(HOST_DIR)/share/gettext-tiny/po/quot.sed
  77. $(INSTALL) -m 0644 -D $(@D)/extra/remove-potcdate.sin $(HOST_DIR)/share/gettext-tiny/po/remove-potcdate.sin
  78. $(INSTALL) -m 0644 -D $(@D)/extra/Rules-quot $(HOST_DIR)/share/gettext-tiny/po/Rules-quot
  79. $(INSTALL) -m 0644 -D $(@D)/extra/Makevars.template $(HOST_DIR)/share/gettext-tiny/po/Makevars.template
  80. $(Q)touch $(HOST_DIR)/share/gettext-tiny/ABOUT-NLS
  81. # for gettextize
  82. ln -sf $(HOST_DIR)/share/gettext-tiny $(HOST_DIR)/share/gettext
  83. endef
  84. # Install simple echo wrapper for gettext tool
  85. define GETTEXT_TINY_INSTALL_TARGET_CMDS
  86. $(INSTALL) -m 0755 -D $(GETTEXT_TINY_PKGDIR)/gettext-wrapper $(TARGET_DIR)/usr/bin/gettext
  87. endef
  88. $(eval $(generic-package))
  89. $(eval $(host-generic-package))