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=2.2 required=5.0 tests=AWL,DNS_FROM_RFC_POST, SPF_NEUTRAL autolearn=disabled version=3.1.3 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id E6156BB84 for ; Thu, 12 Feb 2009 18:32:14 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AoQCAFfsk0nRVdsVkGdsb2JhbACUEj8BAQEBCQkMBxEDrncIgQCPOwEDAQOEFAaCN4Ep X-IronPort-AV: E=Sophos;i="4.38,198,1233529200"; d="scan'208";a="21023564" Received: from mail-ew0-f21.google.com ([209.85.219.21]) by mail2-smtp-roc.national.inria.fr with ESMTP; 12 Feb 2009 18:32:14 +0100 Received: by ewy14 with SMTP id 14so1114722ewy.9 for ; Thu, 12 Feb 2009 09:32:14 -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:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=CUpDg9GtMnL0zq5tVOg+J/lFLHuwMe+ZRqq3DcNOcXU=; b=idSfwdBKUhdXv+N9zXJb9tfRUfHcvGQeT3Ln2e5Ydpu4sX/V+j+L/5PdVIaBomMSWJ NhXQDKu/YyHs4y1Je3+O0NFUJxpmKhGHk530tmkNrdSL1DngADlOBx2MnjT672dzb3W6 +jbb4IhUs7iMVLvycuEKOvsBufBlAW+jCAy1w= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:reply-to:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; b=NDtY42zmHhOT1/zjK6Bdny8y3xKIPF5M1S4cFs+Zi64Q/qfCHU12eGWkDOFoj0w7Zc FZd0DJquhlS3k6e7PHJrnFID4G3hH8QYT6t6f3T/hqkdiw/uWDWs6q9V/0tZr+b4NnqE EayZH/g53pm+nloLmvpGQCS7hqg1LvTtlj8dE= Received: by 10.210.60.3 with SMTP id i3mr860340eba.22.1234459934358; Thu, 12 Feb 2009 09:32:14 -0800 (PST) Received: from ?192.168.0.102? (papillon.metalscan.fr [212.73.210.234]) by mx.google.com with ESMTPS id 28sm97416eye.59.2009.02.12.09.32.13 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 12 Feb 2009 09:32:13 -0800 (PST) Message-ID: <49945D1B.1060507@gmail.com> Date: Thu, 12 Feb 2009 18:32:11 +0100 From: Matthieu Dubuget Reply-To: matthieu.dubuget@gmail.com User-Agent: Thunderbird 2.0.0.19 (X11/20090105) MIME-Version: 1.0 To: Nicolas Pouillard , caml-list@inria.fr Subject: Re: [Caml-list] Ocamlbuild question References: <499350A3.2040203@gmail.com> <1234454366-sup-8627@ausone.inria.fr> In-Reply-To: <1234454366-sup-8627@ausone.inria.fr> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable 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 Nicolas Pouillard a =C3=A9crit : > Excerpts from Matthieu Dubuget's message of Wed Feb 11 23:26:43 +0100 2= 009: > =20 >> Hello, >> >> I'm trying to manage "internal" camlfind packages. I use "internal" wi= th >> 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 i= f >> 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.nat= ive >> >> 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?" >> =20 > > Hello, > > You should try to tag your .oocamlfind file with the dont_link_with tag= =2E > > (this point certainly needs an entry in the FAQ...) > > Best regards, > > =20 It seems not to work =E2=80=93 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, quie= t, >> 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 Thanks Salutations Matt