ports/61912: Repair ici port issues noticed on Sparc64
Andy Newman
atrn at zeta.org.au
Mon Jan 26 00:50:18 UTC 2004
>Number: 61912
>Category: ports
>Synopsis: Repair ici port issues noticed on Sparc64
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Sun Jan 25 16:50:15 PST 2004
>Closed-Date:
>Last-Modified:
>Originator: Andy Newman
>Release: FreeBSD 4.8-RELEASE-p3 i386
>Organization:
>Environment:
System: FreeBSD juju.bsn 4.8-RELEASE-p3 FreeBSD 4.8-RELEASE-p3 #4: Sat Sep 13 10:22:47 EST 2003 toor at juju.bsn:/data/obj/usr/src/sys/juju i386
>Description:
The ici port has a number of problems that were picked
up via the Sparc64 bent build. The enclosed patch fixes
those problems - original Makefile issue and two 32-bit'isms
in the source.
>How-To-Repeat:
>Fix:
Apply following patch to port to add required source and makefile patches
and rebuild.
diff -rNu /usr/ports/lang/ici/Makefile ./Makefile
--- /usr/ports/lang/ici/Makefile Fri Dec 5 08:05:53 2003
+++ ./Makefile Mon Jan 26 11:27:42 2004
@@ -11,7 +11,7 @@
MASTER_SITES= http://www.zeta.org.au/~atrn/ici/distfiles/
MAINTAINER= atrn at zeta.org.au
-COMMENT= An interpretive language with C's overall feel combined with high level data types
+COMMENT= An interpretive language with C's feel and high level data types
MAKEFILE= Makefile.bsd
MAN1= ici3.1
diff -rNu /usr/ports/lang/ici/files/patch-Makefile.bsd ./files/patch-Makefile.bsd
--- /usr/ports/lang/ici/files/patch-Makefile.bsd Thu Jan 1 10:00:00 1970
+++ ./files/patch-Makefile.bsd Mon Jan 26 10:46:01 2004
@@ -0,0 +1,29 @@
+--- Makefile.bsd Thu Apr 19 19:31:12 2001
++++ Makefile.bsd Mon Jan 26 10:39:43 2004
+@@ -21,7 +21,7 @@
+ findpath.c float.c forall.c\
+ func.c icimain.c init.c int.c lex.c load.c main.c mark.c mem.c\
+ method.c mkvar.c nptrs.c null.c object.c oofuncs.c op.c parse.c pc.c\
+- ptr.c refuncs.o regexp.c set.c\
++ ptr.c refuncs.c regexp.c set.c\
+ sfile.c signals.c skt.c smash.c src.c sstring.c string.c\
+ struct.c syscall.c syserr.c ti.c trace.c unary.c uninit.c win.c\
+ wrap.c buf.c strtol.c idb.c idb2.c profile.c win32err.c
+@@ -59,16 +59,13 @@
+ DOCS=\
+ doc/ici-a4.ps doc/ici-ltr.ps doc/ici.txt
+
+-beforeinstall: ici3.1.gz
++beforeinstall:
+ @echo '=========================================='
+ @echo 'Installing ici interpreter and manual page'
+ @echo '=========================================='
+
+ ici3.1: $(MAN1)
+ ln -sf $(MAN1) $@
+-
+-ici3.1.gz: ici3.1
+- gzip -c ici3.1 > $@
+
+ libici3.a: $(OBJS)
+ $(AR) r libici3.a $(OBJS)
diff -rNu /usr/ports/lang/ici/files/patch-cfunc.c ./files/patch-cfunc.c
--- /usr/ports/lang/ici/files/patch-cfunc.c Thu Jan 1 10:00:00 1970
+++ ./files/patch-cfunc.c Mon Jan 26 10:46:12 2004
@@ -0,0 +1,20 @@
+--- cfunc.c Mon Jan 26 10:37:06 2004
++++ cfunc.c Mon Jan 26 10:41:23 2004
+@@ -1378,7 +1378,7 @@
+ register char *p;
+ register int i; /* Where we are up to in buf. */
+ register int j;
+- int which;
++ long which;
+ int nargs;
+ char subfmt[40]; /* %...? portion of string. */
+ int stars[2]; /* Precision and field widths. */
+@@ -1395,7 +1395,7 @@
+ #define IPLUSEQ i +=
+ #endif
+
+- which = (int)CF_ARG1(); /* sprintf, printf, fprintf */
++ which = (long)CF_ARG1(); /* sprintf, printf, fprintf */
+ if (which != 0 && NARGS() > 0 && isfile(ARG(0)))
+ {
+ which = 2;
diff -rNu /usr/ports/lang/ici/files/patch-syscall.c ./files/patch-syscall.c
--- /usr/ports/lang/ici/files/patch-syscall.c Thu Jan 1 10:00:00 1970
+++ ./files/patch-syscall.c Mon Jan 26 10:46:22 2004
@@ -0,0 +1,17 @@
+--- syscall.c Mon Jan 26 10:37:06 2004
++++ syscall.c Mon Jan 26 10:40:55 2004
+@@ -510,9 +510,13 @@
+ f_ctime(void)
+ {
+ long timev;
++ time_t timet;
+ string_t *s;
+
+- if (ici_typecheck("i", &timev) || (s = new_cname(ctime(&timev))) == NULL)
++ if (ici_typecheck("i", &timev))
++ return 1;
++ timet = timev;
++ if ((s = new_cname(ctime(&timet))) == NULL)
+ return 1;
+ return ici_ret_with_decref(objof(s));
+ }
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list