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 mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by sympa.inria.fr (Postfix) with ESMTPS id 9F6417EE09 for ; Fri, 26 Oct 2012 23:35:03 +0200 (CEST) Received-SPF: None (mail1-smtp-roc.national.inria.fr: no sender authenticity information available from domain of anil@recoil.org) identity=pra; client-ip=89.16.177.154; receiver=mail1-smtp-roc.national.inria.fr; envelope-from="anil@recoil.org"; x-sender="anil@recoil.org"; x-conformance=sidf_compatible Received-SPF: None (mail1-smtp-roc.national.inria.fr: no sender authenticity information available from domain of anil@recoil.org) identity=mailfrom; client-ip=89.16.177.154; receiver=mail1-smtp-roc.national.inria.fr; envelope-from="anil@recoil.org"; x-sender="anil@recoil.org"; x-conformance=sidf_compatible Received-SPF: None (mail1-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@dark.recoil.org) identity=helo; client-ip=89.16.177.154; receiver=mail1-smtp-roc.national.inria.fr; envelope-from="anil@recoil.org"; x-sender="postmaster@dark.recoil.org"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Am8CAHkAi1BZELGagWdsb2JhbABEsD6SOwEBFiYngh4BAQV5EAsYLkUSBhMbh1kDDwS8UYsKZwWGCGEDiFmLSYFRiy6IHw X-IronPort-AV: E=Sophos;i="4.80,656,1344204000"; d="scan'208";a="179135274" Received: from recoil.dh.bytemark.co.uk (HELO dark.recoil.org) ([89.16.177.154]) by mail1-smtp-roc.national.inria.fr with SMTP; 26 Oct 2012 23:35:03 +0200 Received: (qmail 21646 invoked by uid 634); 26 Oct 2012 21:35:03 -0000 X-Spam-Level: * X-Spam-Check-By: dark.recoil.org Received: from visnet-57.csl.sri.com (HELO visnet-57.csl.sri.com) (130.107.98.57) (smtp-auth username remote@recoil.org, mechanism cram-md5) by dark.recoil.org (qpsmtpd/0.84) with ESMTPA; Fri, 26 Oct 2012 22:35:02 +0100 Content-Type: text/plain; charset=iso-8859-1 Mime-Version: 1.0 (Mac OS X Mail 6.1 \(1498\)) From: Anil Madhavapeddy In-Reply-To: <1351274219.20181.YahooMailNeo@web111501.mail.gq1.yahoo.com> Date: Fri, 26 Oct 2012 14:34:59 -0700 Cc: OCaml Mailing List , pgocaml-general Content-Transfer-Encoding: quoted-printable Message-Id: <954FD2C2-7767-4A7B-9543-56C85F031CD3@recoil.org> References: <1351173429.15638.YahooMailNeo@web111503.mail.gq1.yahoo.com> <58E915E9-0BD4-4F0B-9581-B446C93A4EB8@recoil.org> <1351274219.20181.YahooMailNeo@web111501.mail.gq1.yahoo.com> To: Dario Teixeira X-Mailer: Apple Mail (2.1498) X-Virus-Checked: Checked by ClamAV on dark.recoil.org Subject: Re: [Caml-list] Conditional BuildDepends in OASIS On 26 Oct 2012, at 10:56, Dario Teixeira wrote: >=20 > That would be a satisfactory solution. I did run into a different proble= m, though. > I told OASIS that "pgocaml.batteries" and "pgocaml.extlib" should have "p= gocaml" > as their findlib parent (fragment below). Unfortunately, OASIS complains= that > library "pgocaml" does not exist. How would I tell OASIS that "pgocaml" = is a > dummy library? >=20 > Flag "batteries" > Description: Use Batteries > Default: true >=20 > Library "pgocaml_batteries" > Build$: flag(batteries) > Install$: flag(batteries) > Path: src > Modules: PGOCaml > BuildDepends: calendar, batteries > ByteOpt+: -ppopt -DUSE_BATTERIES > NativeOpt+: -ppopt -DUSE_BATTERIES > FindlibParent: pgocaml > Findlibname: batteries You could just put a dummy library in place (which shouldn't be used by any= thing since you don't have to mark a dependency of a findlib child on the parent library, as far as I understand it. However, is there a common subset of your code that is portable without eit= her Batteries or Extlib? Factoring that out into a core library that both of t= he other ones depend on would make future ports (e.g., to Core or Lwt) easier. Of course, this is easier said than done when dealing with replacement stan= dard libraries which redefine very common library functions! It's a lot easier = when factoring over I/O libraries like Lwt vs Async where a straightforward func= tor abstraction exists. -anil