[Mono-dev] corlib version and #if symbol questions

Kornél Pál kornelpal at hotmail.com
Wed Aug 17 10:48:38 EDT 2005


Hi,

I am working on a patch that centralizes assembly references and version
numbers to a single file in mcs/build/common.

I have seen #elif NET_2_0 || BOOTSTRAP_NET_2_0 in AssemblyInfo.cs of corlib.

Does this mean that there are cases when BOOTSTRAP_NET_2_0 is defined
without NET_2_0? Should I use NET_2_0 || BOOTSTRAP_NET_2_0 in the common
file as well?

>From mcs/class/corlib/System.Security.Cryptography/CryptoConfig.cs:

#if (NET_2_0)
 private const string xmlAssembly = ", System.Security, Version=2.0.3600.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a";
#elif (NET_1_1)
 private const string xmlAssembly = ", System.Security, Version=1.0.5000.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a";
#elif (NET_1_0)
 private const string xmlAssembly = ", System.Security, Version=1.0.3300.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a";
#else
 private const string xmlAssembly = ", System.Security, Version=0.0.0.0,
Culture=neutral, PublicKeyToken=null";
#endif

When is an assembly compiled without version and public key?

Kornél




More information about the Mono-devel-list mailing list