Пример #1
0
        public static async Task WriteMakeFile(this IMatrixProject project, StorageFolder folder, IBuildService buildService)
        {
            StringBuilder contents = new StringBuilder();

            contents.AppendLine($"{project.Name}: {project.CppFileName()} {project.HeaderFileName()} $(LIBS)");
            contents.AppendLine($"\t$(CXX) $(CXXFLAGS) $< $(LDFLAGS) $(LIBS) -o $@");
            contents.AppendLine($"\tstrip $@");

            buildService.FireBuildEvent(BuildEventArgs.BuildEventType.Information, $"Writing make file '{project.MakeFileName()}'.");
            StorageFile file = await folder.CreateFileAsync(project.MakeFileName(), CreationCollisionOption.ReplaceExisting);

            await FileIO.WriteTextAsync(file, contents.ToString(), Windows.Storage.Streams.UnicodeEncoding.Utf8);
        }
Пример #2
0
        public static async Task WriteInstructionsFile(this IMatrixProject project, StorageFolder folder, IBuildService buildService)
        {
            buildService.FireBuildEvent(BuildEventArgs.BuildEventType.Information, "Reading instructions template.");
            ResourceContext   resourceContext = ResourceContext.GetForViewIndependentUse();
            ResourceMap       resourceMap     = ResourceManager.Current.MainResourceMap.GetSubtree("CodeBuilder/Code");
            ResourceCandidate resourceValue   = resourceMap.GetValue("instructions", resourceContext);

            string template = resourceValue.ValueAsString;
            string contents = String.Format(template, project.CppFileName(),
                                            project.HeaderFileName(),
                                            project.MakeFileName(),
                                            project.Name);

            buildService.FireBuildEvent(BuildEventArgs.BuildEventType.Information, $"Writing instructions file '{project.InstructionsFileName()}'.");
            StorageFile file = await folder.CreateFileAsync(project.InstructionsFileName(), CreationCollisionOption.ReplaceExisting);

            await FileIO.WriteTextAsync(file, contents, Windows.Storage.Streams.UnicodeEncoding.Utf8);
        }