ports/107187: [FIX] japanese/emacs{, 20}-emcws unbuildable with gcc41

NAKAJI Hiroyuki nakaji at jp.freebsd.org
Mon Dec 25 11:20:13 UTC 2006


>Number:         107187
>Category:       ports
>Synopsis:       [FIX] japanese/emacs{,20}-emcws unbuildable with gcc41
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Dec 25 11:20:12 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     NAKAJI Hiroyuki
>Release:        FreeBSD 7.0-CURRENT i386
>Organization:
>Environment:
System: FreeBSD roddy.4407.kankyo-u.ac.jp 7.0-CURRENT FreeBSD 7.0-CURRENT #75: Thu Dec 14 10:34:00 JST 2006 root at roddy.4407.kankyo-u.ac.jp:/usr/obj/usr/src/sys/RODDY i386



>Description:
	On both japanese/emacs-emcws and japanese/emacs20-emcws,
	src/wnnfns.c cannot be compiled with gcc41.

>How-To-Repeat:
	cd /usr/ports/japanese/emacs-emcws
	setenv CC /usr/local/bin/gcc41
	setenv CXX /usr/local/bin/g++41
	make

	or

	cd /usr/ports/japanese/emacs20-emcws
	setenv CC /usr/local/bin/gcc41
	setenv CXX /usr/local/bin/g++41
	make

>Fix:

	Here is a diff to fix the problems of both emacs-emcws and
	emacs20-emcws. Apply it in /usr/ports/japanese with "patch -p0".

	I only checked emacs-emcws can be compiled with both /usr/bin/cc
	and /usr/local/bin/gcc41.

	Note: When Emacs 22.x or newer is out, I will send another PR to
	remove these obsolete ports.

diff -urN -x CVS /usr/ports/japanese/emacs-emcws/Makefile emacs-emcws/Makefile
--- /usr/ports/japanese/emacs-emcws/Makefile	Wed Nov 16 00:17:44 2005
+++ emacs-emcws/Makefile	Mon Dec 25 18:14:31 2006
@@ -7,7 +7,7 @@
 
 PORTNAME=	emcws
 PORTVERSION=	${EMACS_VER}
-PORTREVISION=	8
+PORTREVISION=	9
 CATEGORIES=	japanese editors ipv6
 MASTER_SITES=	${MASTER_SITE_GNU}
 MASTER_SITE_SUBDIR=	emacs
@@ -20,7 +20,6 @@
 .if defined(WITH_MENUBAR_FONTSET)
 PATCH_SITES+=		http://www.nijino.com/ari/emacs/
 PATCHFILES+=		emacs-21.1-fontset.patch emacs-21.2-menu-encode.patch
-PATCH_DIST_STRIP=	-p1
 .endif
 
 MAINTAINER=	nakaji at jp.freebsd.org
@@ -29,6 +28,11 @@
 BUILD_DEPENDS=	emacs-${EMACS_VER}:${PORTSDIR}/editors/emacs
 RUN_DEPENDS=	emacs-${EMACS_VER}:${PORTSDIR}/editors/emacs
 
+CONFLICTS=	emacs-19.* emacs-21.* \
+		ja-emcws-20.* \
+		xemacs-[0-9]* xemacs-devel-[0-9]* \
+		xemacs-mule-[0-9]* xemacs-devel-mule-[0-9]*
+
 WRKSRC=		${WRKDIR}/emacs-${EMACS_VER}
 
 USE_AUTOTOOLS=	autoconf:213
@@ -152,7 +156,7 @@
 .include <bsd.port.pre.mk>
 
 .if ${ARCH} == "ia64"
-BROKEN=		"Segfault during build on ia64"
+BROKEN=		Segfault during build on ia64
 CFLAGS:=	${CFLAGS:C/-O.?/-O0/g}
 CONFIGURE_ENV=	CFLAGS="${CFLAGS}"
 .endif
diff -urN -x CVS /usr/ports/japanese/emacs-emcws/files/patch-src:wnnfns.c emacs-emcws/files/patch-src:wnnfns.c
--- /usr/ports/japanese/emacs-emcws/files/patch-src:wnnfns.c	Thu Jan  1 09:00:00 1970
+++ emacs-emcws/files/patch-src:wnnfns.c	Mon Dec 25 18:08:01 2006
@@ -0,0 +1,57 @@
+--- src/wnnfns.c.orig	Mon Dec 25 18:05:08 2006
++++ src/wnnfns.c	Mon Dec 25 18:07:15 2006
+@@ -341,6 +341,9 @@
+ static int wnnfns_norm;
+ static unsigned char lc_wnn_server_type[NSERVER] = {LCJP, LCCN, LCINV, LCKR};
+ 
++static int yes_or_no();
++static void puts2();
++
+ /* Lisp Variables and Constants Definition */
+ Lisp_Object	Qjserver;
+ Lisp_Object	Qcserver;
+@@ -452,8 +455,6 @@
+      int			nargs;
+      register Lisp_Object	*args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int	snum;
+   CHECK_STRING (args[0], 0);
+@@ -1293,8 +1294,6 @@
+      int                        nargs;
+      register Lisp_Object       *args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int   snum;
+   CHECK_STRING (args[0], 0);
+@@ -1329,8 +1328,6 @@
+      int                        nargs;
+      register Lisp_Object       *args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int   snum;
+   CHECK_STRING (args[0], 0);
+@@ -1365,8 +1362,6 @@
+      int                        nargs;
+      register Lisp_Object       *args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int   snum;
+   int	dic_no;
+@@ -1427,8 +1422,6 @@
+      int                        nargs;
+      register Lisp_Object       *args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int   snum;
+   int   dic_no;

diff -urN -x CVS /usr/ports/japanese/emacs20-emcws/Makefile emacs20-emcws/Makefile
--- /usr/ports/japanese/emacs20-emcws/Makefile	Wed Nov 16 00:17:44 2005
+++ emacs20-emcws/Makefile	Mon Dec 25 19:53:45 2006
@@ -8,7 +8,7 @@
 
 PORTNAME=	emcws
 PORTVERSION=	20.7
-PORTREVISION=	5
+PORTREVISION=	6
 CATEGORIES=	japanese editors ipv6
 MASTER_SITES=	${MASTER_SITE_GNU}
 MASTER_SITE_SUBDIR=	emacs
@@ -24,6 +24,11 @@
 
 BUILD_DEPENDS=	emacs-${EMACS_VER}:${PORTSDIR}/editors/emacs20
 RUN_DEPENDS=	emacs-${EMACS_VER}:${PORTSDIR}/editors/emacs20
+
+CONFLICTS=	emacs-19.* emacs-21.* \
+		ja-emcws-21.* \
+		xemacs-[0-9]* xemacs-devel-[0-9]* \
+		xemacs-mule-[0-9]* xemacs-devel-mule-[0-9]*
 
 WRKSRC=		${WRKDIR}/emacs-${EMACS_VER}
 
diff -urN -x CVS /usr/ports/japanese/emacs20-emcws/files/patch-src_wnnfns.c emacs20-emcws/files/patch-src_wnnfns.c
--- /usr/ports/japanese/emacs20-emcws/files/patch-src_wnnfns.c	Thu Jan  1 09:00:00 1970
+++ emacs20-emcws/files/patch-src_wnnfns.c	Mon Dec 25 19:50:26 2006
@@ -0,0 +1,57 @@
+--- src/wnnfns.c.orig	Mon Dec 25 19:49:21 2006
++++ src/wnnfns.c	Mon Dec 25 19:50:02 2006
+@@ -341,6 +341,9 @@
+ static int wnnfns_norm;
+ static unsigned char lc_wnn_server_type[NSERVER] = {LCJP, LCCN, LCINV, LCKR};
+ 
++static int yes_or_no();
++static void puts2();
++
+ /* Lisp Variables and Constants Definition */
+ Lisp_Object	Qjserver;
+ Lisp_Object	Qcserver;
+@@ -452,8 +455,6 @@
+      int			nargs;
+      register Lisp_Object	*args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int	snum;
+   CHECK_STRING (args[0], 0);
+@@ -1293,8 +1294,6 @@
+      int                        nargs;
+      register Lisp_Object       *args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int   snum;
+   CHECK_STRING (args[0], 0);
+@@ -1329,8 +1328,6 @@
+      int                        nargs;
+      register Lisp_Object       *args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int   snum;
+   CHECK_STRING (args[0], 0);
+@@ -1365,8 +1362,6 @@
+      int                        nargs;
+      register Lisp_Object       *args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int   snum;
+   int	dic_no;
+@@ -1427,8 +1422,6 @@
+      int                        nargs;
+      register Lisp_Object       *args;
+ {
+-  static int yes_or_no();
+-  static void puts2();
+   struct gcpro gcpro1;
+   int   snum;
+   int   dic_no;
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list