X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=blobdiff_plain;f=lfs%2Fncurses;h=1c0fb04271b87bb1209b2f43a3fe1796069232e0;hp=3c7be4d0e85b3637949aec567eaf0273d7df2dde;hb=3e1145e1a0b1a08bf61d6c4962eeae48e3d0c355;hpb=bb1f8ba08bc7ca7c2de4d85976784697bc763cc7 diff --git a/lfs/ncurses b/lfs/ncurses index 3c7be4d0e8..1c0fb04271 100644 --- a/lfs/ncurses +++ b/lfs/ncurses @@ -24,7 +24,7 @@ include Config -VER = 5.5 +VER = 5.9 THISAPP = ncurses-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -35,19 +35,26 @@ DIR_APP = $(DIR_SRC)/$(THISAPP) # ifeq "$(ROOT)" "" TARGET = $(DIR_INFO)/$(THISAPP) - EXTRA_CONFIG = --prefix=/usr --with-shared \ - --without-debug --enable-widec --disable-nls - EXTRA_MAKE = - EXTRA_INSTALL = + PREFIX = /usr else TARGET = $(DIR_INFO)/$(THISAPP)-tools - EXTRA_CONFIG = --prefix=/tools --with-shared \ - --without-debug --without-ada --enable-overwrite \ - --disable-nls - EXTRA_MAKE = - EXTRA_INSTALL = + PREFIX = /tools endif +EXTRA_CONFIG += \ + --prefix=$(PREFIX) \ + --with-shared \ + --without-debug \ + --without-ada \ + --with-ospeed=unsigned \ + --with-chtype=long \ + --enable-hard-tabs \ + --enable-xmc-glitch \ + --enable-colorfgbg \ + --enable-overwrite \ + --with-termlib=tinfo \ + --disable-nls + ############################################################################### # Top-level Rules ############################################################################### @@ -56,7 +63,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_MD5 = e73c1ac10b4bfc46db43b2ddfd6244ef +$(DL_FILE)_MD5 = 8cb9c412e5f2d96bc6f459aa8c6282a1 install : $(TARGET) @@ -86,25 +93,35 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/ncurses-5.5-fixes-1.patch - cd $(DIR_APP) && ./configure $(EXTRA_CONFIG) - cd $(DIR_APP) && make $(EXTRA_MAKE) #$(MAKETUNING) # Causes an error! - cd $(DIR_APP) && make $(EXTRA_INSTALL) install -ifeq "$(ROOT)" "" - chmod -v 755 /usr/lib/*.5.5 - chmod -v 644 /usr/lib/libncurses++w.a - mv -v /usr/lib/libncursesw.so.5* /lib - ln -sfv ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so - cd $(DIR_APP) && for lib in curses ncurses form panel menu ; do \ - rm -vf /usr/lib/lib$${lib}.so ; \ - echo "INPUT(-l$${lib}w)" >/usr/lib/lib$${lib}.so ; \ - ln -sfv lib$${lib}w.a /usr/lib/lib$${lib}.a ; \ + cd $(DIR_APP) && mkdir -pv narrowc widec + + # Build narrowc version. + cd $(DIR_APP)/narrowc && ln -svf ../configure . + cd $(DIR_APP)/narrowc && ./configure $(EXTRA_CONFIG) --with-ticlib + cd $(DIR_APP)/narrowc && make libs + cd $(DIR_APP)/narrowc && make -C progs + + # Build widec version. + cd $(DIR_APP)/widec && ln -svf ../configure . + cd $(DIR_APP)/widec && ./configure $(EXTRA_CONFIG) \ + --enable-widec --without-progs + cd $(DIR_APP)/widec && make libs + + # Install everything. + cd $(DIR_APP) && make -C narrowc install.{libs,progs,data} + rm -vf $(PREFIX)/lib/libtinfo.* + cd $(DIR_APP) && make -C widec install.{libs,includes,man} + + # don't require -ltinfo when linking with --no-add-needed + for l in $(PREFIX)/lib/libncurses{,w}.so; do \ + soname=$$(basename $$(readlink $$l)); \ + rm -f $$l; \ + echo "INPUT($$soname -ltinfo)" > $$l; \ done - ln -sfv libncurses++w.a /usr/lib/libncurses++.a4 - echo "INPUT(-lncursesw)" >/usr/lib/libcursesw.so - ln -sfv libncurses.so /usr/lib/libcurses.so - ln -sfv libncursesw.a /usr/lib/libcursesw.a - ln -sfv libncurses.a /usr/lib/libcurses.a -endif + + rm -vf $(PREFIX)/lib/libcurses{,w}.so + echo "INPUT(-lncurses)" > $(PREFIX)/lib/libcurses.so + echo "INPUT(-lncursesw)" > $(PREFIX)/lib/libcursesw.so + echo "INPUT(-ltinfo)" > $(PREFIX)/lib/libtermcap.so @rm -rf $(DIR_APP) @$(POSTBUILD)