X-Git-Url: http://git.ipfire.org/?p=ipfire-2.x.git;a=blobdiff_plain;f=lfs%2Fncurses;h=1186b5244f3aeea2a12cc1c7f8deb37269238347;hp=691d4e5dd5429a3b1f90e52cbca8b8cfb9d730ff;hb=6c4cc7ea1bcb58c586ae64ae6f76720b6b89bda4;hpb=90d372c4b422f71fec009b3ae0cda948f881dc7d diff --git a/lfs/ncurses b/lfs/ncurses index 691d4e5dd5..1186b5244f 100644 --- a/lfs/ncurses +++ b/lfs/ncurses @@ -1,22 +1,20 @@ ############################################################################### -# This file is part of the IPCop Firewall. # # # -# IPCop is free software; you can redistribute it and/or modify # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2016 IPFire Team # +# # +# This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # -# the Free Software Foundation; either version 2 of the License, or # +# the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # -# IPCop is distributed in the hope that it will be useful, # +# This program is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # -# along with IPCop; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Makefiles are based on LFSMake, which is # -# Copyright (C) 2002 Rod Roard # +# along with this program. If not, see . # # # ############################################################################### @@ -26,30 +24,34 @@ include Config -VER = 5.5 +VER = 6.0 THISAPP = ncurses-$(VER) DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) -# Normal build or /tools build. +# Normal build or $(TOOLS_DIR) build. # 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_DIR) + EXTRA_CONFIG = --build=$(BUILDTARGET) endif +EXTRA_CONFIG += \ + --prefix=$(PREFIX) \ + --enable-widec \ + --with-shared \ + --without-debug \ + --without-normal \ + --enable-pc-files \ + --disable-nls \ + --mandir=/usr/share/man + ############################################################################### # Top-level Rules ############################################################################### @@ -58,7 +60,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_MD5 = e73c1ac10b4bfc46db43b2ddfd6244ef +$(DL_FILE)_MD5 = ee13d052e1ead260d7c28071f46eefb1 install : $(TARGET) @@ -88,25 +90,27 @@ $(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 ; \ - 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 + # Don't install a static library + cd $(DIR_APP) && sed -i '/LIBTOOL_INSTALL/d' c++/Makefile.in + # Create pkgconfig dir in toolchain +ifneq "$(ROOT)" "" + mkdir -pv $(TOOLS_DIR)/lib/pkgconfig/ endif + cd $(DIR_APP) && CPPFLAGS=-P ./configure $(EXTRA_CONFIG) + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install + + # allow the linker to find non-wide-character ncurses libraries + for lib in ncurses form panel menu; do \ + rm -vf $(PREFIX)/lib/lib$${lib}.so; \ + echo "INPUT(-l$${lib}w)" > $(PREFIX)/lib/lib$${lib}.so; \ + ln -sfv $${lib}w.pc $(PREFIX)/lib/pkgconfig/$${lib}.pc; \ + done + + # old applications that look for -lcurses at build time are still buildable + rm -vf /usr/lib/libcursesw.so + echo "INPUT(-lncursesw)" > $(PREFIX)/lib/libcursesw.so + ln -sfv libncurses.so $(PREFIX)/lib/libcurses.so + @rm -rf $(DIR_APP) @$(POSTBUILD)