[Mono-dev] .NET Reference source terminology

Robert Jordan robertj at gmx.net
Sun Nov 23 18:59:34 UTC 2014


On 23.11.2014 12:57, Martin Thwaites wrote:
> Hi All,
>
> Has anyone got any idea what FEATURE_PAL is?
>
> It's a define, and seems to have a lot of comments around IIS, and that if
> it's Enabled, then don't do IIS stuff.  Seems like something that we could
> just add in our stuff to exclude alot of windows specific stuff without
> having to add our own defines?
>
> e.g.
> https://github.com/Microsoft/referencesource/blob/fa352bbcac7dd189f66546297afaffc98f6a7d15/System.Web/HttpRuntime.cs#L139
>
> The best explanation I've seen says it's the "Platform Adaptation Layer",
> and is to do with compiling it for other architectures such as ARM.  Seems
> like something that we would want to enable?


There is a "ROTORTODO" comment inside a FEATURE_PAL block:

https://github.com/Microsoft/referencesource/blob/fa352bbcac7dd189f66546297afaffc98f6a7d15/System.Web/HttpRuntime.cs#L304

Rotor: 
http://en.wikipedia.org/wiki/Shared_Source_Common_Language_Infrastructure

PAL: Platform Abstraction Layer.

So it probably makes sense to enable (or to look closely at)
FEATURE_PAL when compiling for Mono.

Robert




More information about the Mono-devel-list mailing list