You are right I found this out when doing it in the real project it should be /p:DefineConstants="whatever". Issue (why it seemed to work) was a path issue that went back to 4.6.2
On Thu, Jan 5, 2017 at 2:13 AM, Alexander Köplinger <[email protected]> wrote: > No, this shouldn't work as far as I'm aware since you're still only setting > an msbuild property with /p which doesn't get passed down into the compiler > invocation. > Try "xbuild /v:diag" to get a verbose log and search for the line where csc > is invoked to see what exactly gets defined > > - Alex > >> On 04 Jan 2017, at 23:38, Greg Young <[email protected]> wrote: >> >> So I should: >> >> ifdef #tirefire >> #define __MonoCS__ >> #endif >> >> then xbuild /p:tirefire=true >> >> Seems to work on test app. >> >> On Thu, Jan 5, 2017 at 12:29 AM, Alexander Köplinger >> <[email protected]> wrote: >>> __MonoCS__ is a define in C# source, not an msbuild property (which the /p >>> sets). >>> >>> You need to add __MonoCS__ to <DefineConstants> in your csproj. >>> >>> - Alex >>> >>>> On 04 Jan 2017, at 23:13, Greg Young <[email protected]> wrote: >>>> >>>> Also it appears >>>> >>>> ➜ shitbird xbuild /p:__MonoCS__="true" >>>> ./ConsoleApplication/ConsoleApplication.sln >>>> >>>> etc doesn't work. I figured /p: would work? >>>> >>>> On Wed, Jan 4, 2017 at 11:42 PM, Greg Young <[email protected]> >>>> wrote: >>>>> What i mean by breaking is no longer shipping mcs. A build flag of >>>>> --with-mcs would prevent other projects from needing to say "if you >>>>> want to build version < X on mono > Y you must custom compile mono". >>>>> Saying use compile time flag --with-mcs would be a lot more palatable. >>>>> >>>>> On Wed, Jan 4, 2017 at 11:30 PM, Greg Young <[email protected]> >>>>> wrote: >>>>>> This is a rather large breaking change no? >>>>>> >>>>>> On Wed, Jan 4, 2017 at 11:25 PM, Jon Purdy <[email protected]> wrote: >>>>>>> __MonoCS__ is defined by mcs. Master is now using csc (Roslyn) on most >>>>>>> systems. You can configure with --with-csc=mcs to keep using mcs, or >>>>>>> maybe >>>>>>> define __MonoCS__ yourself (not sure if this would break anything). >>>>>>> >>>>>>> >>>>>>> On 1/4/17, 1:17 PM, "Mono-devel-list on behalf of Greg Young" >>>>>>> <[email protected] on behalf of >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> I just pulled master today and am suddenly getting loads of errors in >>>>>>>> our unit test suite how kernel32 is not defined. EG Exception below. >>>>>>>> However all places where this is used are wrapped with >>>>>>>> >>>>>>>> I was building on master recently without any issues. It appears >>>>>>>> __MonoCS__ is not defined?! >>>>>>>> >>>>>>>> public static uint GetDriveSectorSize(string path) >>>>>>>> { >>>>>>>> #if !__MonoCS__ && !USE_UNIX_IO >>>>>>>> //snip >>>>>>>> WinNative.GetDiskFreeSpace(Path.GetPathRoot(path), out >>>>>>>> dontcare, out size, out dontcare, out dontcare); >>>>>>>> #else >>>>>>>> //snip >>>>>>>> #endif >>>>>>>> } >>>>>>>> >>>>>>>> We are seeing this everywhere we have __MonoCS__ >>>>>>>> >>>>>>>> >>>>>>>> So I decided to write a test: >>>>>>>> >>>>>>>> ? ConsoleApplication cat ConsoleApplication/Program.cs >>>>>>>> using System; >>>>>>>> using System.Collections.Generic; >>>>>>>> >>>>>>>> namespace ConsoleApplication >>>>>>>> { >>>>>>>> internal class Program >>>>>>>> { >>>>>>>> public static void Main(string[] args) >>>>>>>> { >>>>>>>> #if __MonoCS__ >>>>>>>> Console.WriteLine("shitbird"); >>>>>>>> #else >>>>>>>> Console.WriteLine("wtf?"); >>>>>>>> #endif >>>>>>>> } >>>>>>>> } >>>>>>>> }% >>>>>>>> >>>>>>>> >>>>>>>> ? ConsoleApplication xbuild --version >>>>>>>> XBuild Engine Version 14.0 >>>>>>>> Mono, Version 4.9.0.0 >>>>>>>> Copyright (C) 2005-2013 Various Mono authors >>>>>>>> MSBUILD: error MSBUILD0000: Project file '--version' not found. >>>>>>>> ? ConsoleApplication xbuild ConsoleApplication.sln >>>>>>>> XBuild Engine Version 14.0 >>>>>>>> Mono, Version 4.9.0.0 >>>>>>>> Copyright (C) 2005-2013 Various Mono authors >>>>>>>> >>>>>>>> Build started 1/4/2017 9:16:26 PM. >>>>>>>> __________________________________________________ >>>>>>>> Project >>>>>>>> "/home/greg/src/shitbird/ConsoleApplication/ConsoleApplication.sln" >>>>>>>> (default target(s)): >>>>>>>> Target ValidateSolutionConfiguration: >>>>>>>> Building solution configuration "Debug|Any CPU". >>>>>>>> Target Build: >>>>>>>> Project >>>>>>>> "/home/greg/src/shitbird/ConsoleApplication/ConsoleApplication/ConsoleAppl >>>>>>>> ication.csproj" >>>>>>>> (default target(s)): >>>>>>>> Target PrepareForBuild: >>>>>>>> Configuration: Debug Platform: AnyCPU >>>>>>>> Target GenerateSatelliteAssemblies: >>>>>>>> No input files were specified for target GenerateSatelliteAssemblies, >>>>>>>> skipping. >>>>>>>> Target CoreCompile: >>>>>>>> Tool /opt/mono/lib/mono/4.5/csc.exe execution started with arguments: >>>>>>>> /noconfig /debug:portable /debug:portable /optimize- >>>>>>>> /out:obj/Debug/ConsoleApplication.exe Program.cs >>>>>>>> Properties/AssemblyInfo.cs >>>>>>>> obj/Debug/.NETFramework,Version=v4.5.AssemblyAttribute.cs /target:exe >>>>>>>> /define:"DEBUG;TRACE" /nostdlib /platform:AnyCPU >>>>>>>> /reference:/opt/mono/lib/mono/4.5-api/System.dll >>>>>>>> /reference:/opt/mono/lib/mono/4.5-api/System.Xml.Linq.dll >>>>>>>> /reference:/opt/mono/lib/mono/4.5-api/System.Data.DataSetExtensions.dll >>>>>>>> /reference:/opt/mono/lib/mono/4.5-api/System.Data.dll >>>>>>>> /reference:/opt/mono/lib/mono/4.5-api/System.Xml.dll >>>>>>>> /reference:/opt/mono/lib/mono/4.5-api/System.Core.dll >>>>>>>> /reference:/opt/mono/lib/mono/4.5-api//mscorlib.dll /warn:4 >>>>>>>> Microsoft (R) Visual C# Compiler version 2.0.0.61205 >>>>>>>> Copyright (C) Microsoft Corporation. All rights reserved. >>>>>>>> Target DeployOutputFiles: >>>>>>>> Copying file from >>>>>>>> '/home/greg/src/shitbird/ConsoleApplication/ConsoleApplication/obj/Debug/C >>>>>>>> onsoleApplication.pdb' >>>>>>>> to >>>>>>>> '/home/greg/src/shitbird/ConsoleApplication/ConsoleApplication/bin/Debug/C >>>>>>>> onsoleApplication.pdb' >>>>>>>> Copying file from >>>>>>>> '/home/greg/src/shitbird/ConsoleApplication/ConsoleApplication/obj/Debug/C >>>>>>>> onsoleApplication.exe' >>>>>>>> to >>>>>>>> '/home/greg/src/shitbird/ConsoleApplication/ConsoleApplication/bin/Debug/C >>>>>>>> onsoleApplication.exe' >>>>>>>> Done building project >>>>>>>> "/home/greg/src/shitbird/ConsoleApplication/ConsoleApplication/ConsoleAppl >>>>>>>> ication.csproj". >>>>>>>> Done building project >>>>>>>> "/home/greg/src/shitbird/ConsoleApplication/ConsoleApplication.sln". >>>>>>>> >>>>>>>> Build succeeded. >>>>>>>> 0 Warning(s) >>>>>>>> 0 Error(s) >>>>>>>> >>>>>>>> Time Elapsed 00:00:01.9957420 >>>>>>>> ? ConsoleApplication mono >>>>>>>> ./ConsoleApplication/bin/Debug/ConsoleApplication.exe >>>>>>>> wtf? >>>>>>>> >>>>>>>> And it appears __MonoCS__ is no longer defined >>>>>>>> >>>>>>>> >>>>>>>> System.DllNotFoundException: KERNEL32 >>>>>>>> at (wrapper managed-to-native) >>>>>>>> EventStore.Core.TransactionLog.Unbuffered.WinNative:GetDiskFreeSpace >>>>>>>> (string,uint&,uint&,uint&,uint&) >>>>>>>> at >>>>>>>> EventStore.Core.TransactionLog.Unbuffered.NativeFile.GetDriveSectorSize >>>>>>>> (System.String path) [0x00006] in <d6d24c88c72345b79de5eca974e19875>:0 >>>>>>>> at >>>>>>>> EventStore.Core.TransactionLog.Unbuffered.UnbufferedFileStream.Create >>>>>>>> (System.String path, System.IO.FileMode mode, System.IO.FileAccess >>>>>>>> acc, System.IO.FileShare share, System.Boolean sequential, >>>>>>>> System.Int32 internalWriteBufferSize, System.Int32 >>>>>>>> internalReadBufferSize, System.Boolean writeThrough, System.UInt32 >>>>>>>> minBlockSize) [0x00000] in <d6d24c88c72345b79de5eca974e19875>:0 >>>>>>>> at EventStore.Core.Index.PTable.CacheMidpointsAndVerifyHash >>>>>>>> (System.Int32 depth) [0x0002e] in <d6d24c88c72345b79de5eca974e19875>:0 >>>>>>>> at EventStore.Core.Index.PTable..ctor (System.String filename, >>>>>>>> System.Guid id, System.Int32 initialReaders, System.Int32 maxReaders, >>>>>>>> System.Int32 depth) [0x002a5] in <d6d24c88c72345b79de5eca974e19875>:0 >>>>>>>> at EventStore.Core.Index.PTable.FromMemtable >>>>>>>> (EventStore.Core.Index.IMemTable table, System.String filename, >>>>>>>> System.Int32 cacheDepth) [0x0018d] in >>>>>>>> <d6d24c88c72345b79de5eca974e19875>:0 >>>>>>>> at EventStore.Core.Index.TableIndex.ReadOffQueue () [0x000b3] in >>>>>>>> <d6d24c88c72345b79de5eca974e19875>:0 >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Studying for the Turing test >>>>>>>> _______________________________________________ >>>>>>>> Mono-devel-list mailing list >>>>>>>> [email protected] >>>>>>>> https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.dot. >>>>>>>> net%2Fmailman%2Flistinfo%2Fmono-devel-list&data=02%7C01%7Cjopur%40microsof >>>>>>>> t.com%7Cc47bb70efa0e47145d8a08d434e729a5%7C72f988bf86f141af91ab2d7cd011db4 >>>>>>>> 7%7C1%7C0%7C636191614832257156&sdata=UqAocpYwtgbnVJc%2FsmvGH7XPnO42jk5Ivf9 >>>>>>>> AEd8sojQ%3D&reserved=0 >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Studying for the Turing test >>>>> >>>>> >>>>> >>>>> -- >>>>> Studying for the Turing test >>>> >>>> >>>> >>>> -- >>>> Studying for the Turing test >>>> _______________________________________________ >>>> Mono-devel-list mailing list >>>> [email protected] >>>> https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.dot.net%2Fmailman%2Flistinfo%2Fmono-devel-list&data=02%7C01%7Calkpli%40microsoft.com%7C41a86650c59d49d2d81908d434eef3ed%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636191648285788247&sdata=IkTi2YHk9R36PG53HF3GZV0qW7yjYP9BMXaUqLePXCU%3D&reserved=0 >>> >> >> >> >> -- >> Studying for the Turing test > -- Studying for the Turing test _______________________________________________ Mono-devel-list mailing list [email protected] http://lists.dot.net/mailman/listinfo/mono-devel-list
