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=1.9 required=5.0 tests=AWL,DNS_FROM_RFC_POST, SPF_NEUTRAL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id CBD0FBB84 for ; Thu, 12 Feb 2009 19:33:43 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AscFAKT6k0nRVdqocGdsb2JhbACUDT8BDAoLBw+vDAiBAI82AQMBA4QVBoI3gSk X-IronPort-AV: E=Sophos;i="4.38,198,1233529200"; d="scan'208";a="35121473" Received: from mail-bw0-f168.google.com ([209.85.218.168]) by mail4-smtp-sop.national.inria.fr with ESMTP; 12 Feb 2009 19:33:43 +0100 Received: by bwz12 with SMTP id 12so2162742bwz.9 for ; Thu, 12 Feb 2009 10:33:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:reply-to :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:openpgp:content-type:content-transfer-encoding; bh=y6h7HoRUP6V4ZcivpIzPEMXHsM6NtjCB0RDBviUWFQI=; b=nTYRY+En4FGgL3i3C2rm6cUCJMy75kZR5p09iegLEh5IJBe2dUNCcYvfyWEMVMAfEw CBQ6YVmyWU6EXgkr1uwZQqL3GYTKzUjgL+qLVOX9wnoe49hjbP2pgeiWhv6wAd6Oj3AA OciOKFBq3J/8+WWoS8+lgFT9JDvkckz/XfEB0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:reply-to:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:openpgp:content-type :content-transfer-encoding; b=DVkjC1/2A4CFf7Rrw+0pyYejVFL4y6ExsmlVN+uR+qt8zsR1Z2CaF6Et6OjqdmeYRF CvL8syE5MuzLeQJRU4ibrORq62sZMkaMKAdH+ugFN2MmzxXWtilj5aO7XL8iG6ERyw6O zBiBXD+5jtXdhPudRizd+Ka7+CPjtLP6BDpM0= Received: by 10.103.213.19 with SMTP id p19mr550518muq.9.1234463623034; Thu, 12 Feb 2009 10:33:43 -0800 (PST) Received: from ?192.168.1.10? (8.75.197-77.rev.gaoland.net [77.197.75.8]) by mx.google.com with ESMTPS id y6sm551042mug.57.2009.02.12.10.33.41 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 12 Feb 2009 10:33:42 -0800 (PST) Message-ID: <49946B84.1010607@gmail.com> Date: Thu, 12 Feb 2009 19:33:40 +0100 From: Matthieu Dubuget Reply-To: matthieu.dubuget@gmail.com User-Agent: Thunderbird 2.0.0.19 (X11/20090105) MIME-Version: 1.0 To: caml-list@inria.fr Cc: Nicolas Pouillard Subject: Re: [Caml-list] Ocamlbuild question References: <499350A3.2040203@gmail.com> <1234454366-sup-8627@ausone.inria.fr> <49945D1B.1060507@gmail.com> In-Reply-To: <49945D1B.1060507@gmail.com> X-Enigmail-Version: 0.95.0 OpenPGP: id=F60AB8F5 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam: no; 0.00; matthieu:01 dubuget:01 matthieu:01 dubuget:01 findlib:01 findlib:01 cmx:01 dependencies:01 ocamlfind:01 ocamlopt:01 -linkpkg:01 -package:01 -package:01 cmx:01 dependencies:01 Matthieu Dubuget a écrit : > Nicolas Pouillard a écrit : >> Excerpts from Matthieu Dubuget's message of Wed Feb 11 23:26:43 +0100 2009: >> >>> Hello, >>> >>> I'm trying to manage "internal" camlfind packages. I use "internal" with >>> the same meanning than in ocamlbuild documentation when speaking about >>> libraries. >>> >>> I want my camlfind packages to be re-installed if one of their >>> dependency was modified. For this, I wrote a simple rule, based on >>> %.iocamlfind files containing the files to install into findlib >>> directory. This rule also produces a stamp file : %.oocamlfind. >>> >>> I also want my camlfind package to be installed if they are needed by >>> another rule. For this, I do: dep ["pkg_"^nm][nm ^ ".oocamlfind"] for >>> each internal package. >>> >>> It seems to work ok: Suppose that package toto requires package tutu. >>> When I ask ocamlbuild toto.oocamlfind, the packages tutu is re-built if >>> needed. And if I modify one file of tutu, and then ask ocamlbuild to >>> generate toto.oocamlbuild, tutu is re-built and installed into findlib >>> directories. fine. >>> >>> BUT, when I'm producing a %.native from %.cmx, my dependencies (ie >>> %.oocamlfind files) are inserted in the command line... >>> >>> Here is an example: >>> ocamlfind ocamlopt -linkpkg -package mtsvrac -package log >>> logtest/test.cmx mtsvrac.oocamlfind log.oocamlfind -o logtest/test.native >>> >>> mtsvrac.oocamlfind and log.oocamlfind where added to the dependencies of >>> logtest/test.native. >>> >>> What would be the right solution to avoid this problem? >>> Is there something like a "dependency that should not be linked?" >>> >> Hello, >> >> You should try to tag your .oocamlfind file with the dont_link_with tag. >> >> (this point certainly needs an entry in the FAQ...) >> >> Best regards, >> >> > > It seems not to work – at least with ocaml 3.10.2 from godi. > > I have: > >>> ocamlbuild -show-tags mtsvrac.oocamlfind >>> Tags for "mtsvrac.oocamlfind": >>> {. dont_link_with, extension:oocamlfind, file:mtsvrac.oocamlfind, quiet, >>> traverse .} >>> Finished, 0 targets (0 cached) in 00:00:00. > > and still > >>> ocamlopt.opt: don't know what to do with mtsvrac.oocamlfind. > > I will check at home with 3.11 Idem > > Thanks > > Salutations > > Matt > > >