From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 2D2A77F6CC for ; Fri, 6 Feb 2015 18:06:02 +0100 (CET) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of gabriel.scherer@gmail.com) identity=pra; client-ip=209.85.213.169; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="gabriel.scherer@gmail.com"; x-sender="gabriel.scherer@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of gabriel.scherer@gmail.com designates 209.85.213.169 as permitted sender) identity=mailfrom; client-ip=209.85.213.169; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="gabriel.scherer@gmail.com"; x-sender="gabriel.scherer@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-ig0-f169.google.com) identity=helo; client-ip=209.85.213.169; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="gabriel.scherer@gmail.com"; x-sender="postmaster@mail-ig0-f169.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0BAAgBH9NRUlKnVVdFag1daBIJ9rmCBM49OhXECgRIHQwEBAQEBEQEBAQEHCwsJEjCEDQEBBBIRHQEbEgsBAwwGBQsNAgIJHQICIgERAQUBChIGExIJB4d2AQMRDbMuPjGLLoFrgneLBwoZJwMKVIUFAQEBAQEFAQEBAQEXAQUOgROOVweCaIFBBYRQCo4QhVyBTY9VEiOBDAmEET0xgkIBAQE X-IPAS-Result: A0BAAgBH9NRUlKnVVdFag1daBIJ9rmCBM49OhXECgRIHQwEBAQEBEQEBAQEHCwsJEjCEDQEBBBIRHQEbEgsBAwwGBQsNAgIJHQICIgERAQUBChIGExIJB4d2AQMRDbMuPjGLLoFrgneLBwoZJwMKVIUFAQEBAQEFAQEBAQEXAQUOgROOVweCaIFBBYRQCo4QhVyBTY9VEiOBDAmEET0xgkIBAQE X-IronPort-AV: E=Sophos;i="5.09,530,1418079600"; d="scan'208";a="120621672" Received: from mail-ig0-f169.google.com ([209.85.213.169]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 06 Feb 2015 18:06:01 +0100 Received: by mail-ig0-f169.google.com with SMTP id hl2so3973303igb.0 for ; Fri, 06 Feb 2015 09:06:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=ZKEEZsIifqS4wXegvNijfCUob1qxs8K3wsHQbiduSTE=; b=Q1nGo0m0loevPjGVow0uYMCb0r13exIJ8GUnAI30lnDltHfORSq4K3LuXCRXkqO/c1 4o/RP9778dU92MNSUFi+5QaTnQDKr3nurKOn5wWW/riS9v5VhEJct713OhiVkhIh+pmS 7oQSfOnJzB8iGdC+bYqXCvQc+2VfiWFPhJ5WCA3Spd2O5LPMDj2D2IazCousQe4YcLvS uYflqTEEyyxQx7eaFzv+iEZ4WCjqztmTAd6uq4GyogQLH7jh4FJxOJx0UjnW2sPGS+nU Vm/gmOxIwDmDHiOg1MqmWX16V1BgsKAdcegHtByEgt2iTtrOagdDf4XPYHQIMWsZFx9a 8JHg== X-Received: by 10.43.34.137 with SMTP id ss9mr13777097icb.11.1423242360367; Fri, 06 Feb 2015 09:06:00 -0800 (PST) MIME-Version: 1.0 Received: by 10.36.13.195 with HTTP; Fri, 6 Feb 2015 09:05:20 -0800 (PST) In-Reply-To: <5f5c603d077133e065b82db1eed43935@nleyten.com> References: <7bca26c097b73f653bd8bbfa1a07eaa8@nleyten.com> <20150123164111.GA16664@yquem.inria.fr> <0fd907ee06bedeff816160b9e7b9c027@nleyten.com> <6829d3482c94fbe2e22dd1574618e86e@nleyten.com> <5c76729753733a2ccbf1cad96879c312@nleyten.com> <1ee7eec964558b9bcb4f0d5650449440@nleyten.com> <5f5c603d077133e065b82db1eed43935@nleyten.com> From: Gabriel Scherer Date: Fri, 6 Feb 2015 18:05:20 +0100 Message-ID: To: Dario Teixeira Cc: caml users Content-Type: text/plain; charset=UTF-8 Subject: Re: [Caml-list] Forcing OCamlbuild to compile a file before another I don't expect touching OCamldep to be very difficult. I'd be glad to offer the time to provide a patch for the -paths option; ocamldep is a small codebase and I don't expect much reluctance from the maintainers to add a new feature (the code should be simple, and not affect existing behaviors). That may require that you wait for the next release in a few months; if you really needed to, you can probably hack a simple external tool with the same feature today using the compiler-libs. On Fri, Feb 6, 2015 at 6:01 PM, Dario Teixeira wrote: > Hi, > > Still on the subject of getting module aliases and -no-alias-deps to work > with OASIS and OCamlbuild: I've created a repo on Github for Libfoobar [1], > the dummy example I've been using to test and play with this problem. > > As you can see, I've opted to postprocess the output of OCamldep outside > the OCamlbuild plugin. Essentially, I set the Options.ocamldep to call > myocamldep.ml, an OCaml script that serves as frontend to OCamldep and > does the actual postprocessing. > > Note that there is project-specific knowledge in myocamldep.ml: there is a > dictionary 'dict' mapping between the module alias files (foo.ml and bar.ml) > and the aliases declared in each one. This is the same information that > should be contained in an mlalias file. In addition, the script makes some > assumptions regarding the naming of modules. Though obviously this solution > is far from optimal, this being just a stop-gap measure it will do for now. > > I've come across a snag which puts some doubt on the hope that this could > all be implementable without touching OCamldep itself. Consider the Bar_a > module. It should depend on Bar, Foo, and Foo_a. However, OCamldep reports > its dependencies as only Bar and Foo. The missing dependency on Foo.A is > not > considered, which of course makes sense, but it's not what I was hoping for! > > Kind regards, > Dario Teixeira > > [1] https://github.com/darioteixeira/libfoobar > > > > -- > Caml-list mailing list. Subscription management and archives: > https://sympa.inria.fr/sympa/arc/caml-list > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs