X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/b07a8c8f41a4dd0594c54c2e5712c6d9059d1638..87b849886f5cc4a0d7ae855238e49eb8ec1cdf6e:/package/ncurses/Makefile diff --git a/package/ncurses/Makefile b/package/ncurses/Makefile index a3af81066..5139a5a4a 100644 --- a/package/ncurses/Makefile +++ b/package/ncurses/Makefile @@ -7,46 +7,51 @@ PKG_VERSION:=5.2 PKG_RELEASE:=6 PKG_MD5SUM:=464d6a49010cf2a6eb9ce59a264d4d47 -PKG_SOURCE_URL:=ftp://ftp.gnu.org/pub/gnu/$(PKG_NAME) \ +PKG_SOURCE_URL:=\ + ftp://ftp.gnu.org/pub/gnu/$(PKG_NAME) \ ftp://gatekeeper.dec.com/pub/GNU/$(PKG_NAME) \ ftp://ftp.uu.net/archive/systems/gnu/$(PKG_NAME) \ ftp://ftp.eu.uu.net/pub/gnu/$(PKG_NAME) \ ftp://ftp.funet.fi/pub/gnu/prep/$(PKG_NAME) \ ftp://ftp.leo.org/pub/comp/os/unix/gnu/$(PKG_NAME) \ - ftp://ftp.digex.net/pub/gnu/$(PKG_NAME) - + ftp://ftp.digex.net/pub/gnu/$(PKG_NAME) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_CAT:=zcat -PKG_IPK:=$(PACKAGE_DIR)/$(PKG_NAME)_$(PKG_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk -PKG_IPK_DIR:=$(PKG_BUILD_DIR)/ipkg -$(DL_DIR)/$(PKG_SOURCE): - $(SCRIPT_DIR)/download.pl $(DL_DIR) $(PKG_SOURCE) $(PKG_MD5SUM) $(PKG_SOURCE_URL) +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install -$(PKG_BUILD_DIR)/.unpacked: $(DL_DIR)/$(PKG_SOURCE) - $(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - - touch $(PKG_BUILD_DIR)/.unpacked +include $(TOPDIR)/package/rules.mk -$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.unpacked - (cd $(PKG_BUILD_DIR); rm -rf config.cache; \ +$(eval $(call PKG_template,LIBNCURSES,libncurses,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) + +$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared + (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \ $(TARGET_CONFIGURE_OPTS) \ CFLAGS="$(TARGET_CFLAGS)" \ + CPPFLAGS="-I$(STAGING_DIR)/usr/include" \ + LDFLAGS="-L$(STAGING_DIR)/usr/lib" \ ac_cv_linux_vers="2" \ ./configure \ --target=$(GNU_TARGET_NAME) \ --host=$(GNU_TARGET_NAME) \ --build=$(GNU_HOST_NAME) \ + --program-prefix="" \ + --program-suffix="" \ --prefix=/usr \ --exec-prefix=/usr \ --bindir=/usr/bin \ - --sbindir=/usr/sbin \ - --libexecdir=/usr/lib \ - --sysconfdir=/etc \ --datadir=/usr/share \ + --includedir=/usr/include \ + --infodir=/usr/share/info \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ --localstatedir=/var \ - --mandir=/usr/man \ - --infodir=/usr/info \ + --mandir=/usr/share/man \ + --sbindir=/usr/sbin \ + --sysconfdir=/etc \ + $(DISABLE_NLS) \ + $(DISABLE_LARGEFILE) \ --with-terminfo-dirs=/usr/share/terminfo \ --with-default-terminfo-dir=/usr/share/terminfo \ --without-ada \ @@ -61,50 +66,57 @@ $(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.unpacked --enable-overwrite \ --with-shared \ --with-normal \ - $(DISABLE_NLS) \ - $(DISABLE_LARGEFILE) \ ); - touch $(PKG_BUILD_DIR)/.configured + touch $@ -$(PKG_BUILD_DIR)/.built: $(PKG_BUILD_DIR)/.configured +$(PKG_BUILD_DIR)/.built: + rm -rf $(PKG_INSTALL_DIR) + mkdir -p $(PKG_INSTALL_DIR) $(MAKE) -C $(PKG_BUILD_DIR) \ $(TARGET_CONFIGURE_OPTS) \ BUILD_CC="$(TARGET_CC)" \ HOSTCC="$(HOSTCC)" \ - HOSTCCFLAGS="\$$(CPPFLAGS)" - mkdir -p $(PKG_BUILD_DIR)/terminfo - $(MAKE) -C $(PKG_BUILD_DIR) \ - DESTDIR="$(PKG_BUILD_DIR)/install" \ - install - touch $(PKG_BUILD_DIR)/.built + HOSTCCFLAGS="\$$(CPPFLAGS)" \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all install + touch $@ -$(STAGING_DIR)/usr/include/ncurses.h: $(PKG_BUILD_DIR)/.built - $(MAKE) -C $(PKG_BUILD_DIR) \ - DESTDIR="$(STAGING_DIR)" \ - install - -$(PKG_IPK): $(PKG_BUILD_DIR)/.built - $(SCRIPT_DIR)/make-ipkg-dir.sh $(PKG_IPK_DIR) libncurses.control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH) - mkdir -p $(PKG_IPK_DIR)/usr/lib - cp -a $(PKG_BUILD_DIR)/lib/lib*.so.* $(PKG_IPK_DIR)/usr/lib/ - mkdir -p $(PKG_IPK_DIR)/usr/share/terminfo - for f in a/ansi d/dumb l/linux s/screen v/vt100 x/xterm x/xterm-color; do \ - mkdir -p $(PKG_IPK_DIR)/usr/share/terminfo/`dirname $${f}`; \ - cp -fpR \ - $(PKG_BUILD_DIR)/install/usr/share/terminfo/$${f} \ - $(PKG_IPK_DIR)/usr/share/terminfo/$${f}; \ +$(IPKG_LIBNCURSES): + install -d -m0755 $(IDIR_LIBNCURSES)/usr/lib + cp -fpR $(PKG_INSTALL_DIR)/usr/lib/lib{ncurses,panel}*.so.* $(IDIR_LIBNCURSES)/usr/lib/ + install -d -m0755 $(IDIR_LIBNCURSES)/usr/share/terminfo + for f in a/ansi d/dumb l/linux s/screen v/vt100 v/vt102 x/xterm x/xterm-color; do \ + install -d -m0755 $(IDIR_LIBNCURSES)/usr/share/terminfo/`dirname $${f}`; \ + cp -fpR $(PKG_INSTALL_DIR)/usr/share/terminfo/$${f} \ + $(IDIR_LIBNCURSES)/usr/share/terminfo/$${f}; \ done - mkdir -p $(PACKAGE_DIR) - $(IPKG_BUILD) $(PKG_IPK_DIR) $(PACKAGE_DIR) + $(RSTRIP) $(IDIR_LIBNCURSES) + $(IPKG_BUILD) $(IDIR_LIBNCURSES) $(PACKAGE_DIR) + +$(STAGING_DIR)/usr/lib/libncurses.so: $(PKG_BUILD_DIR)/.built + mkdir -p $(STAGING_DIR)/usr/include + cp -fpR $(PKG_INSTALL_DIR)/usr/include/curses.h $(STAGING_DIR)/usr/include/ + cp -fpR $(PKG_INSTALL_DIR)/usr/include/{ncurses,panel}.h $(STAGING_DIR)/usr/include/ + cp -fpR $(PKG_INSTALL_DIR)/usr/include/panel.h $(STAGING_DIR)/usr/include/ + cp -fpR $(PKG_INSTALL_DIR)/usr/include/term{,cap}.h $(STAGING_DIR)/usr/include/ + cp -fpR $(PKG_INSTALL_DIR)/usr/include/unctrl.h $(STAGING_DIR)/usr/include/ + mkdir -p $(STAGING_DIR)/usr/lib + cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libcurses.so $(STAGING_DIR)/usr/lib/ + cp -fpR $(PKG_INSTALL_DIR)/usr/lib/lib{ncurses,panel}.{a,so*} $(STAGING_DIR)/usr/lib/ + touch $@ + +install-dev: $(STAGING_DIR)/usr/lib/libncurses.so -$(IPKG_STATE_DIR)/info/$(PKG_NAME).list: $(PKG_IPK) - $(IPKG) install $(PKG_IPK) +uninstall-dev: + rm -rf \ + $(STAGING_DIR)/usr/include/curses.h \ + $(STAGING_DIR)/usr/include/{ncurses,panel}.h \ + $(STAGING_DIR)/usr/include/panel.h \ + $(STAGING_DIR)/usr/include/term{,cap}.h \ + $(STAGING_DIR)/usr/include/unctrl.h \ + $(STAGING_DIR)/usr/lib/libcurses.so \ + $(STAGING_DIR)/usr/lib/lib{ncurses,panel}.{a,so*} \ -source: $(DL_DIR)/$(PKG_SOURCE) -prepare: $(PKG_BUILD_DIR)/.unpacked -compile: $(STAGING_DIR)/usr/include/ncurses.h $(PKG_IPK) -install: $(IPKG_STATE_DIR)/info/$(PKG_NAME).list +compile: install-dev +clean: uninstall-dev -clean: - rm -rf $(PKG_BUILD_DIR) - rm -f $(PKG_IPK)