diff options
author | thierry <thierry@FreeBSD.org> | 2007-09-04 05:48:38 +0800 |
---|---|---|
committer | thierry <thierry@FreeBSD.org> | 2007-09-04 05:48:38 +0800 |
commit | 14e7d69b671d9ce907aad2a4bbf2d37e2fd13ad2 (patch) | |
tree | c376936787abc740503bd73d166b113600ba9012 /lang/ocs/Makefile | |
parent | b888960008ee054be2a9cbbcd3c3ae884b52c825 (diff) | |
download | freebsd-ports-gnome-14e7d69b671d9ce907aad2a4bbf2d37e2fd13ad2.tar.gz freebsd-ports-gnome-14e7d69b671d9ce907aad2a4bbf2d37e2fd13ad2.tar.zst freebsd-ports-gnome-14e7d69b671d9ce907aad2a4bbf2d37e2fd13ad2.zip |
The OPAL compilation system (OCS) is a set of development tools for
creating software using the algebraic programming language OPAL. The
package includes a native compiler and an interpreter.
OPAL is mainly developed at the Technical University of Berlin since
1986 and it is used for research and evaluation of language concepts,
algorithms and programming techniques.
WWW: http://uebb.cs.tu-berlin.de/opal/
PR: ports/114511
Submitted by: Björn König <bkoenig at cs.tu-berlin.de>
Diffstat (limited to 'lang/ocs/Makefile')
-rw-r--r-- | lang/ocs/Makefile | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/lang/ocs/Makefile b/lang/ocs/Makefile new file mode 100644 index 000000000000..049f4d6969b3 --- /dev/null +++ b/lang/ocs/Makefile @@ -0,0 +1,104 @@ +# ex:ts=8 +# New ports collection makefile for: ocs +# Date created: 8 July 2007 +# Whom: Björn König <bkoenig@cs.tu-berlin.de> +# +# $FreeBSD$ +# + +PORTNAME= ocs +PORTVERSION= 2.3k +CATEGORIES= lang +MASTER_SITES= http://uebb.cs.tu-berlin.de/opal/ +DISTNAME= ${PORTNAME}-${PORTVERSION}-src + +MAINTAINER= bkoenig@cs.tu-berlin.de +COMMENT= The OPAL Compilation System + +BUILD_DEPENDS= ${LOCALBASE}/bin/gsed:${PORTSDIR}/textproc/gsed + +WRKSRC= ${WRKDIR}/${PORTNAME} +PLIST= ${WRKDIR}/pkg-plist + +# The Makefile of the source package doesn't have a 'build' target. +# It rather compiles and installs the software in a single step using +# an 'install' target. For this reason the port compiles/installs the +# software to a temporary directory at the 'do-build' stage and +# installs it manually at the 'do-install' stage. +ALL_TARGET= install + +USE_BZIP2= yes +USE_TCL= yes +USE_TK= yes +USE_GMAKE= yes +USE_PERL5= yes +HAS_CONFIGURE= yes +USE_XORG= xt +USE_LDCONFIG= ${OCS}/lib/freebsd${OSREL}-${ARCH} + +NOT_FOR_ARCHS= amd64 ia64 + +CONFIGURE_ARGS= --prefix="${WRKDIR}" \ + --disable-absolute-pathes \ + --with-tcl-lib="-L${LOCALBASE}/lib -ltcl${TCL_VER:S/.//}" \ + --with-tcl-incl="-I${TCL_INCLUDEDIR} -I${TK_INCLUDEDIR} -I${X11BASE}/include" \ + --with-tk-lib="-ltk${TK_VER:S/.//}" \ + --with-tk-incl="-I${TCL_INCLUDEDIR} -I${TK_INCLUDEDIR} -I${X11BASE}/include" + +MAN1= ocs.1 oc.1 genmake.1 + +OCS_LINKS= oasys ocs +OCS_INSTALL= bin etc lib packages + +# This is the place of the temporary installation. +OCS_TEMPDIR= ${WRKDIR}/${PORTNAME}-${PORTVERSION} + +# This is the target directory of the port installation. +OCS= ${PREFIX}/${PORTNAME} + +.for f in ${OCS_LINKS} +PLIST_FILES+= bin/$f +.endfor + +post-patch: +.for f in src/om/scripts/oasys src/om/scripts/ocs + @${REINPLACE_CMD} "s,OCS=.*$$,OCS=\"${OCS}\"," ${WRKSRC}/$f +.endfor + @${REINPLACE_CMD} "s,\$$LIBS -ldl,\$$LIBS," ${WRKSRC}/configure + +# The Makefile don't like an existing (temporary) installation directory. +# This won't hurt as long as we do a clean installation. But if you +# 'make build' several times because of an interrupted compilation then it +# is necessary to remove the directory to keep the make script satisfied. +pre-build: + @${RM} -rf ${OCS_TEMPDIR} + +pre-install: + @${RM} -f ${PLIST} + @${TOUCH} ${PLIST} +.for d in ${OCS_INSTALL} + @${FIND} ${OCS_TEMPDIR}/$d -not -type d | ${SED} "s,${OCS_TEMPDIR},${PORTNAME}," >> ${PLIST} + @${FIND} -d ${OCS_TEMPDIR}/$d -type d | ${SED} "s,${OCS_TEMPDIR},@dirrmtry ${PORTNAME}," >> ${PLIST} +.endfor + @${ECHO} "@dirrmtry ${PORTNAME}" >> ${PLIST} +.if !defined(WITHOUT_EXAMPLES) + @${FIND} ${OCS_TEMPDIR}/examples -not -type d | ${SED} "s,${OCS_TEMPDIR}/examples,${EXAMPLESDIR_REL}," >> ${PLIST} + @${FIND} -d ${OCS_TEMPDIR}/examples -type d | ${SED} "s,${OCS_TEMPDIR}/examples,@dirrmtry ${EXAMPLESDIR_REL}," >> ${PLIST} +.endif + +do-install: + @${MKDIR} ${OCS} +.for d in ${OCS_INSTALL} + @(cd ${OCS_TEMPDIR}; ${COPYTREE_BIN} $d ${OCS}) +.endfor +.if !defined(WITHOUT_EXAMPLES) + @(cd ${OCS_TEMPDIR}/examples; ${COPYTREE_SHARE} . ${EXAMPLESDIR}) +.endif +.for f in ${OCS_LINKS} + @${LN} -s ${OCS}/bin/$f ${PREFIX}/bin/$f +.endfor +.for f in ${MAN1} + @${INSTALL_MAN} ${OCS_TEMPDIR}/man/man1/$f ${MAN1PREFIX}/man/man1/ +.endfor + +.include <bsd.port.mk> |