pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

add ocaml-sedlex 2.1



Module Name:	pkgsrc-wip
Committed By:	Maya Rashish <maya%NetBSD.org@localhost>
Pushed By:	coypu
Date:		Sat Nov 2 17:09:04 2019 +0200
Changeset:	69cc14895ef92a273814c163deec721a4603c7fc

Added Files:
	ocaml-sedlex/DESCR
	ocaml-sedlex/Makefile
	ocaml-sedlex/PLIST
	ocaml-sedlex/buildlink3.mk
	ocaml-sedlex/distinfo

Log Message:
add ocaml-sedlex 2.1

sedlex is a lexer generator for OCaml, similar to ocamllex, but
supporting Unicode. Contrary to ocamllex, lexer specifications for
sedlex are embedded in regular OCaml source files.

The lexers work with a new kind of "lexbuf", similar to ocamllex
Lexing lexbufs, but designed to support Unicode, and abstracting
from a specific encoding. A single lexer can work with arbitrary
encodings of the input stream.

sedlex is the successor of the ulex project. Contrary to ulex which
was implemented as a Camlp4 syntax extension, sedlex is based on
the new "-ppx" technology of OCaml, which allow rewriting OCaml
parse trees through external rewriters. (And what a better name
than "sed" for a rewriter?)

As any -ppx rewriter, sedlex does not touch the concrete syntax of
the language: lexer specifications are written in source file which
comply with the standard grammar of OCaml programs. sedlex reuse
the syntax for pattern matching in order to describe lexers (regular
expressions are encoded within OCaml patterns). A nice consequence
is that your editor (vi, emacs, ...) won't get confused (indentation,
coloring) and you don't need to learn new priority rules. Moreover,
sedlex is compatible with any front-end parsing technology: it
works fine even if you use camlp4 or camlp5, with the standard or
revised syntax.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=69cc14895ef92a273814c163deec721a4603c7fc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 ocaml-sedlex/DESCR         | 25 ++++++++++++++++++++++++
 ocaml-sedlex/Makefile      | 23 ++++++++++++++++++++++
 ocaml-sedlex/PLIST         | 48 ++++++++++++++++++++++++++++++++++++++++++++++
 ocaml-sedlex/buildlink3.mk | 13 +++++++++++++
 ocaml-sedlex/distinfo      |  6 ++++++
 5 files changed, 115 insertions(+)

diffs:
diff --git a/ocaml-sedlex/DESCR b/ocaml-sedlex/DESCR
new file mode 100644
index 0000000000..92eae6ac34
--- /dev/null
+++ b/ocaml-sedlex/DESCR
@@ -0,0 +1,25 @@
+sedlex is a lexer generator for OCaml, similar to ocamllex, but
+supporting Unicode. Contrary to ocamllex, lexer specifications for
+sedlex are embedded in regular OCaml source files.
+
+The lexers work with a new kind of "lexbuf", similar to ocamllex
+Lexing lexbufs, but designed to support Unicode, and abstracting
+from a specific encoding. A single lexer can work with arbitrary
+encodings of the input stream.
+
+sedlex is the successor of the ulex project. Contrary to ulex which
+was implemented as a Camlp4 syntax extension, sedlex is based on
+the new "-ppx" technology of OCaml, which allow rewriting OCaml
+parse trees through external rewriters. (And what a better name
+than "sed" for a rewriter?)
+
+As any -ppx rewriter, sedlex does not touch the concrete syntax of
+the language: lexer specifications are written in source file which
+comply with the standard grammar of OCaml programs. sedlex reuse
+the syntax for pattern matching in order to describe lexers (regular
+expressions are encoded within OCaml patterns). A nice consequence
+is that your editor (vi, emacs, ...) won't get confused (indentation,
+coloring) and you don't need to learn new priority rules. Moreover,
+sedlex is compatible with any front-end parsing technology: it
+works fine even if you use camlp4 or camlp5, with the standard or
+revised syntax.
diff --git a/ocaml-sedlex/Makefile b/ocaml-sedlex/Makefile
new file mode 100644
index 0000000000..cf97ecb57b
--- /dev/null
+++ b/ocaml-sedlex/Makefile
@@ -0,0 +1,23 @@
+# $NetBSD: Makefile,v 1.20 2019/08/27 19:56:03 schmonz Exp $
+
+DISTNAME=	ocaml-sedlex-2.1
+GITHUB_PROJECT=	sedlex
+CATEGORIES=	devel
+MASTER_SITES=	${MASTER_SITE_GITHUB:=ocaml-community/}
+GITHUB_TAG=	v${PKGVERSION_NOREV}
+
+MAINTAINER=	netbsd-users%NetBSD.org@localhost
+HOMEPAGE=	https://github.com/ocaml-community/sedlex
+COMMENT=	OCaml lexer generator for Unicode
+LICENSE=	mit
+
+USE_TOOLS+=	gmake
+
+OCAML_USE_DUNE=	yes
+BUILD_DEPENDS+=	ocaml-odoc-[0-9]*:../../wip/ocaml-odoc
+
+.include "../../mk/ocaml.mk"
+.include "../../devel/ocaml-ppx_tools/buildlink3.mk"
+.include "../../wip/ocaml-gen/buildlink3.mk"
+.include "../../lang/ocaml/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/ocaml-sedlex/PLIST b/ocaml-sedlex/PLIST
new file mode 100644
index 0000000000..5dad638046
--- /dev/null
+++ b/ocaml-sedlex/PLIST
@@ -0,0 +1,48 @@
+@comment $NetBSD$
+${OCAML_SITELIB}/sedlex/META
+${OCAML_SITELIB}/sedlex/dune-package
+${OCAML_SITELIB}/sedlex/opam
+${OCAML_SITELIB}/sedlex/ppx/ppx.exe
+${OCAML_SITELIB}/sedlex/ppx/ppx_sedlex.ml
+${OCAML_SITELIB}/sedlex/ppx/sedlex.ml
+${OCAML_SITELIB}/sedlex/ppx/sedlex.mli
+${OCAML_SITELIB}/sedlex/ppx/sedlex_cset.ml
+${OCAML_SITELIB}/sedlex/ppx/sedlex_cset.mli
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx.a
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx.cma
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx.cmi
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx.cmt
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx.cmx
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx.cmxa
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx.cmxs
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx.ml
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Ppx_sedlex.cmi
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Ppx_sedlex.cmt
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Ppx_sedlex.cmx
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Sedlex.cmi
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Sedlex.cmt
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Sedlex.cmti
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Sedlex.cmx
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Sedlex_cset.cmi
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Sedlex_cset.cmt
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Sedlex_cset.cmti
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Sedlex_cset.cmx
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Unicode.cmi
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Unicode.cmt
+${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Unicode.cmti
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/ppx/sedlex_ppx__Unicode.cmx
+${OCAML_SITELIB}/sedlex/ppx/unicode.ml
+${OCAML_SITELIB}/sedlex/ppx/unicode.mli
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/sedlex.a
+${OCAML_SITELIB}/sedlex/sedlex.cma
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/sedlex.cmxa
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/sedlex.cmxs
+${OCAML_SITELIB}/sedlex/sedlexing.cmi
+${OCAML_SITELIB}/sedlex/sedlexing.cmt
+${OCAML_SITELIB}/sedlex/sedlexing.cmti
+${PLIST.ocaml-opt}${OCAML_SITELIB}/sedlex/sedlexing.cmx
+${OCAML_SITELIB}/sedlex/sedlexing.ml
+${OCAML_SITELIB}/sedlex/sedlexing.mli
+share/doc/sedlex/CHANGES
+share/doc/sedlex/LICENSE
+share/doc/sedlex/README.md
diff --git a/ocaml-sedlex/buildlink3.mk b/ocaml-sedlex/buildlink3.mk
new file mode 100644
index 0000000000..2e6292c958
--- /dev/null
+++ b/ocaml-sedlex/buildlink3.mk
@@ -0,0 +1,13 @@
+# $NetBSD$
+
+BUILDLINK_TREE+=	ocaml-sedlex
+
+.if !defined(OCAML_SEDLEX_BUILDLINK3_MK)
+OCAML_SEDLEX_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.ocaml-sedlex+=	ocaml-sedlex>=2.1
+BUILDLINK_PKGSRCDIR.ocaml-sedlex?=	../../devel/ocaml-sedlex
+
+.endif	# OCAML_SEDLEX_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-ocaml-sedlex
diff --git a/ocaml-sedlex/distinfo b/ocaml-sedlex/distinfo
new file mode 100644
index 0000000000..b104fcb039
--- /dev/null
+++ b/ocaml-sedlex/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.8 2019/05/15 09:01:03 jaapb Exp $
+
+SHA1 (ocaml-sedlex-2.1.tar.gz) = e1f569e6ca795116ead43f2a0625b01d385b63bd
+RMD160 (ocaml-sedlex-2.1.tar.gz) = 3e746ee910ed768fa59a7bc69a0926bb5b25b1e4
+SHA512 (ocaml-sedlex-2.1.tar.gz) = df379c0b9db396cec454d1ac151f8bfc597d26447f30220f87b0d919be541d44dce56c932a6573d066395932f5d59e429922a0b44c8f853e3954faf1893856eb
+Size (ocaml-sedlex-2.1.tar.gz) = 114191 bytes


Home | Main Index | Thread Index | Old Index