Makefile 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. #
  2. # Copyright (C) 2006 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. # $Id$
  8. include $(TOPDIR)/rules.mk
  9. PKG_NAME:=ncurses
  10. PKG_VERSION:=5.6
  11. PKG_RELEASE:=1
  12. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  13. PKG_SOURCE_URL:=@GNU/ncurses
  14. PKG_MD5SUM:=b6593abe1089d6aab1551c105c9300e3
  15. include $(INCLUDE_DIR)/package.mk
  16. define Package/libncurses
  17. SECTION:=libs
  18. CATEGORY:=Libraries
  19. TITLE:=Terminal handling library
  20. URL:=http://www.gnu.org/software/ncurses/
  21. endef
  22. define Build/Configure
  23. endef
  24. define Build/Compile
  25. rm -rf $(PKG_INSTALL_DIR)
  26. mkdir -p $(PKG_INSTALL_DIR)
  27. -$(MAKE) -C $(PKG_BUILD_DIR) distclean
  28. (cd $(PKG_BUILD_DIR); rm -f config.cache; \
  29. CONFIG_SITE="" \
  30. ./configure \
  31. --target=$(GNU_HOST_NAME) \
  32. --host=$(GNU_HOST_NAME) \
  33. --build=$(GNU_HOST_NAME) \
  34. --program-prefix="" \
  35. --program-suffix="" \
  36. --prefix=/usr \
  37. --exec-prefix=/usr \
  38. --bindir=/usr/bin \
  39. --datadir=/usr/share \
  40. --includedir=/usr/include \
  41. --infodir=/usr/share/info \
  42. --libdir=/usr/lib \
  43. --libexecdir=/usr/lib \
  44. --localstatedir=/var \
  45. --mandir=/usr/share/man \
  46. --sbindir=/usr/sbin \
  47. --sysconfdir=/etc \
  48. $(DISABLE_NLS) \
  49. $(DISABLE_LARGEFILE) \
  50. --enable-echo \
  51. --enable-const \
  52. --enable-overwrite \
  53. --disable-rpath \
  54. --without-ada \
  55. --without-cxx \
  56. --without-cxx-binding \
  57. --without-debug \
  58. --without-profile \
  59. --with-progs \
  60. --with-normal \
  61. --without-shared \
  62. --with-terminfo-dirs=/usr/share/terminfo \
  63. --with-default-terminfo-dir=/usr/share/terminfo \
  64. );
  65. $(MAKE) -C $(PKG_BUILD_DIR) \
  66. DESTDIR="$(PKG_INSTALL_DIR)" \
  67. libs install.progs
  68. (cd $(PKG_BUILD_DIR); rm -f config.cache; \
  69. $(TARGET_CONFIGURE_OPTS) \
  70. CFLAGS="$(TARGET_CFLAGS)" \
  71. CPPFLAGS="$(TARGET_CPPFLAGS)" \
  72. LDFLAGS="$(TARGET_LDFLAGS)" \
  73. ./configure \
  74. --target=$(GNU_TARGET_NAME) \
  75. --host=$(GNU_TARGET_NAME) \
  76. --build=$(GNU_HOST_NAME) \
  77. --program-prefix="" \
  78. --program-suffix="" \
  79. --prefix=/usr \
  80. --exec-prefix=/usr \
  81. --bindir=/usr/bin \
  82. --datadir=/usr/share \
  83. --includedir=/usr/include \
  84. --infodir=/usr/share/info \
  85. --libdir=/usr/lib \
  86. --libexecdir=/usr/lib \
  87. --localstatedir=/var \
  88. --mandir=/usr/share/man \
  89. --sbindir=/usr/sbin \
  90. --sysconfdir=/etc \
  91. $(DISABLE_NLS) \
  92. $(DISABLE_LARGEFILE) \
  93. --enable-echo \
  94. --enable-const \
  95. --enable-overwrite \
  96. --disable-rpath \
  97. --without-ada \
  98. --without-cxx \
  99. --without-cxx-binding \
  100. --without-debug \
  101. --without-profile \
  102. --without-progs \
  103. --with-normal \
  104. --with-shared \
  105. --with-terminfo-dirs=/usr/share/terminfo \
  106. --with-default-terminfo-dir=/usr/share/terminfo \
  107. );
  108. rm -f $(PKG_BUILD_DIR)/lib/lib*
  109. $(MAKE) -C $(PKG_BUILD_DIR) \
  110. $(TARGET_CONFIGURE_OPTS) \
  111. BUILD_CC="$(TARGET_CC)" \
  112. HOSTCC="$(HOSTCC)" \
  113. HOSTCCFLAGS="" \
  114. DESTDIR="$(PKG_INSTALL_DIR)" \
  115. libs install.libs install.data
  116. endef
  117. define Package/libncurses/install
  118. $(INSTALL_DIR) $(1)/usr/lib
  119. $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{ncurses,panel,menu,form}*.so.* $(1)/usr/lib/
  120. $(INSTALL_DIR) $(1)/usr/share/terminfo
  121. (cd $(PKG_INSTALL_DIR)/usr/share/terminfo; \
  122. for dir in ??; do \
  123. [ -d "$$$$dir" ] || continue; \
  124. mv $$$$dir $$$$(echo -ne "\x$$$$dir"); \
  125. done \
  126. )
  127. for file in a/ansi d/dumb l/linux r/rxvt s/screen v/vt100 v/vt102 x/xterm x/xterm-color; do \
  128. $(INSTALL_DIR) $(1)/usr/share/terminfo/`dirname $$$$file`; \
  129. $(CP) $(PKG_INSTALL_DIR)/usr/share/terminfo/$$$$file \
  130. $(1)/usr/share/terminfo/$$$$file; \
  131. done
  132. endef
  133. define Build/InstallDev
  134. mkdir -p $(1)/usr/include
  135. $(CP) $(PKG_INSTALL_DIR)/usr/include/curses.h $(1)/usr/include/
  136. $(CP) $(PKG_INSTALL_DIR)/usr/include/ncurses.h $(1)/usr/include/
  137. $(CP) $(PKG_INSTALL_DIR)/usr/include/ncurses_dll.h $(1)/usr/include/
  138. $(CP) $(PKG_INSTALL_DIR)/usr/include/menu.h $(1)/usr/include/
  139. $(CP) $(PKG_INSTALL_DIR)/usr/include/panel.h $(1)/usr/include/
  140. $(CP) $(PKG_INSTALL_DIR)/usr/include/term{,cap}.h $(1)/usr/include/
  141. $(CP) $(PKG_INSTALL_DIR)/usr/include/unctrl.h $(1)/usr/include/
  142. $(CP) $(PKG_INSTALL_DIR)/usr/include/form.h $(1)/usr/include/
  143. $(CP) $(PKG_INSTALL_DIR)/usr/include/eti.h $(1)/usr/include/
  144. mkdir -p $(1)/usr/lib
  145. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcurses.so $(1)/usr/lib/
  146. $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{ncurses,panel,menu,form}.{a,so*} $(1)/usr/lib/
  147. endef
  148. $(eval $(call BuildPackage,libncurses))