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 mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id ACC207FC19 for ; Tue, 10 Feb 2015 15:07:40 +0100 (CET) Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of jpathy@fssrv.net) identity=pra; client-ip=209.85.212.174; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="jpathy@fssrv.net"; x-sender="jpathy@fssrv.net"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of jpathy@fssrv.net designates 209.85.212.174 as permitted sender) identity=mailfrom; client-ip=209.85.212.174; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="jpathy@fssrv.net"; x-sender="jpathy@fssrv.net"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wi0-f174.google.com) identity=helo; client-ip=209.85.212.174; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="jpathy@fssrv.net"; x-sender="postmaster@mail-wi0-f174.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0B9AgCdD9pUlK7UVdFcg1haBIJ+sDuGGok8hXECgRcHQwEBAQEBARABAQEBBwsLCRIwhA0BAQQSEQQZAQEsCwEPCwsDCgICCR0CAiISAQUBChIGExIQh3cDEQ2sGj4xij5whGIBBYwpA4VqAQEBAQEBBAEBAQEBARYGCoEXjlYHgmiBQoRVCniEWIhHhV2BGDaNaoF0EiOBFYQxHTGCQgEBAQ X-IPAS-Result: A0B9AgCdD9pUlK7UVdFcg1haBIJ+sDuGGok8hXECgRcHQwEBAQEBARABAQEBBwsLCRIwhA0BAQQSEQQZAQEsCwEPCwsDCgICCR0CAiISAQUBChIGExIQh3cDEQ2sGj4xij5whGIBBYwpA4VqAQEBAQEBBAEBAQEBARYGCoEXjlYHgmiBQoRVCniEWIhHhV2BGDaNaoF0EiOBFYQxHTGCQgEBAQ X-IronPort-AV: E=Sophos;i="5.09,550,1418079600"; d="scan'208";a="99558054" Received: from mail-wi0-f174.google.com ([209.85.212.174]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/RC4-SHA; 10 Feb 2015 15:07:40 +0100 Received: by mail-wi0-f174.google.com with SMTP id em10so9302832wid.1 for ; Tue, 10 Feb 2015 06:07:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fssrv.net; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=6DfMT7FgUnUlzQJP7spldLauyQVOu6ijiTge8WOxzkE=; b=hHIGKd6VqyvCT8js7IWS3DluGgMcKHW368JCcjnMQRAPZ0BIpNzLFYBul7NSuCAC54 vvLv+7l5cId++7uqI/ZNOX8eUyWQyr5e39xnmf9mBGsujP40ba8eOdm0mA/hbnYGJoxQ yhBYtAWKGPFmhJbKbLhQHTnUnwNTFBfbD5/ww= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=6DfMT7FgUnUlzQJP7spldLauyQVOu6ijiTge8WOxzkE=; b=URH8VTq6F99Q+0CYFhGO+0EFzRDldcIn87tz80t/9Uh4WAgr2vIRpEE2Vi3kY3as1p hObr42bVMYBeeeDibKeQAwUdHDoTm+CIgZb1OKVWWxgTz6OpH5B5adx0lzFsx/pJTWpV qBLcuA3M/hKc4G/TpMwGYOEwN9H6dd15qAwIlh7ScsPvM0757QM2bdUSZ64pIp3F+RbX X1e+aqqY80UaZM0wA1na35bMj2i8VsA3QJwiP+ViUGq/DCmSdDeQZNG2JPexD7zfRwYX 1TReRo0ZEG1lI87n5Gavlal9NOxWMteQSbw/JjOARAkEEFgJEADN3klPkbOjrwi2bIW/ u7PQ== X-Gm-Message-State: ALoCoQmUK/5SKpXTpHlxLmTRIT/21zfqGQFPIaHwqksW699ryBNRjupdu+JgzfPl+wvJ8UQBHNXr MIME-Version: 1.0 X-Received: by 10.181.11.170 with SMTP id ej10mr36676925wid.46.1423577259769; Tue, 10 Feb 2015 06:07:39 -0800 (PST) Received: by 10.27.226.67 with HTTP; Tue, 10 Feb 2015 06:07:39 -0800 (PST) In-Reply-To: References: Date: Tue, 10 Feb 2015 06:07:39 -0800 Message-ID: From: Jiten Pathy To: Jeremie Dimino Cc: "caml-list@inria.fr" Content-Type: text/plain; charset=UTF-8 Subject: Re: [Caml-list] oasis help Thanks. ocamlbuild seems to have a nice plugin api. I ended up using tag_file "target.ml" [Printf.sprintf "open(%s)" module_name] On Tue, Feb 10, 2015 at 5:19 AM, Jeremie Dimino wrote: > You can access the oasis environment from myocamlbuild.ml and setup > compilation flags according to it. See for instance: > > https://github.com/janestreet/bin_prot/blob/master/myocamlbuild.ml > > So you could have this in your _oasis: > > Flag use_b > Default: false > > And in your myocamlbuild.ml: > > ---------------------------------- > (* OASIS_START *) > (* OASIS_STOP *) > > let dispatch = function > | After_rules -> > let env = BaseEnvLight.load () in > let module_name = if BaseEnvLight.var_get "use_b" = "true" then "B" else > "A" in > flag ["ocaml"; "compile"] (S ["-open"; module_name]) > | _ -> > () > > let () = Ocamlbuild_plugin.dispatch (fun hook -> dispatch hook; > dispatch_default hook) > ---------------------------------- > > > On Tue, Feb 10, 2015 at 12:58 PM, Jiten Pathy wrote: >> >> I have two modules defining the same function. >> How would i conditionally open modules during compilation using oasis >> /ocamlbuild?(i.e pass -open A or -open B depending on some flag from >> oasis?) >> >> -- >> 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 > > > > > -- > Jeremie