diff options
-rw-r--r-- | lang/yorick/Makefile | 60 | ||||
-rw-r--r-- | lang/yorick/distinfo | 3 | ||||
-rw-r--r-- | lang/yorick/files/patch-ab | 18 | ||||
-rw-r--r-- | lang/yorick/pkg-comment | 2 | ||||
-rw-r--r-- | lang/yorick/pkg-descr | 30 | ||||
-rw-r--r-- | lang/yorick/pkg-install | 19 | ||||
-rw-r--r-- | lang/yorick/pkg-plist | 16 |
7 files changed, 103 insertions, 45 deletions
diff --git a/lang/yorick/Makefile b/lang/yorick/Makefile index 03d66c857f20..fea493aba9a9 100644 --- a/lang/yorick/Makefile +++ b/lang/yorick/Makefile @@ -5,44 +5,84 @@ # $FreeBSD$ # +# History: 1.4.1 port by Pedro Giffuni <giffunip@asme.org> +# 1.5.02 port by ports@FreeBSD.org, +# from submission by Ed Alley <wea@llnl.gov> +# 1.5.07 port by David H. Munro <munro1@llnl.gov> +# 1.5.07 notes: +# (1) info pages installed in PREFIX/info for consistency with other apps +# -- really should be in PREFIX/share/info +# (2) several fixes to allow PREFIX for package install to be different +# from PREFIX at build time (which is compiled into yorick and gist): +# (a) PREFIX/bin/{yorick,gist} are softlinks, which allows +# yorick and gist to compute ${PREFIX}/lib/${PORTNAME} at runtime +# (b) softlink for g/ put in lib/${PORTNAME} for gist +# (c) softlink doc/ so yorick online help is correct +# (d) copy of paths.i put in lib/${PORTNAME}/bin for yorick +# (e) pkg-install script added to fiddle softlinks, paths.i, and +# Maketmpl if PREFIX has changed at install time +# -- assume DOCSDIR and DATADIR take default values as does pkg-plist +# 1.5.08 replaces 1.5.07 infant mortality + PORTNAME= yorick -PORTVERSION= 1.5.02 +PORTVERSION= 1.5.08 CATEGORIES= lang math MASTER_SITES= ftp://ftp-icf.llnl.gov/pub/Yorick/ \ ftp://wuarchive.wustl.edu/languages/yorick/ EXTRACT_SUFX= .tgz -MAINTAINER= ports@FreeBSD.org +MAINTAINER= munro1@llnl.gov WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION:R} USE_XLIB= yes -MAKE_ARGS= Y_HOME="${PREFIX}/lib/${PORTNAME}" Y_SITE="${DATADIR}" +MAKE_ARGS= Y_HOME="${PREFIX}/lib/${PORTNAME}" Y_SITE="${DATADIR}" \ + Y_DOCDIR=/dev/null MAN1= yorick.1 gist.1 PORTDOCS= FILE_FORMATS README drat.doc drat.tex graph.doc hex.doc \ - library.doc math.doc refs.ps refs.tex std.doc yorick.pdf \ - yorick.ps yorick.tex - -post-patch: - @${PERL} -pi -e \ - 's|/usr/X11R6|${X11BASE}|g' ${WRKSRC}/play/x11/xconfig.sh + library.doc math.doc refs.pdf refs.ps refs.tex std.doc \ + yorick.pdf yorick.ps yorick.tex do-configure: @(cd ${CONFIGURE_WRKSRC}; ${SETENV} ${MAKE_ENV} \ ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ysite config) +post-build: +.if !defined(NOPORTDOCS) + cd ${WRKSRC}/doc; make yorick.info + ${GZIP_CMD} ${WRKSRC}/doc/yorick.info* +.endif + post-install: +.if !exists(${PREFIX}/bin) + @${MKDIR} ${PREFIX}/bin +.endif +.if !exists(${PREFIX}/man/man1) + @${MKDIR} ${PREFIX}/man/man1 +.endif .for file in gist yorick ${INSTALL_MAN} ${WRKSRC}/doc/${file}.1 ${PREFIX}/man/man1 - @strip ${PREFIX}/lib/${PORTNAME}/bin/${file} + @${STRIP_CMD} ${PREFIX}/lib/${PORTNAME}/bin/${file} @${LN} -sf ${PREFIX}/lib/${PORTNAME}/bin/${file} ${PREFIX}/bin/${file} .endfor + @${STRIP_CMD} ${PREFIX}/lib/${PORTNAME}/lib/codger + ${INSTALL_DATA} ${WRKSRC}/emacs/yorick.el ${DATADIR} + @${LN} -sf ../../share/${PORTNAME}/g ${PREFIX}/lib/${PORTNAME}/g + @${CP} ${DATADIR}/i0/paths.i ${PREFIX}/lib/${PORTNAME}/bin/paths.i .if !defined(NOPORTDOCS) @${MKDIR} ${DOCSDIR} .for file in ${PORTDOCS} ${INSTALL_DATA} ${WRKSRC}/doc/${file} ${DOCSDIR} .endfor + @${LN} -sf ../doc/${PORTNAME} ${DATADIR}/doc +.if !exists(${PREFIX}/info) + @${MKDIR} ${PREFIX}/info +.endif + for f in ${WRKSRC}/doc/yorick.info*; do \ + ${INSTALL_DATA} $$f ${PREFIX}/info; \ + done + install-info ${PREFIX}/info/yorick.info.gz ${PREFIX}/info/dir .endif .include <bsd.port.mk> diff --git a/lang/yorick/distinfo b/lang/yorick/distinfo index 0bbc317c6f67..a8d3b92d365a 100644 --- a/lang/yorick/distinfo +++ b/lang/yorick/distinfo @@ -1 +1,2 @@ -MD5 (yorick-1.5.02.tgz) = 0b8db7534b52e9fbaf9ab80d9d826a80 +MD5 (yorick-1.5.08.tgz) = 2f13dd9bc2fd1503b18006c2a3c253ee + diff --git a/lang/yorick/files/patch-ab b/lang/yorick/files/patch-ab deleted file mode 100644 index 419e8d12ce20..000000000000 --- a/lang/yorick/files/patch-ab +++ /dev/null @@ -1,18 +0,0 @@ ---- install.sh.orig Sat May 12 03:56:33 2001 -+++ install.sh Wed Sep 19 23:40:58 2001 -@@ -91,7 +91,6 @@ - if test ! -d $Y_SITE/i; then mkdir $Y_SITE/i; fi - if test ! -d $Y_SITE/i0; then mkdir $Y_SITE/i0; fi - if test ! -d $Y_SITE/g; then mkdir $Y_SITE/g; fi --if test ! -d $Y_SITE/doc; then mkdir $Y_SITE/doc; fi - rm -f $Y_SITE/junk.tst - touch ./junk.tst - if test -f $Y_SITE/junk.tst; then -@@ -100,7 +99,6 @@ - cp -f i/*.i i/README $Y_SITE/i - cp -f i0/*.i i0/README $Y_SITE/i0 - cp -f g/*.gs g/*.gp g/ps.ps g/README $Y_SITE/g -- cp -f doc/*.tex doc/*.ps doc/*.pdf doc/FILE_FORMATS doc/README doc/*.doc $Y_SITE/doc - fi - rm -f ./junk.tst - diff --git a/lang/yorick/pkg-comment b/lang/yorick/pkg-comment index 7d928c61a797..d2ff741d3f40 100644 --- a/lang/yorick/pkg-comment +++ b/lang/yorick/pkg-comment @@ -1 +1 @@ -An Interpreted Language for Scientific Computing +Interpreted language and scientific graphics diff --git a/lang/yorick/pkg-descr b/lang/yorick/pkg-descr index cadde68905a4..c843e87299cf 100644 --- a/lang/yorick/pkg-descr +++ b/lang/yorick/pkg-descr @@ -1,19 +1,19 @@ -Yorick is an interpreted language like Basic or Lisp. For an interpreter, -Yorick is very fast for many scientific applications. It features: +Yorick is an interpreted programming language for: + * scientific simulations or calculations + * postprocessing or steering large simulation codes + * interactive scientific graphics + * reading, writing, and translating large files of numbers - * A C-like language, but without declarative statements. - * An X window system interactive graphics package. - * Yorick's binary file package can read or write floating point - formats foreign to the machine where Yorick is running. - * A library of functions written in the Yorick language. - * Provisions for embedding compiled subroutines and functions within - a Yorick interpreter. +The language features a compact syntax for many common array +operations, so it processes large arrays of numbers very quickly and +efficiently. Superficially, yorick code resembles C code, but yorick +variables are never explicitly declared and have a dynamic scoping +similar to many Lisp dialects. The yorick language is designed to be +typed interactively at a keyboard, as well as stored in files for +later use. -Because Yorick can read either text or binary files, it can be used -"out of the box" as a pre- and post-processor for most existing -physics simulation programs. - -Read the article in the Nov/Dec 1995 issue of Computers in Physics -(Vol. 9, p. 609) for more details. +This package includes an emacs-based development environment, which +you can launch by typing M-x yorick in emacs, if you load +.../share/yorick/yorick.el in your ~/.emacs file. WWW: ftp://ftp-icf.llnl.gov/pub/Yorick/doc/index.html diff --git a/lang/yorick/pkg-install b/lang/yorick/pkg-install new file mode 100644 index 000000000000..5e1e39c3d452 --- /dev/null +++ b/lang/yorick/pkg-install @@ -0,0 +1,19 @@ +#!/bin/sh +if test "$2" = "POST-INSTALL"; then + YS=$PKG_PREFIX/share/yorick + YH=$PKG_PREFIX/lib/yorick + x=`grep "^Y_HOME = $YH" $YH/Maketmpl` + if test -z "$x"; then + YB=$PKG_PREFIX/lib/yorick/bin + ln -sf $YB/gist $PKG_PREFIX/bin/gist + ln -sf $YB/yorick $PKG_PREFIX/bin/yorick + s="s%^...set_site,.*%set_site, \"$YS\", \"$YH\"\\;%g" + sed -e "$s" $YB/paths.i >$YB/paths.tmp + mv -f $YB/paths.tmp $YB/paths.i + sed -e "s%^Y_SITE = .*%Y_SITE = $YS%g" $YH/Maketmpl >$YH/Maketmpl.tmp + rm -f $YH/Maketmpl + sed -e "s%^Y_HOME = .*%Y_HOME = $YH%g" $YH/Maketmpl.tmp >$YH/Maketmpl + rm -f $YH/Maketmpl.tmp + fi +fi +true diff --git a/lang/yorick/pkg-plist b/lang/yorick/pkg-plist index adf2a99bd5fa..7e3d87dfa21f 100644 --- a/lang/yorick/pkg-plist +++ b/lang/yorick/pkg-plist @@ -3,6 +3,7 @@ bin/yorick lib/yorick/Make.cfg lib/yorick/Maketmpl lib/yorick/bin/gist +lib/yorick/bin/paths.i lib/yorick/bin/yorick lib/yorick/include/bcast.h lib/yorick/include/binio.h @@ -31,9 +32,13 @@ lib/yorick/include/xfancy.h lib/yorick/include/yasync.h lib/yorick/include/ydata.h lib/yorick/include/yio.h +lib/yorick/include/yversion.h lib/yorick/lib/codger +lib/yorick/lib/libdrat.a +lib/yorick/lib/libhex.a lib/yorick/lib/libyor.a lib/yorick/lib/main.o +lib/yorick/g %%PORTDOCS%%share/doc/yorick/FILE_FORMATS %%PORTDOCS%%share/doc/yorick/README %%PORTDOCS%%share/doc/yorick/drat.doc @@ -42,12 +47,14 @@ lib/yorick/lib/main.o %%PORTDOCS%%share/doc/yorick/hex.doc %%PORTDOCS%%share/doc/yorick/library.doc %%PORTDOCS%%share/doc/yorick/math.doc +%%PORTDOCS%%share/doc/yorick/refs.pdf %%PORTDOCS%%share/doc/yorick/refs.ps %%PORTDOCS%%share/doc/yorick/refs.tex %%PORTDOCS%%share/doc/yorick/std.doc %%PORTDOCS%%share/doc/yorick/yorick.pdf %%PORTDOCS%%share/doc/yorick/yorick.ps %%PORTDOCS%%share/doc/yorick/yorick.tex +%%PORTDOCS%%share/yorick/doc share/yorick/g/README share/yorick/g/axes.gs share/yorick/g/boxed.gs @@ -146,6 +153,15 @@ share/yorick/i0/matrix.i share/yorick/i0/paths.i share/yorick/i0/std.i share/yorick/i0/stdx.i +share/yorick/yorick.el +%%PORTDOCS%%@unexec install-info --delete %D/info/yorick.info.gz %D/info/dir +%%PORTDOCS%%info/yorick.info.gz +%%PORTDOCS%%info/yorick.info-1.gz +%%PORTDOCS%%info/yorick.info-4.gz +%%PORTDOCS%%info/yorick.info-2.gz +%%PORTDOCS%%info/yorick.info-5.gz +%%PORTDOCS%%info/yorick.info-3.gz +%%PORTDOCS%%@exec install-info %D/info/yorick.info.gz %D/info/dir @dirrm share/yorick/i0 @dirrm share/yorick/i @dirrm share/yorick/g |