diff options
author | steve <steve@FreeBSD.org> | 2000-05-29 02:20:47 +0000 |
---|---|---|
committer | steve <steve@FreeBSD.org> | 2000-05-29 02:20:47 +0000 |
commit | 359a46f86b02b60865a0e45778df47e1da6d5686 (patch) | |
tree | 7e24f5e80cb2ccd43676cd930239fbc07b1da492 /lang/rexx-imc | |
parent | 8efe0b8a3a99bef2abcc5892b58557923a56cc39 (diff) | |
download | FreeBSD-ports-359a46f86b02b60865a0e45778df47e1da6d5686.zip FreeBSD-ports-359a46f86b02b60865a0e45778df47e1da6d5686.tar.gz |
- Support CFLAGS properly
- Fix procedure of building shared library
- Sort pkg/PLIST
- Revise pkg/DESCR
PR: 18797
Submitted by: KATO Tsuguru <tkato@prontomail.ne.jp>
Diffstat (limited to 'lang/rexx-imc')
-rw-r--r-- | lang/rexx-imc/Makefile | 20 | ||||
-rw-r--r-- | lang/rexx-imc/files/Makefile | 27 | ||||
-rw-r--r-- | lang/rexx-imc/pkg-descr | 69 | ||||
-rw-r--r-- | lang/rexx-imc/pkg-plist | 14 |
4 files changed, 31 insertions, 99 deletions
diff --git a/lang/rexx-imc/Makefile b/lang/rexx-imc/Makefile index 9e1e481..6314cf9 100644 --- a/lang/rexx-imc/Makefile +++ b/lang/rexx-imc/Makefile @@ -8,8 +8,8 @@ PORTNAME= rexx-imc PORTVERSION= 1.7 CATEGORIES= lang -MASTER_SITES= http://ruby.comlab.ox.ac.uk/imc/distribution/ \ - ftp://ftp.sai.msu.su/pub/unix/rexx/ \ +MASTER_SITES= http://ruby.comlab.ox.ac.uk/imc/distribution/ \ + ftp://ftp.sai.msu.su/pub/unix/rexx/ \ ftp://crydee.sai.msu.ru/zeus/unix/rexx/ PATCH_SITES= ${MASTER_SITES} PATCHFILES= ${DISTNAME}-19990331.patch @@ -17,21 +17,13 @@ PATCH_DIST_STRIP= -p1 MAINTAINER= jfitz@FreeBSD.org -MAKE_ENV= MKDIR="${MKDIR}" +MAKE_ENV= MKDIR="${MKDIR}" OPTFLAGS="${CFLAGS}" MAN1= rexx.1 -.include <bsd.port.pre.mk> - -pre-build: - @ ${CP} ${FILESDIR}/Makefile ${WRKSRC} +post-extract: + @${CP} ${FILESDIR}/Makefile ${WRKSRC} post-install: -.if ${PORTOBJFORMAT} == "aout" - @${ECHO_MSG} "Fixing packing list for a.out" - @${MV} ${TMPPLIST} ${TMPPLIST}.new - @${GREP} -v '.so$$' ${TMPPLIST}.new > ${TMPPLIST} - @${RM} ${TMPPLIST}.new -.endif @${LDCONFIG} -m ${PREFIX}/lib -.include <bsd.port.post.mk> +.include <bsd.port.mk> diff --git a/lang/rexx-imc/files/Makefile b/lang/rexx-imc/files/Makefile index 5ebce44..0495bb3 100644 --- a/lang/rexx-imc/files/Makefile +++ b/lang/rexx-imc/files/Makefile @@ -1,4 +1,6 @@ -# Makefile for REXX/imc-1.6? +# $FreeBSD$ +# +# Makefile for REXX/imc-1.7? # # Based upon the original by the author # Heavily hacked by jfitz@FreeBSD.ORG @@ -8,7 +10,7 @@ CC?= gcc PIC= -fPIC CCFLAGS= -DHAS_TTYCOM -D_REQUIRED -DRENAME_UNDELETE -c ${PIC} -OPTFLAGS= -O2 +OPTFLAGS?= -O2 # Release Date Variables RXDAY= 1 @@ -21,13 +23,8 @@ REXXDOCS= README README.bugreport README.docs \ rexx.info rexx.ref rexx.summary rexx.tech # Shared Library Version -.if ${PORTOBJFORMAT} == "elf" VER= 2 -SHAREDLIB= librexx.so librexx.so.${VER} -.else -VER= 2.0 SHAREDLIB= librexx.so.${VER} -.endif STATICLIB= librexx.a REXXLIB=${STATICLIB} ${SHAREDLIB} @@ -44,9 +41,8 @@ interface.o: interface.c ${HFILES} ${CC} ${OPTFLAGS} ${CCFLAGS} -c ${DATE} ${FILEDEFS} -o $@ interface.c ${SHAREDLIB}: ${LIBFILES} -.for t in ${.TARGET} - ${LD} -Bshareable -o ${t} ${LIBFILES} -.endfor + ${CC} -shared -Wl,-soname,$@ -o ${SHAREDLIB} ${LIBFILES} + ln -sf ${SHAREDLIB} librexx.so ${STATICLIB}: ${LIBFILES} ar rc ${STATICLIB} ${LIBFILES} @@ -62,7 +58,7 @@ rxstack: rxstack.o ${STATICLIB} ${CC} ${OPTFLAGS} -o rxstack rxstack.o rxmathfn.rxfn: rxmathfn.o ${HFILES} - ${LD} -Bshareable -o rxmathfn.rxfn rxmathfn.o -lm + ${CC} -shared -o rxmathfn.rxfn rxmathfn.o -lm interface.o: interface.c ${HFILES} ${CC} ${OPTFLAGS} ${CCFLAGS} -o interface.o ${FILEDEFS} interface.c @@ -71,7 +67,7 @@ rexx.1: rexx.1.in sed -e "s|@REXXLIBDIR@|${PREFIX}/bin|" rexx.1.in > rexx.1 install: - @strip ${SHAREDLIBS} rxmathfn.rxfn + @strip rxmathfn.rxfn .for f in rexx rxque rxstack ${BSD_INSTALL_PROGRAM} ${f} ${PREFIX}/bin .endfor @@ -81,13 +77,14 @@ install: .for f in ${REXXLIB} ${BSD_INSTALL_DATA} ${f} ${PREFIX}/lib .endfor + ln -sf ${SHAREDLIB} ${PREFIX}/lib/librexx.so ${BSD_INSTALL_DATA} rexxsaa.h ${PREFIX}/include + ${BSD_INSTALL_MAN} rexx.1 ${PREFIX}/man/man1 .if !defined(NOPORTDOCS) - ${MKDIR} ${PREFIX}/share/doc/rexx-imc/ + ${MKDIR} ${PREFIX}/share/doc/rexx-imc .for f in ${REXXDOCS} - ${BSD_INSTALL_DATA} ${f} ${PREFIX}/share/doc/rexx-imc/ + ${BSD_INSTALL_DATA} ${f} ${PREFIX}/share/doc/rexx-imc .endfor - ${BSD_INSTALL_DATA} rexx.1 ${PREFIX}/man/man1 .endif .c.o: diff --git a/lang/rexx-imc/pkg-descr b/lang/rexx-imc/pkg-descr index 2c3cd9a..2907f629 100644 --- a/lang/rexx-imc/pkg-descr +++ b/lang/rexx-imc/pkg-descr @@ -1,64 +1,7 @@ -What is REXX ? -============== +REXX/imc is a Rexx interpreter for Unix. It supports all the standard +instructions and built-in functions, plus a small number of extensions, +and has a partial implementation of the SAA API allowing applications +to call Rexx programs and to register addressing environments, Rexx +functions, and exit handlers. -REXX is a programming language designed by Michael Cowlishaw -of IBM UK Laboratories. In his own words: "REXX is a -procedural language that allows programs and algorithms to -be written in a clear and structured way." -REXX doesn't look that different from any other procedural -language. Here's a simple REXX program: - - /* Count some numbers */ - - say "Counting..." - do i = 1 to 10 - say "Number" i - end - -What makes REXX different from most other languages is that -it is also designed to be used as a macro language by -arbitrary application programs. The idea is that -application developers don't have to design their own macro -languages and interpreters. Instead they use REXX as the -macro language and support the REXX programming interface. -If a REXX macro comes across an expression or function call -that it cannot resolve, it can ask the application to handle -it instead. The application only has to support the -features that are specific to it, freeing the developer from -handling the mundane (and time-consuming) task of writing a -language interpreter. And if all applications use REXX as -their macro language, the user only has to learn one -language instead of a dozen. - - -Differences between TRL (The REXX Language) and REXX/imc -======================================================== - -The following are all nonstandard features of REXX-imc - - * Rejection of labels ending with dot (in case of confusion between - function.(args) and stem.(tail)) - * Compound variable accesses of the form "stem.'string constant'" and - stem.(expression) - * Acceptance of any non-zero number for logical truth, rather than just 1 - * "SAYN expression" to output lines without carriage return - * "SELECT expression" to switch on a value - * "END SELECT" - * "PARSE VALUE" with multiple strings separated by commas - * "PROCEDURE HIDE" - * The following functions: chdir getcwd getenv putenv system userid - plus these I/O functions: open close fdopen popen pclose fileno ftell - * error messages 80-210, -1 and -3. - - -Good sources of REXX information on the web: -============================================ - -REXX/imc Home page - http://www.comlab.ox.ac.uk/oucl/users/ian.collier/Rexx/index.html - -IBM's REXX Language Page - http://rexx.hursley.ibm.com/rexx/ - -REXX Tutorials Page - http://www2.hursley.ibm.com/rexxtut/ +WWW: http://www.comlab.ox.ac.uk/oucl/users/ian.collier/Rexx/index.html diff --git a/lang/rexx-imc/pkg-plist b/lang/rexx-imc/pkg-plist index fc37408..4e23a7a 100644 --- a/lang/rexx-imc/pkg-plist +++ b/lang/rexx-imc/pkg-plist @@ -1,14 +1,14 @@ bin/rexx -bin/rxque -bin/rxstack bin/rxmathfn.rxfn bin/rxmathfn.rxlib +bin/rxque +bin/rxstack +include/rexxsaa.h lib/librexx.a -lib/librexx.so.2.0 lib/librexx.so -include/rexxsaa.h -@exec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -m %D/lib -@unexec /usr/bin/env OBJFORMAT=%%PORTOBJFORMAT%% /sbin/ldconfig -R +lib/librexx.so.2 +@exec /sbin/ldconfig -m %B +@unexec /sbin/ldconfig -R share/doc/rexx-imc/README share/doc/rexx-imc/README.bugreport share/doc/rexx-imc/README.docs @@ -20,4 +20,4 @@ share/doc/rexx-imc/rexx.info share/doc/rexx-imc/rexx.ref share/doc/rexx-imc/rexx.summary share/doc/rexx-imc/rexx.tech -@dirrm share/doc/rexx-imc/ +@dirrm share/doc/rexx-imc |