- string library_output_dir = string.Empty;
- try {
- // ../class/lib/build/tmp/System.Xml.dll
- // /class/lib/basic/System.Core.dll
- // <library_output>mcs.exe</library_output>
- bool has_tmp = library_output.Contains ("/tmp/");
- string p = library_output.Replace ("/tmp/", "/").Replace ("/", @"\");
- string profile_dir = Path.GetDirectoryName (p);
- string d = has_tmp ? Path.Combine (profile_dir, library) : profile_dir;
- library_output_dir = d;
- if (string.IsNullOrEmpty (library_output_dir))
- library_output_dir = @".\";
- library_output = Path.Combine (library_output_dir, output_name).Replace (@"\", "/");
- } catch {
- Console.WriteLine ("Error in path: {0} while processing {1}", library_output_dir, library);
- }
-
- // The build output directory shoudl be unique for each project, to overcome cyclic deps
- var build_output_dir = string.Format (@"bin\Debug\{0}", library);
+ // Possible inputs:
+ // ../class/lib/build/tmp/System.Xml.dll [No longer possible, we should be removing this from order.xml]
+ // /class/lib/basic/System.Core.dll
+ // <library_output>mcs.exe</library_output>
+ string build_output_dir;
+ if (LibraryOutput.Contains ("/"))
+ build_output_dir = Path.GetDirectoryName (LibraryOutput);
+ else
+ build_output_dir = "bin\\Debug\\" + library;
+