[Midnightbsd-cvs] mports: devel/newt: add newt
crash at midnightbsd.org
crash at midnightbsd.org
Fri May 30 20:03:04 EDT 2008
Log Message:
-----------
add newt
Added Files:
-----------
mports/devel/newt:
Makefile (r1.1)
distinfo (r1.1)
pkg-descr (r1.1)
pkg-plist (r1.1)
mports/devel/newt/files:
patch-ab (r1.1)
patch-ac (r1.1)
patch-newt.c (r1.1)
setup.py (r1.1)
-------------- next part --------------
--- /dev/null
+++ devel/newt/pkg-descr
@@ -0,0 +1,10 @@
+Newt is a windowing toolkit for text mode built from the slang
+library. It allows color text mode applications to easily use
+stackable windows, push buttons, check boxes, radio buttons, lists,
+entry fields, labels, and displayable text. Scrollbars are supported,
+and forms may be nested to provide extra functionality.
+
+Besides the newt library, this port provides whiptail, which may
+be used from shell scripts similarly to Savio Lam's "dialog". Newt
+provides the textual interface for the Red Hat and Debian boot
+disks.
--- /dev/null
+++ devel/newt/pkg-plist
@@ -0,0 +1,12 @@
+bin/whiptail
+%%PYTHONOPT%%lib/%%PYTHON_VERSION%%/site-packages/_snack.so
+%%PYTHONOPT%%lib/%%PYTHON_VERSION%%/site-packages/snack.py
+%%PYTHONOPT%%lib/%%PYTHON_VERSION%%/site-packages/snack.pyc
+%%TCLOPT%%lib/whiptcl.so
+lib/libnewt.a
+lib/libnewt.so
+lib/libnewt.so.%%SOVERSION%%
+include/newt.h
+%%PORTDOCS%%%%PYTHONOPT%%%%EXAMPLESDIR%%/peanuts.py
+%%PORTDOCS%%%%PYTHONOPT%%%%EXAMPLESDIR%%/popcorn.py
+%%PORTDOCS%%%%PYTHONOPT%%@dirrm %%EXAMPLESDIR%%
--- /dev/null
+++ devel/newt/Makefile
@@ -0,0 +1,74 @@
+# New ports collection makefile for: newt
+# Date created: 08 Jan 2000
+# Whom: Will Andrews <andrews at technologist.com>
+#
+# $FreeBSD: ports/devel/newt/Makefile,v 1.30 2007/12/14 23:14:24 miwi Exp $
+# $MidnightBSD: mports/devel/newt/Makefile,v 1.1 2008/05/31 00:03:01 crash Exp $
+
+PORTNAME= newt
+PORTVERSION= 0.51.0
+PORTREVISION= 4
+CATEGORIES= devel
+MASTER_SITES= ${MASTER_SITE_LOCAL} \
+ # ftp://ftp.redhat.com/pub/redhat/linux/rawhide/SRPMS/SRPMS/
+MASTER_SITE_SUBDIR= perky
+PKGNAMESUFFIX= ${PYTHONSUFFIX}${TCLSUFFIX}
+
+MAINTAINER= Ports at MidnightBSD.org
+COMMENT= Not Erik's Windowing Toolkit: console I/O handling library#'
+LICENSE= lgpl
+LIB_DEPENDS= slang.1:${PORTSDIR}/devel/libslang \
+ popt.0:${PORTSDIR}/devel/popt
+
+GNU_CONFIGURE= yes
+USE_LDCONFIG= yes
+SOVERSION= 51
+TCL_VERSION?= tcl8.3
+TCL_NODOT= ${TCL_VERSION:S/.//}
+MAKE_ENV+= CC=${CC} PCFLAGS="${CFLAGS}" TCLVERSION="${TCL_VERSION}"
+PLIST_SUB+= SOVERSION=${SOVERSION} \
+ EXAMPLESDIR="${EXAMPLESDIR:S,${PREFIX}/,,}"
+
+.if defined(WITH_PYTHON)
+PYTHONSUFFIX= -${PYTHON_PKGNAMEPREFIX:S/-//}
+BUILD_DEPENDS+= ${PYDISTUTILS}
+USE_PYTHON= yes
+MAKE_ENV+= WITH_PYTHON=yes
+PLIST_SUB+= PYTHONOPT=""
+.else
+PLIST_SUB+= PYTHONOPT="@comment "
+.endif
+
+.if defined(WITH_TCL)
+TCLSUFFIX= -${TCL_NODOT}
+LIB_DEPENDS+= ${TCL_NODOT}:${PORTSDIR}/lang/${TCL_NODOT}
+MAKE_ENV+= WITH_TCL=yes
+PLIST_SUB+= TCLOPT=""
+.else
+PLIST_SUB+= TCLOPT="@comment "
+.endif
+
+.include <bsd.port.pre.mk>
+
+post-patch:
+ ${REINPLACE_CMD} -e 's,^\(SONAME=\).*,\1${SOVERSION},g' \
+ ${WRKSRC}/configure
+ ${REINPLACE_CMD} -e 's,PyMem_DEL,PyObject_DEL,g' \
+ ${WRKSRC}/snackmodule.c
+
+.if defined(WITH_PYTHON)
+post-build:
+ @${LN} -sf ${WRKSRC}/libnewt.so.${SOVERSION} ${WRKSRC}/libnewt.so
+ @cd ${WRKSRC} && ${MAKE_ENV} ${PYTHON_CMD} ${FILESDIR}/setup.py build
+
+post-install:
+ @cd ${WRKSRC} && ${MAKE_ENV} ${PYTHON_CMD} ${FILESDIR}/setup.py \
+ install --prefix=${PREFIX}
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${EXAMPLESDIR}
+ ${INSTALL_SCRIPT} ${WRKSRC}/peanuts.py ${WRKSRC}/popcorn.py \
+ ${EXAMPLESDIR}
+.endif
+.endif
+
+.include <bsd.port.post.mk>
--- /dev/null
+++ devel/newt/distinfo
@@ -0,0 +1,3 @@
+MD5 (newt-0.51.0.tar.gz) = 33e9bbf29126dfdc0bd4b6bd1509b62d
+SHA256 (newt-0.51.0.tar.gz) = 45c617654c466eeb56cf62eb45a66acea0e84039c7b16ce7172fb5567001642f
+SIZE (newt-0.51.0.tar.gz) = 108158
--- /dev/null
+++ devel/newt/files/setup.py
@@ -0,0 +1,18 @@
+# $FreeBSD: ports/devel/newt/files/setup.py,v 1.3 2006/10/09 12:11:00 perky Exp $
+import os
+from distutils.core import setup, Extension
+
+LOCALBASE = os.environ['LOCALBASE']
+PREFIX = os.environ['PREFIX']
+
+setup ( name = 'newt',
+ version = '0.50.33',
+ description = 'Python interface to Newt module',
+ py_modules = ['snack'],
+ ext_modules = [ Extension(
+ name='_snack',
+ sources=['snackmodule.c'],
+ include_dirs=['.', LOCALBASE+'/include', PREFIX+'/include'],
+ library_dirs=['.', LOCALBASE+'/lib', PREFIX+'/lib'],
+ libraries=['newt', 'popt', 'slang', 'ncurses']
+ )])
--- /dev/null
+++ devel/newt/files/patch-ac
@@ -0,0 +1,23 @@
+--- form.c.orig Tue Jun 11 22:15:33 2002
++++ form.c Sat Jun 22 06:36:12 2002
+@@ -10,7 +10,6 @@
+ #endif
+ #include <sys/time.h>
+
+-#ifdef USE_GPM
+ #include <ctype.h>
+ #include <sys/time.h> /* timeval */
+ #include <sys/socket.h> /* socket() */
+@@ -19,11 +18,9 @@
+ #include <sys/stat.h> /* stat() */
+ #include <termios.h> /* winsize */
+ #include <unistd.h>
+-#include <sys/kd.h> /* KDGETMODE */
+ #include <signal.h>
++#include <string.h>
+ #include <stdio.h>
+-#endif
+-
+ #include "newt.h"
+ #include "newt_pr.h"
+
--- /dev/null
+++ devel/newt/files/patch-ab
@@ -0,0 +1,170 @@
+--- Makefile.in.orig Thu Aug 15 13:18:11 2002
++++ Makefile.in Fri Mar 19 03:29:21 2004
+@@ -1,36 +1,43 @@
+-LIBS = -lslang -lm #-lefence
+-SHLIBS = -lslang -lm -lc
++LIBS = -lslang -lm -lpopt -lncurses #-lefence
++SHLIBS = -lslang -lm -lc -lpopt -lncurses
+
+ GPM_SUPPORT=@gpm_support@
+
+-CFLAGS = $(RPM_OPT_FLAGS) -Wall -I/usr/include/slang -D_GNU_SOURCE
+-ifeq ($(RPM_OPT_FLAGS),)
+-CFLAGS += -g
+-endif
++CFLAGS += -I/usr/include -I${LOCALBASE}/include -I${PREFIX}/include
++LDFLAGS += -L/usr/lib -L${LOCALBASE}/lib -L${PREFIX}/lib
+
+ VERSION = @VERSION@
+ CVSTAG = r$(subst .,-,$(VERSION))
+ SONAME = @SONAME@
+
+-PYTHONVERS = $(shell ls -d /usr/include/python* | sed "s|/usr/include/||g")
++#PYTHONVERS = $(shell ls -d /usr/include/python* | sed "s|/usr/include/||g")
+
+-WHIPTCLSO=
+-#WHIPTCLSO=whiptcl.so
++.if defined(WITH_TCL)
++WHIPTCLSO=whiptcl.so
++CFLAGS += -I${LOCALBASE}/include/${TCLVERSION}
++LDFLAGS += -L${LOCALBASE}/lib/${TCLVERSION}
++SHLIBS += -l${TCLVERSION:S,.,,}
++.endif
++TARGET=${LIBNEWT} ${PROGS} ${WHIPTCLSO}
+
+-PROGS = test whiptail $(WHIPTCLSO) testgrid testtree
++PROGS = test whiptail testgrid testtree
+ TESTOBJS = test.o
+ NDIALOGOBJS = whiptail.o dialogboxes.o
+ WHIPTCLOBJS = whiptcl.o dialogboxes.o
+ LIBNEWT = libnewt.a
+-LIBNEWTSH = libnewt.so.$(VERSION)
++LIBNEWTSH = libnewt.so.$(SONAME)
+ LIBNEWTSONAME = libnewt.so.$(SONAME)
+ LIBOBJS = newt.o button.o form.o checkbox.o entry.o label.o listbox.o \
+ scrollbar.o textbox.o scale.o grid.o windows.o buttonbar.o \
+ checkboxtree.o
+
+-SHCFLAGS = -fPIC
++LIBSHOBJS = newt.So button.So form.So checkbox.So entry.So label.So listbox.So \
++ scrollbar.So textbox.So scale.So grid.So windows.So buttonbar.So \
++ checkboxtree.So
+
+-prefix = /usr
++SHCFLAGS = ${CFLAGS} -fPIC
++
++prefix = ${PREFIX}
+ includedir = $(prefix)/include
+ libdir = $(prefix)/lib
+ bindir = $(prefix)/bin
+@@ -38,44 +45,41 @@
+
+ #--------------------------------------
+
+-SOURCES = $(subst .o,.c,$(TESTOBJS) $(NDIALOGOBJS) $(LIBOBJS))
++SOURCES = $(subst .o,.c,$(TESTOBJS) $(NDIALOGOBJS) $(LIBOBJS)) $(subst .So,.c,$(LIBSHOBJS))
+
+-SHAREDDIR = shared
+-SHAREDOBJS = $(patsubst %,$(SHAREDDIR)/%, $(LIBOBJS))
++.SUFFIXES: .o .So
+
+-ifeq (.depend,$(wildcard .depend))
+-TARGET=$(PROGS)
+-else
+-TARGET=depend $(PROGS)
+-endif
++SHAREDOBJS = ${LIBSHOBJS}
+
+-all: $(TARGET) _snackmodule.so
++all: $(TARGET)
+
+ test: $(TESTOBJS) $(LIBNEWT)
+- gcc -g -o test $(TESTOBJS) $(LIBNEWT) $(LIBS) -static
++ ${CC} -g ${LDFLAGS} -o test $(TESTOBJS) $(LIBNEWT) $(LIBS) -static
+
+ testgrid: testgrid.o $(LIBNEWT)
+- gcc -g -o testgrid testgrid.o $(LIBNEWT) $(LIBS)
++ ${CC} -g ${LDFLAGS} -o testgrid testgrid.o $(LIBNEWT) $(LIBS)
+
+ testtree: testtree.o $(LIBNEWT)
+- gcc -g -o testtree testtree.o $(LIBNEWT) $(LIBS)
++ ${CC} -g ${LDFLAGS} -o testtree testtree.o $(LIBNEWT) $(LIBS)
+
+ _snackmodule.so: snackmodule.c $(LIBNEWTSH)
+ for ver in $(PYTHONVERS) ; do \
+ if [ ! -f "$$ver/_snackmodule.so" -o $(LIBNEWTSH) -nt "$$ver/_snackmodule.so" ]; then \
+ mkdir -p $$ver ;\
+- gcc $(CFLAGS) -I/usr/include/$$ver -fPIC -c -o $$ver/snackmodule.o snackmodule.c ;\
+- gcc --shared $(SHCFLAGS) -o $$ver/_snackmodule.so $$ver/snackmodule.o -L . $(LIBNEWTSH) ;\
++ ${CC} $(CFLAGS) -I/usr/include/$$ver -fPIC -c -o $$ver/snackmodule.o snackmodule.c ;\
++ ${CC} --shared $(SHCFLAGS) -o $$ver/_snackmodule.so $$ver/snackmodule.o -L . $(LIBNEWTSH) ;\
+ fi ; \
+ done
+
+ whiptail: $(NDIALOGOBJS) $(LIBNEWTSH)
+- gcc -g -o whiptail $(NDIALOGOBJS) -L . $(LIBNEWTSH) $(LIBS) -lpopt
++ ${CC} -g ${LDFLAGS} -o whiptail $(NDIALOGOBJS) -L . $(LIBNEWTSH) $(LIBS) -lpopt
+
+ whiptcl.so: $(WHIPTCLOBJS) $(LIBNEWTSH)
+- gcc -shared $(SHCFLAGS) -o whiptcl.so $(WHIPTCLOBJS) -L . $(LIBNEWTSH) -ltcl -lslang -lpopt -lm
++ ${CC} -shared ${LDFLAGS} $(SHCFLAGS) -o whiptcl.so $(WHIPTCLOBJS) -L . $(LIBNEWTSH) ${LIBS}
+
+-$(LIBNEWT): $(LIBNEWT)($(LIBOBJS))
++$(LIBNEWT): $(LIBOBJS)
++ ar q ${LIBNEWT} ${LIBOBJS}
++ ranlib ${LIBNEWT}
+
+ newt.o: newt.c Makefile
+ $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" -c -o $@ $<
+@@ -90,20 +94,16 @@
+ depend:
+ $(CPP) $(CFLAGS) -M $(SOURCES) > .depend
+
+-$(SHAREDDIR):
+- mkdir -p $(SHAREDDIR)
+-
+ sharedlib: $(LIBNEWTSH)
+
+-$(LIBNEWTSH): $(SHAREDDIR) $(SHAREDOBJS)
+- gcc -shared -o $(LIBNEWTSH) -Wl,-soname,$(LIBNEWTSONAME) $(SHAREDOBJS) $(SHLIBS)
++$(LIBNEWTSH): $(SHAREDOBJS)
++ ${CC} -shared ${LDFLAGS} -o $(LIBNEWTSH) -Wl,-soname,$(LIBNEWTSONAME) $(SHAREDOBJS) $(SHLIBS)
+
+-$(SHAREDDIR)/%.o : %.c
++.c.So:
+ $(CC) $(SHCFLAGS) -c $(CFLAGS) -o $@ $<
+
+-$(SHAREDDIR)/newt.o: newt.c Makefile
+- $(CC) $(SHCFLAGS) $(CFLAGS) -DVERSION=\"$(VERSION)\" -c -o $@ $<
+-
++newt.So: newt.c Makefile
++ $(CC) $(SHCFLAGS) -DVERSION=\"$(VERSION)\" -c -o $@ $<
+
+ install: $(LIBNEWT) install-sh whiptail
+ [ -d $(instroot)/$(bindir) ] || install -m 755 -d $(instroot)/$(bindir)
+@@ -113,16 +113,11 @@
+ install -m 644 $(LIBNEWT) $(instroot)/$(libdir)
+ install -s -m 755 whiptail $(instroot)/$(bindir)
+
+-install-sh: sharedlib $(WHIPTCLSO) _snackmodule.so
++install-sh: sharedlib $(WHIPTCLSO)
+ [ -d $(instroot)/$(libdir) ] || install -m 755 -d $(instroot)/$(libdir)
+ install -s -m 755 $(LIBNEWTSH) $(instroot)/$(libdir)
+ ln -sf $(LIBNEWTSH) $(instroot)/$(libdir)/libnewt.so
+ [ -n "$(WHIPTCLSO)" ] && install -s -m 755 whiptcl.so $(instroot)/$(libdir) || :
+- for ver in $(PYTHONVERS) ; do \
+- [ -d $(instroot)/$(libdir)/$$ver/site-packages ] || install -m 755 -d $(instroot)/$(libdir)/$$ver/site-packages ;\
+- install -s -m 755 $$ver/_snackmodule.so $(instroot)/$(libdir)/$$ver/site-packages ;\
+- install -m 755 snack.py $(instroot)/$(libdir)/$$ver/site-packages ;\
+- done
+
+ configure: configure.in
+ autoconf
+@@ -140,7 +135,3 @@
+ @rm -f /tmp/newt-$(VERSION).tar.gz
+ @echo " "
+ @echo "The final archive is ./newt-$(VERSION).tar.gz."
+-
+-ifeq (.depend,$(wildcard .depend))
+-include .depend
+-endif
--- /dev/null
+++ devel/newt/files/patch-newt.c
@@ -0,0 +1,15 @@
+
+$FreeBSD: ports/devel/newt/files/patch-newt.c,v 1.1 2006/06/20 00:00:38 sobomax Exp $
+
+--- newt.c
++++ newt.c
+@@ -94,6 +94,9 @@
+ { "\033[6~", NEWT_KEY_PGDN, NULL },
+ { "\033V", NEWT_KEY_PGUP, "kH" },
+ { "\033v", NEWT_KEY_PGUP, "kH" },
++
++ { "\033[G", NEWT_KEY_PGDN, NULL },
++ { "\033[I", NEWT_KEY_PGUP, NULL },
+
+ { "\033[[A", NEWT_KEY_F1, NULL },
+ { "\033[[B", NEWT_KEY_F2, NULL },
More information about the Midnightbsd-cvs
mailing list