Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Jun 2005 15:42:01 +0200
From:      "Marwan Burelle <marwan.burelle@lri.fr>" <marwan.burelle@lri.fr>
To:        "FreeBSD gnats submit" <FreeBSD-gnats-submit@FreeBSD.org>
Cc:        marwan.burelle@lri.fr
Subject:   ports/82117: New port: lang/cduce An efficient XML centric functionnal programming language
Message-ID:  <1118410921.0@pc5-179.lri.fr>
Resent-Message-ID: <200506101350.j5ADoJX8023231@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         82117
>Category:       ports
>Synopsis:       New port: lang/cduce An efficient XML centric functionnal programming language
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jun 10 13:50:19 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Marwan Burelle <marwan.burelle@lri.fr>
>Release:        FreeBSD 5.4-STABLE i386
>Organization:
http://www.cduce.org 
>Environment:


System: FreeBSD 5.4-STABLE #0: Fri May 27 16:10:41 CEST 2005
    root@:/usr/home/obj/usr/src/sys/KER_pc5-179



>Description:


CDuce is an XML centric programming language result of a joint research project on XML, semantic subtyping, databases and efficient tree automata.

Despite its XML orientation, it is also generalist.



>How-To-Repeat:





>Fix:


--- cduce-0.3.2-port.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	lang/cduce
#	lang/cduce/Makefile
#	lang/cduce/pkg-descr
#	lang/cduce/pkg-install
#	lang/cduce/files
#	lang/cduce/files/patch-aa
#	lang/cduce/distinfo
#
echo c - lang/cduce
mkdir -p lang/cduce > /dev/null 2>&1
echo x - lang/cduce/Makefile
sed 's/^X//' >lang/cduce/Makefile << 'END-of-lang/cduce/Makefile'
X# New ports collection makefile for:   cduce
X# Date created:        Jun 9, 2005
X# Whom:                Marwan Burelle <marwan.burelle@lri.fr>
X#
X# $FreeBSD$
X
XPORTNAME=	cduce
XPORTVERSION=	0.3.2
XCATEGORIES=	lang
XMASTER_SITES=	http://www.cduce.org/download/
X
XMAINTAINER=	marwan.burelle@lri.fr
XCOMMENT=	An efficient XML centric functionnal programming language
X
XLIB_DEPENDS=	pcre:${PORTSDIR}/devel/pcre-utf8
XBUILD_DEPENDS=	ocamlc:${PORTSDIR}/lang/ocaml \
X		ocamlfind:${PORTSDIR}/devel/ocaml-findlib \
X		${LOCALBASE}/lib/ocaml/site-lib/ulex/ulexing.a:${PORTSDIR}/devel/ocaml-ulex \
X		${LOCALBASE}/lib/ocaml/site-lib/pcre/pcre.a:${PORTSDIR}/devel/ocaml-pcre \
X		${LOCALBASE}/lib/ocaml/site-lib/netstring/netstring.a:${PORTSDIR}/www/ocaml-net
X
X# Support for url via ftp/ocaml-ocurl
X.if !defined(WITHOUT_OCURL)
XBUILD_DEPENDS+=	${LOCALBASE}/lib/ocaml/site-lib/curl/curl.cmi:${PORTSDIR}/ftp/ocaml-ocurl
X.endif
X
X# Support for the PXP XML parser
X.if defined(WITH_OCAML_EXPAT)
XBUILD_DEPENDS+=${LOCALBASE}/lib/ocaml/site-lib/expat/expat.cmi:${PORTSDIR}/textproc/ocaml-expat
X.else
XBUILD_DEPENDS+=${LOCALBASE}/lib/ocaml/site-lib/pxp-engine/pxp_engine.cma:${PORTSDIR}/textproc/ocaml-pxp
X.endif
X
X# Configure : use ocamlopt and don't look for netclient or pxp_wlex
XHAS_CONFIGURE=	yes
XCONFIGURE_ARGS=	--prefix=${PREFIX} --with-ocamlopt --without-netclient --without-pxp_wlex
X
X# Be sure to not build ocurl support if WITHOUT_OCURL is defined,
X# even if ocurl is present.
X.if defined(WITHOUT_OCURL)
XCONFIGURE_ARGS+=	--without-curl
X.endif
X
X# Be sure to build with PXP or expat but not both.
X.if defined(WITH_OCAML_EXPAT)
XCONFIGURE_ARGS+=	--with-expat --without-pxp
X.else
XCONFIGURE_ARGS+=	--without-expat --with-pxp
X.endif
X
X# Support for OCaml/CDuce interface
X.if !defined(WITHOUT_MLIFACE)
XCONFIGURE_ARGS+=	--mliface=${LOCALBASE}/lib/ocaml/compiler-lib
X.endif
X
XUSE_GMAKE=	yes
X
XALL_TARGET=	all
X
XINSTALL_TARGET=	install
X
XMAKE_ENV=	OCAMLFIND_DESTDIR="${PREFIX}/lib/ocaml/site-lib"
X
X.if !defined(NOPORTDOCS)
XCONFIGURE_ARGS+=	--docdir=${PREFIX}/share/doc/${PORTNAME}
XALL_TARGET+=		doc
XINSTALL_TARGET+=	install_doc
XPORTDOCS=		*
X.endif
X
XMAN1=		cduce.1 cdo2ml.1 cduce_mktop.1
X
XPKGDEINSTALL=	${PKGINSTALL}
XFINDLIB_PKGNAME=${PORTNAME}
X
XPLIST_FILES=	bin/cduce
X
X.if !defined(WITHOUT_MLIFACE)
XPLIST_FILES+=	bin/cdo2ml bin/mlcduce_wrapper bin/cduce_mktop
X.endif
X
Xpost-install:
X	@${FIND} ${PREFIX}/lib/ocaml/site-lib/${FINDLIB_PKGNAME} -type f | \
X		${SED} "s,^${PREFIX}/,," >> ${TMPPLIST}
X	@${ECHO_CMD} "@dirrm lib/ocaml/site-lib/${FINDLIB_PKGNAME}" >> ${TMPPLIST}
X	@${ECHO_CMD} "@unexec ocamlfind remove ${FINDLIB_PKGNAME} 2>/dev/null || true" >> ${TMPPLIST}
X.if defined(WITH_OCAML_EXPAT)
X	@${ECHO_CMD} "****************************************************************"
X	@${ECHO_CMD} "* You choose Expat as XML parser, you may encounter some error *"
X	@${ECHO_CMD} "* when loading XML files with external DTD.                    *"
X	@${ECHO_CMD} "****************************************************************"
X.endif
X
Xpre-everything::
X	@${ECHO} ""
X	@${ECHO} "You may define the following build options:"
X	@${ECHO} ""
X	@${ECHO} "	WITHOUT_CURL		Disable url support via ftp/ocaml-ocurl (=> no url support)"
X	@${ECHO} "	WITH_OCAML_EXPAT	Enable support for the Expat XML parser."
X	@${ECHO} "	WITHOUT_MLIFACE		Disable building OCaml/CDuce interface."
X	@${ECHO} ""
X
X.include <bsd.port.mk>
END-of-lang/cduce/Makefile
echo x - lang/cduce/pkg-descr
sed 's/^X//' >lang/cduce/pkg-descr << 'END-of-lang/cduce/pkg-descr'
XCDuce is modern programming language, adapted to the manipulation of
XXML documents. With a syntax inspired from ML, it comes with many
Xinteresting features such as higher order, overloaded functions and
Xpowerful regular expressions patterns. It also provides an embeded XML
Xquery language, using the traditional SELECT FROM WHERE form.
X
XThis project is a spin-off of a research effort split amongst two CNRS
Xlabs (the Languages group of ENS in Paris and the Databases group of
XLRI in Orsay), and one INRIA project (the Cristal project). Please see
Xthe CDuce team page for a list of researchers contributing to this
Xresearch effort. Some technical papers present the theoretical
Xfoundations of the language.
X
XWWW: http://www.cduce.org
X
X- Burelle Marwan
Xmarwan.burelle@lri.fr
END-of-lang/cduce/pkg-descr
echo x - lang/cduce/pkg-install
sed 's/^X//' >lang/cduce/pkg-install << 'END-of-lang/cduce/pkg-install'
X#!/bin/sh
X
Xif [ "$2" = "POST-INSTALL" ]; then
X  echo "${PKG_PREFIX}/lib/ocaml/site-lib/cduce" >> ${PKG_PREFIX}/lib/ocaml/ld.conf
Xelif [ "$2" = "DEINSTALL" ]; then
X  mv ${PKG_PREFIX}/lib/ocaml/ld.conf ${PKG_PREFIX}/lib/ocaml/ld.conf.tmp
X  grep -v cduce ${PKG_PREFIX}/lib/ocaml/ld.conf.tmp > ${PKG_PREFIX}/lib/ocaml/ld.conf
X  rm -f ${PKG_PREFIX}/lib/ocaml/ld.conf.tmp
Xfi
END-of-lang/cduce/pkg-install
echo c - lang/cduce/files
mkdir -p lang/cduce/files > /dev/null 2>&1
echo x - lang/cduce/files/patch-aa
sed 's/^X//' >lang/cduce/files/patch-aa << 'END-of-lang/cduce/files/patch-aa'
X--- Makefile.orig	Wed Apr 13 15:03:57 2005
X+++ Makefile	Wed Apr 13 15:06:03 2005
X@@ -87,13 +87,12 @@
X 	$(HIDE)$(MAKE) NATIVE=false $@
X endif
X 
X-install: all install_bin install_lib install_doc
X+install: all install_bin install_lib
X 
X install_bin:
X 	@echo "Install binaries"
X 	$(HIDE)mkdir -p $(BINDIR)
X 	$(HIDE)$(INSTALL) -m755 $(INSTALL_BINARIES) $(BINDIR)/
X-	
X 
X install_lib:
X 	@echo "Build META"
END-of-lang/cduce/files/patch-aa
echo x - lang/cduce/distinfo
sed 's/^X//' >lang/cduce/distinfo << 'END-of-lang/cduce/distinfo'
XMD5 (cduce-0.3.2.tar.gz) = 3714dc8231fd3f09ef87360d6d2f4987
XSIZE (cduce-0.3.2.tar.gz) = 312818
END-of-lang/cduce/distinfo
exit

--- cduce-0.3.2-port.shar ends here ---



>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1118410921.0>