The attached info files for libncursesw6.info and ncurses6.info add ncurses 6.0 to fink base. The changes from the current libncursesw5.info file are...
--- /sw/fink/10.11/stable/main/finkinfo/base/libncursesw5.info 2016-10-06 09:54:50.000000000 -0400
+++ libncursesw6.info 2016-10-06 09:07:25.000000000 -0400
@@ -1,14 +1,15 @@
-Package: libncursesw5
-Version: 5.9-20110507
+Package: libncursesw6
+Version: 6.0
Revision: 1
GCC: 4.0
-#Source: ftp://invisible-island.net/ncurses/current/ncurses-%v.tgz
-Source: mirror:sourceforge:fink/ncurses-%v.tgz
-Source-MD5: 49dc7136424f2bdd653439eda63a2375
-SourceDirectory: ncurses-5.9
+Source: ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses-%v.tar.gz
+Source-MD5: ee13d052e1ead260d7c28071f46eefb1
+SourceDirectory: ncurses-%v
BuildDepends: fink (>= 0.13.0)
Depends: %N-shlibs (= %v-%r)
+Conflicts: libncursesw5, libncursesw6
+Replaces: libncursesw5, libncursesw6
Essential: false
BuildDependsOnly: true
PatchScript: <<
@@ -18,8 +19,10 @@
gzip -cd $p | patch -p1
done
- #Need to remove these entries to avoid failure on case sensitive file systems
+ # Need to remove these entries to avoid failure on case sensitive file systems
perl -pi -e "s/hp70092a\|//; s/hp2621a\|//; s/2621a\|//" misc/terminfo.src
+ # Remove unsupported --param max-inline-insns-single=1200 option
+ perl -pi -e "s/--param max-inline-insns-single=1200//" configure
<<
ConfigureParams: <<
--without-ada \
@@ -58,10 +61,10 @@
<<
DocFiles: README ANNOUNCE NEWS INSTALL TO-DO MANIFEST
Shlibs: <<
- %p/lib/libformw.5.dylib 5.0.0 %n (>= 5.4-1)
- %p/lib/libmenuw.5.dylib 5.0.0 %n (>= 5.4-1)
- %p/lib/libncursesw.5.dylib 5.0.0 %n (>= 5.4-1)
- %p/lib/libpanelw.5.dylib 5.0.0 %n (>= 5.4-1)
+ %p/lib/libformw.6.dylib 6.0.0 %n (>= 6.0-1)
+ %p/lib/libmenuw.6.dylib 6.0.0 %n (>= 6.0-1)
+ %p/lib/libncursesw.6.dylib 6.0.0 %n (>= 6.0-1)
+ %p/lib/libpanelw.6.dylib 6.0.0 %n (>= 6.0-1)
<<
Description: Shared libraries for libncursesw5 package
<<
@@ -93,7 +96,7 @@
<<
DescUsage: <<
NOTE: Headers are installed into %p/include/ncursesw instead of
-%p/include as with libncurses5. Packages depending on this might
+%p/include as with libncurses6. Packages depending on this might
need to add %p/include/ncursesw to CPPFLAGS or otherwise make
adjustments to build properly. All library names end in 'w'.
<<
and the changes from the ncurses.info file are....
--- /sw/fink/10.11/stable/main/finkinfo/base/ncurses.info 2015-11-26 16:47:27.000000000 -0500
+++ ncurses6.info 2016-10-06 09:36:32.000000000 -0400
@@ -1,15 +1,14 @@
-Package: ncurses
-Version: 5.9-20110507
+Package: ncurses6
+Version: 6.0
Revision: 1
GCC: 4.0
-#Source: ftp://invisible-island.net/ncurses/current/ncurses-%v.tgz
-Source: mirror:sourceforge:fink/ncurses-%v.tgz
-Source-MD5: 49dc7136424f2bdd653439eda63a2375
-SourceDirectory: ncurses-5.9
+Source: ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses-%v.tar.gz
+Source-MD5: ee13d052e1ead260d7c28071f46eefb1
+SourceDirectory: ncurses-%v
BuildDepends: fink (>= 0.13.0)
-Depends: libncurses5-shlibs (>= %v-%r)
-Replaces: libncurses5 (<< 5.4-20041023-4)
+Depends: libncurses6-shlibs (>= %v-%r)
+Replaces: libncurses5 (<< 5.4-20041023-4), ncurses
Essential: true
PatchScript: <<
#!/bin/sh -ex
@@ -52,15 +51,15 @@
#!/bin/sh -ev
make install DESTDIR=%d DYLD_LIBRARY_PATH=`pwd`/lib:`pwd`/lib/ncurses
# add extra symlinks in the main lib directory
- ln -s ncurses/libform.5.dylib %i/lib/libform.dylib
- ln -s ncurses/libmenu.5.dylib %i/lib/libmenu.dylib
- ln -s ncurses/libncurses.5.dylib %i/lib/libncurses.dylib
- ln -s ncurses/libpanel.5.dylib %i/lib/libpanel.dylib
- ln -s ncurses/libncurses.5.dylib %i/lib/libcurses.dylib
- ln -s ncurses/libncurses.5.dylib %i/lib/libtermcap.dylib
+ ln -s ncurses/libform.6.dylib %i/lib/libform.dylib
+ ln -s ncurses/libmenu.6.dylib %i/lib/libmenu.dylib
+ ln -s ncurses/libncurses.6.dylib %i/lib/libncurses.dylib
+ ln -s ncurses/libpanel.6.dylib %i/lib/libpanel.dylib
+ ln -s ncurses/libncurses.6.dylib %i/lib/libcurses.dylib
+ ln -s ncurses/libncurses.6.dylib %i/lib/libtermcap.dylib
<<
SplitOff: <<
- Package: libncurses5-shlibs
+ Package: libncurses6-shlibs
Depends: base-files
Essential: true
Files: <<
@@ -71,21 +70,21 @@
<<
DocFiles: README ANNOUNCE NEWS INSTALL TO-DO MANIFEST
Shlibs: <<
- %p/lib/ncurses/libform.5.dylib 5.0.0 %n (>= 5.4-20041023-1)
- %p/lib/ncurses/libmenu.5.dylib 5.0.0 %n (>= 5.4-20041023-1)
- %p/lib/ncurses/libncurses.5.dylib 5.0.0 %n (>= 5.4-20041023-1)
- %p/lib/ncurses/libpanel.5.dylib 5.0.0 %n (>= 5.4-20041023-1)
+ %p/lib/ncurses/libform.6.dylib 6.0.0 %n (>= 6.0-1)
+ %p/lib/ncurses/libmenu.6.dylib 6.0.0 %n (>= 6.0-1)
+ %p/lib/ncurses/libncurses.6.dylib 6.0.0 %n (>= 6.0-1)
+ %p/lib/ncurses/libpanel.6.dylib 6.0.0 %n (>= 6.0-1)
<<
Description: Shared libraries for libncurses5 package
<<
SplitOff2: <<
- Package: libncurses5
- Depends: libncurses5-shlibs (= %v-%r)
+ Package: libncurses6
+ Depends: libncurses6-shlibs (= %v-%r)
BuildDependsOnly: true
- Conflicts: ncurses-dev, libncurses5-64bit
- Replaces: ncurses-dev, ncurses (<= 5.3-20031018-2), libncurses5-64bit, ncurses (<= 5.7-20100227-1)
- Provides: libncurses5-dev
- Files: bin/ncurses5-config lib/ncurses include lib/libcurses.dylib lib/libform.dylib lib/libmenu.dylib lib/libncurses.dylib lib/libpanel.dylib lib/libtermcap.dylib
+ Conflicts: ncurses-dev, libncurses5-64bit, libncurses5
+ Replaces: ncurses-dev, ncurses (<= 5.3-20031018-2), libncurses5-64bit, ncurses (<= 5.7-20100227-1), libncurses5
+ Provides: libncurses6-dev
+ Files: bin/ncurses6-config lib/ncurses include lib/libcurses.dylib lib/libform.dylib lib/libmenu.dylib lib/libncurses.dylib lib/libpanel.dylib lib/libtermcap.dylib
DocFiles: README ANNOUNCE NEWS INSTALL TO-DO MANIFEST
Description: Full-screen ascii drawing library
<<
Tested on 10.11 with 'fink -m'.
The only part that I am dubious about is the handling of the fact tgat ncurses contains overlapping files with ncurses6 and both being marked Essential. So far it appears that simply appending ncurses to the Replaces field in ncurses6 resolves this conflict. However I do wonder if we should refactor ncurses6 to provide a ncurses package that supersedes the one from ncurses instead?
Info file for libncursesw6-6.0-1
Info file for ncurses6-6.0-1
The libncursesw6 packaging depends on the updated libncursesw5-5.9-20110507-2 to be aware of the C/R on libncursesw5. https://sourceforge.net/p/fink/package-submissions/4804/
Replace ncurses6-6.0-1 with libncurses6-shlibs-6.0-1 to allow for ncurses splitt-off with additional fix to retain libncurses6-shlibs DocFiles.
Last edit: Jack Howarth 2016-10-06
Work on-going at https://github.com/fink/fink-distributions/pull/29