aboutsummaryrefslogtreecommitdiffstats
path: root/lang/newlisp
diff options
context:
space:
mode:
authorstas <stas@FreeBSD.org>2006-11-08 23:47:00 +0800
committerstas <stas@FreeBSD.org>2006-11-08 23:47:00 +0800
commita859052953ebcda82bc0d8fc191c066b4da72f41 (patch)
treec95f808d71b8d189fe9e8192f11181ef94fa8d06 /lang/newlisp
parent0565a0d850c6610f276626c81ba27927616e5625 (diff)
downloadfreebsd-ports-gnome-a859052953ebcda82bc0d8fc191c066b4da72f41.tar.gz
freebsd-ports-gnome-a859052953ebcda82bc0d8fc191c066b4da72f41.tar.zst
freebsd-ports-gnome-a859052953ebcda82bc0d8fc191c066b4da72f41.zip
- Handle dependencies properly
- Correct the default modules location path [1] - Correct example programs headers (shell path) - Install docs/examples into the separate directory PR: ports/105253 [1] Reported by: clemens fischer <ino-news@spotteswoode.dnsalias.org> [1]
Diffstat (limited to 'lang/newlisp')
-rw-r--r--lang/newlisp/Makefile125
-rw-r--r--lang/newlisp/pkg-plist125
2 files changed, 196 insertions, 54 deletions
diff --git a/lang/newlisp/Makefile b/lang/newlisp/Makefile
index 890d8bfc40f3..32da59742efd 100644
--- a/lang/newlisp/Makefile
+++ b/lang/newlisp/Makefile
@@ -8,6 +8,7 @@
PORTNAME= newlisp
PORTVERSION= 9.0.0
+PORTREVISION= 1
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR=${PORTNAME}
@@ -16,16 +17,82 @@ EXTRACT_SUFX= .tgz
MAINTAINER= stas@FreeBSD.org
COMMENT= LISP like scripting language
-RUN_DEPENDS= wish${TK_VER}:${PORTSDIR}/x11-toolkits/tk${TK_VER:S,.,,g}
-
HAS_CONFIGURE= yes
ALL_TARGET= default
TK_VER= 8.4
-MAN1= newlisp.1 newlisp-tk.1
+MAN1= newlisp.1
+
+REINPLACE_ARGS= -i ""
+
+# XXX: exists untill it will be committed to bsd.port.mk
+COPYTREE_SHARE= ${SH} -c '(${FIND} -d $$0 $$2 | ${CPIO} -dumpl $$1 >/dev/null \
+ 2>&1) && \
+ ${CHOWN} -R ${SHAREOWN}:${SHAREGRP} $$1 && \
+ ${FIND} $$1/ -type d -exec ${CHMOD} 755 {} \; && \
+ ${FIND} $$1/ -type f -exec ${CHMOD} ${SHAREMODE} {} \;' --
+
+MODULES= cgi ftp infix odbc pop3 postscript smtp stat unix \
+ xmlrpc-client zlib
+
+PORTDOCS= CHANGES CodePatterns.html MemoryManagement.html arrays \
+ keywords.txt manual_frame.html newLISPdoc.html \
+ newlisp_index.html newlisp_manual.html
+
+OPTIONS= TK "Build with TK support" off \
+ GMP "Enable GMP math library support" off \
+ MYSQL4 "Build with mysql4 support" off \
+ MYSQL5 "Build with mysql5 support" off \
+ SQLITE "Build with sqlite support" off
.include <bsd.port.pre.mk>
+.if defined(WITH_MYSQL4) && defined(WITH_MYSQL5)
+IGNORE= you should select only one MySQL version
+.endif
+
+.if defined(WITH_TK)
+RUN_DEPENDS+= wish${TK_VER}:${PORTSDIR}/x11-toolkits/tk${TK_VER:S,.,,g}
+MAN1+= newlisp-tk.1
+PLIST_SUB+= TK=""
+.else
+PLIST_SUB+= TK="@comment "
+.endif
+
+.if defined(WITH_GMP)
+LIB_DEPENDS+= gmp.7:${PORTSDIR}/math/libgmp4
+MODULES+= gmp
+PLIST_SUB+= GMP=""
+.else
+PLIST_SUB+= GMP="@comment "
+.endif
+
+.if defined(WITH_MYSQL4)
+USE_MYSQL=yes
+WITH_MYSQL_VER= 41
+MODULES+= mysql
+PLIST_SUB+= MYSQL4=""
+.else
+PLIST_SUB+= MYSQL4="@comment "
+.endif
+
+.if defined(WITH_MYSQL5)
+USE_MYSQL=yes
+WITH_MYSQL_VER= 50
+MODULES+= mysql5
+PLIST_SUB+= MYSQL5=""
+.else
+PLIST_SUB+= MYSQL5="@comment "
+.endif
+
+.if defined(WITH_SQLITE)
+USE_SQLITE=3
+MODULES+= sqlite3
+PLIST_SUB+= SQLITE=""
+.else
+PLIST_SUB+= SQLITE="@comment "
+.endif
+
post-patch:
@${REINPLACE_CMD} -E -e "s,install -m 644, \$${BSD_INSTALL_DATA},g" \
-e "s,install -m 755, \$${BSD_INSTALL_SCRIPT},g" \
@@ -39,4 +106,56 @@ post-patch:
-e "s,/usr/bin,${PREFIX}/bin,g" \
${WRKSRC}/newlisp-tk/newlisp-tk.tcl
+ @${REINPLACE_CMD} -E \
+ -e "s,/usr/bin/newlisp,${PREFIX}/bin/newlisp,g" \
+ -e "s,/usr/share/newlisp,${DATADIR},g" \
+ -e "s,/usr/lib/newlisp.so,${PREFIX}/lib/newlisp.so,g" \
+ -e "s,exec wish,exec wish${TK_VER}," \
+ ${WRKSRC}/examples/* \
+ ${WRKSRC}/doc/* \
+ ${WRKSRC}/modules/* \
+ ${WRKSRC}/init.lsp.example \
+ ${WRKSRC}/newlisp.c \
+ ${WRKSRC}/newlisp-tk/newlisp-tk.tcl
+
+ @${REINPLACE_CMD} -E -e \
+ "s,/usr/lib/(libmysqlclient.so.)14,${LOCALBASE}/lib/mysql/\1${MYSQL${MYSQL_VER}_LIBVER}," \
+ ${WRKSRC}/modules/mysql.lsp
+ @${REINPLACE_CMD} -E -e \
+ "s,/usr/local/mysql/lib/(libmysqlclient.)dylib,${LOCALBASE}/lib/mysql/\1so.${MYSQL${MYSQL_VER}_LIBVER}," \
+ ${WRKSRC}/modules/mysql5.lsp
+ @${REINPLACE_CMD} -E -e \
+ "s,/usr/local/lib/(libsqlite)3.so,${LOCALBASE}/lib/\1${_SQLITE_VER}.so," \
+ ${WRKSRC}/modules/sqlite3.lsp
+ @${REINPLACE_CMD} -E -e \
+ "s,/usr/local/lib/libgmp.so,${LOCALBASE}/lib/libgmp.so," \
+ ${WRKSRC}/modules/gmp.lsp
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/newlisp ${PREFIX}/bin/
+
+ ${MKDIR} ${DATADIR}/
+ ${INSTALL_DATA} ${MODULES:S,^,${WRKSRC}/modules/,:S,$,.lsp,} ${DATADIR}/
+
+ ${INSTALL_MAN} ${WRKSRC}/doc/newlisp.1 ${PREFIX}/man/man1/
+
+.if defined(WITH_TK)
+ ${INSTALL_SCRIPT} ${WRKSRC}/newlisp-tk/newlisp-tk.tcl \
+ ${PREFIX}/bin/newlisp-tk
+ ${MKDIR} ${DATADIR}/newlisp-tk/
+ @(cd ${WRKSRC}/newlisp-tk && \
+ ${COPYTREE_SHARE} \* ${DATADIR}/newlisp-tk/)
+ ${INSTALL_MAN} ${WRKSRC}/doc/newlisp-tk.1 ${PREFIX}/man/man1/
+.endif
+
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${DOCSDIR}/
+ ${MKDIR} ${EXAMPLESDIR}/
+
+ ${INSTALL_DATA} ${WRKSRC}/examples/* ${EXAMPLESDIR}/
+ ${INSTALL_DATA} ${WRKSRC}/init.lsp.example ${EXAMPLESDIR}/
+
+ ${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/doc/,} ${DOCSDIR}/
+.endif
+
.include <bsd.port.post.mk>
diff --git a/lang/newlisp/pkg-plist b/lang/newlisp/pkg-plist
index b7c310827a0f..74267359b556 100644
--- a/lang/newlisp/pkg-plist
+++ b/lang/newlisp/pkg-plist
@@ -1,62 +1,85 @@
bin/newlisp
-bin/newlisp-tk
-%%DATADIR%%/COPYING
-%%DATADIR%%/CREDITS
+%%TK%%bin/newlisp-tk
+%%PORTDOCS%%%%EXAMPLESDIR%%/client
+%%PORTDOCS%%%%EXAMPLESDIR%%/finger
+%%PORTDOCS%%%%EXAMPLESDIR%%/form.cgi
+%%PORTDOCS%%%%EXAMPLESDIR%%/form.html
+%%PORTDOCS%%%%EXAMPLESDIR%%/httpd
+%%PORTDOCS%%%%EXAMPLESDIR%%/init.lsp.example
+%%PORTDOCS%%%%EXAMPLESDIR%%/link.lsp
+%%PORTDOCS%%%%EXAMPLESDIR%%/newLISP-Excel-Import.xls
+%%PORTDOCS%%%%EXAMPLESDIR%%/newlispdoc
+%%PORTDOCS%%%%EXAMPLESDIR%%/prodcons.lsp
+%%PORTDOCS%%%%EXAMPLESDIR%%/server
+%%PORTDOCS%%%%EXAMPLESDIR%%/sqlite.cgi
+%%PORTDOCS%%%%EXAMPLESDIR%%/sqlite3.cgi
+%%PORTDOCS%%%%EXAMPLESDIR%%/syntax.cgi
+%%PORTDOCS%%%%EXAMPLESDIR%%/tcltk.lsp
+%%PORTDOCS%%%%EXAMPLESDIR%%/udp-client.lsp
+%%PORTDOCS%%%%EXAMPLESDIR%%/udp-server.lsp
+%%PORTDOCS%%%%EXAMPLESDIR%%/upload.cgi
+%%PORTDOCS%%%%EXAMPLESDIR%%/upload.html
+%%PORTDOCS%%%%EXAMPLESDIR%%/xmlrpc-server
+%%PORTDOCS%%%%EXAMPLESDIR%%/xmlrpc.cgi
%%DATADIR%%/cgi.lsp
-%%DATADIR%%/doc/CodePatterns.html
-%%DATADIR%%/doc/manual_frame.html
-%%DATADIR%%/doc/newlisp-tk.html
-%%DATADIR%%/doc/newlisp_index.html
-%%DATADIR%%/doc/newlisp_manual.html
%%DATADIR%%/ftp.lsp
-%%DATADIR%%/gmp.lsp
+%%GMP%%%%DATADIR%%/gmp.lsp
%%DATADIR%%/infix.lsp
-%%DATADIR%%/init.lsp.example
-%%DATADIR%%/link.lsp
-%%DATADIR%%/mysql.lsp
-%%DATADIR%%/mysql5.lsp
-%%DATADIR%%/newlispdoc
-%%DATADIR%%/newlisp-tk/Demo.lsp
-%%DATADIR%%/newlisp-tk/Drag.lsp
-%%DATADIR%%/newlisp-tk/Hanoi.lsp
-%%DATADIR%%/newlisp-tk/Mouse.lsp
-%%DATADIR%%/newlisp-tk/Random.lsp
-%%DATADIR%%/newlisp-tk/Turtle.lsp
-%%DATADIR%%/newlisp-tk/images/aboutImg.gif
-%%DATADIR%%/newlisp-tk/images/clearImg.gif
-%%DATADIR%%/newlisp-tk/images/consoleImg.gif
-%%DATADIR%%/newlisp-tk/images/continueImg.gif
-%%DATADIR%%/newlisp-tk/images/copyImg.gif
-%%DATADIR%%/newlisp-tk/images/cutImg.gif
-%%DATADIR%%/newlisp-tk/images/debugImg.gif
-%%DATADIR%%/newlisp-tk/images/deleteImg.gif
-%%DATADIR%%/newlisp-tk/images/editImg.gif
-%%DATADIR%%/newlisp-tk/images/evalImg.gif
-%%DATADIR%%/newlisp-tk/images/evalPrintImg.gif
-%%DATADIR%%/newlisp-tk/images/fileImg.gif
-%%DATADIR%%/newlisp-tk/images/helpImg.gif
-%%DATADIR%%/newlisp-tk/images/newImg.gif
-%%DATADIR%%/newlisp-tk/images/newlisp.ico
-%%DATADIR%%/newlisp-tk/images/nextImg.gif
-%%DATADIR%%/newlisp-tk/images/nltkImg.gif
-%%DATADIR%%/newlisp-tk/images/openImg.gif
-%%DATADIR%%/newlisp-tk/images/pasteImg.gif
-%%DATADIR%%/newlisp-tk/images/quitImg.gif
-%%DATADIR%%/newlisp-tk/images/reloadImg.gif
-%%DATADIR%%/newlisp-tk/images/saveImg.gif
-%%DATADIR%%/newlisp-tk/images/stepImg.gif
-%%DATADIR%%/newlisp-tk/tcltk-app.lsp
+%%MYSQL4%%%%DATADIR%%/mysql.lsp
+%%MYSQL5%%%%DATADIR%%/mysql5.lsp
+%%TK%%%%DATADIR%%/newlisp-tk/Demo.lsp
+%%TK%%%%DATADIR%%/newlisp-tk/Drag.lsp
+%%TK%%%%DATADIR%%/newlisp-tk/Hanoi.lsp
+%%TK%%%%DATADIR%%/newlisp-tk/Mouse.lsp
+%%TK%%%%DATADIR%%/newlisp-tk/README.txt
+%%TK%%%%DATADIR%%/newlisp-tk/Random.lsp
+%%TK%%%%DATADIR%%/newlisp-tk/Turtle.lsp
+%%TK%%%%DATADIR%%/newlisp-tk/bwidget.txt
+%%TK%%%%DATADIR%%/newlisp-tk/images.txt
+%%TK%%%%DATADIR%%/newlisp-tk/images/.DS_Store
+%%TK%%%%DATADIR%%/newlisp-tk/images/._.DS_Store
+%%TK%%%%DATADIR%%/newlisp-tk/images/._newlisp.ico
+%%TK%%%%DATADIR%%/newlisp-tk/images/aboutImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/clearImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/consoleImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/continueImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/copyImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/cutImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/debugImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/deleteImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/editImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/evalImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/evalPrintImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/fileImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/helpImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/newImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/newlisp.ico
+%%TK%%%%DATADIR%%/newlisp-tk/images/nextImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/nltkImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/openImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/pasteImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/quitImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/reloadImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/saveImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/images/stepImg.gif
+%%TK%%%%DATADIR%%/newlisp-tk/make-wrapped-exe.bat
+%%TK%%%%DATADIR%%/newlisp-tk/newlisp-tk.book
+%%TK%%%%DATADIR%%/newlisp-tk/newlisp-tk.config.home
+%%TK%%%%DATADIR%%/newlisp-tk/newlisp-tk.config.win32
+%%TK%%%%DATADIR%%/newlisp-tk/newlisp-tk.html
+%%TK%%%%DATADIR%%/newlisp-tk/newlisp-tk.nsi
+%%TK%%%%DATADIR%%/newlisp-tk/newlisp-tk.tcl
+%%TK%%%%DATADIR%%/newlisp-tk/tcltk-app.lsp
%%DATADIR%%/odbc.lsp
%%DATADIR%%/pop3.lsp
%%DATADIR%%/postscript.lsp
%%DATADIR%%/smtp.lsp
-%%DATADIR%%/sqlite3.lsp
+%%SQLITE%%%%DATADIR%%/sqlite3.lsp
%%DATADIR%%/stat.lsp
-%%DATADIR%%/syntax.cgi
-%%DATADIR%%/tcltk.lsp
-%%DATADIR%%/zlib.lsp
%%DATADIR%%/unix.lsp
-@dirrm %%DATADIR%%/newlisp-tk/images
-@dirrm %%DATADIR%%/newlisp-tk
-@dirrm %%DATADIR%%/doc
+%%DATADIR%%/xmlrpc-client.lsp
+%%DATADIR%%/zlib.lsp
+%%TK%%@dirrm %%DATADIR%%/newlisp-tk/images
+%%TK%%@dirrm %%DATADIR%%/newlisp-tk
@dirrm %%DATADIR%%
+@dirrm %%EXAMPLESDIR%%