summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/groff/.mtn2git_empty0
-rw-r--r--packages/groff/groff/.mtn2git_empty0
-rw-r--r--packages/groff/groff/groff.patch35
-rw-r--r--packages/groff/groff_1.19.1.bb22
-rw-r--r--packages/libtool/libtool-native_1.5.10.bb2
-rw-r--r--packages/libtool/libtool_1.5.10.bb1
-rw-r--r--packages/man/man/.mtn2git_empty0
-rw-r--r--packages/man/man/man.conf140
-rw-r--r--packages/man/man_1.5p.bb34
-rw-r--r--packages/ncftp/ncftp_3.1.9.bb19
-rw-r--r--packages/procps/procps-3.2.5/.mtn2git_empty0
-rw-r--r--packages/procps/procps-3.2.5/install.patch25
-rw-r--r--packages/procps/procps-3.2.5/pagesz-not-constant.patch22
-rw-r--r--packages/procps/procps-3.2.5/procmodule.patch36
-rw-r--r--packages/procps/procps-3.2.5/psmodule.patch21
-rw-r--r--packages/procps/procps_3.2.5.bb25
-rw-r--r--packages/screen/.mtn2git_empty0
-rw-r--r--packages/screen/screen-4.0.2/.mtn2git_empty0
-rw-r--r--packages/screen/screen-4.0.2/configure.patch970
-rw-r--r--packages/screen/screen_4.0.2.bb15
-rw-r--r--packages/streamripper/streamripper_1.61.10.bb16
-rw-r--r--packages/sylpheed/files/sylpheed-gnutls_2.0.0rc.patch92
-rw-r--r--packages/sylpheed/sylpheed_2.0.0rc.bb32
23 files changed, 1505 insertions, 2 deletions
diff --git a/packages/groff/.mtn2git_empty b/packages/groff/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/groff/.mtn2git_empty
diff --git a/packages/groff/groff/.mtn2git_empty b/packages/groff/groff/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/groff/groff/.mtn2git_empty
diff --git a/packages/groff/groff/groff.patch b/packages/groff/groff/groff.patch
new file mode 100644
index 0000000000..d28c21a2a3
--- /dev/null
+++ b/packages/groff/groff/groff.patch
@@ -0,0 +1,35 @@
+--- groff/contrib/mom/Makefile.sub~ 2005-01-23 10:48:26.000000000 +0100
++++ groff/contrib/mom/Makefile.sub 2005-01-23 10:52:49.000000000 +0100
+@@ -18,7 +18,7 @@
+ # Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ # These may be overridden if cross-compiling.
+-GROFFBIN=$(top_builddir)/src/roff/groff/groff
++GROFFBIN=echo
+ GROFF_BIN_PATH=`echo $(groff_bin_dirs) | sed -e 's| *|$(SH_SEP)|g'`
+
+ groff_bin_dirs=\
+--- groff/doc/Makefile.in~ 2005-01-23 10:58:22.000000000 +0100
++++ groff/doc/Makefile.in 2005-01-23 10:59:13.000000000 +0100
+@@ -35,8 +35,8 @@
+ pnmtops=@pnmtops_nosetpage@
+
+ # These may be overridden if cross-compiling.
+-TROFFBIN=$(top_builddir)/src/roff/troff/troff
+-GROFFBIN=$(top_builddir)/src/roff/groff/groff
++TROFFBIN=echo
++GROFFBIN=echo
+ GROFF_BIN_PATH=`echo $(groff_bin_dirs) | sed -e 's| *|:|g'`
+
+ # Since info files are distributed within the groff package, no
+--- groff/doc/Makefile.sub~ 2005-01-23 10:58:30.000000000 +0100
++++ groff/doc/Makefile.sub 2005-01-23 10:59:35.000000000 +0100
+@@ -18,7 +18,7 @@
+ # Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ # These may be overridden if cross-compiling.
+-GROFFBIN=$(top_builddir)/src/roff/groff/groff
++GROFFBIN=echo
+ GROFF_BIN_PATH=`echo $(groff_bin_dirs) | sed -e 's| *|$(SH_SEP)|g'`
+
+ # Since info files are distributed within the groff package, no
diff --git a/packages/groff/groff_1.19.1.bb b/packages/groff/groff_1.19.1.bb
new file mode 100644
index 0000000000..e54950f837
--- /dev/null
+++ b/packages/groff/groff_1.19.1.bb
@@ -0,0 +1,22 @@
+LICENSE = "GPL"
+SECTION = "base"
+DESCRIPTION = "GNU roff"
+RDEPENDS="libstdc++6"
+MAINTAINER = "Inge Arnesen <inge.arnesen@gmail.com>"
+SRC_URI = "http://ftp.gnu.org/gnu/groff/groff-${PV}.tar.gz \
+ file://groff.patch;patch=1"
+
+# prefix and exec-prefix are broken and the .in file is broken too
+# and can't be autoreconf'ed, so specify every dir
+EXTRA_OECONF="--prefix=${D} --exec-prefix=${D} --bindir=${D}/usr/bin --datadir=${D}/usr/share --mandir=${D}/usr/man --infodir=${D}/usr/share/info"
+
+inherit autotools
+
+do_configure () {
+ oe_runconf
+}
+
+#do_install() {
+# oe_runmake 'PREFIX=${D}' install
+#}
+
diff --git a/packages/libtool/libtool-native_1.5.10.bb b/packages/libtool/libtool-native_1.5.10.bb
index 9d84d29d39..fa2a6f4c8a 100644
--- a/packages/libtool/libtool-native_1.5.10.bb
+++ b/packages/libtool/libtool-native_1.5.10.bb
@@ -1,7 +1,7 @@
SECTION = "devel"
include libtool_${PV}.bb
-PR = "r2"
+PR = "r3"
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/libtool-${PV}"
SRC_URI_append = " file://libdir-la.patch;patch=1 \
file://prefix.patch;patch=1 \
diff --git a/packages/libtool/libtool_1.5.10.bb b/packages/libtool/libtool_1.5.10.bb
index f627f762af..1202279524 100644
--- a/packages/libtool/libtool_1.5.10.bb
+++ b/packages/libtool/libtool_1.5.10.bb
@@ -33,4 +33,3 @@ do_stage () {
oe_libinstall -a -so -C libltdl libltdl ${STAGING_LIBDIR}
install -m 0644 libltdl/ltdl.h ${STAGING_INCDIR}/
}
-}
diff --git a/packages/man/man/.mtn2git_empty b/packages/man/man/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/man/man/.mtn2git_empty
diff --git a/packages/man/man/man.conf b/packages/man/man/man.conf
new file mode 100644
index 0000000000..bb3c69720e
--- /dev/null
+++ b/packages/man/man/man.conf
@@ -0,0 +1,140 @@
+#
+# Generated automatically from man.conf.in by the
+# configure script.
+#
+# man.conf from man-1.5p
+#
+# For more information about this file, see the man pages man(1)
+# and man.conf(5).
+#
+# This file is read by man to configure the default manpath (also used
+# when MANPATH contains an empty substring), to find out where the cat
+# pages corresponding to given man pages should be stored,
+# and to map each PATH element to a manpath element.
+# It may also record the pathname of the man binary. [This is unused.]
+# The format is:
+#
+# MANBIN pathname
+# MANPATH manpath_element [corresponding_catdir]
+# MANPATH_MAP path_element manpath_element
+#
+# If no catdir is given, it is assumed to be equal to the mandir
+# (so that this dir has both man1 etc. and cat1 etc. subdirs).
+# This is the traditional Unix setup.
+# Certain versions of the FSSTND recommend putting formatted versions
+# of /usr/.../man/manx/page.x into /var/catman/.../catx/page.x.
+# The keyword FSSTND will cause this behaviour.
+# Certain versions of the FHS recommend putting formatted versions of
+# /usr/.../share/man/[locale/]manx/page.x into
+# /var/cache/man/.../[locale/]catx/page.x.
+# The keyword FHS will cause this behaviour (and overrides FSSTND).
+# Explicitly given catdirs override.
+#
+# FSSTND
+FHS
+#
+# This file is also read by man in order to find how to call nroff, less, etc.,
+# and to determine the correspondence between extensions and decompressors.
+#
+# MANBIN /usr/local/bin/man
+#
+# Every automatically generated MANPATH includes these fields
+#
+MANPATH /usr/man
+MANPATH /usr/share/man
+MANPATH /usr/local/man
+MANPATH /usr/local/share/man
+MANPATH /usr/X11R6/man
+#
+# Uncomment if you want to include one of these by default
+#
+# MANPATH /opt/*/man
+# MANPATH /usr/lib/*/man
+# MANPATH /usr/share/*/man
+# MANPATH /usr/kerberos/man
+#
+# Set up PATH to MANPATH mapping
+#
+# If people ask for "man foo" and have "/dir/bin/foo" in their PATH
+# and the docs are found in "/dir/man", then no mapping is required.
+#
+# The below mappings are superfluous when the right hand side is
+# in the mandatory manpath already, but will keep man from statting
+# lots of other nearby files and directories.
+#
+MANPATH_MAP /bin /usr/share/man
+MANPATH_MAP /sbin /usr/share/man
+MANPATH_MAP /usr/bin /usr/share/man
+MANPATH_MAP /usr/sbin /usr/share/man
+MANPATH_MAP /usr/local/bin /usr/local/share/man
+MANPATH_MAP /usr/local/sbin /usr/local/share/man
+MANPATH_MAP /usr/X11R6/bin /usr/X11R6/man
+MANPATH_MAP /usr/bin/X11 /usr/X11R6/man
+MANPATH_MAP /usr/bin/mh /usr/share/man
+#
+# NOAUTOPATH keeps man from automatically adding directories that look like
+# manual page directories to the path.
+#
+#NOAUTOPATH
+#
+# NOCACHE keeps man from creating cache pages ("cat pages")
+# (generally one enables/disable cat page creation by creating/deleting
+# the directory they would live in - man never does mkdir)
+#
+#NOCACHE
+#
+# Useful paths - note that COL should not be defined when
+# NROFF is defined as "groff -Tascii" or "groff -Tlatin1";
+# not only is it superfluous, but it actually damages the output.
+# For use with utf-8, NROFF should be "nroff -mandoc" without -T option.
+# (Maybe - but today I need -Tlatin1 to prevent double conversion to utf8.)
+#
+# If you have a new troff (version 1.18.1?) and its colored output
+# causes problems, add the -c option to TROFF, NROFF, JNROFF.
+#
+TROFF /usr/bin/groff -Tps -mandoc
+NROFF /usr/bin/nroff -Tlatin1 -mandoc
+JNROFF /usr/bin/groff -Tnippon -mandocj
+EQN /usr/bin/eqn -Tps
+NEQN /usr/bin/eqn -Tlatin1
+JNEQN /usr/bin/eqn -Tnippon
+TBL /usr/bin/tbl
+# COL /usr/bin/col
+REFER /usr/bin/refer
+PIC /usr/bin/pic
+VGRIND
+GRAP
+PAGER /usr/bin/less -isR
+CAT /bin/cat
+#
+# The command "man -a xyzzy" will show all man pages for xyzzy.
+# When CMP is defined man will try to avoid showing the same
+# text twice. (But compressed pages compare unequal.)
+#
+CMP /usr/bin/cmp -s
+#
+# Compress cat pages
+#
+COMPRESS /bin/bzip2
+COMPRESS_EXT .bz2
+#
+# Default manual sections (and order) to search if -S is not specified
+# and the MANSECT environment variable is not set.
+#
+MANSECT 1:1p:8:2:3:3p:4:5:6:7:9:0p:tcl:n:l:p:o
+#
+# Default options to use when man is invoked without options
+# This is mainly for the benefit of those that think -a should be the default
+# Note that some systems have /usr/man/allman, causing pages to be shown twice.
+#
+#MANDEFOPTIONS -a
+#
+# Decompress with given decompressor when input file has given extension
+# The command given must act as a filter.
+#
+.gz /bin/gunzip -c
+.bz2 /bin/bzip2 -c -d
+.z
+.Z /bin/zcat
+.F
+.Y
diff --git a/packages/man/man_1.5p.bb b/packages/man/man_1.5p.bb
new file mode 100644
index 0000000000..c666cf6c9c
--- /dev/null
+++ b/packages/man/man_1.5p.bb
@@ -0,0 +1,34 @@
+LICENSE = "GPL"
+SECTION = "base"
+MAINTAINER = "Inge Arnesen <inge.arnesen@gmail.com>"
+DESCRIPTION = "The man page suite, including man, apropos, \
+and whatis consists of programs that are used to read most \
+of the documentation available on a Linux system."
+RDEPENDS="less groff"
+# Note: The default man.conf uses wrong names for GNU eqn and troff,
+# so we install our own
+SRC_URI = "ftp://ftp.kernel.org/pub/linux/utils/man/man-${PV}.tar.bz2 \
+ file://man.conf"
+
+EXTRA_OEMAKE = ""
+GS = "-DGREPSILENT=\"q\""
+DEFS = "-DUSG -DDO_COMPRESS ${GS}"
+
+do_configure() {
+ ./configure -d -confdir ${sysconfdir}
+}
+
+do_compile() {
+ (cd src; ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \
+ makemsg.c -o makemsg)
+ oe_runmake 'DEFS=${DEFS}'
+}
+
+do_install() {
+ oe_runmake 'PREFIX=${D}' install
+ install -m 644 ${FILESDIR}/man.conf ${D}/etc
+}
+
+FILES_${PN} = "${bindir} ${sbindir} ${libexecdir} ${libdir}/lib*.so.* \
+ ${libdir}/*/ ${sysconfdir} ${sharedstatedir} ${localstatedir} \
+ /bin /sbin /lib/*/ /lib/*.so*"
diff --git a/packages/ncftp/ncftp_3.1.9.bb b/packages/ncftp/ncftp_3.1.9.bb
new file mode 100644
index 0000000000..99673d8a97
--- /dev/null
+++ b/packages/ncftp/ncftp_3.1.9.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "A sophisticated console ftp client"
+SECTION = "console/network"
+PRIORITY = "optional"
+LICENSE = "ClarifiedArtistic"
+SRC_URI = "ftp://ftp.ncftp.com/ncftp/ncftp-${PV}-src.tar.bz2 \
+ file://acinclude.m4"
+
+inherit autotools
+
+do_configure_prepend () {
+ install -m 0644 ${WORKDIR}/acinclude.m4 acinclude.m4
+}
+
+do_install () {
+ install -d ${D}${bindir} ${D}${sysconfdir} ${D}${mandir}
+ oe_runmake 'prefix=${D}${prefix}' 'BINDIR=${D}${bindir}' \
+ 'SYSCONFDIR=${D}${sysconfdir}' 'mandir=${D}${mandir}' \
+ install
+}
diff --git a/packages/procps/procps-3.2.5/.mtn2git_empty b/packages/procps/procps-3.2.5/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/procps/procps-3.2.5/.mtn2git_empty
diff --git a/packages/procps/procps-3.2.5/install.patch b/packages/procps/procps-3.2.5/install.patch
new file mode 100644
index 0000000000..a05eec4ab6
--- /dev/null
+++ b/packages/procps/procps-3.2.5/install.patch
@@ -0,0 +1,25 @@
+*** procps-3.2.5/Makefile.orig Sun Jul 24 03:29:32 2005
+--- procps-3.2.5/Makefile Sun Jul 24 03:30:14 2005
+***************
+*** 211,220 ****
+ ###### install
+
+ $(BINFILES) : all
+! $(install) --mode a=rx $(notdir $@) $@
+
+ $(MANFILES) : all
+! $(install) --mode a=r $(notdir $@) $@
+
+ install: $(filter-out $(SKIP) $(addprefix $(DESTDIR),$(SKIP)),$(INSTALL))
+ cd $(usr/bin) && $(ln_f) skill snice
+--- 211,220 ----
+ ###### install
+
+ $(BINFILES) : all
+! $(install) -m 555 $(notdir $@) $@
+
+ $(MANFILES) : all
+! $(install) -m 444 $(notdir $@) $@
+
+ install: $(filter-out $(SKIP) $(addprefix $(DESTDIR),$(SKIP)),$(INSTALL))
+ cd $(usr/bin) && $(ln_f) skill snice
diff --git a/packages/procps/procps-3.2.5/pagesz-not-constant.patch b/packages/procps/procps-3.2.5/pagesz-not-constant.patch
new file mode 100644
index 0000000000..8e9e1ebfe1
--- /dev/null
+++ b/packages/procps/procps-3.2.5/pagesz-not-constant.patch
@@ -0,0 +1,22 @@
+Index: procps-3.2.1/proc/devname.c
+===================================================================
+--- procps-3.2.1.orig/proc/devname.c 2004-03-18 05:43:50.000000000 +1100
++++ procps-3.2.1/proc/devname.c 2005-04-02 10:40:17.462138000 +1000
+@@ -227,7 +227,7 @@
+
+ /* number --> name */
+ unsigned dev_to_tty(char *restrict ret, unsigned chop, dev_t dev_t_dev, int pid, unsigned int flags) {
+- static char buf[PAGE_SIZE];
++ static char buf[4096];
+ char *restrict tmp = buf;
+ unsigned dev = dev_t_dev;
+ unsigned i = 0;
+@@ -249,7 +249,7 @@
+ if((flags&ABBREV_TTY) && !strncmp(tmp,"tty", 3) && tmp[3]) tmp += 3;
+ if((flags&ABBREV_PTS) && !strncmp(tmp,"pts/", 4) && tmp[4]) tmp += 4;
+ /* gotta check before we chop or we may chop someone else's memory */
+- if(chop + (unsigned long)(tmp-buf) <= sizeof buf)
++ if(chop + (unsigned long)(tmp-buf) < sizeof buf)
+ tmp[chop] = '\0';
+ /* replace non-ASCII characters with '?' and return the number of chars */
+ for(;;){
diff --git a/packages/procps/procps-3.2.5/procmodule.patch b/packages/procps/procps-3.2.5/procmodule.patch
new file mode 100644
index 0000000000..fabfabaa59
--- /dev/null
+++ b/packages/procps/procps-3.2.5/procmodule.patch
@@ -0,0 +1,36 @@
+*** procps-3.2.5/proc/module.mk.orig Sun Jul 24 11:53:49 2005
+--- procps-3.2.5/proc/module.mk Sun Jul 24 11:54:32 2005
+***************
+*** 96,102 ****
+ #################### install rules ###########################
+
+ $(lib)$(SOFILE) : proc/$(SONAME)
+! $(install) --mode a=rx $< $@
+
+ ifneq ($(SOLINK),$(SOFILE))
+ .PHONY: $(lib)$(SOLINK)
+--- 96,102 ----
+ #################### install rules ###########################
+
+ $(lib)$(SOFILE) : proc/$(SONAME)
+! $(install) -m 555 $< $@
+
+ ifneq ($(SOLINK),$(SOFILE))
+ .PHONY: $(lib)$(SOLINK)
+***************
+*** 115,121 ****
+ $(ldconfig)
+
+ $(usr/lib)$(ANAME) : proc/$(ANAME)
+! $(install) --mode a=r $< $@
+
+ # Junk anyway... supposed to go in /usr/include/$(NAME)
+ #INSTALL += $(addprefix $(include),$(HDRFILES))
+--- 115,121 ----
+ $(ldconfig)
+
+ $(usr/lib)$(ANAME) : proc/$(ANAME)
+! $(install) -m 444 $< $@
+
+ # Junk anyway... supposed to go in /usr/include/$(NAME)
+ #INSTALL += $(addprefix $(include),$(HDRFILES))
diff --git a/packages/procps/procps-3.2.5/psmodule.patch b/packages/procps/procps-3.2.5/psmodule.patch
new file mode 100644
index 0000000000..f298c1c1c4
--- /dev/null
+++ b/packages/procps/procps-3.2.5/psmodule.patch
@@ -0,0 +1,21 @@
+*** procps-3.2.5/ps/module.mk.orig Sun Jul 24 11:54:40 2005
+--- procps-3.2.5/ps/module.mk Sun Jul 24 11:55:02 2005
+***************
+*** 33,40 ****
+
+
+ $(bin)ps: ps/ps
+! $(install) --mode a=rx $< $@
+
+ $(man1)ps.1 : ps/ps.1
+! $(install) --mode a=r $< $@
+ -rm -f $(DESTDIR)/var/catman/cat1/ps.1.gz $(DESTDIR)/var/man/cat1/ps.1.gz
+--- 33,40 ----
+
+
+ $(bin)ps: ps/ps
+! $(install) -m 555 $< $@
+
+ $(man1)ps.1 : ps/ps.1
+! $(install) -m 444 $< $@
+ -rm -f $(DESTDIR)/var/catman/cat1/ps.1.gz $(DESTDIR)/var/man/cat1/ps.1.gz
diff --git a/packages/procps/procps_3.2.5.bb b/packages/procps/procps_3.2.5.bb
new file mode 100644
index 0000000000..24def79a50
--- /dev/null
+++ b/packages/procps/procps_3.2.5.bb
@@ -0,0 +1,25 @@
+LICENSE = "GPL"
+DESCRIPTION = "Procps is the package that has a bunch \
+of small useful utilities that give information \
+about processes using the /proc filesystem. The package \
+includes the programs ps, top, vmstat, w, kill, and skill."
+SECTION = "base"
+PRIORITY = "optional"
+MAINTAINER = "Inge Arnesen <inge.arnesen@gmail.com>"
+DEPENDS = "ncurses"
+PR = "r1"
+
+SRC_URI = "http://procps.sourceforge.net/procps-${PV}.tar.gz \
+ file://install.patch;patch=1 \
+ file://procmodule.patch;patch=1 \
+ file://psmodule.patch;patch=1"
+
+
+
+inherit autotools
+
+EXTRA_OEMAKE = "CFLAGS=-I${STAGING_INCDIR} \
+ LDFLAGS=-L${STAGING_LIBDIR} -Wl,--rpath-link,${STAGING_LIBDIR} \
+ CURSES=-lncurses \
+ install='install -D' \
+ ldconfig=echo"
diff --git a/packages/screen/.mtn2git_empty b/packages/screen/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/screen/.mtn2git_empty
diff --git a/packages/screen/screen-4.0.2/.mtn2git_empty b/packages/screen/screen-4.0.2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/screen/screen-4.0.2/.mtn2git_empty
diff --git a/packages/screen/screen-4.0.2/configure.patch b/packages/screen/screen-4.0.2/configure.patch
new file mode 100644
index 0000000000..2770a7a481
--- /dev/null
+++ b/packages/screen/screen-4.0.2/configure.patch
@@ -0,0 +1,970 @@
+
+#
+# Patch by Hannes Reich (hannes@skynet.ie) 22-Jul-2005
+# Resolves _some_ of the cross-compilation issues in screen's configure.in
+#
+
+--- screen-4.0.1/configure.in~configure
++++ screen-4.0.1/configure.in
+@@ -37,6 +37,323 @@
+ VERSION="$rev.$vers.$pat"
+ AC_NOTE(this is screen version $VERSION)
+ AC_SUBST(VERSION)
++
++AH_TOP([
++/* Copyright (c) 1993-2000
++ * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
++ * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
++ * Copyright (c) 1987 Oliver Laumann
++ *
++ * 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, or (at your option)
++ * any later version.
++ *
++ * 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 this program (see the file COPYING); if not, write to the
++ * Free Software Foundation, Inc.,
++ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
++ *
++ */
++
++
++/**********************************************************************
++ *
++ * User Configuration Section
++ */
++
++/*
++ * Maximum of simultaneously allowed windows per screen session.
++ */
++#ifndef MAXWIN
++# define MAXWIN 40
++#endif
++
++/*
++ * Define SOCKDIR to be the directory to contain the named sockets
++ * screen creates. This should be in a common subdirectory, such as
++ * /usr/local or /tmp. It makes things a little more secure if you
++ * choose a directory which is not writable by everyone or where the
++ * "sticky" bit is on, but this isn't required.
++ * If SOCKDIR is not defined screen will put the named sockets in
++ * the user's home directory. Notice that this can cause you problems
++ * if some user's HOME directories are AFS- or NFS-mounted. Especially
++ * AFS is unlikely to support named sockets.
++ *
++ * Screen will name the subdirectories "S-$USER" (e.g /tmp/S-davison).
++ */
++#undef SOCKDIR
++
++/*
++ * Define this if the SOCKDIR is not shared between hosts.
++ */
++#define SOCKDIR_IS_LOCAL_TO_HOST
++
++/*
++ * Screen sources two startup files. First a global file with a path
++ * specified here, second your local $HOME/.screenrc
++ * Don't define this, if you don't want it.
++ */
++#ifndef ETCSCREENRC
++# define ETCSCREENRC "/usr/local/etc/screenrc"
++#endif
++
++/*
++ * Screen can look for the environment variable $SYSSCREENRC and -if it
++ * exists- load the file specified in that variable as global screenrc.
++ * If you want to enable this feature, define ALLOW_SYSSCREENRC to one (1).
++ * Otherwise ETCSCREENRC is always loaded.
++ */
++#define ALLOW_SYSSCREENRC 1
++
++/*
++ * Screen needs encoding files for the translation of utf8
++ * into some encodings, e.g. JIS, BIG5.
++ * Only needed if FONT, ENCODINGS and UTF8 are defined.
++ */
++#ifndef SCREENENCODINGS
++# define SCREENENCODINGS "/usr/local/lib/screen/encodings"
++#endif
++/*
++ * Define CHECKLOGIN to force Screen users to enter their Unix password
++ * in addition to the screen password.
++ *
++ * Define NOSYSLOG if yo do not have logging facilities. Currently
++ * syslog() will be used to trace ``su'' commands only.
++ */
++#define CHECKLOGIN 1
++#undef NOSYSLOG
++
++
++/*
++ * define PTYMODE if you do not like the default of 0622, which allows
++ * public write to your pty.
++ * define PTYGROUP to some numerical group-id if you do not want the
++ * tty to be in "your" group.
++ * Note, screen is unable to change mode or group of the pty if it
++ * is not installed with sufficient privilege. (e.g. set-uid-root)
++ * define PTYROFS if the /dev/pty devices are mounted on a read-only
++ * filesystem so screen should not even attempt to set mode or group
++ * even if running as root (e.g. on TiVo).
++ */
++#undef PTYMODE
++#undef PTYGROUP
++#undef PTYROFS
++
++/*
++ * If screen is NOT installed set-uid root, screen can provide tty
++ * security by exclusively locking the ptys. While this keeps other
++ * users from opening your ptys, it also keeps your own subprocesses
++ * from being able to open /dev/tty. Define LOCKPTY to add this
++ * exclusive locking.
++ */
++#undef LOCKPTY
++
++/*
++ * If you'd rather see the status line on the first line of your
++ * terminal rather than the last, define TOPSTAT.
++ */
++#undef TOPSTAT
++
++/*
++ * define DETACH can detach a session. An absolute 'must'.
++ */
++#define DETACH
++
++/*
++ * here come the erlangen extensions to screen:
++ * define LOCK if you want to use a lock program for a screenlock.
++ * define PASSWORD for secure reattach of your screen.
++ * define COPY_PASTE to use the famous hacker's treasure zoo.
++ * define POW_DETACH to have a detach_and_logout key (requires DETACH).
++ * define REMOTE_DETACH (-d option) to move screen between terminals.
++ * define AUTO_NUKE to enable Tim MacKenzies clear screen nuking
++ * define PSEUDOS to allow window input/output filtering
++ * define MULTI to allow multiple attaches.
++ * define MULTIUSER to allow other users attach to your session
++ * (if they are in the acl, of course)
++ * define MAPKEYS to include input keyboard translation.
++ * define FONT to support ISO2022/alternet charset support
++ * define COLOR to include ansi color support. This may expose
++ * a bug in x11r6-color-xterm.
++ * define DW_CHARS to include support for double-width character
++ * sets.
++ * define ENCODINGS to include support for encodings like euc or big5.
++ * Needs FONT to work.
++ * define UTF8 if you want support for UTF-8 encoding.
++ * Needs FONT and ENCODINGS to work.
++ * define COLORS16 if you want 16 colors.
++ * Needs COLOR to work.
++ * define BUILTIN_TELNET to add telnet support to screen.
++ * Syntax: screen //telnet host [port]
++ * define RXVT_OSC if you want support for rxvts special
++ * change fgcolor/bgcolor/bgpicture sequences
++ */
++#undef SIMPLESCREEN
++#ifndef SIMPLESCREEN
++# define LOCK
++# define PASSWORD
++# define COPY_PASTE
++# define REMOTE_DETACH
++# define POW_DETACH
++# define AUTO_NUKE
++# define PSEUDOS
++# define MULTI
++# define MULTIUSER
++# define MAPKEYS
++# define COLOR
++# define FONT
++# define DW_CHARS
++# define ENCODINGS
++# define UTF8
++# define COLORS16
++# define ZMODEM
++# define BLANKER_PRG
++#endif /* SIMPLESCREEN */
++
++#undef BUILTIN_TELNET
++#undef RXVT_OSC
++#undef COLORS256
++
++
++/*
++ * If you have a braille display you should define HAVE_BRAILLE.
++ * The code inside #ifdef HAVE_BRAILLE was contributed by Hadi Bargi
++ * Rangin (bargi@dots.physics.orst.edu).
++ * WARNING: this is more or less unsupported code, it may be full of
++ * bugs leading to security holes, enable at your own risk!
++ */
++#undef HAVE_BRAILLE
++
++
++/*
++ * As error messages are mostly meaningless to the user, we
++ * try to throw out phrases that are somewhat more familiar
++ * to ...well, at least familiar to us NetHack players.
++ */
++#ifndef NONETHACK
++# define NETHACK
++#endif /* NONETHACK */
++
++/*
++ * If screen is installed with permissions to update /etc/utmp (such
++ * as if it is installed set-uid root), define UTMPOK.
++ */
++#define UTMPOK
++
++/* Set LOGINDEFAULT to one (1)
++ * if you want entries added to /etc/utmp by default, else set it to
++ * zero (0).
++ * LOGINDEFAULT will be one (1) whenever LOGOUTOK is undefined!
++ */
++#define LOGINDEFAULT 1
++
++/* Set LOGOUTOK to one (1)
++ * if you want the user to be able to log her/his windows out.
++ * (Meaning: They are there, but not visible in /etc/utmp).
++ * Disabling this feature only makes sense if you have a secure /etc/utmp
++ * database.
++ * Negative examples: suns usually have a world writable utmp file,
++ * xterm will run perfectly without s-bit.
++ *
++ * If LOGOUTOK is undefined and UTMPOK is defined, all windows are
++ * initially and permanently logged in.
++ *
++ * Set CAREFULUTMP to one (1) if you want that users have at least one
++ * window per screen session logged in.
++ */
++#define LOGOUTOK 1
++#undef CAREFULUTMP
++
++
++/*
++ * If UTMPOK is defined and your system (incorrectly) counts logins by
++ * counting non-null entries in /etc/utmp (instead of counting non-null
++ * entries with no hostname that are not on a pseudo tty), define USRLIMIT
++ * to have screen put an upper-limit on the number of entries to write
++ * into /etc/utmp. This helps to keep you from exceeding a limited-user
++ * license.
++ */
++#undef USRLIMIT
++
++/*
++ * both must be defined if you want to favor tcsendbreak over
++ * other calls to generate a break condition on serial lines.
++ * (Do not bother, if you are not using plain tty windows.)
++ */
++#define POSIX_HAS_A_GOOD_TCSENDBREAK
++#define SUNOS4_AND_WE_TRUST_TCSENDBREAK
++
++/*
++ * to lower the interrupt load on the host machine, you may want to
++ * adjust the VMIN and VTIME settings used for plain tty windows.
++ * See the termio(4) manual page (Non-Canonical Mode Input Processing)
++ * for details.
++ * if undefined, VMIN=1, VTIME=0 is used as a default - this gives you
++ * best user responsiveness, but highest interrupt frequency.
++ * (Do not bother, if you are not using plain tty windows.)
++ */
++#define TTYVMIN 100
++#define TTYVTIME 2
++
++/*
++ * looks like the above values are ignored by setting FNDELAY.
++ * This is default for all pty/ttys, you may disable it for
++ * ttys here. After playing with it for a while, one may find out
++ * that this feature may cause screen to lock up.
++ */
++#ifdef bsdi
++# define TTY_DISABLE_FNBLOCK /* select barfs without it ... */
++#endif
++
++
++/*
++ * Some terminals, e.g. Wyse 120, use a bitfield to select attributes.
++ * This doesn't work with the standard so/ul/m? terminal entries,
++ * because they will cancel each other out.
++ * On TERMINFO machines, "sa" (sgr) may work. If you want screen
++ * to switch attributes only with sgr, define USE_SGR.
++ * This is *not* recomended, do this only if you must.
++ */
++#undef USE_SGR
++
++
++/*
++ * Define USE_LOCALE if you want screen to use the locale names
++ * for the name of the month and day of the week.
++ */
++#define USE_LOCALE
++
++/*
++ * Define USE_PAM if your system supports PAM (Pluggable Authentication
++ * Modules) and you want screen to use it instead of calling crypt().
++ * (You may also need to add -lpam to LIBS in the Makefile.)
++ */
++#undef USE_PAM
++
++/*
++ * Define CHECK_SCREEN_W if you want screen to set TERM to screen-w
++ * if the terminal width is greater than 131 columns. No longer needed
++ * on modern systems which use $COLUMNS or the tty settings instead.
++ */
++#undef CHECK_SCREEN_W
++
++/**********************************************************************
++ *
++ * End of User Configuration Section
++ *
++ * Rest of this file is modified by 'configure'
++ * Change at your own risk!
++ *
++ */
++])
++# end of AH_TOP
++
+ AC_PREFIX_PROGRAM(screen)
+ AC_PREFIX_PROGRAM(gzip)
+
+@@ -46,6 +363,7 @@
+ AC_PROG_GCC_TRADITIONAL
+ AC_ISC_POSIX
+
++AC_MSG_CHECKING([for compiler sanity])
+ AC_TRY_RUN(main(){exit(0);},,[
+ if test $CC != cc ; then
+ AC_NOTE(Your $CC failed - restarting with CC=cc)
+@@ -54,22 +372,17 @@
+ export CC
+ exec $0 $configure_args
+ fi
+-])
+-
+-AC_TRY_RUN(main(){exit(0);},,
+-exec 5>&2
+-eval $ac_link
+-AC_NOTE(CC=$CC; CFLAGS=$CFLAGS; LIBS=$LIBS;)
+-AC_NOTE($ac_compile)
+-AC_MSG_ERROR(Can't run the compiler - sorry))
++],AC_MSG_WARN([skipping test due to crosscompilation]))
+
++AC_MSG_CHECKING([if compiler sets exit status])
+ AC_TRY_RUN([
+ main()
+ {
+ int __something_strange_();
+ __something_strange_(0);
+ }
+-],AC_MSG_ERROR(Your compiler does not set the exit status - sorry))
++],AC_MSG_ERROR(Your compiler does not set the exit status - sorry),,
++AC_MSG_WARN(skipping test due to crosscompilation))
+
+ AC_PROG_AWK
+
+@@ -103,6 +416,7 @@
+ dnl
+ dnl **** special unix variants ****
+ dnl
++AH_TEMPLATE(ISC,[])
+ if test -n "$ISC"; then
+ AC_DEFINE(ISC) LIBS="$LIBS -linet"
+ fi
+@@ -114,11 +428,13 @@
+ dnl fi
+ dnl fi
+
++AH_TEMPLATE([sysV68],[])
+ if test -f /sysV68 ; then
+ AC_DEFINE(sysV68)
+ fi
+
+ AC_CHECKING(for MIPS)
++AH_TEMPLATE([MIPS],[])
+ if test -f /lib/libmld.a || test -f /usr/lib/libmld.a || test -f /usr/lib/cmplrs/cc/libmld.a; then
+ oldlibs="$LIBS"
+ test -f /bin/mx || LIBS="$LIBS -lmld" # for nlist. But not on alpha.
+@@ -132,6 +448,8 @@
+ AC_CHECKING(wait3)
+ AC_TRY_LINK(,[wait3();], ,
+ AC_CHECKING(wait2)
++AH_TEMPLATE([USE_WAIT2],[On RISCOS we prefer wait2() over wait3(). rouilj@sni-usa.com])
++dnl TODO(Hannes) shipped config.h.in wraps the define in #ifdef BSDWAIT
+ AC_TRY_LINK(,[wait2();],
+ dnl John Rouillard (rouilj@sni-usa.com):
+ dnl need -I/usr/include/bsd in RISCOS otherwise sockets are broken, no
+@@ -154,9 +472,11 @@
+ oldlibs="$LIBS"
+ LIBS="$LIBS -lpyr"
+ AC_CHECKING(Pyramid OSX)
++AH_TEMPLATE([OSX], [Pyramid OSX])
+ AC_TRY_LINK(,[open_controlling_pty("")], AC_DEFINE(OSX), LIBS="$oldlibs")
+ fi
+
++AH_TEMPLATE([POSIX],[Define POSIX if your system supports IEEE Std 1003.1-1988 (POSIX).])
+ dnl ghazi@caip.rutgers.edu (Kaveh R. Ghazi):
+ dnl BBN butterfly is not POSIX, but a MACH BSD system.
+ dnl Do not define POSIX and TERMIO.
+@@ -183,6 +503,7 @@
+ fi
+
+ AC_CHECKING(for System V)
++AH_TEMPLATE([SYSV], [Define SYSV if your machine is SYSV complient (Sys V, HPUX, A/UX)])
+ AC_TRY_COMPILE(
+ [#include <sys/types.h>
+ #include <signal.h>
+@@ -198,6 +519,11 @@
+ oldlibs="$LIBS"
+ LIBS="$LIBS -lelf"
+ AC_CHECKING(SVR4)
++AH_TEMPLATE([SVR4],[])
++AH_TEMPLATE([BUGGYGETLOGIN],
++[If ttyslot() breaks getlogin() by returning indexes to utmp entries
++ of type DEAD_PROCESS, then our getlogin() replacement should be
++ selected by defining BUGGYGETLOGIN.])
+ AC_TRY_LINK([#include <utmpx.h>
+ ],,
+ [AC_CHECK_HEADER(dwarf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN),
+@@ -235,6 +561,9 @@
+ dnl
+
+ AC_CHECKING(BSD job jontrol)
++AH_TEMPLATE([BSDJOBS],
++[Define BSDJOBS if you have BSD-style job control (both process
++ groups and a tty that deals correctly with them)])
+ AC_TRY_LINK(
+ [#include <sys/types.h>
+ #include <sys/ioctl.h>
+@@ -255,6 +584,10 @@
+ dnl **** setreuid(), seteuid() ****
+ dnl
+ AC_CHECKING(setreuid)
++AH_TEMPLATE([HAVE_SETREUID],
++[If your system has the calls setreuid() and setregid(),
++ define HAVE_SETREUID. Otherwise screen will use a forked process to
++ safely create output files without retaining any special privileges.])
+ AC_TRY_LINK(,[
+ #ifdef __hpux
+ setresuid(0, 0, 0);
+@@ -269,6 +602,9 @@
+ dnl Solaris seteuid doesn't change the saved uid, bad for
+ dnl multiuser screen sessions
+ AC_CHECKING(seteuid)
++AH_TEMPLATE([HAVE_SETEUID],
++[If your system supports BSD4.4's seteuid() and setegid(), define
++ HAVE_SETEUID.])
+ AC_TRY_LINK(,[
+ #if defined(linux) || defined(NeXT) || defined(_AUX_SOURCE) || defined(AUX) || defined(ultrix) || (defined(sun) && defined(SVR4)) || defined(ISC) || defined(sony_news)
+ seteuid_is_broken(0);
+@@ -292,7 +628,8 @@
+ dnl **** FIFO tests ****
+ dnl
+
+-AC_CHECKING(fifos)
++AC_CACHE_CHECK([usable fifos],
++ [screen_cv_sys_fifo_usable],
+ AC_TRY_RUN([
+ #include <sys/types.h>
+ #include <sys/stat.h>
+@@ -357,12 +694,14 @@
+ exit(1);
+ exit(0);
+ }
+-], AC_NOTE(- your fifos are usable) fifo=1,
+-AC_NOTE(- your fifos are not usable))
+-rm -f /tmp/conftest*
++], screen_cv_sys_fifo_usable=yes, screen_cv_sys_fifo_usable=no))
+
+-if test -n "$fifo"; then
+-AC_CHECKING(for broken fifo implementation)
++if test X"$screen_cv_sys_fifo_usable" = Xyes; then
++AH_TEMPLATE([BROKEN_PIPE],
++[Define this if your system exits select() immediatly if a pipe is
++ opened read-only and no writer has opened it.])
++AC_CACHE_CHECK([broken fifo implementation],
++ [screen_cv_sys_fifo_broken_impl],
+ AC_TRY_RUN([
+ #include <sys/types.h>
+ #include <fcntl.h>
+@@ -407,9 +746,11 @@
+ exit(1);
+ exit(0);
+ }
+-], AC_NOTE(- your implementation is ok),
+-AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1)
+-rm -f /tmp/conftest*
++], screen_cv_sys_fifo_broken_impl=no,
++screen_cv_sys_fifo_broken_impl=yes))
++if test X"$screen_cv_sys_fifo_broken_impl" = Xyes; then
++ AC_DEFINE(BROKEN_PIPE)
++fi
+ fi
+
+ dnl
+@@ -418,7 +759,8 @@
+ dnl may need LIBS="$LIBS -lsocket" here
+ dnl
+
+-AC_CHECKING(sockets)
++AC_CACHE_CHECK([sockets are usable],
++ [screen_cv_sys_sockets_usable],
+ AC_TRY_RUN([
+ #include <sys/types.h>
+ #include <sys/socket.h>
+@@ -469,12 +811,16 @@
+ exit(1);
+ exit(0);
+ }
+-], AC_NOTE(- your sockets are usable) sock=1,
+-AC_NOTE(- your sockets are not usable))
+-rm -f /tmp/conftest*
++], screen_cv_sys_sockets_usable=yes,
++screen_cv_sys_sockets_usable=no))
+
+-if test -n "$sock"; then
++if test X"$screen_cv_sys_sockets_usable" = Xyes; then
+ AC_CHECKING(socket implementation)
++AH_TEMPLATE([SOCK_NOT_IN_FS],
++[Define this if the unix-domain socket implementation doesn't
++ create a socket in the filesystem.])
++AC_CACHE_CHECK([if sockets are not stored in the filesystem],
++ [screen_cv_sys_sockets_nofs],
+ AC_TRY_RUN([
+ #include <sys/types.h>
+ #include <sys/stat.h>
+@@ -500,22 +846,25 @@
+ close(s);
+ exit(0);
+ }
+-],AC_NOTE(- you are normal),
+-AC_NOTE(- unix domain sockets are not kept in the filesystem)
+-AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1)
+-rm -f /tmp/conftest*
++], screen_cv_sys_sockets_nofs=no,
++screen_cv_sys_sockets_nofs=yes))
++
++if test X"$screen_cv_sys_sockets_nofs" = Xyes; then
++ AC_DEFINE(SOCK_NOT_IN_FS)
++fi
+ fi
+
+
+ dnl
+ dnl **** choose sockets or fifos ****
+ dnl
+-if test -n "$fifo"; then
+- if test -n "$sock"; then
+- if test -n "$nore"; then
++AH_TEMPLATE([NAMEDPIPE], [Define this if your system supports named pipes.])
++if test X"$screen_cv_sys_fifo_usable" = Xyes; then
++ if test X"$screen_cv_sys_sockets_usable" = Xyes; then
++ if test X"$screen_cv_sys_sockets_nofs" = Xyes; then
+ AC_NOTE(- hmmm... better take the fifos)
+ AC_DEFINE(NAMEDPIPE)
+- elif test -n "$fifobr"; then
++ elif test X"$screen_cv_sys_fifo_broken_impl" = Xyes; then
+ AC_NOTE(- as your fifos are broken lets use the sockets.)
+ else
+ AC_NOTE(- both sockets and fifos usable. let's take fifos.)
+@@ -525,7 +874,7 @@
+ AC_NOTE(- using named pipes, of course)
+ AC_DEFINE(NAMEDPIPE)
+ fi
+-elif test -n "$sock"; then
++elif test X"$screen_cv_sys_sockets_usable" = Xyes; then
+ AC_NOTE(- using unix-domain sockets, of course)
+ else
+ AC_MSG_ERROR(you have neither usable sockets nor usable pipes -> no screen)
+@@ -535,7 +884,11 @@
+ dnl **** check the select implementation ****
+ dnl
+
+-AC_CHECKING(select return value)
++AH_TEMPLATE([SELECT_BROKEN],
++[If the select return value doesn't treat a descriptor that is
++ usable for reading and writing as two hits, define SELECT_BROKEN.])
++AC_CACHE_CHECK([for broken select return value],
++ [screen_cv_sys_select_broken_retval],
+ AC_TRY_RUN([
+ #include <sys/types.h>
+ #include <sys/stat.h>
+@@ -634,19 +987,26 @@
+ exit(1);
+ exit(0);
+ }
+-],AC_NOTE(- select is ok),
+-AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN))
++], screen_cv_sys_select_broken_retval=no,
++screen_cv_sys_select_broken_retval=yes))
++if test X"$screen_cv_sys_select_broken_retval" = Xyes; then
++ AC_DEFINE(SELECT_BROKEN)
++fi
+
+ dnl
+ dnl **** termcap or terminfo ****
+ dnl
++AH_TEMPLATE([TERMINFO],
++[Define TERMINFO if your machine emulates the termcap routines
++ with the terminfo database.
++ Thus the .screenrc file is parsed for
++ the command 'terminfo' and not 'termcap'])
++
+ AC_CHECKING(for tgetent)
+ AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
+ olibs="$LIBS"
+-if test -f /usr/lib/libncursesw.so ; then
+- LIBS="-lncursesw $olibs"
+-fi
+ AC_CHECKING(libncursesw)
++AC_CHECK_LIB(ncursesw,tgetent)
+ AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
+ LIBS="-lcurses $olibs"
+ AC_CHECKING(libcurses)
+@@ -668,24 +1028,39 @@
+ AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
+ AC_MSG_ERROR(!!! no tgetent - no screen)))))))
+
+-AC_TRY_RUN([
++AC_CACHE_CHECK([using terminfo database],[screen_cv_sys_terminfo_used],
++ AC_TRY_RUN([
+ main()
+ {
+ exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);
+-}], AC_NOTE(- you use the termcap database),
+-AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO))
++}
++ ], screen_cv_sys_terminfo_used=no,
++ screen_cv_sys_terminfo_used=yes)
++)
++
++if test X"$screen_cv_sys_terminfo_used" = Xyes; then
++ AC_DEFINE(TERMINFO)
++fi
++
+ AC_CHECKING(ospeed)
++AH_TEMPLATE([NEED_OSPEED],[If your library does not define ospeed, define this.])
+ AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED))
+
+ dnl
+ dnl **** PTY specific things ****
+ dnl
++AH_TEMPLATE([HAVE_DEV_PTC],
++[define HAVE_DEV_PTC if you have a /dev/ptc character special
++ device.])
+ AC_CHECKING(for /dev/ptc)
+ if test -r /dev/ptc; then
+ AC_DEFINE(HAVE_DEV_PTC)
+ fi
+
+ AC_CHECKING(for SVR4 ptys)
++AH_TEMPLATE([HAVE_SVR4_PTYS],
++[define HAVE_SVR4_PTYS if you have a /dev/ptmx character special
++ device and support the ptsname(), grantpt(), unlockpt() functions.])
+ sysvr4ptys=
+ if test -c /dev/ptmx ; then
+ AC_TRY_LINK([],[ptsname(0);grantpt(0);unlockpt(0);],[AC_DEFINE(HAVE_SVR4_PTYS)
+@@ -701,6 +1076,13 @@
+ fi
+
+ AC_CHECKING(for ptyranges)
++AH_TEMPLATE([PTYRANGE0],
++[define PTYRANGE0 and or PTYRANGE1 if you want to adapt screen
++ to unusual environments. E.g. For SunOs the defaults are "qpr" and
++ "0123456789abcdef". For SunOs 4.1.2
++ #define PTYRANGE0 "pqrstuvwxyzPQRST"
++ is recommended by Dan Jacobson.])
++AH_TEMPLATE([PTYRANGE1],[])
+ if test -d /dev/ptym ; then
+ pdir='/dev/ptym'
+ else
+@@ -817,6 +1199,9 @@
+ dnl **** utmp handling ****
+ dnl
+ AC_CHECKING(getutent)
++AH_TEMPLATE([GETUTENT],
++[If your system has getutent(), pututline(), etc. to write to the
++ utmp file, define GETUTENT.])
+ AC_TRY_LINK([
+ #include <time.h> /* to get time_t on SCO */
+ #include <sys/types.h>
+@@ -850,6 +1235,7 @@
+ [int x = DEAD_PROCESS; pututline((struct utmp *)0); getutent();], AC_DEFINE(GETUTENT), LIBS="$olibs")
+ )
+ AC_CHECKING(ut_host)
++AH_TEMPLATE([UTHOST],[Define UTHOST if the utmp file has a host field.])
+ AC_TRY_COMPILE([
+ #include <time.h>
+ #include <sys/types.h>
+@@ -860,8 +1246,9 @@
+ #include <utmp.h>
+ #endif
+ ],[struct utmp u; u.ut_host[0] = 0;], AC_DEFINE(UTHOST))
++AH_TEMPLATE([HAVE_UTEMPTER],[Define if you have the utempter utmp helper program])
+ AC_CHECK_HEADER(utempter.h, have_utempter=yes, have_utempter=no)
+-if test "$have_utempter" = yes; then
++if test X"$have_utempter" = Xyes; then
+ AC_DEFINE(HAVE_UTEMPTER)
+ LIBS="$LIBS -lutempter"
+ fi
+@@ -869,20 +1256,39 @@
+ dnl
+ dnl **** loadav ****
+ dnl
++
++AH_TEMPLATE([LOADAV],
++[If you want the "time" command to display the current load average
++ define LOADAV. Maybe you must install screen with the needed
++ privileges to read /dev/kmem.
++ Note that NLIST_ stuff is only checked, when getloadavg() is not available.
++])
++AH_TEMPLATE([LOADAV_NUM])
++AH_TEMPLATE([LOADAV_TYPE])
++AH_TEMPLATE([LOADAV_SCALE])
++AH_TEMPLATE([LOADAV_GETLOADAVG])
++AH_TEMPLATE([LOADAV_UNIX])
++AH_TEMPLATE([LOADAV_AVENRUN])
++AH_TEMPLATE([LOADAV_USE_NLIST64])
++
++AH_TEMPLATE([NLIST_DECLARED])
++AH_TEMPLATE([NLIST_STRUCT])
++AH_TEMPLATE([NLIST_NAME_UNION])
++
+ AC_CHECKING(for libutil(s))
+-test -f /usr/lib/libutils.a && LIBS="$LIBS -lutils"
+-test -f /usr/lib/libutil.a && LIBS="$LIBS -lutil"
++dnl I have no idea whether "login" is an appropriate symbol to check for here - Hannes
++AC_CHECK_LIB(utils,login)
++AC_CHECK_LIB(util,login)
+
+ AC_CHECKING(getloadavg)
+ AC_TRY_LINK(,[getloadavg((double *)0, 0);],
+ AC_DEFINE(LOADAV_GETLOADAVG) load=1,
+-if test -f /usr/lib/libkvm.a ; then
+ olibs="$LIBS"
+-LIBS="$LIBS -lkvm"
++AC_CHECK_LIB(kvm,kvm_open,
+ AC_CHECKING(getloadavg with -lkvm)
+ AC_TRY_LINK(,[getloadavg((double *)0, 0);],
+ AC_DEFINE(LOADAV_GETLOADAVG) load=1, LIBS="$olibs")
+-fi
++)
+ )
+
+ if test -z "$load" ; then
+@@ -1024,6 +1430,11 @@
+ dnl
+ dnl **** signal handling ****
+ dnl
++
++AH_TEMPLATE([SIGVOID],
++[Define SIGVOID if your signal handlers return void. On older
++ systems, signal returns int, but on newer ones, it returns void.])
++
+ if test -n "$posix" ; then
+
+ dnl POSIX has reliable signals with void return type.
+@@ -1041,6 +1452,7 @@
+ #endif
+ extern void (*signal ()) ();], [int i;], AC_DEFINE(SIGVOID))
+ AC_CHECKING(sigset)
++AH_TEMPLATE([USESIGSET], [Define USESIGSET if you have sigset for BSD 4.1 reliable signals.])
+ AC_TRY_LINK([
+ #include <sys/types.h>
+ #include <signal.h>
+@@ -1052,6 +1464,9 @@
+ #endif
+ ], AC_DEFINE(USESIGSET))
+ AC_CHECKING(signal implementation)
++AH_TEMPLATE([SYSVSIGS],
++[Define SYSVSIGS if signal handlers must be reinstalled after
++ they have been called.])
+ AC_TRY_RUN([
+ #include <sys/types.h>
+ #include <signal.h>
+@@ -1094,13 +1509,14 @@
+ dnl
+
+ AC_CHECKING(for crypt and sec libraries)
+-test -f /lib/libcrypt_d.a || test -f /usr/lib/libcrypt_d.a && LIBS="$LIBS -lcrypt_d"
++dnl I have no idea whether "crypt" is an appropriate symbol to check for here - Hannes
++AC_CHECK_LIB(crypt_d,crypt)
+ oldlibs="$LIBS"
+-LIBS="$LIBS -lcrypt"
+ AC_CHECKING(crypt)
+ AC_TRY_LINK(,,,LIBS="$oldlibs")
+-test -f /lib/libsec.a || test -f /usr/lib/libsec.a && LIBS="$LIBS -lsec"
+-test -f /lib/libshadow.a || test -f /usr/lib/libshadow.a && LIBS="$LIBS -lshadow"
++AC_CHECK_LIB(crypt,crypt)
++AC_CHECK_LIB(sec,crypt)
++AC_CHECK_LIB(shadow,getspnam)
+ oldlibs="$LIBS"
+ LIBS="$LIBS -lsun"
+ AC_CHECKING(IRIX sun library)
+@@ -1123,6 +1539,13 @@
+ dnl **** misc things ****
+ dnl
+ AC_CHECKING(wait union)
++AH_TEMPLATE([BSDWAIT],
++[Define BSDWAIT if your system defines a 'union wait' in <sys/wait.h>
++
++ Only allow BSDWAIT i.e. wait3 on nonposix systems, since
++ posix implies wait(3) and waitpid(3). vdlinden@fwi.uva.nl
++ TODO(Hannes) shipped config.h.in does that with a #ifdef
++])
+ AC_TRY_COMPILE([#include <sys/types.h>
+ #include <sys/wait.h>
+ ],[
+@@ -1133,6 +1556,12 @@
+ #endif
+ ],AC_DEFINE(BSDWAIT))
+
++AH_TEMPLATE([TERMIO],
++[Define TERMIO if you have struct termio instead of struct sgttyb.
++ This is usually the case for SVID systems, where BSD uses sgttyb.
++ POSIX systems should define this anyway, even though they use
++ struct termios.])
++
+ if test -z "$butterfly"; then
+ AC_CHECKING(for termio or termios)
+ AC_TRY_CPP([#include <termio.h>], AC_DEFINE(TERMIO),
+@@ -1142,17 +1571,35 @@
+ )
+ fi
+
++AH_TEMPLATE([CYTERMIO], [Define CYTERMIO if you have cyrillic termio modes.])
++
+ dnl AC_CHECK_HEADER(shadow.h, AC_DEFINE(SHADOWPW))
+ AC_CHECKING(getspnam)
++AH_TEMPLATE([SHADOWPW],
++[If the passwords are stored in a shadow file and you want the
++ builtin lock to work properly, define SHADOWPW.])
+ AC_TRY_LINK([#include <shadow.h>], [getspnam("x");],AC_DEFINE(SHADOWPW))
+
+ AC_CHECKING(getttyent)
++AH_TEMPLATE([GETTTYENT],
++[If your system has the new format /etc/ttys (like 4.3 BSD) and the
++ getttyent(3) library functions, define GETTTYENT.])
+ AC_TRY_LINK(,[getttyent();], AC_DEFINE(GETTTYENT))
+
+ AC_CHECKING(fdwalk)
++AH_TEMPLATE([HAVE_FDWALK],
++[Newer versions of Solaris include fdwalk, which can greatly improve
++ the startup time of screen; otherwise screen spends a lot of time
++ closing file descriptors.])
+ AC_TRY_LINK([#include <stdlib.h>], [fdwalk(NULL, NULL);],AC_DEFINE(HAVE_FDWALK))
+
+-AC_CHECKING(whether memcpy/memmove/bcopy handles overlapping arguments)
++AH_TEMPLATE([USEBCOPY],
++[Define USEBCOPY if the bcopy/memcpy from your system's C library
++ supports the overlapping of source and destination blocks. When
++ undefined, screen uses its own (probably slower) version of bcopy().])
++
++AC_CACHE_CHECK([if bcopy handles overlap],
++ [screen_cv_sys_bcopy_overlap],
+ AC_TRY_RUN([
+ main() {
+ char buf[10];
+@@ -1165,8 +1612,21 @@
+ if (strncmp(buf, "cdedef", 6))
+ exit(1);
+ exit(0); /* libc version works properly. */
+-}], AC_DEFINE(USEBCOPY))
++}], screen_cv_sys_bcopy_overlap=yes,
++screen_cv_sys_bcopy_overlap=no))
++if test X"$screen_cv_sys_bcopy_overlap" = Xyes; then
++ AC_DEFINE(USEBCOPY)
++fi
+
++AH_TEMPLATE([USEMEMMOVE],
++[SYSV machines may have a working memcpy() -- Oh, this is
++ quite unlikely. Tell me if you see one.
++ "But then, memmove() should work, if at all available" he thought...
++ Boing, never say "works everywhere" unless you checked SCO UNIX.
++ Their memove fails the test in the configure script. Sigh. (Juergen)
++])
++AC_CACHE_CHECK([if memmove handles overlap],
++ [screen_cv_sys_memmove_overlap],
+ AC_TRY_RUN([
+ #define bcopy(s,d,l) memmove(d,s,l)
+ main() {
+@@ -1180,9 +1640,15 @@
+ if (strncmp(buf, "cdedef", 6))
+ exit(1);
+ exit(0); /* libc version works properly. */
+-}], AC_DEFINE(USEMEMMOVE))
+-
++}], screen_cv_sys_memmove_overlap=yes,
++screen_cv_sys_memmove_overlap=no))
++if test X"$screen_cv_sys_memmove_overlap" = Xyes; then
++ AC_DEFINE(USEMEMMOVE)
++fi
+
++AH_TEMPLATE([USEMEMCPY],[])
++AC_CACHE_CHECK([if memcpy handles overlap],
++ [screen_cv_sys_memcpy_overlap],
+ AC_TRY_RUN([
+ #define bcopy(s,d,l) memcpy(d,s,l)
+ main() {
+@@ -1196,9 +1662,19 @@
+ if (strncmp(buf, "cdedef", 6))
+ exit(1);
+ exit(0); /* libc version works properly. */
+-}], AC_DEFINE(USEMEMCPY))
++}], screen_cv_sys_memcpy_overlap=yes,
++screen_cv_sys_memcpy_overlap=no))
++if test X"$screen_cv_sys_memcpy_overlap" = Xyes; then
++ AC_DEFINE(USEMEMCPY)
++fi
+
+ AC_MSG_CHECKING(long file names)
++AH_TEMPLATE([NAME_MAX],
++[If you are on a SYS V machine that restricts filename length to 14
++ characters, you may need to enforce that by setting NAME_MAX to 14])
++dnl TODO(Hannes) shipped config.h.in has
++dnl #undef NAME_MAX /* KEEP_UNDEF_HERE override system value */
++dnl ahead of this
+ (echo 1 > /tmp/conftest9012345) 2>/dev/null
+ (echo 2 > /tmp/conftest9012346) 2>/dev/null
+ val=`cat /tmp/conftest9012345 2>/dev/null`
+@@ -1211,17 +1687,28 @@
+ rm -f /tmp/conftest*
+
+ AC_MSG_CHECKING(for vsprintf)
++AH_TEMPLATE([USEVARARGS],
++[If your system has vsprintf() and requires the use of the macros in
++ "varargs.h" to use functions with variable arguments,
++ define USEVARARGS.])
+ AC_TRY_LINK([#include <stdarg.h>],[va_list valist; vsprintf(0,0,valist);], AC_MSG_RESULT(yes);AC_DEFINE(USEVARARGS), AC_MSG_RESULT(no))
+
+ AC_HEADER_DIRENT
+
+ AC_MSG_CHECKING(for setenv)
++AH_TEMPLATE([USESETENV], [If your system has setenv() and unsetenv() define USESETENV])
+ AC_TRY_LINK(,[setenv((char *)0,(char *)0);unsetenv((char *)0);], AC_MSG_RESULT(yes);AC_DEFINE(USESETENV),
+ AC_MSG_RESULT(no)
+ AC_MSG_CHECKING(for putenv)
++AH_TEMPLATE([NEEDPUTENV],
++[If your system does not come with a setenv()/putenv()/getenv()
++ functions, you may bring in our own code by defining NEEDPUTENV.])
+ AC_TRY_LINK(,[putenv((char *)0);unsetenv((char *)0);], AC_MSG_RESULT(yes) , AC_MSG_RESULT(no);AC_DEFINE(NEEDPUTENV)
+ ))
+ AC_MSG_CHECKING([for nl_langinfo(CODESET)])
++AH_TEMPLATE([HAVE_NL_LANGINFO],
++[define HAVE_NL_LANGINFO if your system has the nl_langinfo() call
++ and <langinfo.h> defines CODESET.])
+ AC_TRY_LINK([
+ #include <langinfo.h>
+ ],[nl_langinfo(CODESET);], AC_MSG_RESULT(yes);AC_DEFINE(HAVE_NL_LANGINFO), AC_MSG_RESULT(no))
+@@ -1271,7 +1758,8 @@
+ dnl Ptx bug workaround -- insert -lc after -ltermcap
+ test -n "$seqptx" && LIBS="-ltermcap -lc -lsocket -linet -lnsl -lsec -lseq"
+
+-AC_TRY_RUN(main(){exit(0);},,AC_MSG_ERROR(Can't run the compiler - internal error. Sorry.))
++AC_MSG_CHECKING(compiler sanity)
++AC_TRY_RUN(main(){exit(0);},,AC_MSG_ERROR(Can't run the compiler - internal error. Sorry.), AC_MSG_WARN(Skipping test due to crosscompilation))
+
+ ETCSCREENRC="\"/usr/local/etc/screenrc\""
+ if test -n "$prefix"; then
diff --git a/packages/screen/screen_4.0.2.bb b/packages/screen/screen_4.0.2.bb
new file mode 100644
index 0000000000..b915a5f72b
--- /dev/null
+++ b/packages/screen/screen_4.0.2.bb
@@ -0,0 +1,15 @@
+DESCRIPTION = "Screen is a full-screen window manager \
+that multiplexes a physical terminal between several \
+processes, typically interactive shells."
+LICENSE = "GPL"
+SECTION = "console/utils"
+DEPENDS = "ncurses"
+PR = "r1"
+
+SRC_URI = "${GNU_MIRROR}/screen/screen-${PV}.tar.gz \
+ ${DEBIAN_MIRROR}/main/s/screen/screen_4.0.2-4.1.diff.gz;patch=1 \
+ file://configure.patch;patch=1"
+
+inherit autotools
+
+EXTRA_OECONF = "--with-pty-mode=0620 --with-pty-group=5"
diff --git a/packages/streamripper/streamripper_1.61.10.bb b/packages/streamripper/streamripper_1.61.10.bb
new file mode 100644
index 0000000000..465e3d457d
--- /dev/null
+++ b/packages/streamripper/streamripper_1.61.10.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "StreamRipper lets you record streaming mp3 to your hard drive."
+SECTION = "console/multimedia"
+LICENSE = "GPL"
+STREAMRIPPER_MAINTAINER= "Inge Arnesen <inge.arnesen@gmail.com>"
+DEPENDS= "libogg libvorbis"
+RDEPENDS= "libogg libvorbis"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/streamripper/streamripper-${PV}.tar.gz"
+
+EXTRA_OECONF="--disable-oggtest \
+ --disable-vorbistest \
+ --with-ogg=${STAGING_LIBDIR} \
+ --with-vorbis=${STAGING_LIBDIR}"
+
+inherit autotools
+
diff --git a/packages/sylpheed/files/sylpheed-gnutls_2.0.0rc.patch b/packages/sylpheed/files/sylpheed-gnutls_2.0.0rc.patch
new file mode 100644
index 0000000000..b0a03c6a32
--- /dev/null
+++ b/packages/sylpheed/files/sylpheed-gnutls_2.0.0rc.patch
@@ -0,0 +1,92 @@
+--- sylpheed-2.0.0beta6/config.h.in.old 2005-07-18 11:57:23.000000000 +0200
++++ sylpheed-2.0.0beta6/config.h.in 2005-07-18 11:59:57.000000000 +0200
+@@ -263,6 +263,9 @@
+ /* Define to 1 if your <sys/time.h> declares `struct tm'. */
+ #undef TM_IN_SYS_TIME
+
++/* Define if you use GnuTLS to support SSL. */
++#undef USE_GNUTLS
++
+ /* Define if you use GPGME to support OpenPGP. */
+ #undef USE_GPGME
+
+@@ -273,6 +276,9 @@
+ #undef USE_LDAP
+
+ /* Define if you use OpenSSL to support SSL. */
++#undef USE_OPENSSL
++
++/* Define if SSL is supported. */
+ #undef USE_SSL
+
+ /* Whether to use multithread or not */
+--- sylpheed-2.0.0beta6/configure.in.old 2005-07-18 12:00:24.000000000 +0200
++++ sylpheed-2.0.0beta6/configure.in 2005-07-18 12:04:33.000000000 +0200
+@@ -202,7 +202,8 @@
+ #include <openssl/opensslv.h>
+ ], [ return OPENSSL_VERSION_NUMBER; ],
+ [ AC_MSG_RESULT(yes)
+- AC_DEFINE(USE_SSL, 1, Define if you use OpenSSL to support SSL.) ],
++ AC_DEFINE(USE_SSL, 1, Define if SSL is supported.)
++ AC_DEFINE(USE_OPENSSL, 1, Define if you use OpenSSL to support SSL.) ],
+ [ AC_MSG_RESULT(no)
+ LIBS="$ac_save_LIBS"
+ ac_cv_enable_ssl=no ])
+@@ -211,6 +212,27 @@
+ AC_MSG_RESULT(no)
+ fi
+
++AC_ARG_ENABLE(gnutls,
++ [ --enable-gnutls Enable SSL support using GnuTLS [default=no]],
++ [ac_cv_enable_gnutls=$enableval], [ac_cv_enable_gnutls=no])
++AC_MSG_CHECKING([whether to use GnuTLS])
++if test $ac_cv_enable_gnutls = yes; then
++ AC_MSG_RESULT(yes)
++ AC_MSG_CHECKING([if GnuTLS is available])
++ LIBS="$LIBS -lgnutls-openssl"
++ AC_TRY_LINK([
++#include <gnutls/openssl.h>
++], [ return OPENSSL_VERSION_NUMBER; ],
++ [ AC_MSG_RESULT(yes)
++ AC_DEFINE(USE_SSL, 1, Define if SSL is supported.)
++ AC_DEFINE(USE_GNUTLS, 1, Define if you use GnuTLS to support SSL.) ],
++ [ AC_MSG_RESULT(no)
++ LIBS="$ac_save_LIBS"
++ ac_cv_enable_gnutls=no ])
++else
++ AC_MSG_RESULT(no)
++fi
++
+ dnl Check for X-Face support
+ AC_ARG_ENABLE(compface,
+ [ --disable-compface Do not use compface (X-Face)],
+@@ -350,6 +372,7 @@
+ echo "JPilot : $ac_cv_enable_jpilot"
+ echo "LDAP : $ac_cv_enable_ldap"
+ echo "OpenSSL : $ac_cv_enable_ssl"
++echo "GnuTLS : $ac_cv_enable_gnutls"
+ echo "iconv : $am_cv_func_iconv"
+ echo "compface : $ac_cv_enable_compface"
+ echo "IPv6 : $ac_cv_enable_ipv6"
+--- sylpheed-2.0.0beta6/src/ssl.h.old 2005-07-18 12:09:35.000000000 +0200
++++ sylpheed-2.0.0beta6/src/ssl.h 2005-07-18 12:11:15.000000000 +0200
+@@ -27,11 +27,19 @@
+ #if USE_SSL
+
+ #include <glib.h>
++#if USE_OPENSSL
+ #include <openssl/crypto.h>
+ #include <openssl/x509.h>
+ #include <openssl/pem.h>
+ #include <openssl/ssl.h>
+ #include <openssl/err.h>
++#else
++#if USE_GNUTLS
++#include <gnutls/openssl.h>
++#else
++#error Must select either GnuTLS or OpenSSL
++#endif
++#endif
+
+ #include "socket.h"
+
diff --git a/packages/sylpheed/sylpheed_2.0.0rc.bb b/packages/sylpheed/sylpheed_2.0.0rc.bb
new file mode 100644
index 0000000000..531d694f98
--- /dev/null
+++ b/packages/sylpheed/sylpheed_2.0.0rc.bb
@@ -0,0 +1,32 @@
+SECTION = "x11/network"
+DESCRIPTION = "Mail user agent"
+DEPENDS = "gtk+ gpgme gnutls"
+MAINTAINER = "Patrick Steiner <patrick.steiner@a1.net>"
+LICENSE = "GPL"
+PR = "r3"
+DEFAULT_PREFERENCE = "-1"
+
+SRC_URI = "http://sylpheed.good-day.net/sylpheed/v2.0beta/sylpheed-2.0.0rc.tar.bz2 \
+ file://sylpheed-gnutls_2.0.0rc.patch;patch=1 \
+ file://sylpheed-gnutls-extra.patch;patch=1 "
+
+FILES_${PN} = "${bindir} ${datadir}/pixmaps ${datadir}/applications"
+FILES_${PN}-doc += "${datadir}"
+
+EXTRA_OECONF = "--enable-gnutls"
+
+CFLAGS += "-D_GNU_SOURCE"
+
+do_configure_prepend() {
+ mkdir -p m4
+}
+
+inherit autotools
+
+do_install_append() {
+ install -d ${D}${datadir}/applications
+ install -m 0644 sylpheed.desktop ${D}${datadir}/applications/
+ install -d ${D}${datadir}/pixmaps
+ install -m 0644 sylpheed.png ${D}${datadir}/pixmaps/
+}
+