Skip to content
Commits on Source (14)
## Emacs files
*~
*#
## Dune
/_build
.merlin
*.install
## Project
/bin
/lib
/src/version.ml
/doc
/tests.org
*.json
*.sjson
_build/
## Emacs files
*~
*#
......@@ -7,8 +7,6 @@ services:
## are infact tags for the ocaml/opam2 Docker image that we pull.
env:
- TAG=latest SWITCH=4.02.3
- TAG=4.03
- TAG=4.04
- TAG=4.05
- TAG=4.06 DEPLOY=true
......
.PHONY: all debug clean checks uninstall doc install install-local dist examples
.PHONY: docker-image publish-docker-image
.PHONY: build doc install uninstall check examples clean
.PHONY: dist docker-image publish-docker-image headers
EXPORTED_SOURCES= \
src/CST.ml \
src/errors.mli \
src/API.mli
all:
$(MAKE) -C src
mkdir -p bin lib
if [ -e src/morbigDriver.native ]; then \
cp src/morbigDriver.native bin/morbig ;\
cp src/_build/morbig.o src/_build/morbig.cm* \
src/_build/morbig.a src/_build/libmorbigc.a lib; \
else \
cp src/morbigDriver.byte bin/morbig ;\
cp src/_build/morbig.cm* src/_build/libmorbigc.a lib; \
fi
doc:
$(MAKE) -C src doc
cp -fr src/morbig.docdir/* doc
debug:
DEBUGPARSING=yes $(MAKE) -C src debug
mkdir -p bin
cp src/morbigDriver.byte bin/morbig
ODIR=$(shell ocamlc -where)
build:
dune build @install
[ -e bin ] || ln -sf _build/install/default/bin bin
[ -e lib ] || ln -sf _build/install/default/lib/morbig lib
doc: build
dune build @doc
[ -e doc ] || ln -sf _build/default/_doc/_html doc
ifneq ($(PREFIX),)
INSTALL_ARGS := $(INSTALL_ARGS) --prefix $(PREFIX)
endif
ifneq ($(LIBDIR),)
INSTALL_ARGS := $(INSTALL_ARGS) --libdir $(LIBDIR)
endif
install:
@ if [ x$(PREFIX) = x ]; then \
echo "Selecting OPAM based install."; \
echo "Specify PREFIX=... for system-wide install."; \
cp bin/morbig `opam config var bin`; \
cp man/morbig.1 `opam config var man`; \
mkdir -p `opam config var doc`/morbig; \
cp -fr doc/* `opam config var doc`/morbig; \
ocamlfind remove morbig; \
ocamlfind install morbig META lib/* include/* $(EXPORTED_SOURCES); \
else \
echo "Selecting system-wide install. PREFIX is $(PREFIX)"; \
mkdir -p $(PREFIX)/bin; \
cp bin/morbig $(PREFIX)/bin; \
mkdir -p $(PREFIX)/share/man/man1; \
cp man/morbig.1 $(PREFIX)/share/man/man1; \
mkdir -p $(PREFIX)/share/doc/morbig; \
cp -fr doc/* $(PREFIX)/share/doc/morbig; \
mkdir -p $(PREFIX)/lib/ocaml; \
ocamlfind remove -destdir $(PREFIX)/lib/ocaml morbig; \
ocamlfind install -destdir $(PREFIX)/lib/ocaml \
morbig META $(EXPORTED_SOURCES) lib/* include/*; \
fi
install-local:
PREFIX=/usr/local make install
dune install $(INSTALL_ARGS)
uninstall:
@ if [ x$(PREFIX) = x ]; then \
echo "Selecting OPAM based uninstall. "; \
echo "Specify PREFIX=... for system-wide install."; \
rm -fr `opam config var bin`/morbig \
`opam config var man`/morbig.1 \
`opam config var doc`/morbig \
ocamlfind remove morbig; \
else \
echo "Selecting system-wide install. PREFIX is $(PREFIX)"; \
rm -fr $(PREFIX)/bin/morbig \
$(PREFIX)/share/man/man1/morbig.1 \
$(PREFIX)/share/doc/morbig; \
ocamlfind remove -destdir $(PREFIX)/lib morbig; \
fi
dune uninstall $(INSTALL_ARGS)
check:
@ output=$$(./tests/run 2>&1) ; \
......@@ -81,21 +42,15 @@ examples:
while read file; do dirname "$$file"; done | \
xargs -n1 make -C
opam-release:
@printf 'You need `opam-publish` installed with `tls`.\n'
opam publish
clean:
$(MAKE) -C src clean
rm -f src/version.ml
dune clean
rm -f bin lib doc
rm -f tests.org
tests/run clean
[ ! -d bin ] || rm -fr bin
[ ! -d lib ] || rm -fr lib
PACKAGE=$(shell echo morbig-`cat VERSION`)
dist:
dist: clean
git archive -o $(PACKAGE).tar --format tar --prefix $(PACKAGE)/ master
gzip -9 $(PACKAGE).tar
......@@ -105,3 +60,6 @@ docker-image: Dockerfile
publish-docker-image: docker-image
docker tag morbig colisanr/morbig:latest
docker image push colisanr/morbig:latest
headers:
cd src && headache -c .headache.conf -h .header *.ml *.ml[ily]
......@@ -60,15 +60,12 @@ shell grammar of the POSIX standard.
``morbig`` depends on the following software:
```
- ocaml (>= 4.02.3)
- ocamlbuild [ if ocaml >= 4.05 ]
- ocamlfind
- menhir (>= 20170509)
- yojson (>= 1.3.2)
- ppx_deriving_yojson (>= 3.0)
- visitors (>= 20170404)
```
- dune
- menhir
- ocaml (≥ 4.04)
- odoc (for documentation only)
- yojson and ppx_deriving_yojson
- visitors
### Building
......
0.9.0
\ No newline at end of file
morbig (0.10.1-1) UNRELEASED; urgency=medium
* New upstream version.
* Update debian/watch: initial 'v' of the tag optional.
* Drop patches version_0.9.1 and makefile
* debian/rules: don't build doc. As a consequence, drop override of
dh_auto_build which has become useless.
* debian/libmorbig-ocaml-dev.install: adjust paths
* debian/morbig.manpages: adjust path (manpage not installed by dune)
* Add Readme.md to debian/not-installed as it is not useful for debian.
* Override dh_dwz to use option --no-dwz-multifile
* autopkgtest api-ocam: module Morbig.API has been renamed to Morbig.
* Build-dependencies:
- replace ocamlbuild by dune
- require ocaml >= 4.04
- debhelper-compat (=12); drop file debian/compat
-- Ralf Treinen <treinen@debian.org> Thu, 28 Feb 2019 08:56:08 +0100
morbig (0.9.1-2) unstable; urgency=medium
* Standards-Version 4.3.0 (no change)
......
......@@ -3,9 +3,9 @@ Section: ocaml
Priority: optional
Maintainer: Debian OCaml Maintainers <debian-ocaml-maint@lists.debian.org>
Uploaders: Ralf Treinen <treinen@debian.org>,
Build-Depends: debhelper (>= 12), dh-ocaml,
ocaml-nox (>= 4.02.3),
ocamlbuild | ocaml-nox (<< 4.05),
Build-Depends: debhelper-compat (= 12), dh-ocaml,
ocaml-nox (>= 4.04),
dune,
ocaml-findlib,
menhir (>= 20170509),
libmenhir-ocaml-dev (>= 20170509),
......
usr/lib/ocaml
usr/lib/morbig usr/lib/ocaml/
usr/lib/stublibs/* usr/lib/ocaml/stublibs/
usr/share/man/man1/morbig.1
man/morbig.1
usr/doc/morbig/README.md
Description: fix compilation on bytecode architectures
Author: Ralf Treinen <treinen@irif.fr>
Upstream-commit: 5cdaa44ae0e78a0a0e2ebb265642197b59ed7fbc
===================================================================
--- morbig.orig/src/Makefile 2018-11-29 16:50:17.131146432 +0100
+++ morbig/src/Makefile 2018-11-29 16:50:50.135087520 +0100
@@ -39,14 +39,18 @@
else \
echo "compilation to byte code" ;\
$(OCAMLBUILD) morbigDriver.byte morbig.cma libmorbigcstub.a \
- && cp `ocamlc -where`/libocamlrun.a _build/libocaml.a; \
+ && cp `ocamlc -where`/libcamlrun.a _build/libocaml.a; \
fi
echo "create _build/libmorbigc.a" > libmorbigc.mri
echo "addlib _build/libocaml.a" >> libmorbigc.mri
echo "addlib $(ODIR)/libcamlstr.a" >> libmorbigc.mri
- echo "addlib $(ODIR)/dynlink.a" >> libmorbigc.mri
+ if [ -e $(ODIR)/dynlink.a ]; then \
+ echo "addlib $(ODIR)/dynlink.a" >> libmorbigc.mri; \
+ fi
echo "addlib _build/libmorbigcstub.a" >> libmorbigc.mri
- echo "addmod _build/CAPI.native.o" >> libmorbigc.mri
+ if [ -e _build/CAPI.native.o ]; then \
+ echo "addmod _build/CAPI.native.o" >> libmorbigc.mri; \
+ fi
echo "save" >> libmorbigc.mri
echo "end" >> libmorbigc.mri
ar -M < libmorbigc.mri
Author: Ralf Treinen <treinen@debian.org>
Description: upstream forgot to increment the version
===================================================================
--- morbig.orig/VERSION 2018-11-29 21:34:35.251881173 +0100
+++ morbig/VERSION 2018-11-29 21:35:26.724145341 +0100
@@ -1 +1 @@
-0.9.0
\ No newline at end of file
+0.9.1
......@@ -8,10 +8,6 @@ INSTALLDIR=$(CURDIR)/debian/tmp
override_dh_auto_test:
# do nothing
override_dh_auto_build:
dh_auto_build
make doc
override_dh_auto_install:
PREFIX=$(INSTALLDIR)/usr make install
......@@ -21,3 +17,6 @@ override_dh_installexamples:
override_dh_missing:
dh_missing --fail-missing
override_dh_dwz:
dh_dwz --no-dwz-multifile
let script=Sys.argv.(1)
let cst=Morbig.API.parse_file script
let _ = Morbig.API.save_binary_cst (open_out (script^".bin")) cst
let cst=Morbig.parse_file script
let _ = Morbig.save_binary_cst (open_out (script^".bin")) cst
version=4
opts="mode=git, pgpmode=none" \
https://github.com/colis-anr/morbig.git \
refs/tags/v([\d.]+)
refs/tags/v?([\d.]+)
.keyword { font-weight : bold ; color : Red }
.keywordsign { color : #C04600 }
.comment { color : Green }
.constructor { color : Blue }
.type { color : #5C6585 }
.string { color : Maroon }
.warning { color : Red ; font-weight : bold }
.info { margin-left : 3em; margin-right: 3em }
.param_info { margin-top: 4px; margin-left : 3em; margin-right : 3em }
.code { color : #465F91 ; }
.typetable { border-style : hidden }
.paramstable { border-style : hidden ; padding: 5pt 5pt}
tr { background-color : White }
td.typefieldcomment { background-color : #FFFFFF ; font-size: smaller ;}
div.sig_block {margin-left: 2em}
*:target { background: yellow; }
body {font: 13px sans-serif; color: black; text-align: left; padding: 5px; margin: 0}
h1 { font-size : 20pt ; text-align: center; }
h2 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90BDFF ;padding: 2px; }
h3 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90DDFF ;padding: 2px; }
h4 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90EDFF ;padding: 2px; }
h5 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90FDFF ;padding: 2px; }
h6 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #90BDFF ; padding: 2px; }
div.h7 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #E0FFFF ; padding: 2px; }
div.h8 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #F0FFFF ; padding: 2px; }
div.h9 { font-size : 20pt ; border: 1px solid #000000; margin-top: 5px; margin-bottom: 2px;text-align: center; background-color: #FFFFFF ; padding: 2px; }
a {color: #416DFF; text-decoration: none}
a:hover {background-color: #ddd; text-decoration: underline}
pre { margin-bottom: 4px; font-family: monospace; }
pre.verbatim, pre.codepre { }
.indextable {border: 1px #ddd solid; border-collapse: collapse}
.indextable td, .indextable th {border: 1px #ddd solid; min-width: 80px}
.indextable td.module {background-color: #eee ; padding-left: 2px; padding-right: 2px}
.indextable td.module a {color: #4E6272; text-decoration: none; display: block; width: 100%}
.indextable td.module a:hover {text-decoration: underline; background-color: transparent}
.deprecated {color: #888; font-style: italic}
.indextable tr td div.info { margin-left: 2px; margin-right: 2px }
ul.indexlist { margin-left: 0; padding-left: 0;}
ul.indexlist li { list-style-type: none ; margin-left: 0; padding-left: 0; }
\ No newline at end of file