From murdoch at stats.uwo.ca  Mon Sep 15 20:43:46 2008
From: murdoch at stats.uwo.ca (Duncan Murdoch)
Date: Mon, 15 Sep 2008 14:43:46 -0400
Subject: [Rd] Cross-platform function availability
In-Reply-To: <f8e6ff050809151043u9618cc1y227888d7bd6ebf46@mail.gmail.com>
References: <f8e6ff050809150842n27f724bdl35d637d02d5dbaf0@mail.gmail.com>	
	<48CE9619.3080703@stats.uwo.ca>
	<f8e6ff050809151043u9618cc1y227888d7bd6ebf46@mail.gmail.com>
Message-ID: <48CEACE2.9090306@stats.uwo.ca>

On 9/15/2008 1:43 PM, hadley wickham wrote:
> On Mon, Sep 15, 2008 at 12:06 PM, Duncan Murdoch <murdoch at stats.uwo.ca> wrote:
>> On 9/15/2008 11:42 AM, hadley wickham wrote:
>>>
>>> Hi all,
>>>
>>> Is there any way to determine which functions are available on which
>>> platforms?  For example, winProgr essBar (and related functions) are
>>> only available on Windows, but what about tkProgressBar and
>>> txtProgressBar?  Is there any way to figure out which functions are
>>> only available on certain platforms, without installing R on that
>>> platform and checking?
>>
>> Generally I think the only reliable way is to look at the source. Things in
>> "windows" subdirs, or marked off with "#ifdef windows" (in Rd) or "#ifdef
>> Win32" (in C) are for windows only.  Probably our documentation should point
>> out when something is platform-specific, and frequently it does, but I don't
>> think it is completely consistent in this.
> 
> To me it seems like it would be easier to include the all functions
> all on platforms, and then return an error on platforms where they
> aren't supported.  The problem I'm now having is that I'm now getting
> an warning when building my package because it can't link to the
> documentation for winProgressBar.  Should I just ignore that warning?

<bromide> It's better not to ignore warnings. </bromide>

I'd suggest wrapping the link in "#ifdef windows" (assuming it's in an 
Rd file).

Duncan Murdoch



[Rd] Cross-platform function availability
Duncan Murdoch