From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.3 required=5.0 tests=AWL,HTML_MESSAGE autolearn=disabled version=3.1.3 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by yquem.inria.fr (Postfix) with ESMTP id 55439BB84 for ; Mon, 6 Oct 2008 19:49:19 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AuwEAGvs6UjAXQIniGdsb2JhbACCQjCJNIZ9PgEBARUioWVshXMBAg X-IronPort-AV: E=Sophos;i="4.33,368,1220220000"; d="scan'208";a="18317298" Received: from concorde.inria.fr ([192.93.2.39]) by mail1-smtp-roc.national.inria.fr with ESMTP; 06 Oct 2008 19:49:19 +0200 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id m96HnISL008812 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Mon, 6 Oct 2008 19:49:19 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApYFALfr6UjRVdkVeGdsb2JhbACCQjCJNIZ9PgEVIqFibIVzAQI X-IronPort-AV: E=Sophos;i="4.33,368,1220220000"; d="scan'208";a="15718746" Received: from mail-gx0-f21.google.com ([209.85.217.21]) by mail2-smtp-roc.national.inria.fr with ESMTP; 06 Oct 2008 19:49:18 +0200 Received: by gxk14 with SMTP id 14so7362843gxk.9 for ; Mon, 06 Oct 2008 10:49:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:mime-version:content-type; bh=Z3z1u8zfWktl2jTEVYrgzWVKysHrFzcop9zKjxkyUHI=; b=nssyIvVqXF1WAGL954cc0AuiZFsBek12xY8VdVYHW5CcImuqVH8+it1hdM9iv/0Mxw q4cZOWt//DtNdon5NU3uUbi9ymVyjIaOFyKw5jC+3TcUS379h1xwUhRbnsyEb+3WKB+K knqX/O4gBeLHCt6SHDP1+sUheg//KSI3ILG3c= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type; b=XyNPJiZGd5Mdm6fRFYwDXbnbbZlYthc6CbXNHcQ2KR1u1lXNMjbEHoT7NLZgIKvDDk uSUEgvnN6Ia/yXjXWGEanKiEk3hfZ5THuELJYukHPbyonLJ7rBtMpY6ULvaLDe4GDMAq wcqaH+zp0mMgBCp1lvPUWjO2B7eNsUfe5t/jg= Received: by 10.142.218.4 with SMTP id q4mr2120708wfg.262.1223315356039; Mon, 06 Oct 2008 10:49:16 -0700 (PDT) Received: by 10.142.90.10 with HTTP; Mon, 6 Oct 2008 10:49:16 -0700 (PDT) Message-ID: Date: Mon, 6 Oct 2008 13:49:16 -0400 From: "Ashish Agarwal" To: "Caml List" Subject: ocamlbuild not including dependencies with mlpack MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_62908_9798535.1223315356050" X-Miltered: at concorde with ID 48EA4F9E.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; dependencies:01 mylib:01 mylib:01 ocamlfind:01 ocamlc:01 -linkpkg:01 cmo:01 cmo:01 ocamlfind:01 ocamlc:01 -linkpkg:01 1975:98 cma:01 cma:01 define:02 ------=_Part_62908_9798535.1223315356050 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Ocamlbuild seems to not include dependent modules when building a library, when that library is defined by an mlpack file. However, it works fine if I manually pack, i.e. define an ml file instead of an mlpack file. Here's a summary: --- mylib.mlpack --- A B $ ocamlbuild mylib.cma $ cat _build/_log #just showing relevant line ocamlfind ocamlc -a -linkpkg mylib.cmo -o mylib.cma I was expecting a.cmo and b.cmo to get included in the library but they are not. Now if a replace the mylib.mlpack with mylib.ml as follows, I get what I want. --- mylib.ml --- module A = A module B = B $ ocamlbuild mylib.cma $ cat _build/_log #just showing relevant line ocamlfind ocamlc -a -linkpkg a.cmo b.cmo mylib.cmo -o mylib.cma How can I get the latter behavior with mlpack? Thank you. ------=_Part_62908_9798535.1223315356050 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline
Ocamlbuild seems to not include dependent modules when building a library, when that library is defined by an mlpack file. However, it works fine if I manually pack, i.e. define an ml file instead of an mlpack file. Here's a summary:

--- mylib.mlpack ---
A
B

$ ocamlbuild mylib.cma
$ cat _build/_log  #just showing relevant line
ocamlfind ocamlc -a -linkpkg mylib.cmo -o mylib.cma

I was expecting a.cmo and b.cmo to get included in the library but they are not.
Now if a replace the mylib.mlpack with mylib.ml as follows, I get what I want.

--- mylib.ml ---
module A = A
module B = B

$ ocamlbuild mylib.cma
$ cat _build/_log  #just showing relevant line
ocamlfind ocamlc -a -linkpkg a.cmo b.cmo mylib.cmo -o mylib.cma 

How can I get the latter behavior with mlpack? Thank you.


------=_Part_62908_9798535.1223315356050--