[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xterm: Changes to 'ubuntu'



 INSTALL                              |   24 
 Imakefile                            |    7 
 MANIFEST                             |    4 
 Makefile.in                          |   36 
 THANKS                               |    7 
 Tekproc.c                            |   10 
 VTPrsTbl.c                           |   27 
 VTparse.def                          |   10 
 VTparse.h                            |   10 
 aclocal.m4                           |  299 -
 button.c                             |  834 +++
 cachedGCs.c                          |   62 
 charproc.c                           |  526 +-
 charsets.c                           |   63 
 configure                            | 3751 +++++++++------
 configure.in                         |   34 
 ctlseqs.ms                           |  151 
 ctlseqs.txt                          |  135 
 debian/changelog                     |   81 
 debian/control                       |    5 
 debian/copyright                     |    2 
 debian/local/xterm.faq.html          | 8340 +++++++++++++++++++++--------------
 debian/patches/900_debian_xterm.diff |   87 
 debian/patches/902_windowops.diff    |    2 
 debian/patches/904_fontops.diff      |    6 
 debian/rules                         |   21 
 debian/xterm.install                 |    1 
 doublechr.c                          |   62 
 fontutils.c                          |  374 -
 fontutils.h                          |   64 
 input.c                              |   23 
 koi8rxterm.man                       |    6 
 linedata.c                           |   62 
 main.c                               | 1122 ++--
 main.h                               |   14 
 menu.c                               |   26 
 menu.h                               |   10 
 minstall.sh                          |  125 
 misc.c                               |  831 ++-
 os2main.c                            |   43 
 package/debian/changelog             |   43 
 package/xterm.spec                   |    4 
 print.c                              |   62 
 ptydata.c                            |   62 
 ptyx.h                               |   72 
 resize.c                             |   41 
 resize.man                           |   47 
 screen.c                             |    4 
 scrollback.c                         |   62 
 scrollbar.c                          |    4 
 tabs.c                               |    5 
 termcap                              |   48 
 terminfo                             |   24 
 testxmc.c                            |   62 
 trace.c                              |  110 
 trace.h                              |   22 
 util.c                               |  104 
 uxterm.man                           |    6 
 version.h                            |   19 
 vttests/16colors.sh                  |    6 
 vttests/8colors.sh                   |    6 
 vttests/acolors.sh                   |    6 
 vttests/doublechars.sh               |    6 
 vttests/dynamic.sh                   |    6 
 vttests/dynamic2.sh                  |    6 
 vttests/fonts.sh                     |    6 
 vttests/resize.sh                    |    6 
 vttests/title.sh                     |    6 
 xcharmouse.h                         |    7 
 xstrings.c                           |  246 -
 xstrings.h                           |   74 
 xterm.h                              |  102 
 xterm.log.html                       |  305 +
 xterm.man                            |  602 +-
 xterm_io.h                           |    4 
 xtermcap.h                           |   66 
 xtermcfg.hin                         |   69 
 xutf8.c                              |   43 
 78 files changed, 12544 insertions(+), 7126 deletions(-)

New commits:
commit d8b5da1c1273f179d9f75a9387384db80d8ff7ba
Author: Bryce Harrington <bryce@canonical.com>
Date:   Thu Aug 16 13:10:07 2012 -0700

    Merge from debian.  Branch by Logan Rosen
    
    https://code.launchpad.net/~logan/ubuntu/quantal/xterm/debian-merge/+merge/114117

diff --git a/INSTALL b/INSTALL
index 028375a..0d0a4de 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,4 +1,4 @@
--- $XTermId: INSTALL,v 1.125 2011/07/07 01:01:14 tom Exp $
+-- $XTermId: INSTALL,v 1.127 2011/12/22 01:59:16 tom Exp $
 -------------------------------------------------------------------------------
 -- Copyright 1997-2010,2011 by Thomas E. Dickey
 --
@@ -281,6 +281,11 @@ The options (in alphabetic order):
 	Do not compile-in code that suppresses redundant updates to the
 	titlebar when the text has not changed.
 
+  --disable-selection-ops disable selection operations
+
+	Do not compile-in code to support the actions which allow users
+	to bind keys that use the selection or extract data from the screen.
+
   --disable-session-mgt   enable support for session management
 
 	Do not compile-in code which adds simple session management hooks
@@ -537,6 +542,23 @@ The options (in alphabetic order):
 	at existing ".desktop" files for xterm and common terminal
 	emulators, to use those.
 
+  --with-freetype-config  configure script to use for FreeType
+
+ 	Use a specific option value to tell the configure script to try
+	just one of the variations:
+
+	"pkg*", e.g., pkg-config or pkgconfig uses whatever pkg-config
+		script was found. 
+
+	otherwise, the parameter value is used as the name of the script
+	to try, using --cflags and --libs options.
+
+	Use --without-freetype-config to enable the --with-freetype-cflags
+	and --with-freetype-libs options.
+
+	The default value "auto" tells the configure script to try the
+	pkg-config script first, then freetype-config and finally xft-config.
+
   --with-freetype-cflags  -D/-I options for compiling with FreeType library
 
 	Override options provided by xft-config or freetype-config.
diff --git a/Imakefile b/Imakefile
index f65c300..fcfaced 100644
--- a/Imakefile
+++ b/Imakefile
@@ -1,4 +1,4 @@
-XCOMM $XTermId: Imakefile,v 1.104 2011/07/02 00:48:49 tom Exp $
+XCOMM $XTermId: Imakefile,v 1.105 2011/11/29 10:19:20 Thorsten.Glaser Exp $
 XCOMM
 XCOMM                         Attention xterm porters
 XCOMM
@@ -253,6 +253,11 @@ SetUIDProgramTarget(xterm,$(OBJS1),$(DEPLIBS1),$(XRFLIBS) XkbClientLibs XawClien
 NormalProgramTarget(xterm,$(OBJS1),$(DEPLIBS1),$(XRFLIBS) XkbClientLibs XawClientLibs,$(TERMCAPLIB) $(UTMPLIB) $(PTYLIB))
 #endif
 
+#if defined(OpenBSDArchitecture) || defined(MirBSDArchitecture)
+/* On OpenBSD xterm is now setgid utmp */
+INSTUIDFLAGS= -m 2555 -g utmp
+#endif
+
 #if InstallXtermSetUID && defined(SunArchitecture) && HasSharedLibraries && (OSMajorVersion < 5)
 #if AlternateUsrLibDir
 #if ((OSMajorVersion == 4) && (OSMinorVersion >= 1))
diff --git a/MANIFEST b/MANIFEST
index 757e8e0..30e5fd3 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,4 +1,4 @@
-MANIFEST for xterm-271, version xterm-271
+MANIFEST for xterm-278, version xterm-278
 --------------------------------------------------------------------------------
 MANIFEST                        this file
 256colres.h                     resource-definitions for 256-color mode
@@ -60,7 +60,7 @@ main.h                          default definitions for 'xterm'
 make.com                        build-script for VMS port of 'xterm'
 menu.c                          popup/pulldown menus for 'xterm'
 menu.h                          interface of menu.c
-minstall.sh                     script for installing manpages
+minstall.in                     script for installing manpages
 misc.c                          miscellaneous utility functions for 'xterm'
 os2main.c                       main program for OS/2 EMX port of 'xterm'
 plink.sh                        script to prune unneeded libraries from link
diff --git a/Makefile.in b/Makefile.in
index e3b746c..17684ea 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,4 +1,4 @@
-## $XTermId: Makefile.in,v 1.181 2011/07/14 22:13:45 tom Exp $
+## $XTermId: Makefile.in,v 1.186 2011/08/25 09:25:51 tom Exp $
 # -----------------------------------------------------------------------------
 # this file is part of xterm
 #
@@ -130,7 +130,7 @@ all :	$(PROGRAMS)
 	grep '^CASE_' $< | $(AWK) '{printf "#define %s %d\n", $$1, n++}' >$@
 
 .man.$(manext) :
-	$(SHELL) $(srcdir)/minstall.sh "$(INSTALL_DATA)" $< $@ $(appsdir)
+	$(SHELL) ./minstall "$(INSTALL_DATA)" $< $@ $(appsdir) $(CLASS)
 
 .$(manext).html :
 	GROFF_NO_SGR=stupid $(SHELL) -c "tbl $*.$(manext) | groff -Thtml -man" >$@
@@ -142,13 +142,13 @@ all :	$(PROGRAMS)
 	GROFF_NO_SGR=stupid $(SHELL) -c "tbl $*.$(manext) | nroff -Tascii -man | col -bx" >$@
 
 .ms.html :
-	GROFF_NO_SGR=stupid $(SHELL) -c "tbl $*.ms | groff -Thtml -ms" >$@
+	GROFF_NO_SGR=stupid $(SHELL) -c "tbl $< | groff -Thtml -ms" >$@
 
 .ms.ps :
-	$(SHELL) -c "tbl $*.ms | groff -ms" >$@
+	$(SHELL) -c "tbl $< | groff -ms" >$@
 
 .ms.txt :
-	GROFF_NO_SGR=stupid $(SHELL) -c "tbl $*.ms | nroff -Tascii -ms | col -bx" >$@
+	GROFF_NO_SGR=stupid $(SHELL) -c "tbl $< | nroff -Tascii -ms | col -bx" >$@
 
 .ps.pdf :
 	ps2pdf $*.ps
@@ -222,10 +222,10 @@ install-full ::
 install \
 install-man \
 install-full :: $(MANDIR)
-	$(SHELL) $(srcdir)/minstall.sh "$(INSTALL_DATA)" $(srcdir)/xterm.man    $(MANDIR)/$(actual_xterm).$(manext)  $(appsdir)
-	$(SHELL) $(srcdir)/minstall.sh "$(INSTALL_DATA)" $(srcdir)/resize.man   $(MANDIR)/$(actual_resize).$(manext) $(appsdir)
-	$(SHELL) $(srcdir)/minstall.sh "$(INSTALL_DATA)" $(srcdir)/uxterm.man   $(MANDIR)/$(actual_uxterm).$(manext) $(appsdir)
-	$(SHELL) $(srcdir)/minstall.sh "$(INSTALL_DATA)" $(srcdir)/koi8rxterm.man   $(MANDIR)/$(actual_k8term).$(manext) $(appsdir)
+	$(SHELL) ./minstall "$(INSTALL_DATA)" $(srcdir)/xterm.man    $(MANDIR)/$(actual_xterm).$(manext)  $(appsdir) $(CLASS)
+	$(SHELL) ./minstall "$(INSTALL_DATA)" $(srcdir)/resize.man   $(MANDIR)/$(actual_resize).$(manext) $(appsdir) $(CLASS)
+	$(SHELL) ./minstall "$(INSTALL_DATA)" $(srcdir)/uxterm.man   $(MANDIR)/$(actual_uxterm).$(manext) $(appsdir) $(CLASS)
+	$(SHELL) ./minstall "$(INSTALL_DATA)" $(srcdir)/koi8rxterm.man   $(MANDIR)/$(actual_k8term).$(manext) $(appsdir) $(CLASS)
 	@-$(SHELL) -c "if test @XTERM_SYMLINK@ != NONE ; then cd $(MANDIR) && rm -f @XTERM_SYMLINK@.$(manext) ; fi"
 	@-$(SHELL) -c "if test @XTERM_SYMLINK@ != NONE ; then cd $(MANDIR) && $(LN_S) $(actual_xterm).$(manext) @XTERM_SYMLINK@.$(manext) ; fi"
 	@-$(SHELL) -c "if test @XTERM_SYMLINK@ != NONE ; then cd $(MANDIR) && echo '... created symbolic link:' && ls -l $(actual_xterm).$(manext) @XTERM_SYMLINK@.$(manext) ; fi"
@@ -252,10 +252,10 @@ APP_NAMES = XTerm UXTerm KOI8RXTerm
 @no_icondir@install \
 @no_icondir@install-icon \
 @no_icondir@install-full :: $(ICONDIR)
-@no_icondir@	@$(INSTALL_DATA) $(srcdir)/icons/xterm-color_32x32.xpm $(ICONDIR)/$(actual_xterm)-color_32x32.xpm 
-@no_icondir@	@$(INSTALL_DATA) $(srcdir)/icons/xterm-color_48x48.xpm $(ICONDIR)/$(actual_xterm)-color_48x48.xpm 
-@no_icondir@	@$(INSTALL_DATA) $(srcdir)/icons/xterm_32x32.xpm $(ICONDIR)/$(actual_xterm)_32x32.xpm 
-@no_icondir@	@$(INSTALL_DATA) $(srcdir)/icons/xterm_48x48.xpm $(ICONDIR)/$(actual_xterm)_48x48.xpm 
+@no_icondir@	@$(INSTALL_DATA) $(srcdir)/icons/xterm-color_32x32.xpm $(ICONDIR)/$(actual_xterm)-color_32x32.xpm
+@no_icondir@	@$(INSTALL_DATA) $(srcdir)/icons/xterm-color_48x48.xpm $(ICONDIR)/$(actual_xterm)-color_48x48.xpm
+@no_icondir@	@$(INSTALL_DATA) $(srcdir)/icons/xterm_32x32.xpm $(ICONDIR)/$(actual_xterm)_32x32.xpm
+@no_icondir@	@$(INSTALL_DATA) $(srcdir)/icons/xterm_48x48.xpm $(ICONDIR)/$(actual_xterm)_48x48.xpm
 @no_icondir@	@echo "... installed icons"
 
 install ::
@@ -335,7 +335,7 @@ clean : mostlyclean
 
 distclean :: clean
 	-$(RM) Makefile config.status config.cache config.log xtermcfg.h
-	-$(RM) df-install
+	-$(RM) df-install minstall
 
 distclean \
 docs-clean ::
@@ -359,11 +359,11 @@ docs-ctlseqs \
 docs :: ctlseqs.html \
 	ctlseqs.pdf \
 	ctlseqs.ps \
-	ctlseqs.txt
-ctlseqs.html : ctlseqs.ms
+	$(srcdir)/ctlseqs.txt
+ctlseqs.html : $(srcdir)/ctlseqs.ms
 ctlseqs.pdf : ctlseqs.ps
-ctlseqs.ps : ctlseqs.ms
-ctlseqs.txt : ctlseqs.ms
+ctlseqs.ps : $(srcdir)/ctlseqs.ms
+ctlseqs.txt : $(srcdir)/ctlseqs.ms
 ################################################################################
 docs-resize \
 docs :: resize.html \
diff --git a/THANKS b/THANKS
index 97d533c..223c10d 100644
--- a/THANKS
+++ b/THANKS
@@ -1,4 +1,4 @@
--- $XTermId: THANKS,v 1.4 2011/02/11 10:55:53 tom Exp $
+-- $XTermId: THANKS,v 1.5 2011/08/21 00:52:56 tom Exp $
 -- vile:txtmode fk=8bit
 There's no AUTHORS file in this distribution; it would be redundant since
 I (Thomas E. Dickey) have done more than 80% of the work on xterm since 1996.
@@ -65,6 +65,7 @@ Frank Guangxin Liu
 Frank Liu
 Gael Roualland
 George Peter Staplin
+Gertjan Halkes
 Greg Badros
 Greg Klanderman
 Greg Smith
@@ -99,8 +100,10 @@ Kevin Schoedel
 Kiyokazu Suto
 Larry Riedel
 Lee Olsen
+Lo�Minier
 Marc Bevand
 Marc La France
+Marco Peereboom
 Marius Tolzmann
 Mark Waggoner
 Markus Kuhn
@@ -121,6 +124,7 @@ Miroslav Lichvar
 Nam SungHyun
 Nelson Beebe
 N�th M�on
+Nicolas George
 Ovidiu Gheorghioiu
 Paul Gilmartin
 Paul Giordano
@@ -150,6 +154,7 @@ Stuart Lissaman
 Sven Verdoolaege
 Taneli Huuskonen
 Ted Phelps
+Thierry Reding
 Thomas Wolff
 Tim Adye
 Tim Pope
diff --git a/Tekproc.c b/Tekproc.c
index f07831e..6a7f668 100644
--- a/Tekproc.c
+++ b/Tekproc.c
@@ -1,4 +1,4 @@
-/* $XTermId: Tekproc.c,v 1.189 2011/07/10 22:19:32 tom Exp $ */
+/* $XTermId: Tekproc.c,v 1.191 2011/12/27 10:19:51 tom Exp $ */
 
 /*
  * Copyright 2001-2010,2011 by Thomas E. Dickey
@@ -397,7 +397,7 @@ TekPtyData(void)
     if (Tpushb == 0) {
 	if ((Tpushb = TypeMallocN(Char, 10)) == NULL
 	    || (Tline = TypeMallocN(XSegment, MAX_VTX)) == NULL) {
-	    fprintf(stderr, "%s: Not enough core for Tek mode\n", ProgramName);
+	    xtermWarning("Not enough core for Tek mode\n");
 	    if (Tpushb)
 		free(Tpushb);
 	    Tfailed = True;
@@ -826,7 +826,7 @@ Tinput(TekWidget tw)
 		TCursorToggle(tw, TOGGLE);
 		Ttoggled = False;
 	    }
-	    if (XtAppPending(app_con) & XtIMXEvent) {
+	    if (xtermAppPending() & XtIMXEvent) {
 #ifdef VMS
 		Tselect_mask = X_mask;
 #else /* VMS */
@@ -1571,8 +1571,8 @@ TekRealize(Widget gw,
     else if (TestGIN(GIN_TERM_EOT_STR) == 0)
 	tekscr->gin_terminator = GIN_TERM_EOT;
     else
-	fprintf(stderr, "%s: illegal GIN terminator setting \"%s\"\n",
-		ProgramName, tw->tek.gin_terminator_str);
+	xtermWarning("illegal GIN terminator setting \"%s\"\n",
+		     tw->tek.gin_terminator_str);
 
     gcv.graphics_exposures = True;	/* default */
     gcv.font = tw->tek.Tfont[tekscr->cur.fontsize]->fid;
diff --git a/VTPrsTbl.c b/VTPrsTbl.c
index ea7f812..35e0bc7 100644
--- a/VTPrsTbl.c
+++ b/VTPrsTbl.c
@@ -1,8 +1,7 @@
-/* $XTermId: VTPrsTbl.c,v 1.59 2010/08/24 21:26:42 tom Exp $ */
+/* $XTermId: VTPrsTbl.c,v 1.63 2011/12/04 19:46:52 tom Exp $ */
 
 /*
- *
- * Copyright 1999-2009,2010 by Thomas E. Dickey
+ * Copyright 1999-2010,2011 by Thomas E. Dickey
  *
  *                         All Rights Reserved
  *
@@ -54,6 +53,7 @@
  */
 
 #include <VTparse.h>
+/* *INDENT-OFF* */
 
 #if !OPT_BLINK_CURS
 #undef  CASE_CSI_SPACE_STATE
@@ -1786,8 +1786,8 @@ CASE_CSI_IGNORE,
 CASE_CSI_IGNORE,
 CASE_CSI_IGNORE,
 /*	@		A		B		C	*/
-CASE_GROUND_STATE,
-CASE_GROUND_STATE,
+CASE_SL,
+CASE_SR,
 CASE_GROUND_STATE,
 CASE_GROUND_STATE,
 /*	D		E		F		G	*/
@@ -2188,8 +2188,8 @@ CASE_DECELR,
 CASE_DECSLE,
 /*	|		}		~		DEL	*/
 CASE_DECRQLP,
-CASE_GROUND_STATE,
-CASE_GROUND_STATE,
+CASE_DECIC,
+CASE_DECDC,
 CASE_IGNORE,
 /*      0x80            0x81            0x82            0x83    */
 CASE_GROUND_STATE,
@@ -2348,8 +2348,8 @@ CASE_DECELR,
 CASE_DECSLE,
 /*	udiaeresis	yacute		thorn		ydiaeresis	*/
 CASE_DECRQLP,
-CASE_GROUND_STATE,
-CASE_GROUND_STATE,
+CASE_DECIC,
+CASE_DECDC,
 CASE_IGNORE,
 };
 #endif	/* OPT_DEC_LOCATOR */
@@ -5020,11 +5020,11 @@ CASE_GROUND_STATE,
 /*	4		5		6		7	*/
 CASE_GROUND_STATE,
 CASE_GROUND_STATE,
-CASE_GROUND_STATE,
+CASE_DECBI,
 CASE_DECSC,
 /*	8		9		:		;	*/
 CASE_DECRC,
-CASE_GROUND_STATE,
+CASE_DECFI,
 CASE_GROUND_STATE,
 CASE_GROUND_STATE,
 /*	<		=		>		?	*/
@@ -5180,11 +5180,11 @@ CASE_GROUND_STATE,
 /*      acute           mu              paragraph       periodcentered  */
 CASE_GROUND_STATE,
 CASE_GROUND_STATE,
-CASE_GROUND_STATE,
+CASE_DECBI,
 CASE_DECSC,
 /*      cedilla         onesuperior     masculine       guillemotright  */
 CASE_DECRC,
-CASE_GROUND_STATE,
+CASE_DECFI,
 CASE_GROUND_STATE,
 CASE_GROUND_STATE,
 /*      onequarter      onehalf         threequarters   questiondown    */
@@ -8197,3 +8197,4 @@ CASE_IGNORE,
 CASE_IGNORE,
 };
 #endif /* OPT_VT52_MODE */
+/* *INDENT-ON* */
diff --git a/VTparse.def b/VTparse.def
index da9b5c7..67254d1 100644
--- a/VTparse.def
+++ b/VTparse.def
@@ -1,10 +1,10 @@
-# $XTermId: VTparse.def,v 1.40 2010/08/24 21:26:42 tom Exp $
+# $XTermId: VTparse.def,v 1.42 2011/12/04 18:29:33 tom Exp $
 #
 # vile:confmode rs=lf
 # -----------------------------------------------------------------------------
 # this file is part of xterm
 #
-# Copyright 1996-2009,2010 by Thomas E. Dickey
+# Copyright 1996-2010,2011 by Thomas E. Dickey
 # 
 #                         All Rights Reserved
 # 
@@ -185,3 +185,9 @@ CASE_DECLL
 CASE_DECRQM
 CASE_RQM
 CASE_CSI_DEC_DOLLAR_STATE
+CASE_SL
+CASE_SR
+CASE_DECDC
+CASE_DECIC
+CASE_DECBI
+CASE_DECFI
diff --git a/VTparse.h b/VTparse.h
index cafbbe3..bf9350f 100644
--- a/VTparse.h
+++ b/VTparse.h
@@ -1,7 +1,7 @@
-/* $XTermId: VTparse.h,v 1.53 2010/08/24 21:27:13 tom Exp $ */
+/* $XTermId: VTparse.h,v 1.55 2011/12/04 18:30:20 tom Exp $ */
 
 /*
- * Copyright 2002-2009,2010 by Thomas E. Dickey
+ * Copyright 2002-2010,2011 by Thomas E. Dickey
  *
  *                         All Rights Reserved
  *
@@ -266,5 +266,11 @@ extern Const PARSE_T esc_pct_table[];
 #define CASE_DECRQM 144
 #define CASE_RQM 145
 #define CASE_CSI_DEC_DOLLAR_STATE 146
+#define CASE_SL 147
+#define CASE_SR 148
+#define CASE_DECDC 149
+#define CASE_DECIC 150
+#define CASE_DECBI 151
+#define CASE_DECFI 152
 
 #endif /* included_VTparse_h */
diff --git a/aclocal.m4 b/aclocal.m4
index 9f3625a..c019357 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,4 +1,4 @@
-dnl $XTermId: aclocal.m4,v 1.309 2011/07/14 23:36:54 tom Exp $
+dnl $XTermId: aclocal.m4,v 1.321 2012/01/12 13:09:35 tom Exp $
 dnl
 dnl ---------------------------------------------------------------------------
 dnl
@@ -543,6 +543,37 @@ AC_DEFUN([CF_ERRNO],
 CF_CHECK_ERRNO(errno)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_GRANTPT version: 3 updated: 2012/01/12 08:07:51
+dnl ---------------
+dnl Check for grantpt versus openpty, as well as functions that "should" be
+dnl available if grantpt is available.
+AC_DEFUN([CF_FUNC_GRANTPT],[
+
+cf_func_grantpt="grantpt ptsname"
+case $host_os in #(vi
+darwin[[0-9]].*) #(vi
+	;;
+*)
+	cf_func_grantpt="$cf_func_grantpt posix_openpt"
+	;;
+esac
+
+AC_CHECK_FUNCS($cf_func_grantpt)
+
+if test "x$ac_cv_func_grantpt" != "xyes" ; then
+	AC_CHECK_LIB(util, openpty, [cf_have_openpty=yes],[cf_have_openpty=no])
+	if test "$cf_have_openpty" = yes ; then
+		LIBS="-lutil $LIBS"
+		AC_DEFINE(HAVE_OPENPTY)
+		AC_CHECK_HEADERS( \ 
+			util.h \
+			libutil.h \
+			pty.h \
+		)
+	fi
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_FUNC_MEMMOVE version: 7 updated: 2006/12/16 12:33:30
 dnl ---------------
 dnl Check for memmove, or a bcopy that can handle overlapping copy.  If neither
@@ -574,7 +605,7 @@ int main() {
 	fi
 ])])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_TGETENT version: 17 updated: 2011/07/14 19:34:47
+dnl CF_FUNC_TGETENT version: 18 updated: 2011/08/09 21:06:37
 dnl ---------------
 dnl Check for tgetent function in termcap library.  If we cannot find this,
 dnl we'll use the $LINES and $COLUMNS environment variables to pass screen
@@ -621,7 +652,7 @@ AC_CACHE_CHECK(for $cf_test_message function,cf_cv_lib_tgetent,[
 cf_save_LIBS="$LIBS"
 cf_cv_lib_tgetent=no
 if test "$cf_full_tgetent" = yes ; then
-	cf_TERMLIB="termcap termlib ncurses curses"
+	cf_TERMLIB="otermcap termcap termlib ncurses curses"
 	cf_TERMTST="buffer[[0]] == 0"
 else
 	cf_TERMLIB="termlib ncurses curses"
@@ -1219,7 +1250,7 @@ AC_TRY_COMPILE([
 test $cf_cv_path_lastlog != no && AC_DEFINE(USE_LASTLOG)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_LD_RPATH_OPT version: 4 updated: 2011/06/04 20:09:13
+dnl CF_LD_RPATH_OPT version: 5 updated: 2011/07/17 14:48:41
 dnl ---------------
 dnl For the given system and compiler, find the compiler flags to pass to the
 dnl loader to use the "rpath" feature.
@@ -1243,7 +1274,7 @@ linux*|gnu*|k*bsd*-gnu) #(vi
 openbsd[[2-9]].*|mirbsd*) #(vi
 	LD_RPATH_OPT="-Wl,-rpath,"
 	;;
-freebsd*) #(vi
+dragonfly*|freebsd*) #(vi
 	LD_RPATH_OPT="-rpath "
 	;;
 netbsd*) #(vi
@@ -2048,7 +2079,7 @@ cf_cv_struct_lastlog=unknown])])
 test $cf_cv_struct_lastlog != no && AC_DEFINE(USE_STRUCT_LASTLOG)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_SVR4 version: 3 updated: 2000/05/31 10:16:52
+dnl CF_SVR4 version: 4 updated: 2011/09/04 17:17:53
 dnl -------
 dnl Check if this is an SVR4 system.  We need the definition for xterm
 AC_DEFUN([CF_SVR4],
@@ -2056,6 +2087,9 @@ AC_DEFUN([CF_SVR4],
 AC_CHECK_LIB(elf, elf_begin,[
 AC_CACHE_CHECK(if this is an SVR4 system, cf_cv_svr4,[
 AC_TRY_COMPILE([
+#if defined(__CYGWIN__)
+make an error
+#endif
 #include <elf.h>
 #include <sys/termio.h>
 ],[
@@ -2216,6 +2250,45 @@ else
 fi
 ])
 dnl ---------------------------------------------------------------------------
+dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50
+dnl -------------------
+dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we
+dnl can define it successfully.
+AC_DEFUN([CF_TRY_XOPEN_SOURCE],[
+AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
+	AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+],[
+#ifndef _XOPEN_SOURCE
+make an error
+#endif],
+	[cf_cv_xopen_source=no],
+	[cf_save="$CPPFLAGS"
+	 CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
+	 AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+],[
+#ifdef _XOPEN_SOURCE
+make an error
+#endif],
+	[cf_cv_xopen_source=no],
+	[cf_cv_xopen_source=$cf_XOPEN_SOURCE])
+	CPPFLAGS="$cf_save"
+	])
+])
+
+if test "$cf_cv_xopen_source" != no ; then
+	CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE)
+	CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE)
+	cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
+	CF_ADD_CFLAGS($cf_temp_xopen_source)
+fi
+])
+dnl ---------------------------------------------------------------------------
 dnl CF_TTY_GROUP version: 7 updated: 2007/03/14 16:43:59
 dnl ------------
 dnl Check if the system has a tty-group defined.  This is used in xterm when
@@ -2335,6 +2408,30 @@ else
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_TYPE_CC_T version: 1 updated: 2011/12/12 20:54:48
+dnl ------------
+dnl	Check for cc_t type, used in termio.
+AC_DEFUN([CF_TYPE_CC_T],
+[
+AC_MSG_CHECKING(for cc_t in <termios.h> or <termio.h>)
+AC_CACHE_VAL(cf_cv_type_cc_t,[
+	AC_TRY_COMPILE([
+#include <sys/types.h>
+#if defined(HAVE_TERMIOS_H)
+#include <termios.h>
+#else
+#include <termio.h>
+#include <sys/ioctl.h>
+#endif
+],
+		[cc_t x],
+		[cf_cv_type_cc_t=yes],
+		[cf_cv_type_cc_t=no])
+	])
+AC_MSG_RESULT($cf_cv_type_cc_t)
+test $cf_cv_type_cc_t = no && AC_DEFINE(cc_t, unsigned char)
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_TYPE_FD_MASK version: 2 updated: 2008/03/25 20:59:57
 dnl ---------------
 dnl Check for the declaration of fd_mask, which is like fd_set, associated
@@ -3018,7 +3115,7 @@ AC_TRY_LINK([
 test "$cf_cv_xkb_bell_ext" = yes && AC_DEFINE(HAVE_XKB_BELL_EXT)
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 36 updated: 2011/07/02 15:36:04
+dnl CF_XOPEN_SOURCE version: 42 updated: 2012/01/07 08:26:49
 dnl ---------------
 dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
 dnl or adapt to the vendor's definitions to get equivalent functionality,
@@ -3045,6 +3142,7 @@ darwin[[0-8]].*) #(vi
 	;;
 darwin*) #(vi
 	cf_xopen_source="-D_DARWIN_C_SOURCE"
+	cf_XOPEN_SOURCE=
 	;;
 freebsd*|dragonfly*) #(vi
 	# 5.x headers associate
@@ -3062,15 +3160,23 @@ hpux*) #(vi
 	;;
 irix[[56]].*) #(vi
 	cf_xopen_source="-D_SGI_SOURCE"
+	cf_XOPEN_SOURCE=
 	;;
 linux*|gnu*|mint*|k*bsd*-gnu) #(vi
 	CF_GNU_SOURCE
 	;;
 mirbsd*) #(vi
-	# setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <arpa/inet.h>
+	# setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types
+	cf_XOPEN_SOURCE=
+	CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
 	;;
 netbsd*) #(vi
-	# setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
+	cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw
+	;;
+openbsd[[4-9]]*) #(vi
+	# setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw
+	cf_xopen_source="-D_BSD_SOURCE"
+	cf_XOPEN_SOURCE=600
 	;;
 openbsd*) #(vi
 	# setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
@@ -3084,36 +3190,11 @@ nto-qnx*) #(vi
 sco*) #(vi
 	# setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer
 	;;
-solaris2.1[[0-9]]) #(vi
-	cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-	;;
-solaris2.[[1-9]]) #(vi
+solaris2.*) #(vi
 	cf_xopen_source="-D__EXTENSIONS__"
 	;;
 *)
-	AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[
-	AC_TRY_COMPILE([#include <sys/types.h>],[
-#ifndef _XOPEN_SOURCE
-make an error
-#endif],
-	[cf_cv_xopen_source=no],
-	[cf_save="$CPPFLAGS"
-	 CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE"
-	 AC_TRY_COMPILE([#include <sys/types.h>],[
-#ifdef _XOPEN_SOURCE
-make an error
-#endif],
-	[cf_cv_xopen_source=no],
-	[cf_cv_xopen_source=$cf_XOPEN_SOURCE])
-	CPPFLAGS="$cf_save"
-	])
-])
-	if test "$cf_cv_xopen_source" != no ; then
-		CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE)
-		CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE)
-		cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source"
-		CF_ADD_CFLAGS($cf_temp_xopen_source)
-	fi
+	CF_TRY_XOPEN_SOURCE
 	CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
 	;;
 esac
@@ -3121,6 +3202,35 @@ esac
 if test -n "$cf_xopen_source" ; then
 	CF_ADD_CFLAGS($cf_xopen_source)
 fi
+
+dnl In anything but the default case, we may have system-specific setting
+dnl which is still not guaranteed to provide all of the entrypoints that
+dnl _XOPEN_SOURCE would yield.
+if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then
+	AC_MSG_CHECKING(if _XOPEN_SOURCE really is set)
+	AC_TRY_COMPILE([#include <stdlib.h>],[
+#ifndef _XOPEN_SOURCE
+make an error
+#endif],
+	[cf_XOPEN_SOURCE_set=yes],
+	[cf_XOPEN_SOURCE_set=no])
+	AC_MSG_RESULT($cf_XOPEN_SOURCE_set)
+	if test $cf_XOPEN_SOURCE_set = yes
+	then
+		AC_TRY_COMPILE([#include <stdlib.h>],[
+#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
+make an error
+#endif],
+		[cf_XOPEN_SOURCE_set_ok=yes],
+		[cf_XOPEN_SOURCE_set_ok=no])
+		if test $cf_XOPEN_SOURCE_set_ok = no
+		then
+			AC_MSG_WARN(_XOPEN_SOURCE is lower than requested)
+		fi
+	else
+		CF_TRY_XOPEN_SOURCE
+	fi
+fi
 ])
 dnl ---------------------------------------------------------------------------
 dnl CF_X_ATHENA version: 20 updated: 2010/11/09 05:18:02
@@ -3261,7 +3371,7 @@ elif test "$cf_x_athena_inc" != default ; then
 fi
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_X_ATHENA_LIBS version: 10 updated: 2011/02/13 13:31:33
+dnl CF_X_ATHENA_LIBS version: 12 updated: 2011/07/17 19:55:02
 dnl ----------------
 dnl Normally invoked by CF_X_ATHENA, with $1 set to the appropriate flavor of
 dnl the Athena widgets, e.g., Xaw, Xaw3d, neXtaw.
@@ -3277,19 +3387,24 @@ for cf_path in default \
 	/usr/local
 do
 	for cf_lib in \
-		"-l$cf_x_athena_root -lXmu" \
-		"-l$cf_x_athena_root -lXpm -lXmu" \
-		"-l${cf_x_athena_root}_s -lXmu_s"
+		${cf_x_athena_root} \
+		${cf_x_athena_root}7 \
+		${cf_x_athena_root}6
+	do
+	for cf_libs in \
+		"-l$cf_lib -lXmu" \
+		"-l$cf_lib -lXpm -lXmu" \
+		"-l${cf_lib}_s -lXmu_s"
 	do
 		if test -z "$cf_x_athena_lib" ; then
 			cf_save="$LIBS"
 			cf_test=XawSimpleMenuAddGlobalActions
 			if test $cf_path != default ; then
-				CF_ADD_LIBS(-L$cf_path/lib $cf_lib)
-				AC_MSG_CHECKING(for $cf_lib in $cf_path)
+				CF_ADD_LIBS(-L$cf_path/lib $cf_libs)
+				AC_MSG_CHECKING(for $cf_libs in $cf_path)
 			else
-				CF_ADD_LIBS($cf_lib)
-				AC_MSG_CHECKING(for $cf_test in $cf_lib)
+				CF_ADD_LIBS($cf_libs)
+				AC_MSG_CHECKING(for $cf_test in $cf_libs)
 			fi
 			AC_TRY_LINK([
 #include <X11/Intrinsic.h>
@@ -3300,12 +3415,14 @@ $cf_test((XtAppContext) 0)],
 				[cf_result=no])
 			AC_MSG_RESULT($cf_result)
 			if test "$cf_result" = yes ; then
-				cf_x_athena_lib="$cf_lib"
+				cf_x_athena_lib="$cf_libs"
 				break
 			fi
 			LIBS="$cf_save"
 		fi
-	done
+	done # cf_libs
+		test -n "$cf_x_athena_lib" && break
+	done # cf_lib
 done
 
 if test -z "$cf_x_athena_lib" ; then
@@ -3359,7 +3476,7 @@ fi
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_X_FREETYPE version: 23 updated: 2010/11/08 20:19:21
+dnl CF_X_FREETYPE version: 24 updated: 2011/08/29 05:46:02
 dnl -------------
 dnl Check for X FreeType headers and libraries (XFree86 4.x, etc).
 dnl
@@ -3376,44 +3493,75 @@ AC_DEFUN([CF_X_FREETYPE],
 [
 AC_REQUIRE([CF_PKG_CONFIG])
 
+cf_cv_x_freetype_incs=no
+cf_cv_x_freetype_libs=no
 cf_extra_freetype_libs=
 FREETYPE_CONFIG=none
 FREETYPE_PARAMS=
 
-AC_MSG_CHECKING(if you specified -D/-I options for FreeType)
-AC_ARG_WITH(freetype-cflags,
-	[  --with-freetype-cflags  -D/-I options for compiling with FreeType],
-	[cf_cv_x_freetype_incs="$with_freetype_cflags"],
-	[cf_cv_x_freetype_incs=no])
-AC_MSG_RESULT($cf_cv_x_freetype_incs)
-
-
-AC_MSG_CHECKING(if you specified -L/-l options for FreeType)
-AC_ARG_WITH(freetype-libs,
-	[  --with-freetype-libs    -L/-l options to link FreeType],
-	[cf_cv_x_freetype_libs="$with_freetype_libs"],
-	[cf_cv_x_freetype_libs=no])
-AC_MSG_RESULT($cf_cv_x_freetype_libs)
-
-if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xft; then
-	FREETYPE_CONFIG=$PKG_CONFIG
-	FREETYPE_PARAMS=xft
-else
-	AC_PATH_PROG(FREETYPE_XFT_CONFIG, xft-config, none)
+AC_MSG_CHECKING(for FreeType configuration script)
+AC_ARG_WITH(freetype-config,
+	[  --with-freetype-config  configure script to use for FreeType],
+	[cf_cv_x_freetype_cfgs="$withval"],
+	[cf_cv_x_freetype_cfgs=auto])
+test -z $cf_cv_x_freetype_cfgs && cf_cv_x_freetype_cfgs=auto
+test $cf_cv_x_freetype_cfgs = no && cf_cv_x_freetype_cfgs=none
+AC_MSG_RESULT($cf_cv_x_freetype_cfgs)
+
+case $cf_cv_x_freetype_cfgs in
+none) #(vi
+	AC_MSG_CHECKING(if you specified -D/-I options for FreeType)
+	AC_ARG_WITH(freetype-cflags,
+		[  --with-freetype-cflags  -D/-I options for compiling with FreeType],
+		[cf_cv_x_freetype_incs="$with_freetype_cflags"],
+		[cf_cv_x_freetype_incs=no])
+	AC_MSG_RESULT($cf_cv_x_freetype_incs)
+
+	AC_MSG_CHECKING(if you specified -L/-l options for FreeType)
+	AC_ARG_WITH(freetype-libs,
+		[  --with-freetype-libs    -L/-l options to link FreeType],
+		[cf_cv_x_freetype_libs="$with_freetype_libs"],
+		[cf_cv_x_freetype_libs=no])
+	AC_MSG_RESULT($cf_cv_x_freetype_libs)
+	;;
+auto) #(vi
+	if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xft; then
+		FREETYPE_CONFIG=$PKG_CONFIG
+		FREETYPE_PARAMS=xft
+	else
+		AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, none)
+		if test "$FREETYPE_CONFIG" != none; then
+			FREETYPE_CONFIG=$FREETYPE_CONFIG
+			cf_extra_freetype_libs="-lXft"
+		else
+			AC_PATH_PROG(FREETYPE_OLD_CONFIG, xft-config, none)
+			if test "$FREETYPE_OLD_CONFIG" != none; then
+				FREETYPE_CONFIG=$FREETYPE_OLD_CONFIG
+			fi
+		fi
+	fi
+	;;
+pkg*) #(vi
+	if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists xft; then
+		FREETYPE_CONFIG=$cf_cv_x_freetype_cfgs 
+		FREETYPE_PARAMS=xft
+	else
+		AC_MSG_WARN(cannot find pkg-config for Xft)
+	fi
+	;;
+*) #(vi
+	AC_PATH_PROG(FREETYPE_XFT_CONFIG, $cf_cv_x_freetype_cfgs, none)
 	if test "$FREETYPE_XFT_CONFIG" != none; then
 		FREETYPE_CONFIG=$FREETYPE_XFT_CONFIG
 	else
-		cf_extra_freetype_libs="-lXft"
-		AC_PATH_PROG(FREETYPE_OLD_CONFIG, freetype-config, none)
-		if test "$FREETYPE_OLD_CONFIG" != none; then
-			FREETYPE_CONFIG=$FREETYPE_OLD_CONFIG
-		fi
+		AC_MSG_WARN(cannot find config script for Xft)
 	fi
-fi
-AC_MSG_CHECKING(for FreeType config)
-AC_MSG_RESULT($FREETYPE_CONFIG $FREETYPE_PARAMS)
+	;;
+esac
 
 if test "$FREETYPE_CONFIG" != none ; then
+	AC_MSG_CHECKING(for FreeType config)
+	AC_MSG_RESULT($FREETYPE_CONFIG $FREETYPE_PARAMS)
 
 	if test "$cf_cv_x_freetype_incs" = no ; then
 		AC_MSG_CHECKING(for $FREETYPE_CONFIG cflags)
@@ -3426,7 +3574,6 @@ if test "$FREETYPE_CONFIG" != none ; then
 		cf_cv_x_freetype_libs="$cf_extra_freetype_libs `$FREETYPE_CONFIG $FREETYPE_PARAMS --libs 2>/dev/null`"
 		AC_MSG_RESULT($cf_cv_x_freetype_libs)
 	fi
-
 fi
 
 if test "$cf_cv_x_freetype_incs" = no ; then
diff --git a/button.c b/button.c
index 2c2df45..d3c44e4 100644
--- a/button.c
+++ b/button.c
@@ -1,4 +1,4 @@
-/* $XTermId: button.c,v 1.398 2011/07/04 21:49:39 tom Exp $ */
+/* $XTermId: button.c,v 1.430 2012/01/07 02:00:35 tom Exp $ */
 
 /*
  * Copyright 1999-2010,2011 by Thomas E. Dickey
@@ -62,6 +62,7 @@ button.c	Handles button events in the terminal emulator.
 #include <xterm.h>
 
 #include <stdio.h>
+#include <ctype.h>
 #include <assert.h>
 
 #include <X11/Xatom.h>
@@ -119,6 +120,7 @@ button.c	Handles button events in the terminal emulator.
 #define KeyModifiers(event) (event->xbutton.state & OurModifiers)
 
 #define IsBtnEvent(event) ((event)->type == ButtonPress || (event)->type == ButtonRelease)
+#define IsKeyEvent(event) ((event)->type == KeyPress    || (event)->type == KeyRelease)
 
 #define KeyState(x) (((int) ((x) & (ShiftMask|ControlMask))) \
 			  + (((x) & Mod1Mask) ? 2 : 0))
@@ -156,8 +158,7 @@ static void EndExtend(XtermWidget w, XEvent * event, String * params, Cardinal
 static void ExtendExtend(XtermWidget xw, const CELL * cell);
 static void PointToCELL(TScreen * screen, int y, int x, CELL * cell);
 static void ReHiliteText(XtermWidget xw, CELL * first, CELL * last);


Reply to: