caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Sam Steingold <sds@gnu.org>
To: caml-list@inria.fr
Subject: otags and OMakefile
Date: Thu, 10 Aug 2006 12:13:53 -0400	[thread overview]
Message-ID: <ebfm03$gjh$1@sea.gmane.org> (raw)

what is the correct entry for TAGS in OMakefile?

I have this in the top-level OMakefile:
------------------------------------------------------------------
TAGS:
	otags -r $(SRC_DIRS)
------------------------------------------------------------------
(where SRC_DIRS are also the dependencies of .SUBDIRS).
this is deficient for 2 reasons:

1. somehow otags tries to read non-ml files (despite "otags -h" claiming 
that suffixes are [.mli; .ml]) and fails on especially large ones:
------------------------------------------------------------------
otags: Unix error
   Syscall: stat
   Arg:     ./run/scan/top-20060612.log
   Error:   Value too large for defined data type
------------------------------------------------------------------

2. otags does not respect the pre-processors used for some files, 
resulting in many errors:
------------------------------------------------------------------
File "", line 15, characters 0-4:
Parse error: [implem] expected after [str_item_semi] (in [implem])
Uncaught exception: Stream.Error("[implem] expected after 
[str_item_semi] (in [implem])")
File "", line 12, characters 0-4:
Parse error: [implem] expected after [str_item_semi] (in [implem])
Uncaught exception: Stream.Error("[implem] expected after 
[str_item_semi] (in [implem])")
File "", line 12, characters 0-4:
Parse error: [implem] expected after [str_item_semi] (in [implem])
Uncaught exception: Stream.Error("[implem] expected after 
[str_item_semi] (in [implem])")
File "", line 10, characters 0-4:
Parse error: [implem] expected after [str_item_semi] (in [implem])
Uncaught exception: Stream.Error("[implem] expected after 
[str_item_semi] (in [implem])")
File "", line 11, characters 39-43:
Parse error: [implem] expected after [str_item_semi] (in [implem])
Uncaught exception: Stream.Error("[implem] expected after 
[str_item_semi] (in [implem])")
------------------------------------------------------------------
despite this, a valid TAGS file is created.
the preprocessing is specified in OMakeroot:
------------------------------------------------------------------
# Preprocess OCaml-files with a given OCaml-preprocessor
OCamlMakePPDeps(pps, names) =
   pp_cmos = $(addsuffix .cmo, $(pps))
   deps =
   foreach(pp_cmo, $(pp_cmos))
     deps += $(OCamlAddLibDir $(pp_cmos))
     export deps
   pp_cmd = camlp4o $(PREFIXED_OCAMLINCLUDES) $(pp_cmos)
   OCAMLPPFLAGS = -pp "$(pp_cmd)"
   OCAMLDEPFLAGS = $(OCAMLPPFLAGS)
   foreach(name, $(names))
     tgts = $(addsuffixes .cmi .cmo .cmx .o, $(name))
     scan_deps = scan-ocaml-$(name).ml scan-ocaml-$(name).mli
     Capture_deps(__ENV, \
       OCAMLPPFLAGS OCAMLDEPFLAGS, $(tgts), $(deps), $(scan_deps))
     tgts = $(addsuffix .auto.mli, $(name))
     Capture_deps(__ENV, \
       OCAMLPPFLAGS OCAMLDEPFLAGS, $(tgts), $(deps), $(scan_deps))
     export __ENV
   export __ENV
------------------------------------------------------------------
and in OMakefile:
------------------------------------------------------------------
OCamlMakePPDeps(pa_sexp_conv, foo bar baz)
------------------------------------------------------------------

so, how do I make ocaml TAGS?


             reply	other threads:[~2006-08-10 16:30 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-10 16:13 Sam Steingold [this message]
2006-08-11  5:56 ` [Caml-list] " Nathaniel Gray
2006-08-11 13:53 ` Hendrik Tews
2006-08-16 15:51   ` Sam Steingold

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='ebfm03$gjh$1@sea.gmane.org' \
    --to=sds@gnu.org \
    --cc=caml-list@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;
as well as URLs for NNTP newsgroup(s).