From 0edc8104c92985f5fdeb34c53a94dc3faa936d3b Mon Sep 17 00:00:00 2001 From: Zontreck Date: Thu, 10 Aug 2023 16:44:38 -0700 Subject: [PATCH] Adds a script processor for super flexible text generation --- .gitignore | 10 + bootstrap/prebuild.dll | Bin 270336 -> 270336 bytes compile.bat | 4 + compile.sh | 5 + prebuild.xml | 40 ++- runprebuild.sh | 4 +- {src => source/Prebuild}/App.ico | Bin .../Core/Attributes/DataNodeAttribute.cs | 0 .../Core/Attributes/OptionNodeAttribute.cs | 0 .../Core/Attributes/TargetAttribute.cs | 0 .../Prebuild}/Core/FatalException.cs | 0 .../Prebuild}/Core/Interfaces/IDataNode.cs | 0 .../Prebuild}/Core/Interfaces/ITarget.cs | 0 {src => source/Prebuild}/Core/Kernel.cs | 0 .../Prebuild}/Core/Nodes/AuthorNode.cs | 0 .../Prebuild}/Core/Nodes/CleanFilesNode.cs | 0 .../Prebuild}/Core/Nodes/CleanupNode.cs | 0 .../Prebuild}/Core/Nodes/ConfigurationNode.cs | 0 .../Core/Nodes/ConfigurationNodeCollection.cs | 0 .../Prebuild}/Core/Nodes/DataNode.cs | 0 .../Core/Nodes/DatabaseProjectNode.cs | 0 .../Core/Nodes/DatabaseReferenceNode.cs | 0 .../Prebuild}/Core/Nodes/DescriptionNode.cs | 0 .../Prebuild}/Core/Nodes/ExcludeNode.cs | 0 .../Prebuild}/Core/Nodes/FileNode.cs | 0 .../Prebuild}/Core/Nodes/FilesNode.cs | 0 .../Prebuild}/Core/Nodes/MatchNode.cs | 0 .../Prebuild}/Core/Nodes/OptionsNode.cs | 0 .../Core/Nodes/PackageReferenceNode.cs | 0 .../Prebuild}/Core/Nodes/ProcessNode.cs | 0 .../Prebuild}/Core/Nodes/ProjectNode.cs | 0 .../Core/Nodes/ProjectReferenceNode.cs | 0 .../Prebuild}/Core/Nodes/ReferenceNode.cs | 0 .../Prebuild}/Core/Nodes/ReferencePathNode.cs | 0 .../Prebuild}/Core/Nodes/SolutionNode.cs | 0 .../Prebuild}/Core/Nodes/TextGenNode.cs | 0 .../Prebuild}/Core/Parse/IfContext.cs | 0 .../Prebuild}/Core/Parse/Preprocessor.cs | 0 .../Prebuild}/Core/Targets/AutotoolsTarget.cs | 0 .../Prebuild}/Core/Targets/DebugTarget.cs | 0 .../Prebuild}/Core/Targets/MakefileTarget.cs | 0 .../Core/Targets/MonoDevelopTarget.cs | 0 .../Prebuild}/Core/Targets/NAntTarget.cs | 0 .../Core/Targets/SharpDevelop2Target.cs | 0 .../Core/Targets/SharpDevelopTarget.cs | 0 .../Prebuild}/Core/Targets/ToolInfo.cs | 0 .../Prebuild}/Core/Targets/VS2002Target.cs | 0 .../Prebuild}/Core/Targets/VS2003Target.cs | 0 .../Prebuild}/Core/Targets/VS2005Target.cs | 0 .../Prebuild}/Core/Targets/VS2008Target.cs | 0 .../Prebuild}/Core/Targets/VS2010Target.cs | 0 .../Prebuild}/Core/Targets/VS2012Target.cs | 0 .../Prebuild}/Core/Targets/VS2013Target.cs | 0 .../Prebuild}/Core/Targets/VS2015Target.cs | 0 .../Prebuild}/Core/Targets/VS2017Target.cs | 0 .../Prebuild}/Core/Targets/VS2019Target.cs | 0 .../Prebuild}/Core/Targets/VS2022Target.cs | 0 .../Prebuild}/Core/Targets/VSGenericTarget.cs | 6 +- .../Prebuild}/Core/Targets/VSVersion.cs | 0 .../Prebuild}/Core/Targets/XcodeTarget.cs | 0 .../Core/UnknownLanguageException.cs | 0 .../Core/Utilities/CommandLineCollection.cs | 0 .../Core/Utilities/CurrentDirectory.cs | 0 .../Prebuild}/Core/Utilities/Helper.cs | 0 .../Prebuild}/Core/Utilities/Log.cs | 0 .../Prebuild}/Core/WarningException.cs | 0 {src => source/Prebuild}/Prebuild.cs | 0 source/Prebuild/Prebuild.csproj | 262 ++++++++++++++++++ .../Prebuild}/Properties/AssemblyInfo.cs | 0 {src => source/Prebuild}/data/autotools.xml | 0 {src => source/Prebuild}/data/dnpb-1.0.xsd | 0 {src => source/Prebuild}/data/dnpb-1.1.xsd | 0 {src => source/Prebuild}/data/dnpb-1.2.xsd | 0 {src => source/Prebuild}/data/dnpb-1.3.xsd | 0 {src => source/Prebuild}/data/dnpb-1.4.xsd | 0 {src => source/Prebuild}/data/dnpb-1.5.xsd | 0 .../Prebuild}/data/prebuild-1.10.xsd | 0 .../Prebuild}/data/prebuild-1.11.xsd | 0 .../Prebuild}/data/prebuild-1.6.xsd | 0 .../Prebuild}/data/prebuild-1.7.xsd | 0 .../Prebuild}/data/prebuild-1.8.xsd | 0 .../Prebuild}/data/prebuild-1.9.xsd | 0 source/SnapWrap/SnapWrap.cs | 45 +++ source/SnapWrap/SnapWrap.csproj | 68 +++++ 84 files changed, 438 insertions(+), 6 deletions(-) create mode 100644 compile.bat create mode 100644 compile.sh rename {src => source/Prebuild}/App.ico (100%) rename {src => source/Prebuild}/Core/Attributes/DataNodeAttribute.cs (100%) rename {src => source/Prebuild}/Core/Attributes/OptionNodeAttribute.cs (100%) rename {src => source/Prebuild}/Core/Attributes/TargetAttribute.cs (100%) rename {src => source/Prebuild}/Core/FatalException.cs (100%) rename {src => source/Prebuild}/Core/Interfaces/IDataNode.cs (100%) rename {src => source/Prebuild}/Core/Interfaces/ITarget.cs (100%) rename {src => source/Prebuild}/Core/Kernel.cs (100%) rename {src => source/Prebuild}/Core/Nodes/AuthorNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/CleanFilesNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/CleanupNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/ConfigurationNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/ConfigurationNodeCollection.cs (100%) rename {src => source/Prebuild}/Core/Nodes/DataNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/DatabaseProjectNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/DatabaseReferenceNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/DescriptionNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/ExcludeNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/FileNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/FilesNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/MatchNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/OptionsNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/PackageReferenceNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/ProcessNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/ProjectNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/ProjectReferenceNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/ReferenceNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/ReferencePathNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/SolutionNode.cs (100%) rename {src => source/Prebuild}/Core/Nodes/TextGenNode.cs (100%) rename {src => source/Prebuild}/Core/Parse/IfContext.cs (100%) rename {src => source/Prebuild}/Core/Parse/Preprocessor.cs (100%) rename {src => source/Prebuild}/Core/Targets/AutotoolsTarget.cs (100%) rename {src => source/Prebuild}/Core/Targets/DebugTarget.cs (100%) rename {src => source/Prebuild}/Core/Targets/MakefileTarget.cs (100%) rename {src => source/Prebuild}/Core/Targets/MonoDevelopTarget.cs (100%) rename {src => source/Prebuild}/Core/Targets/NAntTarget.cs (100%) rename {src => source/Prebuild}/Core/Targets/SharpDevelop2Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/SharpDevelopTarget.cs (100%) rename {src => source/Prebuild}/Core/Targets/ToolInfo.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2002Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2003Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2005Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2008Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2010Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2012Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2013Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2015Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2017Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2019Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VS2022Target.cs (100%) rename {src => source/Prebuild}/Core/Targets/VSGenericTarget.cs (99%) rename {src => source/Prebuild}/Core/Targets/VSVersion.cs (100%) rename {src => source/Prebuild}/Core/Targets/XcodeTarget.cs (100%) rename {src => source/Prebuild}/Core/UnknownLanguageException.cs (100%) rename {src => source/Prebuild}/Core/Utilities/CommandLineCollection.cs (100%) rename {src => source/Prebuild}/Core/Utilities/CurrentDirectory.cs (100%) rename {src => source/Prebuild}/Core/Utilities/Helper.cs (100%) rename {src => source/Prebuild}/Core/Utilities/Log.cs (100%) rename {src => source/Prebuild}/Core/WarningException.cs (100%) rename {src => source/Prebuild}/Prebuild.cs (100%) create mode 100644 source/Prebuild/Prebuild.csproj rename {src => source/Prebuild}/Properties/AssemblyInfo.cs (100%) rename {src => source/Prebuild}/data/autotools.xml (100%) rename {src => source/Prebuild}/data/dnpb-1.0.xsd (100%) rename {src => source/Prebuild}/data/dnpb-1.1.xsd (100%) rename {src => source/Prebuild}/data/dnpb-1.2.xsd (100%) rename {src => source/Prebuild}/data/dnpb-1.3.xsd (100%) rename {src => source/Prebuild}/data/dnpb-1.4.xsd (100%) rename {src => source/Prebuild}/data/dnpb-1.5.xsd (100%) rename {src => source/Prebuild}/data/prebuild-1.10.xsd (100%) rename {src => source/Prebuild}/data/prebuild-1.11.xsd (100%) rename {src => source/Prebuild}/data/prebuild-1.6.xsd (100%) rename {src => source/Prebuild}/data/prebuild-1.7.xsd (100%) rename {src => source/Prebuild}/data/prebuild-1.8.xsd (100%) rename {src => source/Prebuild}/data/prebuild-1.9.xsd (100%) create mode 100644 source/SnapWrap/SnapWrap.cs create mode 100644 source/SnapWrap/SnapWrap.csproj diff --git a/.gitignore b/.gitignore index 8a30d25..44aadc1 100644 --- a/.gitignore +++ b/.gitignore @@ -396,3 +396,13 @@ FodyWeavers.xsd # JetBrains Rider *.sln.iml + +# Exclude any new files in the bootstrap folder, only the manually added prebuild bootstrap +bootstrap/debug +bootstrap/*.pdb +bootstrap/*.exe +bootstrap/** +bootstrap + + +*.sln \ No newline at end of file diff --git a/bootstrap/prebuild.dll b/bootstrap/prebuild.dll index 12402c8d33be846ca2f96669e19bd9cd08fcb3b9..53eaf346a360870237f5d9d6727a3d69feb02e0a 100644 GIT binary patch delta 24027 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 U)PF|e@5tK>diBqd3tI>MKgHkVhX4Qo delta 23764 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 G5B@(*P?DDb diff --git a/compile.bat b/compile.bat new file mode 100644 index 0000000..f7dafff --- /dev/null +++ b/compile.bat @@ -0,0 +1,4 @@ +@echo off + +runprebuild.bat +dotnet build -c Release \ No newline at end of file diff --git a/compile.sh b/compile.sh new file mode 100644 index 0000000..227c764 --- /dev/null +++ b/compile.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +# Use the prebuild bootstrap to compile prebuild +./runprebuild.sh +dotnet build -c Release \ No newline at end of file diff --git a/prebuild.xml b/prebuild.xml index f4a5f0b..15cf0f9 100644 --- a/prebuild.xml +++ b/prebuild.xml @@ -26,7 +26,7 @@ prebuild.xml DEBUG;TRACE false - bin/Debug + ../../bootstrap/debug true Prebuild.snk 1595 + + false + false TRACE - bin/Release + ../../bootstrap/ true false Prebuild.snk 1595 + false + false @@ -74,5 +79,34 @@ + + + Tara Piccari (tarapiccari@gmail.com) + C# Prebuild Scripting for code generation + + + ../../bootstrap/debug/ + false + false + + + + + ../../bootstrap/ + false + false + + + + + + + diff --git a/runprebuild.sh b/runprebuild.sh index 55788e6..5713d98 100644 --- a/runprebuild.sh +++ b/runprebuild.sh @@ -1,2 +1,2 @@ -#!/bin/sh -dotnet bootstrap/prebuild.dll /target vs2022 /targetframework net6_0 /excludedir = "obj | bin" /file prebuild.xml +#!/bin/bash +dotnet bootstrap/prebuild.dll /target vs2022 /excludedir = "obj | bin" /file prebuild.xml diff --git a/src/App.ico b/source/Prebuild/App.ico similarity index 100% rename from src/App.ico rename to source/Prebuild/App.ico diff --git a/src/Core/Attributes/DataNodeAttribute.cs b/source/Prebuild/Core/Attributes/DataNodeAttribute.cs similarity index 100% rename from src/Core/Attributes/DataNodeAttribute.cs rename to source/Prebuild/Core/Attributes/DataNodeAttribute.cs diff --git a/src/Core/Attributes/OptionNodeAttribute.cs b/source/Prebuild/Core/Attributes/OptionNodeAttribute.cs similarity index 100% rename from src/Core/Attributes/OptionNodeAttribute.cs rename to source/Prebuild/Core/Attributes/OptionNodeAttribute.cs diff --git a/src/Core/Attributes/TargetAttribute.cs b/source/Prebuild/Core/Attributes/TargetAttribute.cs similarity index 100% rename from src/Core/Attributes/TargetAttribute.cs rename to source/Prebuild/Core/Attributes/TargetAttribute.cs diff --git a/src/Core/FatalException.cs b/source/Prebuild/Core/FatalException.cs similarity index 100% rename from src/Core/FatalException.cs rename to source/Prebuild/Core/FatalException.cs diff --git a/src/Core/Interfaces/IDataNode.cs b/source/Prebuild/Core/Interfaces/IDataNode.cs similarity index 100% rename from src/Core/Interfaces/IDataNode.cs rename to source/Prebuild/Core/Interfaces/IDataNode.cs diff --git a/src/Core/Interfaces/ITarget.cs b/source/Prebuild/Core/Interfaces/ITarget.cs similarity index 100% rename from src/Core/Interfaces/ITarget.cs rename to source/Prebuild/Core/Interfaces/ITarget.cs diff --git a/src/Core/Kernel.cs b/source/Prebuild/Core/Kernel.cs similarity index 100% rename from src/Core/Kernel.cs rename to source/Prebuild/Core/Kernel.cs diff --git a/src/Core/Nodes/AuthorNode.cs b/source/Prebuild/Core/Nodes/AuthorNode.cs similarity index 100% rename from src/Core/Nodes/AuthorNode.cs rename to source/Prebuild/Core/Nodes/AuthorNode.cs diff --git a/src/Core/Nodes/CleanFilesNode.cs b/source/Prebuild/Core/Nodes/CleanFilesNode.cs similarity index 100% rename from src/Core/Nodes/CleanFilesNode.cs rename to source/Prebuild/Core/Nodes/CleanFilesNode.cs diff --git a/src/Core/Nodes/CleanupNode.cs b/source/Prebuild/Core/Nodes/CleanupNode.cs similarity index 100% rename from src/Core/Nodes/CleanupNode.cs rename to source/Prebuild/Core/Nodes/CleanupNode.cs diff --git a/src/Core/Nodes/ConfigurationNode.cs b/source/Prebuild/Core/Nodes/ConfigurationNode.cs similarity index 100% rename from src/Core/Nodes/ConfigurationNode.cs rename to source/Prebuild/Core/Nodes/ConfigurationNode.cs diff --git a/src/Core/Nodes/ConfigurationNodeCollection.cs b/source/Prebuild/Core/Nodes/ConfigurationNodeCollection.cs similarity index 100% rename from src/Core/Nodes/ConfigurationNodeCollection.cs rename to source/Prebuild/Core/Nodes/ConfigurationNodeCollection.cs diff --git a/src/Core/Nodes/DataNode.cs b/source/Prebuild/Core/Nodes/DataNode.cs similarity index 100% rename from src/Core/Nodes/DataNode.cs rename to source/Prebuild/Core/Nodes/DataNode.cs diff --git a/src/Core/Nodes/DatabaseProjectNode.cs b/source/Prebuild/Core/Nodes/DatabaseProjectNode.cs similarity index 100% rename from src/Core/Nodes/DatabaseProjectNode.cs rename to source/Prebuild/Core/Nodes/DatabaseProjectNode.cs diff --git a/src/Core/Nodes/DatabaseReferenceNode.cs b/source/Prebuild/Core/Nodes/DatabaseReferenceNode.cs similarity index 100% rename from src/Core/Nodes/DatabaseReferenceNode.cs rename to source/Prebuild/Core/Nodes/DatabaseReferenceNode.cs diff --git a/src/Core/Nodes/DescriptionNode.cs b/source/Prebuild/Core/Nodes/DescriptionNode.cs similarity index 100% rename from src/Core/Nodes/DescriptionNode.cs rename to source/Prebuild/Core/Nodes/DescriptionNode.cs diff --git a/src/Core/Nodes/ExcludeNode.cs b/source/Prebuild/Core/Nodes/ExcludeNode.cs similarity index 100% rename from src/Core/Nodes/ExcludeNode.cs rename to source/Prebuild/Core/Nodes/ExcludeNode.cs diff --git a/src/Core/Nodes/FileNode.cs b/source/Prebuild/Core/Nodes/FileNode.cs similarity index 100% rename from src/Core/Nodes/FileNode.cs rename to source/Prebuild/Core/Nodes/FileNode.cs diff --git a/src/Core/Nodes/FilesNode.cs b/source/Prebuild/Core/Nodes/FilesNode.cs similarity index 100% rename from src/Core/Nodes/FilesNode.cs rename to source/Prebuild/Core/Nodes/FilesNode.cs diff --git a/src/Core/Nodes/MatchNode.cs b/source/Prebuild/Core/Nodes/MatchNode.cs similarity index 100% rename from src/Core/Nodes/MatchNode.cs rename to source/Prebuild/Core/Nodes/MatchNode.cs diff --git a/src/Core/Nodes/OptionsNode.cs b/source/Prebuild/Core/Nodes/OptionsNode.cs similarity index 100% rename from src/Core/Nodes/OptionsNode.cs rename to source/Prebuild/Core/Nodes/OptionsNode.cs diff --git a/src/Core/Nodes/PackageReferenceNode.cs b/source/Prebuild/Core/Nodes/PackageReferenceNode.cs similarity index 100% rename from src/Core/Nodes/PackageReferenceNode.cs rename to source/Prebuild/Core/Nodes/PackageReferenceNode.cs diff --git a/src/Core/Nodes/ProcessNode.cs b/source/Prebuild/Core/Nodes/ProcessNode.cs similarity index 100% rename from src/Core/Nodes/ProcessNode.cs rename to source/Prebuild/Core/Nodes/ProcessNode.cs diff --git a/src/Core/Nodes/ProjectNode.cs b/source/Prebuild/Core/Nodes/ProjectNode.cs similarity index 100% rename from src/Core/Nodes/ProjectNode.cs rename to source/Prebuild/Core/Nodes/ProjectNode.cs diff --git a/src/Core/Nodes/ProjectReferenceNode.cs b/source/Prebuild/Core/Nodes/ProjectReferenceNode.cs similarity index 100% rename from src/Core/Nodes/ProjectReferenceNode.cs rename to source/Prebuild/Core/Nodes/ProjectReferenceNode.cs diff --git a/src/Core/Nodes/ReferenceNode.cs b/source/Prebuild/Core/Nodes/ReferenceNode.cs similarity index 100% rename from src/Core/Nodes/ReferenceNode.cs rename to source/Prebuild/Core/Nodes/ReferenceNode.cs diff --git a/src/Core/Nodes/ReferencePathNode.cs b/source/Prebuild/Core/Nodes/ReferencePathNode.cs similarity index 100% rename from src/Core/Nodes/ReferencePathNode.cs rename to source/Prebuild/Core/Nodes/ReferencePathNode.cs diff --git a/src/Core/Nodes/SolutionNode.cs b/source/Prebuild/Core/Nodes/SolutionNode.cs similarity index 100% rename from src/Core/Nodes/SolutionNode.cs rename to source/Prebuild/Core/Nodes/SolutionNode.cs diff --git a/src/Core/Nodes/TextGenNode.cs b/source/Prebuild/Core/Nodes/TextGenNode.cs similarity index 100% rename from src/Core/Nodes/TextGenNode.cs rename to source/Prebuild/Core/Nodes/TextGenNode.cs diff --git a/src/Core/Parse/IfContext.cs b/source/Prebuild/Core/Parse/IfContext.cs similarity index 100% rename from src/Core/Parse/IfContext.cs rename to source/Prebuild/Core/Parse/IfContext.cs diff --git a/src/Core/Parse/Preprocessor.cs b/source/Prebuild/Core/Parse/Preprocessor.cs similarity index 100% rename from src/Core/Parse/Preprocessor.cs rename to source/Prebuild/Core/Parse/Preprocessor.cs diff --git a/src/Core/Targets/AutotoolsTarget.cs b/source/Prebuild/Core/Targets/AutotoolsTarget.cs similarity index 100% rename from src/Core/Targets/AutotoolsTarget.cs rename to source/Prebuild/Core/Targets/AutotoolsTarget.cs diff --git a/src/Core/Targets/DebugTarget.cs b/source/Prebuild/Core/Targets/DebugTarget.cs similarity index 100% rename from src/Core/Targets/DebugTarget.cs rename to source/Prebuild/Core/Targets/DebugTarget.cs diff --git a/src/Core/Targets/MakefileTarget.cs b/source/Prebuild/Core/Targets/MakefileTarget.cs similarity index 100% rename from src/Core/Targets/MakefileTarget.cs rename to source/Prebuild/Core/Targets/MakefileTarget.cs diff --git a/src/Core/Targets/MonoDevelopTarget.cs b/source/Prebuild/Core/Targets/MonoDevelopTarget.cs similarity index 100% rename from src/Core/Targets/MonoDevelopTarget.cs rename to source/Prebuild/Core/Targets/MonoDevelopTarget.cs diff --git a/src/Core/Targets/NAntTarget.cs b/source/Prebuild/Core/Targets/NAntTarget.cs similarity index 100% rename from src/Core/Targets/NAntTarget.cs rename to source/Prebuild/Core/Targets/NAntTarget.cs diff --git a/src/Core/Targets/SharpDevelop2Target.cs b/source/Prebuild/Core/Targets/SharpDevelop2Target.cs similarity index 100% rename from src/Core/Targets/SharpDevelop2Target.cs rename to source/Prebuild/Core/Targets/SharpDevelop2Target.cs diff --git a/src/Core/Targets/SharpDevelopTarget.cs b/source/Prebuild/Core/Targets/SharpDevelopTarget.cs similarity index 100% rename from src/Core/Targets/SharpDevelopTarget.cs rename to source/Prebuild/Core/Targets/SharpDevelopTarget.cs diff --git a/src/Core/Targets/ToolInfo.cs b/source/Prebuild/Core/Targets/ToolInfo.cs similarity index 100% rename from src/Core/Targets/ToolInfo.cs rename to source/Prebuild/Core/Targets/ToolInfo.cs diff --git a/src/Core/Targets/VS2002Target.cs b/source/Prebuild/Core/Targets/VS2002Target.cs similarity index 100% rename from src/Core/Targets/VS2002Target.cs rename to source/Prebuild/Core/Targets/VS2002Target.cs diff --git a/src/Core/Targets/VS2003Target.cs b/source/Prebuild/Core/Targets/VS2003Target.cs similarity index 100% rename from src/Core/Targets/VS2003Target.cs rename to source/Prebuild/Core/Targets/VS2003Target.cs diff --git a/src/Core/Targets/VS2005Target.cs b/source/Prebuild/Core/Targets/VS2005Target.cs similarity index 100% rename from src/Core/Targets/VS2005Target.cs rename to source/Prebuild/Core/Targets/VS2005Target.cs diff --git a/src/Core/Targets/VS2008Target.cs b/source/Prebuild/Core/Targets/VS2008Target.cs similarity index 100% rename from src/Core/Targets/VS2008Target.cs rename to source/Prebuild/Core/Targets/VS2008Target.cs diff --git a/src/Core/Targets/VS2010Target.cs b/source/Prebuild/Core/Targets/VS2010Target.cs similarity index 100% rename from src/Core/Targets/VS2010Target.cs rename to source/Prebuild/Core/Targets/VS2010Target.cs diff --git a/src/Core/Targets/VS2012Target.cs b/source/Prebuild/Core/Targets/VS2012Target.cs similarity index 100% rename from src/Core/Targets/VS2012Target.cs rename to source/Prebuild/Core/Targets/VS2012Target.cs diff --git a/src/Core/Targets/VS2013Target.cs b/source/Prebuild/Core/Targets/VS2013Target.cs similarity index 100% rename from src/Core/Targets/VS2013Target.cs rename to source/Prebuild/Core/Targets/VS2013Target.cs diff --git a/src/Core/Targets/VS2015Target.cs b/source/Prebuild/Core/Targets/VS2015Target.cs similarity index 100% rename from src/Core/Targets/VS2015Target.cs rename to source/Prebuild/Core/Targets/VS2015Target.cs diff --git a/src/Core/Targets/VS2017Target.cs b/source/Prebuild/Core/Targets/VS2017Target.cs similarity index 100% rename from src/Core/Targets/VS2017Target.cs rename to source/Prebuild/Core/Targets/VS2017Target.cs diff --git a/src/Core/Targets/VS2019Target.cs b/source/Prebuild/Core/Targets/VS2019Target.cs similarity index 100% rename from src/Core/Targets/VS2019Target.cs rename to source/Prebuild/Core/Targets/VS2019Target.cs diff --git a/src/Core/Targets/VS2022Target.cs b/source/Prebuild/Core/Targets/VS2022Target.cs similarity index 100% rename from src/Core/Targets/VS2022Target.cs rename to source/Prebuild/Core/Targets/VS2022Target.cs diff --git a/src/Core/Targets/VSGenericTarget.cs b/source/Prebuild/Core/Targets/VSGenericTarget.cs similarity index 99% rename from src/Core/Targets/VSGenericTarget.cs rename to source/Prebuild/Core/Targets/VSGenericTarget.cs index 3ab293f..4683a5a 100644 --- a/src/Core/Targets/VSGenericTarget.cs +++ b/source/Prebuild/Core/Targets/VSGenericTarget.cs @@ -691,8 +691,12 @@ public abstract class VSGenericTarget : ITarget { foreach(TextGenNode node in project.TextGenNodes) { + string pathText = Path.Combine("Prebuild", "bootstrap", "SnapWrap.dll"); + string filePath = Path.Combine(project.Path, node.Name); + string outputFile = Path.Combine(project.Path, node.OutputName); + ps.WriteLine(" "); - ps.WriteLine($" "); + ps.WriteLine($" "); ps.WriteLine($" "); } } diff --git a/src/Core/Targets/VSVersion.cs b/source/Prebuild/Core/Targets/VSVersion.cs similarity index 100% rename from src/Core/Targets/VSVersion.cs rename to source/Prebuild/Core/Targets/VSVersion.cs diff --git a/src/Core/Targets/XcodeTarget.cs b/source/Prebuild/Core/Targets/XcodeTarget.cs similarity index 100% rename from src/Core/Targets/XcodeTarget.cs rename to source/Prebuild/Core/Targets/XcodeTarget.cs diff --git a/src/Core/UnknownLanguageException.cs b/source/Prebuild/Core/UnknownLanguageException.cs similarity index 100% rename from src/Core/UnknownLanguageException.cs rename to source/Prebuild/Core/UnknownLanguageException.cs diff --git a/src/Core/Utilities/CommandLineCollection.cs b/source/Prebuild/Core/Utilities/CommandLineCollection.cs similarity index 100% rename from src/Core/Utilities/CommandLineCollection.cs rename to source/Prebuild/Core/Utilities/CommandLineCollection.cs diff --git a/src/Core/Utilities/CurrentDirectory.cs b/source/Prebuild/Core/Utilities/CurrentDirectory.cs similarity index 100% rename from src/Core/Utilities/CurrentDirectory.cs rename to source/Prebuild/Core/Utilities/CurrentDirectory.cs diff --git a/src/Core/Utilities/Helper.cs b/source/Prebuild/Core/Utilities/Helper.cs similarity index 100% rename from src/Core/Utilities/Helper.cs rename to source/Prebuild/Core/Utilities/Helper.cs diff --git a/src/Core/Utilities/Log.cs b/source/Prebuild/Core/Utilities/Log.cs similarity index 100% rename from src/Core/Utilities/Log.cs rename to source/Prebuild/Core/Utilities/Log.cs diff --git a/src/Core/WarningException.cs b/source/Prebuild/Core/WarningException.cs similarity index 100% rename from src/Core/WarningException.cs rename to source/Prebuild/Core/WarningException.cs diff --git a/src/Prebuild.cs b/source/Prebuild/Prebuild.cs similarity index 100% rename from src/Prebuild.cs rename to source/Prebuild/Prebuild.cs diff --git a/source/Prebuild/Prebuild.csproj b/source/Prebuild/Prebuild.csproj new file mode 100644 index 0000000..c17b6b6 --- /dev/null +++ b/source/Prebuild/Prebuild.csproj @@ -0,0 +1,262 @@ + + + + net7.0 + false + Exe + false + disable + prebuild + true + false + false + false + True +False + + + + False + 285212672 + + + DEBUG;TRACE + + True + 4096 + False + false + False + False + False + ..\..\bootstrap\debug\ + False + False + False + 4 + False + 1595 + AnyCPU + + + False + 285212672 + + + TRACE + + False + 4096 + True + false + False + False + False + ..\..\bootstrap\ + False + False + False + 4 + False + 1595 + AnyCPU + + + + System.EnterpriseServices + False + + + + + + + + + + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + Code + + + diff --git a/src/Properties/AssemblyInfo.cs b/source/Prebuild/Properties/AssemblyInfo.cs similarity index 100% rename from src/Properties/AssemblyInfo.cs rename to source/Prebuild/Properties/AssemblyInfo.cs diff --git a/src/data/autotools.xml b/source/Prebuild/data/autotools.xml similarity index 100% rename from src/data/autotools.xml rename to source/Prebuild/data/autotools.xml diff --git a/src/data/dnpb-1.0.xsd b/source/Prebuild/data/dnpb-1.0.xsd similarity index 100% rename from src/data/dnpb-1.0.xsd rename to source/Prebuild/data/dnpb-1.0.xsd diff --git a/src/data/dnpb-1.1.xsd b/source/Prebuild/data/dnpb-1.1.xsd similarity index 100% rename from src/data/dnpb-1.1.xsd rename to source/Prebuild/data/dnpb-1.1.xsd diff --git a/src/data/dnpb-1.2.xsd b/source/Prebuild/data/dnpb-1.2.xsd similarity index 100% rename from src/data/dnpb-1.2.xsd rename to source/Prebuild/data/dnpb-1.2.xsd diff --git a/src/data/dnpb-1.3.xsd b/source/Prebuild/data/dnpb-1.3.xsd similarity index 100% rename from src/data/dnpb-1.3.xsd rename to source/Prebuild/data/dnpb-1.3.xsd diff --git a/src/data/dnpb-1.4.xsd b/source/Prebuild/data/dnpb-1.4.xsd similarity index 100% rename from src/data/dnpb-1.4.xsd rename to source/Prebuild/data/dnpb-1.4.xsd diff --git a/src/data/dnpb-1.5.xsd b/source/Prebuild/data/dnpb-1.5.xsd similarity index 100% rename from src/data/dnpb-1.5.xsd rename to source/Prebuild/data/dnpb-1.5.xsd diff --git a/src/data/prebuild-1.10.xsd b/source/Prebuild/data/prebuild-1.10.xsd similarity index 100% rename from src/data/prebuild-1.10.xsd rename to source/Prebuild/data/prebuild-1.10.xsd diff --git a/src/data/prebuild-1.11.xsd b/source/Prebuild/data/prebuild-1.11.xsd similarity index 100% rename from src/data/prebuild-1.11.xsd rename to source/Prebuild/data/prebuild-1.11.xsd diff --git a/src/data/prebuild-1.6.xsd b/source/Prebuild/data/prebuild-1.6.xsd similarity index 100% rename from src/data/prebuild-1.6.xsd rename to source/Prebuild/data/prebuild-1.6.xsd diff --git a/src/data/prebuild-1.7.xsd b/source/Prebuild/data/prebuild-1.7.xsd similarity index 100% rename from src/data/prebuild-1.7.xsd rename to source/Prebuild/data/prebuild-1.7.xsd diff --git a/src/data/prebuild-1.8.xsd b/source/Prebuild/data/prebuild-1.8.xsd similarity index 100% rename from src/data/prebuild-1.8.xsd rename to source/Prebuild/data/prebuild-1.8.xsd diff --git a/src/data/prebuild-1.9.xsd b/source/Prebuild/data/prebuild-1.9.xsd similarity index 100% rename from src/data/prebuild-1.9.xsd rename to source/Prebuild/data/prebuild-1.9.xsd diff --git a/source/SnapWrap/SnapWrap.cs b/source/SnapWrap/SnapWrap.cs new file mode 100644 index 0000000..dcf352f --- /dev/null +++ b/source/SnapWrap/SnapWrap.cs @@ -0,0 +1,45 @@ +using Microsoft.CodeAnalysis.CSharp.Scripting; +using Microsoft.CodeAnalysis.Scripting; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace SnapWrap +{ + public class SnapWrap + { + public static void Main(string[] args) + { + string input = args[0]; + string output = args[1]; + + try + { + var inputCode = File.ReadAllText(input); + + + var options = ScriptOptions.Default + .WithReferences(AppDomain.CurrentDomain.GetAssemblies()) // Add necessary assemblies + .WithImports("System"); + + using (var sw = new StreamWriter(output)) + { + Console.SetOut(sw); // Redirect console output + var scriptState = CSharpScript.RunAsync(inputCode, options).Result; + + // Reset console output + Console.SetOut(new StreamWriter(Console.OpenStandardOutput())); + + Console.WriteLine("Output file generated successfully."); + } + } + catch (Exception ex) + { + Console.WriteLine($"ERROR: {ex.Message}"); + } + } + } +} diff --git a/source/SnapWrap/SnapWrap.csproj b/source/SnapWrap/SnapWrap.csproj new file mode 100644 index 0000000..4349f9a --- /dev/null +++ b/source/SnapWrap/SnapWrap.csproj @@ -0,0 +1,68 @@ + + + + net7.0 + false + Exe + false + disable + SnapWrap + true + false + false + True +False + + + + False + 285212672 + + + DEBUG;TRACE + + True + 4096 + False + false + False + False + False + ..\..\bootstrap\debug\ + False + False + False + 4 + False + 1595 + AnyCPU + + + False + 285212672 + + + TRACE + + False + 4096 + True + false + False + False + False + ..\..\bootstrap\ + False + False + False + 4 + False + 1595 + AnyCPU + + + + + + +