Parallel-make safe build of mono bindings

Bug #709954 reported by Dennis Schridde
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libindicate
Expired
Wishlist
Unassigned

Bug Description

Mono bindings may fail to build in parallel-make scenarios because the api.xml file gets partly overwritten before codegen runs. Attached patch fixes this.

Revision history for this message
Dennis Schridde (devurandom) wrote :
Revision history for this message
Alex Launi (alexlauni) wrote :

I still get mono binding failure with this patch and make -j4. Make runs fine.

Changed in libindicate:
status: New → Triaged
importance: Undecided → Wishlist
Revision history for this message
Ted Gould (ted) wrote :

It also seems to fail randomly for me as well. Both with an without the patch. Here's the relevant output (I think):

Unhandled Exception: System.IO.FileNotFoundException: Could not find file "/home/ted/Development/libindicate/lp709954/bindings/mono/indicate/indicate-api.raw.pre".
File name: '/home/ted/Development/libindicate/lp709954/bindings/mono/indicate/indicate-api.raw.pre'
  at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00000] in <filename unknown>:0
  at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) [0x00000] in <filename unknown>:0
  at (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
  at System.Xml.XmlUrlResolver.GetEntity (System.Uri absoluteUri, System.String role, System.Type ofObjectToReturn) [0x00000] in <filename unknown>:0
  at Mono.Xml2.XmlTextReader.GetStreamFromUrl (System.String url, System.String& absoluteUriString) [0x00000] in <filename unknown>:0
  at Mono.Xml2.XmlTextReader..ctor (System.String url, System.Xml.XmlNameTable nt) [0x00000] in <filename unknown>:0
  at System.Xml.XmlTextReader..ctor (System.String url, System.Xml.XmlNameTable nt) [0x00000] in <filename unknown>:0
  at System.Xml.XmlDocument.Load (System.String filename) [0x00000] in <filename unknown>:0
  at GtkSharp.Parsing.Parser.Main (System.String[] args) [0x00000] in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not find file "/home/ted/Development/libindicate/lp709954/bindings/mono/indicate/indicate-api.raw.pre".
File name: '/home/ted/Development/libindicate/lp709954/bindings/mono/indicate/indicate-api.raw.pre'
  at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00000] in <filename unknown>:0
  at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) [0x00000] in <filename unknown>:0
  at (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
  at System.Xml.XmlUrlResolver.GetEntity (System.Uri absoluteUri, System.String role, System.Type ofObjectToReturn) [0x00000] in <filename unknown>:0
  at Mono.Xml2.XmlTextReader.GetStreamFromUrl (System.String url, System.String& absoluteUriString) [0x00000] in <filename unknown>:0
  at Mono.Xml2.XmlTextReader..ctor (System.String url, System.Xml.XmlNameTable nt) [0x00000] in <filename unknown>:0
  at System.Xml.XmlTextReader..ctor (System.String url, System.Xml.XmlNameTable nt) [0x00000] in <filename unknown>:0
  at System.Xml.XmlDocument.Load (System.String filename) [0x00000] in <filename unknown>:0
  at GtkSharp.Parsing.Parser.Main (System.String[] args) [0x00000] in <filename unknown>:0

Changed in libindicate:
status: Triaged → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for libindicate because there has been no activity for 60 days.]

Changed in libindicate:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.