flex.mk 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #############################################################
  2. #
  3. # flex
  4. #
  5. #############################################################
  6. FLEX_SOURCE:=flex_2.5.4a.orig.tar.gz
  7. FLEX_PATCH:=flex_2.5.4a-27.diff.gz
  8. FLEX_SITE:=http://ftp.debian.org/debian/pool/main/f/flex
  9. FLEX_DIR:=$(BUILD_DIR)/flex-2.5.4
  10. FLEX_CAT:=zcat
  11. FLEX_BINARY:=flex
  12. FLEX_TARGET_BINARY:=usr/bin/flex
  13. $(DL_DIR)/$(FLEX_SOURCE):
  14. $(WGET) -P $(DL_DIR) $(FLEX_SITE)/$(FLEX_SOURCE)
  15. $(DL_DIR)/$(FLEX_PATCH):
  16. $(WGET) -P $(DL_DIR) $(FLEX_SITE)/$(FLEX_PATCH)
  17. ed-source: $(DL_DIR)/$(FLEX_SOURCE) $(DL_DIR)/$(FLEX_PATCH)
  18. $(FLEX_DIR)/.unpacked: $(DL_DIR)/$(FLEX_SOURCE) $(DL_DIR)/$(FLEX_PATCH)
  19. $(FLEX_CAT) $(DL_DIR)/$(FLEX_SOURCE) | tar -C $(BUILD_DIR) -xvf -
  20. #$(SOURCE_DIR)/patch-kernel.sh $(FLEX_DIR) $(DL_DIR) $(FLEX_PATCH)
  21. touch $(FLEX_DIR)/.unpacked
  22. $(FLEX_DIR)/.configured: $(FLEX_DIR)/.unpacked
  23. (cd $(FLEX_DIR); autoconf; rm -rf config.cache; \
  24. $(TARGET_CONFIGURE_OPTS) \
  25. ./configure \
  26. --target=$(GNU_TARGET_NAME) \
  27. --host=$(GNU_TARGET_NAME) \
  28. --build=$(GNU_HOST_NAME) \
  29. --prefix=/usr \
  30. --exec-prefix=/usr \
  31. --bindir=/usr/bin \
  32. --sbindir=/usr/sbin \
  33. --libexecdir=/usr/lib \
  34. --sysconfdir=/etc \
  35. --datadir=/usr/share \
  36. --localstatedir=/var \
  37. --mandir=/usr/man \
  38. --infodir=/usr/info \
  39. --disable-nls \
  40. );
  41. touch $(FLEX_DIR)/.configured
  42. $(FLEX_DIR)/$(FLEX_BINARY): $(FLEX_DIR)/.configured
  43. $(MAKE) -C $(FLEX_DIR)
  44. $(TARGET_DIR)/$(FLEX_TARGET_BINARY): $(FLEX_DIR)/$(FLEX_BINARY)
  45. $(MAKE) \
  46. prefix=$(TARGET_DIR)/usr \
  47. exec_prefix=$(TARGET_DIR)/usr \
  48. bindir=$(TARGET_DIR)/usr/bin \
  49. sbindir=$(TARGET_DIR)/usr/sbin \
  50. libexecdir=$(TARGET_DIR)/usr/lib \
  51. datadir=$(TARGET_DIR)/usr/share \
  52. sysconfdir=$(TARGET_DIR)/etc \
  53. sharedstatedir=$(TARGET_DIR)/usr/com \
  54. localstatedir=$(TARGET_DIR)/var \
  55. libdir=$(TARGET_DIR)/usr/lib \
  56. infodir=$(TARGET_DIR)/usr/info \
  57. mandir=$(TARGET_DIR)/usr/man \
  58. includedir=$(TARGET_DIR)/usr/include \
  59. -C $(FLEX_DIR) install;
  60. rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
  61. $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
  62. (cd $(TARGET_DIR)/usr/bin; ln -s flex lex)
  63. flex: uclibc $(TARGET_DIR)/$(FLEX_TARGET_BINARY)
  64. flex-clean:
  65. $(MAKE) DESTDIR=$(TARGET_DIR) -C $(FLEX_DIR) uninstall
  66. -$(MAKE) -C $(FLEX_DIR) clean
  67. flex-dirclean:
  68. rm -rf $(FLEX_DIR)