| 1 | # $Id$ |
|---|
| 2 | # |
|---|
| 3 | # Things to keep in mind: |
|---|
| 4 | # - Link to libtinfo5 in downstream packages if possible to avoid *w/*non-w bindings |
|---|
| 5 | # as described in this posting "Craig Small: ncurses library split - Planet Debian": |
|---|
| 6 | # https://plus.google.com/105567297772267099132/posts/Bv5GSTQvfzC |
|---|
| 7 | |
|---|
| 8 | NAME = ncurses |
|---|
| 9 | VERSION = 5.9 |
|---|
| 10 | CATEGORIES = lib |
|---|
| 11 | GARTYPE = v2 |
|---|
| 12 | |
|---|
| 13 | define BLURB |
|---|
| 14 | The ncurses (new curses) library is a free software emulation of curses |
|---|
| 15 | in System V Release 4.0 and more. It uses terminfo format, supports pads |
|---|
| 16 | and color and multiple highlights and forms charcters and function-key |
|---|
| 17 | mapping, and has all the other SYSV-curses enhancements over BSD curses. |
|---|
| 18 | It should port easily to any ANSI/POSIX-conforming UNIX-like system. |
|---|
| 19 | On systems supporting libiconv, the library can be built to support |
|---|
| 20 | wide- and multibyte-character applications, e.g., UTF-8. |
|---|
| 21 | endef |
|---|
| 22 | |
|---|
| 23 | MASTER_SITES = $(GNU_MIRROR) |
|---|
| 24 | DISTFILES = $(NAME)-$(VERSION).tar.gz |
|---|
| 25 | |
|---|
| 26 | LICENSE = README |
|---|
| 27 | |
|---|
| 28 | PACKAGES += CSWncurses |
|---|
| 29 | SPKG_DESC_CSWncurses = A free software emulation of curses |
|---|
| 30 | RUNTIME_DEP_PKGS_CSWncurses += CSWterminfo |
|---|
| 31 | CHECKPKG_OVERRIDES_CSWncurses += surplus-dependency|CSWterminfo |
|---|
| 32 | RUNTIME_DEP_PKGS_CSWncurses += CSWlibncursesw5 |
|---|
| 33 | # These are legacy dependencies for packages still depending on CSWncurses |
|---|
| 34 | # instead of the specific libraries |
|---|
| 35 | RUNTIME_DEP_PKGS_CSWncurses += CSWlibncurses5 |
|---|
| 36 | CHECKPKG_OVERRIDES_CSWncurses += surplus-dependency|CSWlibncurses5 |
|---|
| 37 | RUNTIME_DEP_PKGS_CSWncurses += CSWlibpanel5 |
|---|
| 38 | CHECKPKG_OVERRIDES_CSWncurses += surplus-dependency|CSWlibpanel5 |
|---|
| 39 | RUNTIME_DEP_PKGS_CSWncurses += CSWlibpanelw5 |
|---|
| 40 | CHECKPKG_OVERRIDES_CSWncurses += surplus-dependency|CSWlibpanelw5 |
|---|
| 41 | |
|---|
| 42 | PACKAGES += CSWlibform5 |
|---|
| 43 | PKGFILES_CSWlibform5 += $(call pkgfiles_lib,libform.so.5) |
|---|
| 44 | SPKG_DESC_CSWlibform5 += A free software emulation of curses, libform.so.5 |
|---|
| 45 | RUNTIME_DEP_PKGS_CSWlibform5 += CSWlibncurses5 |
|---|
| 46 | |
|---|
| 47 | PACKAGES += CSWlibformw5 |
|---|
| 48 | PKGFILES_CSWlibformw5 += $(call pkgfiles_lib,libformw.so.5) |
|---|
| 49 | SPKG_DESC_CSWlibformw5 += A free software emulation of curses, libformw.so.5 |
|---|
| 50 | RUNTIME_DEP_PKGS_CSWlibformw5 += CSWlibncursesw5 |
|---|
| 51 | |
|---|
| 52 | PACKAGES += CSWlibmenu5 |
|---|
| 53 | PKGFILES_CSWlibmenu5 += $(call pkgfiles_lib,libmenu.so.5) |
|---|
| 54 | SPKG_DESC_CSWlibmenu5 += A free software emulation of curses, libmenu.so.5 |
|---|
| 55 | RUNTIME_DEP_PKGS_CSWlibmenu5 += CSWlibncurses5 |
|---|
| 56 | |
|---|
| 57 | PACKAGES += CSWlibmenuw5 |
|---|
| 58 | PKGFILES_CSWlibmenuw5 += $(call pkgfiles_lib,libmenuw.so.5) |
|---|
| 59 | SPKG_DESC_CSWlibmenuw5 += A free software emulation of curses, libmenuw.so.5 |
|---|
| 60 | RUNTIME_DEP_PKGS_CSWlibmenuw5 += CSWlibncursesw5 |
|---|
| 61 | |
|---|
| 62 | PACKAGES += CSWlibncurses5 |
|---|
| 63 | PKGFILES_CSWlibncurses5 += $(call pkgfiles_lib,libncurses.so.5) |
|---|
| 64 | SPKG_DESC_CSWlibncurses5 += A free software emulation of curses, libncurses.so.5 |
|---|
| 65 | # If we access via libncurses we also need the terminal definitions (undetected by checkpkg) |
|---|
| 66 | RUNTIME_DEP_PKGS_CSWlibncurses5 += CSWterminfo |
|---|
| 67 | CHECKPKG_OVERRIDES_CSWlibncurses5 += surplus-dependency|CSWterminfo |
|---|
| 68 | |
|---|
| 69 | PACKAGES += CSWlibncursesw5 |
|---|
| 70 | PKGFILES_CSWlibncursesw5 += $(call pkgfiles_lib,libncursesw.so.5) |
|---|
| 71 | SPKG_DESC_CSWlibncursesw5 += A free software emulation of curses, libncursesw.so.5 |
|---|
| 72 | # If we access via libncursesw we also need the terminal definitions (undetected by checkpkg) |
|---|
| 73 | RUNTIME_DEP_PKGS_CSWlibncursesw5 += CSWterminfo |
|---|
| 74 | CHECKPKG_OVERRIDES_CSWlibncursesw5 += surplus-dependency|CSWterminfo |
|---|
| 75 | |
|---|
| 76 | PACKAGES += CSWlibpanel5 |
|---|
| 77 | PKGFILES_CSWlibpanel5 += $(call pkgfiles_lib,libpanel.so.5) |
|---|
| 78 | SPKG_DESC_CSWlibpanel5 += A free software emulation of curses, libpanel.so.5 |
|---|
| 79 | RUNTIME_DEP_PKGS_CSWlibpanel5 += CSWlibncurses5 |
|---|
| 80 | |
|---|
| 81 | PACKAGES += CSWlibpanelw5 |
|---|
| 82 | PKGFILES_CSWlibpanelw5 += $(call pkgfiles_lib,libpanelw.so.5) |
|---|
| 83 | SPKG_DESC_CSWlibpanelw5 += A free software emulation of curses, libpanelw.so.5 |
|---|
| 84 | RUNTIME_DEP_PKGS_CSWlibpanelw5 += CSWlibncursesw5 |
|---|
| 85 | |
|---|
| 86 | PACKAGES += CSWlibncurses-dev |
|---|
| 87 | SPKG_DESC_CSWlibncurses-dev = Development files for libncurses.so.5 and assorted libraries |
|---|
| 88 | PKGFILES_CSWlibncurses-dev = $(PKGFILES_DEVEL) |
|---|
| 89 | RUNTIME_DEP_PKGS_CSWlibncurses-dev += CSWlibncursesw5 |
|---|
| 90 | RUNTIME_DEP_PKGS_CSWlibncurses-dev += CSWlibmenuw5 |
|---|
| 91 | RUNTIME_DEP_PKGS_CSWlibncurses-dev += CSWlibncurses5 |
|---|
| 92 | RUNTIME_DEP_PKGS_CSWlibncurses-dev += CSWlibpanel5 |
|---|
| 93 | RUNTIME_DEP_PKGS_CSWlibncurses-dev += CSWlibformw5 |
|---|
| 94 | RUNTIME_DEP_PKGS_CSWlibncurses-dev += CSWlibform5 |
|---|
| 95 | RUNTIME_DEP_PKGS_CSWlibncurses-dev += CSWlibpanelw5 |
|---|
| 96 | RUNTIME_DEP_PKGS_CSWlibncurses-dev += CSWlibmenu5 |
|---|
| 97 | |
|---|
| 98 | PACKAGES += CSWterminfo |
|---|
| 99 | SPKG_DESC_CSWterminfo = Database of terminal information, part of ncurses |
|---|
| 100 | ARCHALL_CSWterminfo = 1 |
|---|
| 101 | PKGFILES_CSWterminfo = $(datadir)/terminfo.* |
|---|
| 102 | |
|---|
| 103 | VENDOR_URL = http://www.gnu.org/software/ncurses/ncurses.html |
|---|
| 104 | |
|---|
| 105 | BUILD64 = 1 |
|---|
| 106 | |
|---|
| 107 | EXTRA_MODULATORS = WIDEC |
|---|
| 108 | MODULATIONS_WIDEC = disable enable |
|---|
| 109 | |
|---|
| 110 | EXTRA_CONFIGURE_WIDEC-disable = --disable-widec |
|---|
| 111 | EXTRA_CONFIGURE_WIDEC-enable = --enable-widec |
|---|
| 112 | |
|---|
| 113 | # Switch to larger model or these kinds of errors occur: |
|---|
| 114 | # ld.so.1: tic: fatal: relocation error: R_AMD64_PC32: file /home/dam/mgar/pkg/ncurses/trunk/work/solaris9-i386/build-isa-amd64-widec-disable/ncurses-5.9/lib/libncurses.so.5: symbol putc: value 0x280010b35b0 does not fit |
|---|
| 115 | # (only valid on 64 bit x86) |
|---|
| 116 | # See for details |
|---|
| 117 | # http://developers.sun.com/solaris/articles/about_amd64_abi.html |
|---|
| 118 | #EXTRA_CFLAGS-amd64 = -xmodel=medium |
|---|
| 119 | EXTRA_CFLAGS-amd64 = -Kpic |
|---|
| 120 | EXTRA_CFLAGS = $(EXTRA_CFLAGS-$(ISA)) |
|---|
| 121 | EXTRA_LDFLAGS = $(EXTRA_CFLAGS-$(ISA)) |
|---|
| 122 | |
|---|
| 123 | CONFIGURE_ARGS = --prefix=$(prefix) |
|---|
| 124 | CONFIGURE_ARGS += --bindir=$(bindir) |
|---|
| 125 | CONFIGURE_ARGS += --libdir=$(libdir) |
|---|
| 126 | CONFIGURE_ARGS += --mandir=$(mandir) |
|---|
| 127 | CONFIGURE_ARGS += --without-libtool |
|---|
| 128 | CONFIGURE_ARGS += --with-shared |
|---|
| 129 | CONFIGURE_ARGS += --disable-overwrite |
|---|
| 130 | CONFIGURE_ARGS += --without-ada |
|---|
| 131 | CONFIGURE_ARGS += $(EXTRA_CONFIGURE_WIDEC-$(WIDEC)) |
|---|
| 132 | |
|---|
| 133 | # Don't use capabilities HPA and VPA as Solaris xterm doesn't understand it. |
|---|
| 134 | # See for details |
|---|
| 135 | # <http://opencsw.org/bugtrack/view.php?id=2961> |
|---|
| 136 | # <http://opencsw.org/bugtrack/view.php?id=2942> |
|---|
| 137 | # <http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6569261> |
|---|
| 138 | CONFIGURE_ARGS += --without-xterm-new |
|---|
| 139 | |
|---|
| 140 | TEST_TARGET = test |
|---|
| 141 | |
|---|
| 142 | MERGE_SCRIPTS_isa-default-widec-disable = copy-only copy-config-only |
|---|
| 143 | MERGE_DIRS_isa-default-widec-disable = $(libdir) $(includedir) |
|---|
| 144 | MERGE_SCRIPTS_isa-extra-widec-disable = copy-relocated-only copy-config-only |
|---|
| 145 | MERGE_DIRS_isa-extra-widec-disable = $(libdir) |
|---|
| 146 | |
|---|
| 147 | MERGE_SCRIPTS_isa-default-widec-enable = copy-all |
|---|
| 148 | MERGE_SCRIPTS_isa-extra-widec-enable = copy-relocated-only copy-config-only |
|---|
| 149 | MERGE_DIRS_isa-extra-widec-enable = $(libdir) |
|---|
| 150 | |
|---|
| 151 | # This is termcap location which defaults to |
|---|
| 152 | # /etc/termcap, /usr/share/misc/termcap and $HOME/.termcap |
|---|
| 153 | # which I think is ok |
|---|
| 154 | CHECKPKG_OVERRIDES_CSWlibncurses-dev += file-with-bad-content|/usr/share|root/opt/csw/share/man/man3/ncurses.3x |
|---|
| 155 | |
|---|
| 156 | # I *think* this is a default, but keep an eye on it |
|---|
| 157 | CHECKPKG_OVERRIDES_CSWlibncurses-dev += file-with-bad-content|/usr/share|root/opt/csw/include/ncursesw/tic.h |
|---|
| 158 | CHECKPKG_OVERRIDES_CSWlibncurses-dev += file-with-bad-content|/usr/share|root/opt/csw/include/ncurses/tic.h |
|---|
| 159 | |
|---|
| 160 | # I have no idea what this is. Inspect on problems. |
|---|
| 161 | CHECKPKG_OVERRIDES_CSWterminfo += file-with-bad-content|/usr/share|root/opt/csw/share/terminfo/p/pcmw |
|---|
| 162 | |
|---|
| 163 | include gar/category.mk |
|---|
| 164 | |
|---|
| 165 | LDFLAGS := $(filter-out -L%,$(LDFLAGS)) |
|---|