summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
authorMartin Wilke <miwi@FreeBSD.org>2014-02-27 11:45:26 +0000
committerMartin Wilke <miwi@FreeBSD.org>2014-02-27 11:45:26 +0000
commit5332d904dddc82a55df334425a60a659bd9ad358 (patch)
tree0218abab1fb49f0d6cfc471b8daf9f2f2c55a6b3 /lang
parent- Support CC properly (diff)
- Update to 2.6.10
- Stage support
Notes
Notes: svn path=/head/; revision=346317
Diffstat (limited to 'lang')
-rw-r--r--lang/gcl/Makefile194
-rw-r--r--lang/gcl/distinfo4
-rw-r--r--lang/gcl/files/patch-configure26
-rw-r--r--lang/gcl/files/patch-gcl-tk__tkMain.c72
-rw-r--r--lang/gcl/files/patch-h_FreeBSD.defs2
-rw-r--r--lang/gcl/files/patch-h_FreeBSD.h38
-rw-r--r--lang/gcl/files/patch-h_gclincl.h.in19
-rw-r--r--lang/gcl/files/patch-info_gcl-si.texi18
-rw-r--r--lang/gcl/files/patch-makedefc.in28
-rw-r--r--lang/gcl/files/patch-makefile11
-rw-r--r--lang/gcl/files/patch-o__plttest.c16
-rw-r--r--lang/gcl/files/patch-o__sfasli.c18
-rw-r--r--lang/gcl/files/patch-unixport_makefile15
-rw-r--r--lang/gcl/files/patch-warnings63
-rw-r--r--lang/gcl/files/patch-xgcl-2__makefile11
-rw-r--r--lang/gcl/pkg-plist73
16 files changed, 378 insertions, 230 deletions
diff --git a/lang/gcl/Makefile b/lang/gcl/Makefile
index 8c744cfb6620..ddd0721b5946 100644
--- a/lang/gcl/Makefile
+++ b/lang/gcl/Makefile
@@ -2,48 +2,192 @@
# $FreeBSD$
PORTNAME= gcl
-PORTVERSION= 2.6.7
-PORTREVISION= 7
+PORTVERSION= 2.6.10
CATEGORIES= lang tcl tk
MASTER_SITES= GNU
MAINTAINER= ports@FreeBSD.org
COMMENT= GNU Common Lisp
-LIB_DEPENDS= gmp:${PORTSDIR}/math/gmp
+LICENSE= GPLv2 LGPL21
+LICENSE_COMB= multi
-ONLY_FOR_ARCHS= i386
+LIB_DEPENDS= libgmp.so:${PORTSDIR}/math/gmp
-USES= readline gmake tk
-USE_XORG= x11
+OPTIONS_DEFINE= EMACS X11 DOCS
+OPTIONS_DEFAULT=EMACS X11
+EMACS_DESC= Install Emacs syntax files
+
+ONLY_FOR_ARCHS= amd64 i386
+
+WRKSRC= ${WRKDIR}/${PORTNAME}
+
+USES= gmake readline
+USE_GCC= yes
GNU_CONFIGURE= yes
-CONFIGURE_ARGS=--prefix=${PREFIX} \
- --enable-ansi \
- --enable-machine=FreeBSD \
- --enable-info=${PREFIX}/info \
- --enable-tkconfig=${TK_LIBDIR} \
- --enable-tclconfig=${TCL_LIBDIR} \
- --with-x \
- --disable-dlopen \
- --disable-dynsysbfd \
- --disable-statsysbfd \
- --disable-locbfd \
- --enable-custreloc
+CONFIGURE_ARGS= --enable-ansi \
+ --enable-machine=${OPSYS} \
+ --enable-emacsdir=${PREFIX}/share/emacs/site-lisp/gcl \
+ --enable-infodir=${PREFIX}/${INFO_PATH} \
+ --disable-dlopen \
+ --disable-dynsysbfd \
+ --disable-statsysbfd \
+ --enable-custreloc
CONFIGURE_ENV= C_INCLUDE_PATH="${PREFIX}/include" LIBRARY_PATH="${PREFIX}/lib"
MAKEFILE= makefile
+INSTALL_TARGET= install-command
+LATE_INSTALL_ARGS=\
+ INSTALL_LIB_DIR="${PREFIX}/lib/${DISTNAME}" \
+ prefix="${PREFIX}" \
+ BINDIR="${PREFIX}/lib/${DISTNAME}/unixport"
MAKE_JOBS_UNSAFE=yes
CFLAGS+= -I${LOCALBASE}/include
-
-PLIST_SUB= GCL_VER="${PORTVERSION}"
+LDFLAGS+= -L${LOCALBASE}/lib -lreadline -lgmp -lm
INFO= gcl-si gcl-tk
+PORTDOCS= *
+PLIST_FILES= bin/gcl \
+ ${FILES_CLCS:S|^|lib/${DISTNAME}/clcs/|} \
+ ${FILES_CMPNEW:S|^|lib/${DISTNAME}/cmpnew/|} \
+ ${FILES_H:S|^|lib/${DISTNAME}/h/|} \
+ ${INFO:S|^|lib/${DISTNAME}/info/|:S|$|.info|} \
+ ${FILES_LSP:S|^|lib/${DISTNAME}/lsp/|} \
+ ${PCL_FILES:S|^|lib/${DISTNAME}/pcl/|} \
+ ${FILES_UNIXPORT:S|^|lib/${DISTNAME}/unixport/|}
+PLIST_DIRS= lib/${DISTNAME}/unixport \
+ lib/${DISTNAME}/pcl \
+ lib/${DISTNAME}/lsp \
+ lib/${DISTNAME}/h \
+ lib/${DISTNAME}/info \
+ lib/${DISTNAME}/cmpnew \
+ lib/${DISTNAME}/clcs \
+ lib/${DISTNAME}
+
+FILES_CLCS= sys-proclaim.lisp
+FILES_CMPNEW= gcl_cmpmain.lsp gcl_cmpopt.lsp gcl_collectfn.lsp \
+ gcl_collectfn.o gcl_lfun_list.lsp sys-proclaim.lisp
+FILES_H= cmpinclude.h
+FILES_LSP= gcl_auto_new.lsp gcl_autoload.lsp gcl_export.lsp \
+ gcl_gprof.lsp gcl_info.o gcl_profile.lsp \
+ sys-proclaim.lisp
+FILES_PCL= sys-proclaim.lisp
+FILES_UNIXPORT= gcl.script init_ansi_gcl.lsp libansi_gcl.a \
+ libgclp.a saved_ansi_gcl
+FILES_ELISP= add-default.el ansi-doc.el dbl.el doc-to-texi.el gcl.el \
+ man1-to-texi.el smart-complete.el sshell.el
+FILES_GCLTK= decode.tcl gcl.tcl gcltkaux gcltksrv tinfo.o \
+ tk-package.lsp tkl.o
+FILES_GCLTK_DEMOS=\
+ gc-monitor.lisp gc-monitor.o index.lsp \
+ mkBasic.lisp mkCanvText.lisp mkEntry.lisp \
+ mkEntry2.lisp mkForm.lisp mkHScale.lisp \
+ mkItems.lisp mkLabel.lisp mkListbox.lisp \
+ mkPlot.lisp mkRadio.lisp mkRuler.lisp \
+ mkSearch.lisp mkStyles.lisp mkTextBind.lisp \
+ mkVScale.lisp mkdialog.lisp nqthm-stack.lisp \
+ showVars.lisp widget.lisp
+FILES_XGCL2= gcl_dwtest.lsp gcl_dwtestcases.lsp sysdef.lisp
-NO_STAGE= yes
-post-patch::
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MEMACS}
+USE_EMACS= yes
+EMACS_NO_BUILD_DEPENDS=yes
+PLIST_FILES+= ${FILES_ELISP:S|^|%%EMACS_SITE_LISPDIR%%/gcl/|}
+PLIST_DIRS+= %%EMACS_SITE_LISPDIR%%/gcl
+.endif
+
+.if ${PORT_OPTIONS:MX11}
+USES+= tk
+USE_XORG= x11
+CONFIGURE_ARGS+=--enable-tclconfig=${TCL_LIBDIR} \
+ --enable-tkconfig=${TK_LIBDIR} \
+ --with-x
+LDFLAGS+= -lX11
+PLIST_FILES+= ${FILES_GCLTK:S|^|lib/gcl-${PORTVERSION}/gcl-tk/|} \
+ ${FILES_GCLTK_DEMOS:S|^|lib/gcl-${PORTVERSION}/gcl-tk/demos/|} \
+ ${FILES_XGCL2:S|^|lib/gcl-${PORTVERSION}/xgcl-2/|}
+PLIST_DIRS+= lib/${DISTNAME}/xgcl-2 \
+ lib/${DISTNAME}/gcl-tk/demos \
+ lib/${DISTNAME}/gcl-tk
+.else
+CONFIGURE_ARGS+=--disable-xgcl
+.endif
+
+post-patch:
@${REINPLACE_CMD} -e \
- 's|@@CFLAGS@@|${CFLAGS} -I${LOCALBASE}/include| ; \
- s|@@LOCALLIBS@@|-lreadline -lm -L${LOCALBASE}/lib -lgmp|' \
- ${WRKSRC}/h/FreeBSD.defs
+ 's|@@CFLAGS@@|${CFLAGS}| ; \
+ s|@@LOCALLIBS@@|${LDFLAGS}|' ${WRKSRC}/h/FreeBSD.defs
+
+post-install:
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/clcs
+.for i in ${FILES_CLCS}
+ (cd ${WRKSRC}/clcs && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/clcs)
+.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/cmpnew
+.for i in ${FILES_CMPNEW}
+ (cd ${WRKSRC}/cmpnew && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/cmpnew)
+.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/info
+.for i in ${INFO}
+ (cd ${WRKSRC}/info && ${INSTALL_DATA} ${i}.info \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/info)
+ (cd ${WRKSRC}/info && ${INSTALL_DATA} ${i}.info \
+ ${STAGEDIR}${PREFIX}/${INFO_PATH})
+.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/h
+.for i in ${FILES_H}
+ (cd ${WRKSRC}/h && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/h)
+.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/lsp
+.for i in ${FILES_LSP}
+ (cd ${WRKSRC}/lsp && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/lsp)
+.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/pcl
+.for i in ${PCL_FILES}
+ (cd ${WRKSRC}/pcl && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/pcl)
+.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/unixport
+.for i in ${FILES_UNIXPORT}
+ (cd ${WRKSRC}/unixport && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/unixport)
+.endfor
+ @${CHMOD} a+x ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/unixport/saved_ansi_gcl
+.if ${PORT_OPTIONS:MEMACS}
+ @${MKDIR} ${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/gcl
+.for i in ${FILES_ELISP}
+ (cd ${WRKSRC}/elisp && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/${EMACS_SITE_LISPDIR}/gcl)
+.endfor
+.endif
+.if ${PORT_OPTIONS:MX11}
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/gcl-tk
+.for i in ${FILES_GCLTK}
+ (cd ${WRKSRC}/gcl-tk && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/gcl-tk)
+.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/gcl-tk/demos
+.for i in ${FILES_GCLTK_DEMOS}
+ (cd ${WRKSRC}/gcl-tk/demos && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/gcl-tk/demos)
+.endfor
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/xgcl-2
+.for i in ${FILES_XGCL2}
+ (cd ${WRKSRC}/xgcl-2 && ${INSTALL_DATA} ${i} \
+ ${STAGEDIR}${PREFIX}/lib/${DISTNAME}/xgcl-2)
+.endfor
+.endif
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ (cd ${WRKSRC}/xgcl-2 && ${INSTALL_DATA} *.tex \
+ ${STAGEDIR}${DOCSDIR})
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}/dwdoc
+ (cd ${WRKSRC}/xgcl-2/dwdoc && ${INSTALL_DATA} *.html \
+ ${STAGEDIR}${DOCSDIR}/dwdoc)
.include <bsd.port.mk>
diff --git a/lang/gcl/distinfo b/lang/gcl/distinfo
index dc3c44d54907..331f4d78cf43 100644
--- a/lang/gcl/distinfo
+++ b/lang/gcl/distinfo
@@ -1,2 +1,2 @@
-SHA256 (gcl-2.6.7.tar.gz) = 2aa134bc03f12ad03f40666ad00db78b8b9c195cf2cf0b3db4d176158f722c06
-SIZE (gcl-2.6.7.tar.gz) = 8193901
+SHA256 (gcl-2.6.10.tar.gz) = 79a1fb2f92b5e86f24988448db3e34116ab6ef7c93ad839848edd01ad06651ef
+SIZE (gcl-2.6.10.tar.gz) = 5490689
diff --git a/lang/gcl/files/patch-configure b/lang/gcl/files/patch-configure
index beef4474d033..f6f2bdbf07e6 100644
--- a/lang/gcl/files/patch-configure
+++ b/lang/gcl/files/patch-configure
@@ -1,21 +1,31 @@
--- configure 2005-01-15 11:17:17.000000000 -0800
+++ configure 2007-09-22 18:17:38.000000000 -0700
-@@ -1713,3 +1713,3 @@
- if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
-- system=MP-RAS-`${AWK} '{print $3}' /etc/.relid'`
-+ system=MP-RAS-`${AWK} '{print $3}' /etc/.relid`
- fi
-@@ -6368,4 +6368,4 @@
+@@ -4998,7 +4998,7 @@
+ TLIBS="$TLIBS -lgmp"
+ echo "#include \"gmp.h\"" >foo.c
+ echo "int main() {return 0;}" >>foo.c
+- MP_INCLUDE=`cpp foo.c | grep /gmp.h | head -n 1 | $AWK '{print $3}' | tr -d '"'`
++ MP_INCLUDE=`$CPP $CPPFLAGS foo.c | grep /gmp.h | head -n 1 | $AWK '{print $3}' | tr -d '"'`
+ rm -f foo.c
+ else
+ echo "Cannot use dynamic gmp lib"
+@@ -8399,15 +8399,15 @@
+ if test -f ${TK_CONFIG_PREFIX}/../include/tk.h ; then
+ TK_INCLUDE=-I${TK_CONFIG_PREFIX}/../include
else
- if test -f /usr/include/tcl${TCL_VERSION}/tk.h ; then
- TK_INCLUDE=-I/usr/include/tcl${TCL_VERSION}
+ if test -f ${TK_CONFIG_PREFIX}/../../include/tk${TCL_VERSION}/tk.h ; then
+ TK_INCLUDE=-I${TK_CONFIG_PREFIX}/../../include/tk${TCL_VERSION}
- fi
-@@ -6375,4 +6375,4 @@
+ fi
+ fi
+ if test -f ${TCL_CONFIG_PREFIX}/../include/tcl.h ; then
+ TCL_INCLUDE=-I${TCL_CONFIG_PREFIX}/../include
else
- if test -f /usr/include/tcl${TCL_VERSION}/tcl.h ; then
- TCL_INCLUDE=-I/usr/include/tcl${TCL_VERSION}
+ if test -f ${TK_CONFIG_PREFIX}/../../include/tcl${TCL_VERSION}/tcl.h ; then
+ TCL_INCLUDE=-I${TK_CONFIG_PREFIX}/../../include/tcl${TCL_VERSION}
fi
+ fi
+
diff --git a/lang/gcl/files/patch-gcl-tk__tkMain.c b/lang/gcl/files/patch-gcl-tk__tkMain.c
new file mode 100644
index 000000000000..69c369c2bc47
--- /dev/null
+++ b/lang/gcl/files/patch-gcl-tk__tkMain.c
@@ -0,0 +1,72 @@
+--- gcl-tk/tkMain.c.orig
++++ gcl-tk/tkMain.c
+@@ -206,7 +206,7 @@
+
+ if (Tk_ParseArgv(interp, (Tk_Window) NULL, &argc, (const char **)argv, argTable, 0)
+ != TCL_OK) {
+- fprintf(stderr, "%s\n", interp->result);
++ fprintf(stderr, "%s\n", Tcl_GetStringResult(interp));
+ exit(1);
+ }
+ if (name == NULL) {
+@@ -290,7 +290,7 @@
+ */
+
+ if (Tcl_AppInit(interp) != TCL_OK) {
+- fprintf(stderr, "Tcl_AppInit failed: %s\n", interp->result);
++ fprintf(stderr, "Tcl_AppInit failed: %s\n", Tcl_GetStringResult(interp));
+ }
+
+ /*
+@@ -300,7 +300,7 @@
+ if (geometry != NULL) {
+ code = Tcl_VarEval(interp, "wm geometry . ", geometry, (char *) NULL);
+ if (code != TCL_OK) {
+- fprintf(stderr, "%s\n", interp->result);
++ fprintf(stderr, "%s\n", Tcl_GetStringResult(interp));
+ }
+ }
+
+@@ -330,13 +330,13 @@
+
+ fullName = Tcl_TildeSubst(interp, tcl_RcFileName, &buffer);
+ if (fullName == NULL) {
+- fprintf(stderr, "%s\n", interp->result);
++ fprintf(stderr, "%s\n", Tcl_GetStringResult(interp));
+ } else {
+ f = fopen(fullName, "r");
+ if (f != NULL) {
+ code = Tcl_EvalFile(interp, fullName);
+ if (code != TCL_OK) {
+- fprintf(stderr, "%s\n", interp->result);
++ fprintf(stderr, "%s\n", Tcl_GetStringResult(interp));
+ }
+ fclose(f);
+ }
+@@ -371,7 +371,7 @@
+ error:
+ msg = Tcl_GetVar(interp, "errorInfo", TCL_GLOBAL_ONLY);
+ if (msg == NULL) {
+- msg = interp->result;
++ msg = Tcl_GetStringResult(interp);
+ }
+ dfprintf(stderr, "%s\n", msg);
+ Tcl_Eval(interp, errorExitCmd);
+@@ -502,7 +502,7 @@
+ bcopy(msg->msg_id,p,3);
+ /* end header */
+ if(sock_write_str2(dsfd, m_reply, buf, 4 ,
+- interp->result, strlen(interp->result))
++ Tcl_GetStringResult(interp), strlen(Tcl_GetStringResult(interp)))
+ < 0)
+ { /* what do we want to do if the write failed */}
+
+@@ -686,7 +686,7 @@
+ code = Tcl_Eval(interp, szCmd);
+ if (code != TCL_OK)
+ {
+- dfprintf(stderr, "TCL Error int bind : %s\n", interp->result);
++ dfprintf(stderr, "TCL Error int bind : %s\n", Tcl_GetStringResult(interp));
+
+ }
+ return code;
diff --git a/lang/gcl/files/patch-h_FreeBSD.defs b/lang/gcl/files/patch-h_FreeBSD.defs
index a16a64c61534..56d8abf42ccc 100644
--- a/lang/gcl/files/patch-h_FreeBSD.defs
+++ b/lang/gcl/files/patch-h_FreeBSD.defs
@@ -20,7 +20,7 @@ diff -u -d -r1.2.6.1.4.1 FreeBSD.defs
-#LIBS = -lm -L/usr/local/lib
+#CFLAGS = @@.CFLAGS@@
+CFLAGS = @@CFLAGS@@
-+CFLAGS += -fomit-frame-pointer -fsigned-char -DVOL=volatile -I$(GCLDIR)/o -I${prefix}/include -Wall -Werror
++CFLAGS += -fomit-frame-pointer -fsigned-char -DVOL=volatile -I$(GCLDIR)/o -Wall
+CFLAGS += -UDBEGIN -DDBEGIN=0
+#LIBS = @@.LOCALLIBS@@
+LIBS = @@LOCALLIBS@@
diff --git a/lang/gcl/files/patch-h_FreeBSD.h b/lang/gcl/files/patch-h_FreeBSD.h
index 3c3ab6388e6f..0717c5605c65 100644
--- a/lang/gcl/files/patch-h_FreeBSD.h
+++ b/lang/gcl/files/patch-h_FreeBSD.h
@@ -1,18 +1,34 @@
--- h/FreeBSD.h 2004-06-12 12:28:15.000000000 -0400
+++ h/FreeBSD.h 2009-12-07 12:07:37.000000000 -0500
-@@ -32,6 +32,11 @@
+@@ -11,9 +11,12 @@
+ #endif
+
+ #if defined(__i386__)
++#define RELOC_H "elf32_i386_reloc.h"
+ #define __ELF_NATIVE_CLASS 32
+ #endif
+-#if defined(__alpha__) || defined(__sparc64__) || defined(__ia64__)
++#if defined(__amd64__) || defined(__sparc64__) || defined(__ia64__)
++#define C_GC_OFFSET 4
++#define RELOC_H "elf64_i386_reloc.h"
+ #define __ELF_NATIVE_CLASS 64
+ #endif
+
+@@ -32,7 +35,12 @@
#endif
#include "linux.h"
+-#if defined(__i386__)
+#if defined(SET_SESSION_ID)
+#undef SET_SESSION_ID
+#endif
+#define SET_SESSION_ID() (setpgrp(0,0) ? -1 : 0)
+
- #if defined(__i386__)
++#if defined(__i386__) || defined(__amd64__)
#define I386
#endif
-@@ -68,7 +73,11 @@
+
+@@ -68,7 +76,11 @@
#ifdef CLOCKS_PER_SEC
#define HZ CLOCKS_PER_SEC
#else
@@ -25,3 +41,19 @@
#endif
/* #define ss_base ss_sp */
+@@ -79,6 +91,7 @@
+ #define HAVE_SIGPROCMASK
+ #define SIG_STACK_SIZE (SIGSTKSZ/sizeof(double))
+
++/*
+ #undef SETUP_SIG_STACK
+ #define SETUP_SIG_STACK { \
+ static struct sigaltstack estack; \
+@@ -90,6 +103,7 @@
+ if (sigaltstack(&estack, 0) < 0) \
+ perror("sigaltstack"); \
+ }
++ */
+
+ #undef INSTALL_SEGMENTATION_CATCHER
+ #define INSTALL_SEGMENTATION_CATCHER \
diff --git a/lang/gcl/files/patch-h_gclincl.h.in b/lang/gcl/files/patch-h_gclincl.h.in
index f8a437a42ae0..93d00b1341c5 100644
--- a/lang/gcl/files/patch-h_gclincl.h.in
+++ b/lang/gcl/files/patch-h_gclincl.h.in
@@ -1,17 +1,12 @@
--- h/gclincl.h.in 2005-01-15 14:17:18.000000000 -0500
+++ h/gclincl.h.in 2009-12-07 12:11:34.000000000 -0500
-@@ -10,7 +10,5 @@
- #undef X_DISPLAY_MISSING
-
--#define DBEGIN 0
--
--#define MAXPAGE 128*1024
-+#define MAXPAGE (128*1024*(SIZEOF_LONG>>2)/(1<<(PAGEWIDTH-12)))
- #define VSSIZE 128*1024
- #define BDSSIZE 2*1024
-@@ -205,5 +203,4 @@
+@@ -219,9 +216,6 @@
+ /* Host system */
#undef HOST_SYSTEM
- #undef GCL_GPROF_START
+
+-/* time system constant */
-#undef HZ
+-
+ /* invocation history stack size */
+ #undef IHSSIZE
- /* The number of bytes in a long. */
diff --git a/lang/gcl/files/patch-info_gcl-si.texi b/lang/gcl/files/patch-info_gcl-si.texi
deleted file mode 100644
index 35d7e496e505..000000000000
--- a/lang/gcl/files/patch-info_gcl-si.texi
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: info/gcl-si.texi
-===================================================================
-RCS file: /cvsroot/gcl/gcl/info/gcl-si.texi,v
-retrieving revision 1.3
-diff -u -d -r1.3 gcl-si.texi
---- info/gcl-si.texi 19 Feb 2002 19:21:19 -0000 1.3
-+++ info/gcl-si.texi 18 Aug 2004 16:29:48 -0000
-@@ -19,6 +19,10 @@
-
- @setchapternewpage odd
- @ifinfo
-+@dircategory GNU Common Lisp
-+@direntry
-+* GCL Systems Internals: (gcl-si). GCL SYSTEM INTERNALS Manual
-+@end direntry
- This is a Texinfo GCL SYSTEM INTERNALS Manual
-
- Copyright 1994 William F. Schelter
diff --git a/lang/gcl/files/patch-makedefc.in b/lang/gcl/files/patch-makedefc.in
index 995ab77099af..9eb0ca993ade 100644
--- a/lang/gcl/files/patch-makedefc.in
+++ b/lang/gcl/files/patch-makedefc.in
@@ -1,29 +1,11 @@
-Index: makedefc.in
-===================================================================
-RCS file: /cvsroot/gcl/gcl/makedefc.in,v
-retrieving revision 1.15.6.3
-diff -u -d -r1.15.6.3 makedefc.in
---- makedefc.in 10 Mar 2004 22:51:36 -0000 1.15.6.3
-+++ makedefc.in 18 Aug 2004 16:29:20 -0000
-@@ -16,13 +16,18 @@
- prefix=@prefix@
-
- # where to place the info files
--INFO_DIR=@INFO_DIR@
-+INFO_DIR=@prefix@/info
-+
-+# configure has a clever process for figuring out where Emacs
-+# really expects to find site-lisp and default.el. We use
-+# these values instead to ensure that building with --prefix=PREFIX
-+# will not make changes outside the specified tree. -twp
-
- # where to put emacs lisp files.
--EMACS_SITE_LISP=@EMACS_SITE_LISP@
-+EMACS_SITE_LISP=@prefix@/share/emacs/site-lisp
+--- makedefc.in.orig
++++ makedefc.in
+@@ -22,7 +22,7 @@
+ EMACS_SITE_LISP=@EMACS_SITE_LISP@
# the default.el file
-EMACS_DEFAULT_EL=@EMACS_DEFAULT_EL@
-+EMACS_DEFAULT_EL=@prefix@/share/emacs/site-lisp/default.el
++EMACS_DEFAULT_EL=@EMACS_SITE_LISP@/default.el
# numerous TCL/TK variables culled from the tkConfig.sh and tclConfig.sh
# if these are found.
diff --git a/lang/gcl/files/patch-makefile b/lang/gcl/files/patch-makefile
new file mode 100644
index 000000000000..864f1896c74e
--- /dev/null
+++ b/lang/gcl/files/patch-makefile
@@ -0,0 +1,11 @@
+--- makefile.orig
++++ makefile
+@@ -132,7 +132,7 @@
+ rm -f bin/gcl xbin/gcl
+ MGCLDIR=`echo $(GCLDIR) | sed -e 'sX^\([a-z]\):X/\1Xg'` ; \
+ GCLDIR=`echo $(GCLDIR)` ; \
+- $(MAKE) install-command "INSTALL_LIB_DIR=$$GCLDIR" "prefix=$$GCLDIR" "BINDIR=$$MGCLDIR/$(PORTDIR)"
++ $(MAKE) install-command "DESTDIR=" "INSTALL_LIB_DIR=$$GCLDIR" "prefix=$$GCLDIR" "BINDIR=$$MGCLDIR/$(PORTDIR)"
+ (cd xbin ; cp ../bin/gcl .)
+
+ # GCLDIR=`echo $(GCLDIR) | sed -e 'sX^/cygdrive/\([a-z]\)X\1!Xg' -e 'sX^//\([a-z]\)X\1!Xg'` ; \
diff --git a/lang/gcl/files/patch-o__plttest.c b/lang/gcl/files/patch-o__plttest.c
new file mode 100644
index 000000000000..961f93aaef88
--- /dev/null
+++ b/lang/gcl/files/patch-o__plttest.c
@@ -0,0 +1,16 @@
+--- o/plttest.c.orig
++++ o/plttest.c
+@@ -11,11 +11,13 @@
+ #define DARWIN
+ #endif
+
++#ifndef __FreeBSD__
+ #ifndef DARWIN
+ extern int _mcount();
+ #define mmcount _mcount
+ extern void sincos(double,double *,double *);
+ #endif
++#endif
+
+ int
+ main(int argc,char * argv[],char *envp[]) {
diff --git a/lang/gcl/files/patch-o__sfasli.c b/lang/gcl/files/patch-o__sfasli.c
new file mode 100644
index 000000000000..91a9b6e0f314
--- /dev/null
+++ b/lang/gcl/files/patch-o__sfasli.c
@@ -0,0 +1,18 @@
+--- o/sfasli.c.orig
++++ o/sfasli.c
+@@ -131,6 +131,7 @@
+ extern int __remq();
+ extern int __remqu();
+
++#ifndef __FreeBSD__
+ #ifndef DARWIN
+ #ifndef _WIN32
+ int
+@@ -147,6 +148,7 @@
+ }
+ #endif
+ #endif
++#endif
+
+ void
+ gcl_init_sfasl() {
diff --git a/lang/gcl/files/patch-unixport_makefile b/lang/gcl/files/patch-unixport_makefile
index 6c610d31f55b..2eb4a531c881 100644
--- a/lang/gcl/files/patch-unixport_makefile
+++ b/lang/gcl/files/patch-unixport_makefile
@@ -1,9 +1,20 @@
--- unixport/makefile 2005-01-15 11:34:45.000000000 -0500
+++ unixport/makefile 2009-12-07 12:35:23.000000000 -0500
-@@ -15,5 +15,5 @@
+@@ -18,7 +18,7 @@
- LD_LIBS_PRE=$(FIRST_FILE) $(addprefix -u ,$(PATCHED_SYMBOLS))
+ LD_FLAGS=$(LDFLAGS) $(FIRST_FILE)
+ LD_LIBS_PRE=$(addprefix -u ,$(PATCHED_SYMBOLS))
-LD_LIBS_POST=$(LIBS) $(LIBC) -lgclp $(LAST_FILE)
+LD_LIBS_POST=-lgclp $(LIBS) $(LAST_FILE)
ifeq ($(ARRS),)
+ ARRS:=ar rs
+@@ -127,7 +127,7 @@
+ $(CC) $(LD_FLAGS) $(CFLAGS) -I$(HDIR) -I$(ODIR) -o $(RSYM) $(SPECIAL_RSYM)
+
+ msys: msys.c
+- PATH=/usr/bin:$$PATH gcc $< -o $@ # Unix binary if running wine
++ PATH=/usr/bin:$$PATH $(CC) $< -o $@ # Unix binary if running wine
+
+ $(HDIR)/mdefs.h: $(HDIR)/include.h
+ cat $(HDIR)/include.h | sed -e "/include/d" > $(HDIR)/mdefs.h
diff --git a/lang/gcl/files/patch-warnings b/lang/gcl/files/patch-warnings
deleted file mode 100644
index 2ad4d075a1ab..000000000000
--- a/lang/gcl/files/patch-warnings
+++ /dev/null
@@ -1,63 +0,0 @@
---- o/plttest.c 2004-03-19 21:08:12.000000000 -0500
-+++ o/plttest.c 2009-12-07 11:55:41.000000000 -0500
-@@ -20,24 +20,24 @@
- setjmp(env);
-
-- cos(d);
-- sin(d);
-- tan(d);
--
-- acos(d);
-- asin(d);
-- atan(d);
--
-- cosh(d);
-- sinh(d);
-- tanh(d);
-+ (void)cos(d);
-+ (void)sin(d);
-+ (void)tan(d);
-+
-+ (void)acos(d);
-+ (void)asin(d);
-+ (void)atan(d);
-+
-+ (void)cosh(d);
-+ (void)sinh(d);
-+ (void)tanh(d);
-
- #ifndef _WIN32
-- acosh(d);
-- asinh(d);
-- atanh(d);
-+ (void)acosh(d);
-+ (void)asinh(d);
-+ (void)atanh(d);
- #endif
-
-- exp(d);
-- log(d);
-+ (void)exp(d);
-+ (void)log(d);
-
- return 0;
---- o/run_process.c 2005-07-18 13:07:24.000000000 -0400
-+++ o/run_process.c 2009-12-07 12:18:25.000000000 -0500
-@@ -453,5 +453,5 @@
- check_arg(2);
- vs_base[0] = make_socket_stream(vs_base[0], vs_base[1]);
-- vs_pop;
-+ (void)vs_pop;
- }
-
---- gcl-tk/tkMain.c 2003-09-26 09:46:54.000000000 -0400
-+++ gcl-tk/tkMain.c 2009-12-07 15:04:38.000000000 -0500
-@@ -496,6 +496,6 @@
- || code)
- {
-- unsigned char buf[4];
-- unsigned char *p = buf;
-+ char buf[4];
-+ char *p = buf;
- /*header */
- *p++ = (code ? '1' : '0');
diff --git a/lang/gcl/files/patch-xgcl-2__makefile b/lang/gcl/files/patch-xgcl-2__makefile
new file mode 100644
index 000000000000..862476505507
--- /dev/null
+++ b/lang/gcl/files/patch-xgcl-2__makefile
@@ -0,0 +1,11 @@
+--- xgcl-2/makefile.orig
++++ xgcl-2/makefile
+@@ -9,7 +9,7 @@
+ saved_xgcl: $(LISP)
+ echo '(load "sysdef.lisp")(xlib::compile-xgcl)(xlib::save-xgcl "$@")' | $(LISP)
+
+-docs: dwdoc/dwdoccontents.html dwdoc.pdf
++docs: dwdoc/dwdoccontents.html
+
+ dwdoc/dwdoccontents.html: $(LISP)
+ mkdir -p $(@D) && \
diff --git a/lang/gcl/pkg-plist b/lang/gcl/pkg-plist
deleted file mode 100644
index 2eba5b803653..000000000000
--- a/lang/gcl/pkg-plist
+++ /dev/null
@@ -1,73 +0,0 @@
-bin/gcl
-lib/gcl-%%GCL_VER%%/clcs/sys-proclaim.lisp
-lib/gcl-%%GCL_VER%%/cmpnew/gcl_cmpmain.lsp
-lib/gcl-%%GCL_VER%%/cmpnew/gcl_cmpopt.lsp
-lib/gcl-%%GCL_VER%%/cmpnew/gcl_collectfn.lsp
-lib/gcl-%%GCL_VER%%/cmpnew/gcl_collectfn.o
-lib/gcl-%%GCL_VER%%/cmpnew/gcl_lfun_list.lsp
-lib/gcl-%%GCL_VER%%/cmpnew/sys-proclaim.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/decode.tcl
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/gc-monitor.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/gc-monitor.o
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/index.lsp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkBasic.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkCanvText.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkEntry.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkEntry2.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkForm.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkHScale.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkItems.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkLabel.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkListbox.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkPlot.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkRadio.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkRuler.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkSearch.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkStyles.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkTextBind.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkVScale.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/mkdialog.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/nqthm-stack.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/showVars.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/demos/widget.lisp
-lib/gcl-%%GCL_VER%%/gcl-tk/gcl.tcl
-lib/gcl-%%GCL_VER%%/gcl-tk/gcltkaux
-lib/gcl-%%GCL_VER%%/gcl-tk/gcltksrv
-lib/gcl-%%GCL_VER%%/gcl-tk/tinfo.o
-lib/gcl-%%GCL_VER%%/gcl-tk/tk-package.lsp
-lib/gcl-%%GCL_VER%%/gcl-tk/tkl.o
-lib/gcl-%%GCL_VER%%/h/cmpinclude.h
-lib/gcl-%%GCL_VER%%/info/gcl-si.info
-lib/gcl-%%GCL_VER%%/info/gcl-tk.info
-lib/gcl-%%GCL_VER%%/lsp/gcl_auto_new.lsp
-lib/gcl-%%GCL_VER%%/lsp/gcl_autoload.lsp
-lib/gcl-%%GCL_VER%%/lsp/gcl_export.lsp
-lib/gcl-%%GCL_VER%%/lsp/gcl_gprof.lsp
-lib/gcl-%%GCL_VER%%/lsp/gcl_info.o
-lib/gcl-%%GCL_VER%%/lsp/gcl_profile.lsp
-lib/gcl-%%GCL_VER%%/lsp/sys-proclaim.lisp
-lib/gcl-%%GCL_VER%%/pcl/sys-proclaim.lisp
-lib/gcl-%%GCL_VER%%/unixport/init_ansi_gcl.lsp
-lib/gcl-%%GCL_VER%%/unixport/libansi_gcl.a
-lib/gcl-%%GCL_VER%%/unixport/libgclp.a
-lib/gcl-%%GCL_VER%%/unixport/rsym
-lib/gcl-%%GCL_VER%%/unixport/saved_ansi_gcl
-share/emacs/site-lisp/add-default.el
-share/emacs/site-lisp/ansi-doc.el
-share/emacs/site-lisp/dbl.el
-share/emacs/site-lisp/default.el
-share/emacs/site-lisp/doc-to-texi.el
-share/emacs/site-lisp/gcl.el
-share/emacs/site-lisp/man1-to-texi.el
-share/emacs/site-lisp/smart-complete.el
-share/emacs/site-lisp/sshell.el
-@dirrm lib/gcl-%%GCL_VER%%/clcs
-@dirrm lib/gcl-%%GCL_VER%%/cmpnew
-@dirrm lib/gcl-%%GCL_VER%%/gcl-tk/demos
-@dirrm lib/gcl-%%GCL_VER%%/gcl-tk
-@dirrm lib/gcl-%%GCL_VER%%/h
-@dirrm lib/gcl-%%GCL_VER%%/info
-@dirrm lib/gcl-%%GCL_VER%%/lsp
-@dirrm lib/gcl-%%GCL_VER%%/pcl
-@dirrm lib/gcl-%%GCL_VER%%/unixport
-@dirrm lib/gcl-%%GCL_VER%%