20729937 ircii should be updated to version 20141122
authorRich Burridge <rich.burridge@oracle.com>
Thu, 19 Mar 2015 06:58:24 -0700
changeset 3974 221bc3d28397
parent 3966 cca72467a46d
child 3975 43b45f9f28d5
20729937 ircii should be updated to version 20141122
components/ircii/Makefile
components/ircii/ircii.license
components/ircii/ircii.p5m
components/ircii/patches/ircterm.h.patch
components/ircii/patches/term-fixes.patch
--- a/components/ircii/Makefile	Tue Mar 17 19:06:56 2015 -0700
+++ b/components/ircii/Makefile	Thu Mar 19 06:58:24 2015 -0700
@@ -26,17 +26,17 @@
 include ../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=		ircii
-COMPONENT_VERSION=	20111115
-IPS_COMPONENT_VERSION=  0.2011.11.15
+COMPONENT_VERSION=	20141122
+IPS_COMPONENT_VERSION=  0.2014.11.22
 COMPONENT_PROJECT_URL=	http://www.eterna.com.au/ircii/
 COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
 COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.gz
 COMPONENT_ARCHIVE_HASH=	\
-    sha256:629a0a335c790aa5fa9f327532d1d45fd37d2fcd1902e8b0ee28b51994dcf604
+    sha256:b5eefbd44d1eb987c324cde590ce649b45f96b1f0f562c6d2bb8fbe9af34762d
 COMPONENT_ARCHIVE_URL=	ftp://ircii.warped.com/pub/ircII/$(COMPONENT_ARCHIVE)
 COMPONENT_BUGDB=	utility/ircii
 
-TPNO=			12675
+TPNO=			21983
 
 include $(WS_MAKE_RULES)/prep.mk
 include $(WS_MAKE_RULES)/configure.mk
@@ -55,24 +55,16 @@
 # We need to reset configure options here because ircii is confused with
 # CC and CFLAGS definitions as configure parameters.
 CONFIGURE_OPTIONS       = --prefix=/usr
-CONFIGURE_OPTIONS       += --mandir=$(CONFIGURE_MANDIR)
-CONFIGURE_OPTIONS       += --bindir=$(CONFIGURE_BINDIR.$(BITS))
+
+# The mandir definition in the top-level Makefile.in is broken. Work around it.
+CONFIGURE_OPTIONS	+= --mandir=$(PROTOUSRSHAREMANDIR)
+
+CONFIGURE_OPTIONS	+= --bindir=$(USRBINDIR)
+CONFIGURE_OPTIONS	+= --libexecdir=$(USRBINDIR)
 CONFIGURE_OPTIONS       += $(CONFIGURE_OPTIONS.$(BITS))
 
-# The ircio and wserv are now installed in the libexecdir, which by
-# default is /usr/libexec. We want to install them under /usr/bin.
-# One would think that you could just set --libexecdir=/usr/bin but no.
-# The configure script has some logic that just blindly resets it back
-# to /usr/libexec. This problem has been reported to the ircii maintainer.
-#
-# This action modifies the libexecdir setting in the Makefile to /usr/bin
-COMPONENT_POST_CONFIGURE_ACTION = \
-	$(GSED) -i -e 's|/usr/libexec|/usr/bin|' $(BUILD_DIR_64)/Makefile
-
-# Enable ASLR for this component
 ASLR_MODE = $(ASLR_ENABLE)
 
-# common targets
 configure:	$(CONFIGURE_64)
 
 build:		$(BUILD_64)
@@ -82,4 +74,5 @@
 test:           $(NO_TESTS)
 
 
+REQUIRED_PACKAGES += library/security/openssl
 REQUIRED_PACKAGES += system/library
--- a/components/ircii/ircii.license	Tue Mar 17 19:06:56 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-/*	$eterna: Copyright,v 1.13 2005/04/03 02:35:06 mrg Exp $	*/
-
-/*
- * Copyright (c) 1990 Michael Sandrof.
- * Copyright (c) 1991, 1992 Troy Rollo.
- * Copyright (c) 1992-2005 Matthew R. Green.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote products
- *    derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#pragma ident	"@(#)copyright	1.1	08/06/05 SMI"	/* copied from original src */
-
-One module of the source code, scandir.c is copyright (c) 1983
-by the Regents of the University of California, with modifications
-by various contributors.  All rights are reserved by the
-University of California.  
-
-One module of the source code, stringlist.c, is
-Copyright (c) 1994, 1999 The NetBSD Foundation, Inc.
-
-One module of the source code, stringlist.h, is
-Copyright (c) 1994 Christos Zoulas
-
-Two modules of the source code, get{addr,name}info.c, are
-Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
-
-Two modules of the source code, inet_{ntop,pton}.c are
-Copyright (c) 1996 by Internet Software Consortium.
--- a/components/ircii/ircii.p5m	Tue Mar 17 19:06:56 2015 -0700
+++ b/components/ircii/ircii.p5m	Thu Mar 19 06:58:24 2015 -0700
@@ -18,7 +18,7 @@
 #
 # CDDL HEADER END
 #
-# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
 <transform file path=usr.*/man/.+ -> default mangler.man.stability uncommitted>
@@ -37,8 +37,8 @@
 set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
 set name=org.opensolaris.arc-caseid value=LSARC/2008/373
 set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
-file usr/bin/$(MACH64)/irc-$(COMPONENT_VERSION) path=usr/bin/irc
-file usr/bin/$(MACH64)/ircflush path=usr/bin/ircflush
+file usr/bin/irc-$(COMPONENT_VERSION) path=usr/bin/irc
+file path=usr/bin/ircflush
 file path=usr/bin/ircio
 file path=usr/bin/wserv
 file path=usr/share/irc/help/!
@@ -348,7 +348,6 @@
 file path=usr/share/irc/help/redirect
 file path=usr/share/irc/help/rehash
 file path=usr/share/irc/help/restart
-file path=usr/share/irc/help/rules
 file path=usr/share/irc/help/save
 file path=usr/share/irc/help/say
 file path=usr/share/irc/help/send
@@ -383,6 +382,7 @@
 file path=usr/share/irc/help/set/debug
 file path=usr/share/irc/help/set/decrypt_program
 file path=usr/share/irc/help/set/display
+file path=usr/share/irc/help/set/display_encoding
 file path=usr/share/irc/help/set/eight_bit_characters
 file path=usr/share/irc/help/set/encrypt_program
 file path=usr/share/irc/help/set/exec_protection
@@ -405,10 +405,12 @@
 file path=usr/share/irc/help/set/hold_mode_max
 file path=usr/share/irc/help/set/indent
 file path=usr/share/irc/help/set/input_aliases
+file path=usr/share/irc/help/set/input_encoding
 file path=usr/share/irc/help/set/input_prompt
 file path=usr/share/irc/help/set/input_protection
 file path=usr/share/irc/help/set/insert_mode
 file path=usr/share/irc/help/set/inverse_video
+file path=usr/share/irc/help/set/irc_encoding
 file path=usr/share/irc/help/set/irchost
 file path=usr/share/irc/help/set/lastlog
 file path=usr/share/irc/help/set/lastlog_level
@@ -444,6 +446,10 @@
 file path=usr/share/irc/help/set/show_stars
 file path=usr/share/irc/help/set/show_status_all
 file path=usr/share/irc/help/set/show_who_hopcount
+file path=usr/share/irc/help/set/ssl_ca_chain_file
+file path=usr/share/irc/help/set/ssl_ca_file
+file path=usr/share/irc/help/set/ssl_ca_path
+file path=usr/share/irc/help/set/ssl_ca_private_key_file
 file path=usr/share/irc/help/set/star_prefix
 file path=usr/share/irc/help/set/status_away
 file path=usr/share/irc/help/set/status_channel
@@ -469,7 +475,6 @@
 file path=usr/share/irc/help/set/suppress_server_motd
 file path=usr/share/irc/help/set/tab
 file path=usr/share/irc/help/set/tab_max
-file path=usr/share/irc/help/set/translation
 file path=usr/share/irc/help/set/underline_video
 file path=usr/share/irc/help/set/user_information
 file path=usr/share/irc/help/set/user_wallops
@@ -629,39 +634,6 @@
 file path=usr/share/irc/script/wallopstat
 file path=usr/share/irc/script/whowas
 file path=usr/share/irc/script/window
-file path=usr/share/irc/translation/ASCII
-file path=usr/share/irc/translation/CP437
-file path=usr/share/irc/translation/CP850
-file path=usr/share/irc/translation/DANISH
-file path=usr/share/irc/translation/DEC_MCS
-file path=usr/share/irc/translation/DG_MCS
-file path=usr/share/irc/translation/DUTCH
-file path=usr/share/irc/translation/FINNISH
-file path=usr/share/irc/translation/FRENCH
-file path=usr/share/irc/translation/FRENCH_CANADIAN
-file path=usr/share/irc/translation/GERMAN
-file path=usr/share/irc/translation/HP_MCS
-file path=usr/share/irc/translation/IRV
-file path=usr/share/irc/translation/ITALIAN
-file path=usr/share/irc/translation/JIS
-file path=usr/share/irc/translation/MACINTOSH
-file path=usr/share/irc/translation/NEXT
-file path=usr/share/irc/translation/NORWEGIAN_1
-file path=usr/share/irc/translation/NORWEGIAN_2
-file path=usr/share/irc/translation/POLISH
-file path=usr/share/irc/translation/POLISH_NOPL
-file path=usr/share/irc/translation/PORTUGUESE
-file path=usr/share/irc/translation/PORTUGUESE_COM
-file path=usr/share/irc/translation/RUSSIAN
-file path=usr/share/irc/translation/RUSSIAN_ALT
-file path=usr/share/irc/translation/RUSSIAN_WIN
-file path=usr/share/irc/translation/SPANISH
-file path=usr/share/irc/translation/SWEDISH
-file path=usr/share/irc/translation/SWEDISH_NAMES
-file path=usr/share/irc/translation/SWEDISH_NAMES_COM
-file path=usr/share/irc/translation/SWISS
-file path=usr/share/irc/translation/UNITED_KINGDOM
-file path=usr/share/irc/translation/UNITED_KINGDOM_COM
 link path=usr/share/man/man1/irc.1 target=ircII.1
 file path=usr/share/man/man1/ircII.1
-license ircii.license license=BSD
+license doc/Copyright license=BSD
--- a/components/ircii/patches/ircterm.h.patch	Tue Mar 17 19:06:56 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-Needed to get ircii to successfully run in 64-bit mode with Solaris
-libtermcap (really libcurses). Also need to have -DINCLUDE_CURSES_H
-defined in the component Makefile.
-
-This patch has not been sent upstream, because the Solaris integration
-of termcap diverges from the way that Linux systems do this.
-
-On Linux systems you do not need to have -DINCLUDE_CURSES_H defined, in 
-order to build ircii. The tgoto() routine has a prototype definition in 
-/usr/include/termcap.h (supplied by the ncurses package), which is 
-found by configure:
-
-...
-checking for termcap.h... yes
-...
-
-On Solaris, we do not have a /usr/include/termcap.h file. Therefore,
-according to the curs_termcap(3CURSES) man page, for C sources files
-that want to use the tgoto() routine, we need to include both 
-"#include <curses.h" and "#include <term.h>". For that we need to define
--DINCLUDE_CURSES_H and also patch it to include term.h
-
---- ircii-20111115/include/ircterm.h.orig	2013-05-09 14:53:15.390715728 -0700
-+++ ircii-20111115/include/ircterm.h	2013-05-09 14:53:37.227217484 -0700
[email protected]@ -39,6 +39,7 @@
- 
- #ifdef INCLUDE_CURSES_H
- # include <curses.h>
-+# include <term.h>
- #endif /* INCLUDE_CURSES_H */
- 
- extern	int	term_reset_flag;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ircii/patches/term-fixes.patch	Thu Mar 19 06:58:24 2015 -0700
@@ -0,0 +1,149 @@
+Needed to get ircii to successfully build and run in 64-bit mode with Solaris
+libtermcap (really libcurses). Also need to have -DINCLUDE_CURSES_H
+defined in the component Makefile.
+
+On Linux systems you do not need to have -DINCLUDE_CURSES_H defined, in
+order to build ircii. The tgoto() routine has a prototype definition in
+/usr/include/termcap.h (supplied by the ncurses package), which is
+found by configure:
+
+...
+checking for termcap.h... yes
+...
+
+On Solaris, we do not have a /usr/include/termcap.h file. Therefore,
+according to the curs_termcap(3CURSES) man page, for C sources files
+that want to use the tgoto() routine, we need to include both
+"#include <curses.h" and "#include <term.h>". For that we need to define
+-DINCLUDE_CURSES_H and also patch it to include term.h
+
+But then we have another problem. /usr/include/term.h on Solaris has:
+
+#define lines                           CUR _c3
+
+which causes the pre-processor to screw up occurrences of variable "lines"
+in two source files.
+
+The patch needs to be reworked before it can be sent upstream. The Solaris
+integration of termcap diverges from the way that Linux systems do this.
+
+--- ircii-20141122/include/ircterm.h.orig	2015-03-18 09:31:15.080165469 -0700
++++ ircii-20141122/include/ircterm.h	2015-03-18 09:31:50.292380649 -0700
[email protected]@ -39,6 +39,7 @@
+ 
+ #ifdef INCLUDE_CURSES_H
+ # include <curses.h>
++# include <term.h>
+ #endif /* INCLUDE_CURSES_H */
+ 
+ #ifdef NCURSES_VERSION
+--- ircii-20141122/source/lastlog.c.orig	2015-03-18 09:17:28.728033735 -0700
++++ ircii-20141122/source/lastlog.c	2015-03-18 09:36:08.526848734 -0700
[email protected]@ -48,7 +48,7 @@
+ {
+ 	int	level;
+ 	u_char	*msg;
+-	u_char	**lines;
++	u_char	**log_lines;
+ 	int	cols;	/* If this doesn't match the current columns,
+ 			 * we have to recalculate the whole thing. */
+ 	struct	lastlog_stru	*next;
[email protected]@ -209,11 +209,11 @@
+ static	void
+ free_lastlog_lines(Lastlog *log)
+ {
+-	u_char **lines;
++	u_char **log_lines;
+ 
+-	for (lines = log->lines; *lines; lines++)
+-		new_free(lines);
+-	new_free(&log->lines);
++	for (log_lines = log->log_lines; *log_lines; log_lines++)
++		new_free(log_lines);
++	new_free(&log->log_lines);
+ }
+ 
+ static	void
[email protected]@ -499,7 +499,7 @@
+ 			malloc_strcpy(&new->msg, line);
+ 			copy_window_size(NULL, &new->cols);
+ 			Debug(DB_LASTLOG, "columns = %d", new->cols);
+-			new->lines = split_up_line_alloc(line);
++			new->log_lines = split_up_line_alloc(line);
+ 
+ 			if (info->lastlog_head)
+ 				info->lastlog_head->prev = new;
[email protected]@ -513,7 +513,7 @@
+ 		}
+ 	}
+ 	if (new)
+-		return new->lines;
++		return new->log_lines;
+ 	return NULL;
+ }
+ 
[email protected]@ -600,9 +600,9 @@
+ 			/* Must free and re-calculate */
+ 			free_lastlog_lines(LogLine);
+ 			LogLine->cols = cols;
+-			LogLine->lines = split_up_line_alloc(LogLine->msg);
++			LogLine->log_lines = split_up_line_alloc(LogLine->msg);
+ 		}
+-		TheirLines = LogLine->lines;
++		TheirLines = LogLine->log_lines;
+ 		for (row = 0; TheirLines[row]; row++)
+ 			/* count the rows */;
+ 		if (window)
+--- ircii-20141122/source/status.c.orig	2015-03-18 09:50:11.971051956 -0700
++++ ircii-20141122/source/status.c	2015-03-18 09:51:38.224735226 -0700
[email protected]@ -1120,9 +1120,9 @@
+ 	u_char	*ptr = NULL;
+ 	int	num;
+ 	u_char	localbuf[40];
+-	int	lines = window_held_lines(window);
++	int	held_lines = window_held_lines(window);
+ 
+-	num = lines - lines % 10;
++	num = held_lines - held_lines % 10;
+ 	if (num)
+ 	{
+ 		u_char	lbuf[BIG_BUFFER_SIZE];
[email protected]@ -1142,10 +1142,10 @@
+ {
+ 	u_char	*ptr = NULL,
+ 		*text;
+-	int	lines = window_get_all_scrolled_lines(window);
++	int	scrolled_lines = window_get_all_scrolled_lines(window);
+ 
+-	Debug(DB_STATUS, "status_scrolled: lines = %d", lines);
+-	if (lines && (text = get_string_var(STATUS_SCROLLED_VAR)))
++	Debug(DB_STATUS, "status_scrolled: lines = %d", scrolled_lines);
++	if (scrolled_lines && (text = get_string_var(STATUS_SCROLLED_VAR)))
+ 		malloc_strcpy(&ptr, text);
+ 	else
+ 		malloc_strcpy(&ptr, empty_string());
[email protected]@ -1157,20 +1157,20 @@
+ {
+ 	u_char	*ptr = NULL;
+ 	u_char	localbuf[40];
+-	int	lines = window_get_all_scrolled_lines(window);
++	int	scrolled_lines = window_get_all_scrolled_lines(window);
+ 
+-	if (lines)
++	if (scrolled_lines)
+ 	{
+ 		u_char	lbuf[BIG_BUFFER_SIZE];
+ 
+-		snprintf(CP(localbuf), sizeof localbuf, "%d", lines);
++		snprintf(CP(localbuf), sizeof localbuf, "%d", scrolled_lines);
+ 		snprintf(CP(lbuf), sizeof lbuf, CP(hold_lines_format),
+ 			 localbuf);
+ 		malloc_strcpy(&ptr, lbuf);
+ 	}
+ 	else
+ 		malloc_strcpy(&ptr, empty_string());
+-	Debug(DB_STATUS, "status_scrolled_lines: lines = %d, str = '%s'", lines, ptr);
++	Debug(DB_STATUS, "status_scrolled_lines: lines = %d, str = '%s'", scrolled_lines, ptr);
+ 	return (ptr);
+ }
+