diff options
-rw-r--r-- | lang/clisp/Makefile | 137 | ||||
-rw-r--r-- | lang/clisp/files/patch-modules__berkeley-db__configure | 10 | ||||
-rw-r--r-- | lang/clisp/files/patch-modules__pari__cpari.c | 19 | ||||
-rw-r--r-- | lang/clisp/files/patch-modules__postgresql__config.h.in | 20 | ||||
-rw-r--r-- | lang/clisp/pkg-plist | 114 |
5 files changed, 248 insertions, 52 deletions
diff --git a/lang/clisp/Makefile b/lang/clisp/Makefile index ea5865f828b9..12f04604ab42 100644 --- a/lang/clisp/Makefile +++ b/lang/clisp/Makefile @@ -12,48 +12,139 @@ CATEGORIES= lang lisp MASTER_SITES= ${MASTER_SITE_GNU} MASTER_SITE_SUBDIR=${PORTNAME}/release/${PORTVERSION} -MAINTAINER= ports@FreeBSD.org +MAINTAINER= alepulver@FreeBSD.org COMMENT= A Common Lisp implementation BUILD_DEPENDS= ${LOCALBASE}/lib/libsigsegv.a:${PORTSDIR}/devel/libsigsegv \ dvipdf:${PORTSDIR}/${GHOSTSCRIPT_PORT} +LIB_DEPENDS= readline.5:${PORTSDIR}/devel/readline USE_BZIP2= yes USE_ICONV= yes -GNU_CONFIGURE= yes USE_GETTEXT= yes +GNU_CONFIGURE= yes +BUILD_WRKSRC= ${WRKSRC}/${CONFIGURE_TARGET} +INSTALL_WRKSRC= ${BUILD_WRKSRC} -MAN1= clisp.1 +CPPFLAGS= -I${LOCALBASE}/include +LDFLAGS= -L${LOCALBASE}/lib +MAKE_ENV= ${CONFIGURE_ENV} +CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}" +MAKEMAKE_ARGS= --prefix=${PREFIX} --mandir=${PREFIX}/man \ + --srcdir=${WRKSRC}/src --with-dynamic-ffi -# Build subdirectory -BUILD_DIRNAME=${CONFIGURE_TARGET} +OPTIONS= BDB "Build Berkeley Database module" off \ + CLX_MIT "Build X11 module (original MIT version)" off \ + CLX_NEW "Build X11 module (new faster version)" off \ + FASTCGI "Build FastCGI module" off \ + ORACLE "Build Oracle database module" off \ + PARI "Build PARI (math and calculator lib) module" off \ + PCRE "Build PCRE (Perl Compatible Regexp) module" off \ + PGSQL "Build PostgreSQL database module" off \ + RAWSOCK "Build Raw Socket Access module" on \ + WILDCARD "Build wildcard matching module" on \ + ZLIB "Build ZLib interface module " off -# Check ./configure --list-modules in the distribution to see all modules -MAKEMAKE_ARGS=--prefix=${PREFIX} --mandir=${PREFIX}/man --with-dynamic-ffi \ - --with-module=rawsock --with-module=wildcard --srcdir=${WRKSRC}/src +MAN1= clisp.1 .include <bsd.port.pre.mk> -.if ${ARCH} == amd64 || ${ARCH} == ia64 -CONFIGURE_ARGS+= --disable-mmap -BROKEN= Does not compile on ${ARCH} +MODULES= BDB CLX_MIT CLX_NEW FASTCGI ORACLE PARI PCRE PGSQL RAWSOCK \ + WILDCARD ZLIB + +.if ${ARCH} == "amd64" +CONFIGURE_TARGET= x86_64-portbld-freebsd${OSREL} +.endif + +.if ${ARCH} == "amd64" || ${ARCH} == "ia64" +CONFIGURE_ARGS+=--disable-mmap +MAKEMAKE_ARGS+= --disable-mmap +.endif + +.for mod in ${MODULES} +. if defined(WITH_${mod}) +PLIST_SUB+= ${mod}="" +. else +PLIST_SUB+= ${mod}="@comment " +. endif +.endfor + +.if defined(WITH_BDB) +USE_BDB= 42+ +MAKEMAKE_ARGS+= --with-module=berkeley-db +CPPFLAGS+= -I${LOCALBASE}/include/db${BDB_VER} +LDFLAGS+= -L${LOCALBASE}/lib/db${BDB_VER} +.endif + +.if defined(WITH_CLX_MIT) && defined(WITH_CLX_NEW) +IGNORE= selected different implementations of the same X11 module +.endif +.if defined(WITH_CLX_MIT) || defined(WITH_CLX_NEW) +LIB_DEPENDS+= X11.6:${X_LIBRARIES_PORT} +.endif +.if defined(WITH_CLX_MIT) +MAKEMAKE_ARGS+= --with-module=clx/mit-clx +.endif +.if defined(WITH_CLX_NEW) +MAKEMAKE_ARGS+= --with-module=clx/new-clx +.endif + +.if defined(WITH_FASTCGI) +LIB_DEPENDS+= fcgi.0:${PORTSDIR}/www/fcgi +MAKEMAKE_ARGS+= --with-module=fastcgi .endif -.if ${OSVERSION} < 500000 -BROKEN= Coredump during build on 4.x +.if defined(WITH_ORACLE) +BUILD_DEPENDS+= ${ORACLE_HOME}:${PORTSDIR}/databases/oracle8-client +MAKEMAKE_ARGS+= --with-module=oracle +CPPFLAGS+= -I${ORACLE_HOME}/rdbms/demo -I${ORACLE_HOME}/rdbms/public +LDFLAGS+= -L${ORACLE_HOME}/lib +ORACLE_HOME= ${LOCALBASE}/oracle8-client .endif -# The source doesn't include a top-level Makefile, so we'll fake one. -post-extract: - @cd ${WRKSRC} && \ - ${PRINTF} "all install:\n\t@cd ${WRKSRC}/${BUILD_DIRNAME} && \$${MAKE} \$${MAKEFLAGS} \$$@\n" > ${WRKSRC}/Makefile +.if defined(WITH_PARI) +LIB_DEPENDS+= pari.2:${PORTSDIR}/math/pari +MAKEMAKE_ARGS+= --with-module=pari +BROKEN= Lisp stack overflow during build +.endif + +.if defined(WITH_PCRE) +LIB_DEPENDS+= pcre.0:${PORTSDIR}/devel/pcre +MAKEMAKE_ARGS+=--with-module=pcre +.endif + +.if defined(WITH_PGSQL) +USE_PGSQL= yes +MAKEMAKE_ARGS+= --with-module=postgresql +.endif + +.if defined(WITH_RAWSOCK) +MAKEMAKE_ARGS+= --with-module=rawsock +.endif + +.if defined(WITH_WILDCARD) +MAKEMAKE_ARGS+= --with-module=wildcard +.endif + +.if defined(WITH_ZLIB) +MAKEMAKE_ARGS+= --with-module=zlib +.endif + +post-patch: +.if ${ARCH} == "amd64" + @${REINPLACE_CMD} -Ee \ + "s|^(subdir_configure_args=')|\1--build=${CONFIGURE_TARGET}|; \ + s|^(module_configure_flags=')|\1--build=${CONFIGURE_TARGET}|" \ + ${WRKSRC}/configure ${WRKSRC}/src/makemake.in +.endif +.if defined(WITH_ORACLE) + @${REINPLACE_CMD} -e 's|-ldl||; s|-lpthread|-lcompat ${PTHREAD_LIBS}|' \ + ${WRKSRC}/modules/oracle/link.sh +.endif -# The 'configure' script stops short of doing this for us. post-configure: - cd ${WRKSRC}/${BUILD_DIRNAME} && \ - ./makemake ${MAKEMAKE_ARGS} > Makefile && \ - ${MAKE} config.lisp - ${REINPLACE_CMD} -e 's#^CFLAGS =#CFLAGS = -I${LOCALBASE}/include#' \ - ${WRKSRC}/${BUILD_DIRNAME}/Makefile + cd ${BUILD_WRKSRC} && \ + ${SETENV} ${CONFIGURE_ENV} ./makemake ${MAKEMAKE_ARGS} > Makefile && \ + ${MAKE} config.lisp .include <bsd.port.post.mk> diff --git a/lang/clisp/files/patch-modules__berkeley-db__configure b/lang/clisp/files/patch-modules__berkeley-db__configure new file mode 100644 index 000000000000..7b76804d7029 --- /dev/null +++ b/lang/clisp/files/patch-modules__berkeley-db__configure @@ -0,0 +1,10 @@ +--- ./modules/berkeley-db/configure.orig Sun Jan 22 23:10:23 2006 ++++ ./modules/berkeley-db/configure Mon Jun 26 17:32:36 2006 +@@ -3937,6 +3937,7 @@ + + fi + ++ac_cv_search_db_env_create="yes" + if test "$ac_cv_search_db_env_create" = "no"; then + { { echo "$as_me:$LINENO: error: cannot find Berkeley-DB library" >&5 + echo "$as_me: error: cannot find Berkeley-DB library" >&2;} diff --git a/lang/clisp/files/patch-modules__pari__cpari.c b/lang/clisp/files/patch-modules__pari__cpari.c new file mode 100644 index 000000000000..836a5a4217e1 --- /dev/null +++ b/lang/clisp/files/patch-modules__pari__cpari.c @@ -0,0 +1,19 @@ +--- ./modules/pari/cpari.c.orig Fri Aug 26 14:57:48 2005 ++++ ./modules/pari/cpari.c Mon Jun 26 18:07:48 2006 +@@ -62,9 +62,6 @@ + char *p; + GEN p1; + +- extern ulong init_opts; +- init_opts = 0; +- + pari_init(parisize,maxprime); + /*init_graph();*/ + +@@ -75,6 +72,5 @@ + void fini_for_clisp (int leaving) + { + /*free_graph();*/ +- freeall(); + killallfiles(leaving); + } diff --git a/lang/clisp/files/patch-modules__postgresql__config.h.in b/lang/clisp/files/patch-modules__postgresql__config.h.in new file mode 100644 index 000000000000..4f60033eba95 --- /dev/null +++ b/lang/clisp/files/patch-modules__postgresql__config.h.in @@ -0,0 +1,20 @@ +--- ./modules/postgresql/config.h.in.orig Thu Jan 12 14:56:07 2006 ++++ ./modules/postgresql/config.h.in Mon Jun 26 17:59:45 2006 +@@ -174,17 +174,11 @@ + /* Define to 1 if you have the `PQgetResult' function. */ + #undef HAVE_PQGETRESULT + +-/* Define to 1 if you have the `PQgetssl' function. */ +-#undef HAVE_PQGETSSL +- + /* Define to 1 if you have the `PQgetvalue' function. */ + #undef HAVE_PQGETVALUE + + /* Define to 1 if you have the `PQhost' function. */ + #undef HAVE_PQHOST +- +-/* Define to 1 if you have the `PQinitSSL' function. */ +-#undef HAVE_PQINITSSL + + /* Define to 1 if you have the `PQisBusy' function. */ + #undef HAVE_PQISBUSY diff --git a/lang/clisp/pkg-plist b/lang/clisp/pkg-plist index ae49c780120a..859ddc874b00 100644 --- a/lang/clisp/pkg-plist +++ b/lang/clisp/pkg-plist @@ -18,8 +18,41 @@ lib/clisp/base/regexp.dvi lib/clisp/clisp-link lib/clisp/data/Symbol-Table.text lib/clisp/data/UnicodeDataFull.txt +%%CLX_MIT%%lib/clisp/full/attributes.fas +%%CLX_MIT%%lib/clisp/full/attributes.lisp +%%BDB%%lib/clisp/full/bdb.o +%%CLX_MIT%%lib/clisp/full/buffer.fas +%%CLX_MIT%%lib/clisp/full/buffer.lisp +%%CLX_MIT%%lib/clisp/full/bufmac.fas +%%CLX_MIT%%lib/clisp/full/bufmac.lisp lib/clisp/full/calls.o +%%CLX_MIT%%lib/clisp/full/clx.fas +%%CLX_MIT%%lib/clisp/full/clx.lisp +%%CLX_NEW%%lib/clisp/full/clx.o +%%PCRE%%lib/clisp/full/cpcre.o +%%CLX_MIT%%lib/clisp/full/depdefs.fas +%%CLX_MIT%%lib/clisp/full/depdefs.lisp +%%CLX_MIT%%lib/clisp/full/dependent.fas +%%CLX_MIT%%lib/clisp/full/dependent.lisp +%%CLX_MIT%%lib/clisp/full/describe.fas +%%CLX_MIT%%lib/clisp/full/describe.lisp +%%CLX_MIT%%lib/clisp/full/display.fas +%%CLX_MIT%%lib/clisp/full/display.lisp +%%FASTCGI%%lib/clisp/full/fastcgi.o +%%FASTCGI%%lib/clisp/full/fastcgi_wrappers.o +%%CLX_MIT%%lib/clisp/full/fonts.fas +%%CLX_MIT%%lib/clisp/full/fonts.lisp +%%CLX_MIT%%lib/clisp/full/gcontext.fas +%%CLX_MIT%%lib/clisp/full/gcontext.lisp lib/clisp/full/gettext.o +%%CLX_MIT%%lib/clisp/full/graphics.fas +%%CLX_MIT%%lib/clisp/full/graphics.lisp +%%CLX_MIT%%lib/clisp/full/image.fas +%%CLX_MIT%%lib/clisp/full/image.lisp +%%CLX_MIT%%lib/clisp/full/input.fas +%%CLX_MIT%%lib/clisp/full/input.lisp +%%CLX_MIT%%lib/clisp/full/keysyms.fas +%%CLX_MIT%%lib/clisp/full/keysyms.lisp lib/clisp/full/libavcall.a lib/clisp/full/libcallback.a lib/clisp/full/libcharset.a @@ -27,44 +60,67 @@ lib/clisp/full/libnoreadline.a lib/clisp/full/lisp.a lib/clisp/full/lisp.run lib/clisp/full/lispinit.mem +%%CLX_MIT%%lib/clisp/full/macros.fas +%%CLX_MIT%%lib/clisp/full/macros.lisp lib/clisp/full/makevars +%%CLX_MIT%%lib/clisp/full/manager.fas +%%CLX_MIT%%lib/clisp/full/manager.lisp lib/clisp/full/modules.h lib/clisp/full/modules.o -lib/clisp/full/rawsock.o +%%ORACLE%%lib/clisp/full/oiface.o +%%ORACLE%%lib/clisp/full/oracle.o +%%ORACLE%%lib/clisp/full/orafns.o +%%CLX_MIT%%lib/clisp/full/package.fas +%%CLX_MIT%%lib/clisp/full/package.lisp +%%PGSQL%%lib/clisp/full/postgresql.o +%%RAWSOCK%%lib/clisp/full/rawsock.o lib/clisp/full/readline.o lib/clisp/full/regex.o lib/clisp/full/regexi.o lib/clisp/full/regexp.dvi -lib/clisp/full/wildcard.dvi -lib/clisp/full/wildcard.o +%%CLX_MIT%%lib/clisp/full/requests.fas +%%CLX_MIT%%lib/clisp/full/requests.lisp +%%CLX_MIT%%lib/clisp/full/resource.fas +%%CLX_MIT%%lib/clisp/full/resource.lisp +%%CLX_MIT%%lib/clisp/full/shape.fas +%%CLX_MIT%%lib/clisp/full/shape.lisp +%%CLX_MIT%%lib/clisp/full/text.fas +%%CLX_MIT%%lib/clisp/full/text.lisp +%%CLX_MIT%%lib/clisp/full/trace.fas +%%CLX_MIT%%lib/clisp/full/trace.lisp +%%CLX_MIT%%lib/clisp/full/translate.fas +%%CLX_MIT%%lib/clisp/full/translate.lisp +%%WILDCARD%%lib/clisp/full/wildcard.dvi +%%WILDCARD%%lib/clisp/full/wildcard.o +%%ZLIB%%lib/clisp/full/zlib.o lib/clisp/linkkit/clisp.h lib/clisp/linkkit/modprep.lisp lib/clisp/linkkit/modules.c lib/clisp/linkkit/modules.d -%%PORTDOCS%%%%DOCSDIR%%/ANNOUNCE -%%PORTDOCS%%%%DOCSDIR%%/COPYRIGHT -%%PORTDOCS%%%%DOCSDIR%%/GNU-GPL -%%PORTDOCS%%%%DOCSDIR%%/MAGIC.add -%%PORTDOCS%%%%DOCSDIR%%/NEWS -%%PORTDOCS%%%%DOCSDIR%%/README -%%PORTDOCS%%%%DOCSDIR%%/README.de -%%PORTDOCS%%%%DOCSDIR%%/README.es -%%PORTDOCS%%%%DOCSDIR%%/SUMMARY -%%PORTDOCS%%%%DOCSDIR%%/clisp.dvi -%%PORTDOCS%%%%DOCSDIR%%/clisp.html -%%PORTDOCS%%%%DOCSDIR%%/clisp.pdf -%%PORTDOCS%%%%DOCSDIR%%/clisp.ps -%%PORTDOCS%%%%DOCSDIR%%/doc/CLOS-guide.txt -%%PORTDOCS%%%%DOCSDIR%%/doc/LISP-tutorial.txt -%%PORTDOCS%%%%DOCSDIR%%/doc/clisp.1 -%%PORTDOCS%%%%DOCSDIR%%/doc/clisp.dvi -%%PORTDOCS%%%%DOCSDIR%%/doc/clisp.html -%%PORTDOCS%%%%DOCSDIR%%/doc/clisp.pdf -%%PORTDOCS%%%%DOCSDIR%%/doc/clisp.png -%%PORTDOCS%%%%DOCSDIR%%/doc/clisp.ps -%%PORTDOCS%%%%DOCSDIR%%/doc/editors.txt -%%PORTDOCS%%%%DOCSDIR%%/doc/impnotes.css -%%PORTDOCS%%%%DOCSDIR%%/doc/impnotes.html +%%DOCSDIR%%/ANNOUNCE +%%DOCSDIR%%/COPYRIGHT +%%DOCSDIR%%/GNU-GPL +%%DOCSDIR%%/MAGIC.add +%%DOCSDIR%%/NEWS +%%DOCSDIR%%/README +%%DOCSDIR%%/README.de +%%DOCSDIR%%/README.es +%%DOCSDIR%%/SUMMARY +%%DOCSDIR%%/clisp.dvi +%%DOCSDIR%%/clisp.html +%%DOCSDIR%%/clisp.pdf +%%DOCSDIR%%/clisp.ps +%%DOCSDIR%%/doc/CLOS-guide.txt +%%DOCSDIR%%/doc/LISP-tutorial.txt +%%DOCSDIR%%/doc/clisp.1 +%%DOCSDIR%%/doc/clisp.dvi +%%DOCSDIR%%/doc/clisp.html +%%DOCSDIR%%/doc/clisp.pdf +%%DOCSDIR%%/doc/clisp.png +%%DOCSDIR%%/doc/clisp.ps +%%DOCSDIR%%/doc/editors.txt +%%DOCSDIR%%/doc/impnotes.css +%%DOCSDIR%%/doc/impnotes.html share/locale/da/LC_MESSAGES/clisp.mo share/locale/da/LC_MESSAGES/clisplow.mo share/locale/de/LC_MESSAGES/clisp.mo @@ -79,8 +135,8 @@ share/locale/nl/LC_MESSAGES/clisp.mo share/locale/nl/LC_MESSAGES/clisplow.mo share/locale/ru/LC_MESSAGES/clisp.mo share/locale/ru/LC_MESSAGES/clisplow.mo -%%PORTDOCS%%@dirrm %%DOCSDIR%%/doc -%%PORTDOCS%%@dirrm %%DOCSDIR%% +@dirrm %%DOCSDIR%%/doc +@dirrm %%DOCSDIR%% @dirrm lib/clisp/linkkit @dirrm lib/clisp/full @dirrm lib/clisp/data |