public override SolutionItemConfiguration CreateConfiguration(string name) { var conf = new MonoMacProjectConfiguration(name); conf.CopyFrom(base.CreateConfiguration(name)); return(conf); }
BuildResult MergeInfoPlist(IProgressMonitor monitor, MonoMacProject proj, MonoMacProjectConfiguration conf, ProjectFile template, FilePath plistOut) { return(MacBuildUtilities.CreateMergedPlist(monitor, template, plistOut, (PlistDocument doc) => { var result = new BuildResult(); var dict = doc.Root as PlistDictionary; if (dict == null) { doc.Root = dict = new PlistDictionary(); } //required keys that the user is likely to want to modify SetIfNotPresent(dict, "CFBundleName", proj.Name); SetIfNotPresent(dict, "CFBundleIdentifier", "com.yourcompany." + proj.Name); SetIfNotPresent(dict, "CFBundleShortVersionString", proj.Version); SetIfNotPresent(dict, "CFBundleVersion", "1"); SetIfNotPresent(dict, "LSMinimumSystemVersion", "10.6"); SetIfNotPresent(dict, "CFBundleDevelopmentRegion", "English"); //required keys that the user probably should not modify dict["CFBundleExecutable"] = conf.LaunchScript.FileName; SetIfNotPresent(dict, "CFBundleInfoDictionaryVersion", "6.0"); SetIfNotPresent(dict, "CFBundlePackageType", "APPL"); SetIfNotPresent(dict, "CFBundleSignature", "????"); return result; })); }
public override SolutionItemConfiguration CreateConfiguration (string name) { var conf = new MonoMacProjectConfiguration (name); conf.CopyFrom (base.CreateConfiguration (name)); return conf; }
static IEnumerable<FilePair> GetCopyFiles (MonoMacProject project, ConfigurationSelector sel, MonoMacProjectConfiguration conf) { var resDir = conf.AppDirectoryResources; var output = conf.CompiledOutputName; yield return new FilePair (output, resDir.Combine (output.FileName)); if (conf.DebugMode) { FilePath mdbFile = project.TargetRuntime.GetAssemblyDebugInfoFile (output); if (File.Exists (mdbFile)) yield return new FilePair (mdbFile, resDir.Combine (mdbFile.FileName)); } foreach (FileCopySet.Item s in project.GetSupportFileList (sel)) yield return new FilePair (s.Src, resDir.Combine (s.Target)); foreach (var pf in project.Files) if (pf.BuildAction == BuildAction.Content) yield return new FilePair (pf.FilePath, pf.ProjectVirtualPath.ToAbsolute (resDir)); }
BuildResult MergeInfoPlist (IProgressMonitor monitor, MonoMacProject proj, MonoMacProjectConfiguration conf, ProjectFile template, FilePath plistOut) { return MacBuildUtilities.CreateMergedPlist (monitor, template, plistOut, (PlistDocument doc) => { var result = new BuildResult (); var dict = doc.Root as PlistDictionary; if (dict == null) doc.Root = dict = new PlistDictionary (); //required keys that the user is likely to want to modify SetIfNotPresent (dict, "CFBundleName", proj.Name); SetIfNotPresent (dict, "CFBundleIdentifier", "com.yourcompany." + proj.Name); SetIfNotPresent (dict, "CFBundleShortVersionString", proj.Version); SetIfNotPresent (dict, "CFBundleVersion", "1"); SetIfNotPresent (dict, "LSMinimumSystemVersion", "10.6"); SetIfNotPresent (dict, "CFBundleDevelopmentRegion", "English"); //required keys that the user probably should not modify dict["CFBundleExecutable"] = conf.LaunchScript.FileName; SetIfNotPresent (dict, "CFBundleInfoDictionaryVersion", "6.0"); SetIfNotPresent (dict, "CFBundlePackageType", "APPL"); SetIfNotPresent (dict, "CFBundleSignature", "????"); return result; }); }
static IEnumerable <FilePair> GetCopyFiles(MonoMacProject project, ConfigurationSelector sel, MonoMacProjectConfiguration conf) { var resDir = conf.AppDirectoryResources; var output = conf.CompiledOutputName; yield return(new FilePair(output, resDir.Combine(output.FileName))); if (conf.DebugMode) { FilePath mdbFile = project.TargetRuntime.GetAssemblyDebugInfoFile(output); if (File.Exists(mdbFile)) { yield return(new FilePair(mdbFile, resDir.Combine(mdbFile.FileName))); } } foreach (FileCopySet.Item s in project.GetSupportFileList(sel)) { yield return(new FilePair(s.Src, resDir.Combine(s.Target))); } foreach (var pf in project.Files) { if (pf.BuildAction == BuildAction.Content) { yield return(new FilePair(pf.FilePath, pf.ProjectVirtualPath.ToAbsolute(resDir))); } } }