From: Magnus Therning <magnus@therning.org>
To: OCaml List <caml-list@yquem.inria.fr>
Subject: [Caml-list] oasis building out-of-src and camlp4
Date: Tue, 22 Sep 2015 23:12:37 +0200 [thread overview]
Message-ID: <20150922211237.GA22711@tatooine> (raw)
[-- Attachment #1: Type: text/plain, Size: 2622 bytes --]
I've been trying to get oasis to build completely out-of-source.
Basically I want to use it as an ExternalProject in a C/C++ project that
uses CMake.
If I have the following files
~~~ oasis-simple/_oasis
OASISFormat : 0.4
Name : oasis-simple
Version : 0.0
Synopsis : A simple test of building oasis
Authors : Magnus Therning
License : BSD-3-clause
Executable "oasis-simple"
Path : src
MainIs : main.ml
BuildTools : ocamlbuild
BuildDepends : oasis
~~~
~~~ oasis-simple/src/main.ml
let () = print_string "Hello, World!"
~~~
then I can build out-of-source using the following steps:
% mkdir ../oasis-simple-build; cd ../oasis-simple-build
% oasis setup -oasis ../oasis-simple/_oasis
% ocaml setup.ml -C $PWD/../oasis-simple -configure
% ocaml setup.ml -C $PWD/../oasis-simple -build -build-dir $PWD/build
If I make it a little more complicated, by adding a syntax extension:
~~~ oasis-camlp4/_oasis
OASISFormat : 0.4
Name : oasis-camlp4
Version : 0.0
Synopsis : A slightly more complicated test of building oasis
Authors : Magnus Therning
License : BSD-3-clause
Executable "oasis-camlp4"
Path : src
MainIs : main.ml
BuildTools : ocamlbuild
BuildDepends : oasis, core, sexplib.syntax, threads
~~~
~~~ oasis-camlp4/src/main.ml
open Core.Std
type colour = Red | Green | Blue
with sexp
let () = printf "Hello, World! (%s)\n" (sexp_of_colour Green |> Sexp.to_string)
~~~
Then I follow the same formula as above:
% mkdir ../oasis-camlp4-build; cd ../oasis-camlp4-build
% oasis setup -oasis ../oasis-camlp4/_oasis
% ocaml setup.ml -C $PWD/../oasis-camlp4 -configure
% ocaml setup.ml -C $PWD/../oasis-camlp4 -build -build-dir $PWD/build
Which results in an error:
~~~
+ /usr/bin/ocamldep.opt -modules src/main.ml > src/main.ml.depends
File "src/main.ml", line 12, characters 4-8:
Error: Syntax error
Command exited with code 2.
Compilation unsuccessful after building 1 target (0 cached) in 00:00:00.
E: Failure("Command ''/usr/bin/ocamlbuild' src/main.byte -tag debug -build-dir /home/magnus/devo/tmp/oasis-camlp4-build/build' terminated with error code 10")
~~~
What am I missing here, how do I get the second example to build?
/M
--
Magnus Therning OpenPGP: 0xAB4DFBA4
email: magnus@therning.org jabber: magnus@therning.org
twitter: magthe http://therning.org/magnus
There does not now, nor will there ever, exist a programming language
in which it is the least bit hard to write bad programs.
-- Flon's Axiom
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 163 bytes --]
next reply other threads:[~2015-09-22 21:12 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-22 21:12 Magnus Therning [this message]
2015-09-23 7:48 ` Anil Madhavapeddy
2015-09-23 8:19 ` Magnus Therning
2015-09-23 8:38 ` Gabriel Scherer
2015-09-23 8:54 ` Magnus Therning
2015-09-23 9:19 ` Gabriel Scherer
2015-09-23 9:44 ` Magnus Therning
2015-09-29 22:59 ` Sylvain Le Gall
2015-09-30 11:49 ` Magnus Therning
2015-10-01 6:46 ` Sylvain Le Gall
2015-10-01 7:23 ` Magnus Therning
2015-10-02 9:32 ` Sylvain Le Gall
2015-10-02 9:38 ` Magnus Therning
2015-09-23 7:56 ` Anil Madhavapeddy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150922211237.GA22711@tatooine \
--to=magnus@therning.org \
--cc=caml-list@yquem.inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox