在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → Sharpmake:高效的C#项目和解决方案生成器

Sharpmake:高效的C#项目和解决方案生成器

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:9.15M
  • 下载次数:0
  • 浏览次数:37
  • 发布时间:2024-03-16
  • 实例类别:一般编程问题
  • 发 布 人:chenxiaolan
  • 文件格式:.zip
  • 所需积分:2
 

实例介绍

【实例简介】
Sharpmake简介

Sharpmake是一个用于生成Visual Studio项目和解决方案的工具,与CMake和Premake相似,但设计上更注重速度和规模。Ubisoft使用Sharpmake在几秒钟内生成数千个.vcxproj、.csproj和.sln文件,每个项目都可以支持大量的Visual Studio配置。

Sharpmake非常适合多平台游戏开发,能够快速生成所有配置,使得生成和重新生成整个项目变得非常简单。Sharpmake使用C#语言编写脚本,因此你可以在Visual Studio中编辑脚本,并享受C#工具(自动完成、重构、调试等)带来的便利。

Sharpmake不仅可以生成makefiles和Xcode项目,还可以在支持最新版dotnet运行时的现代操作系统上“原生”运行。Ubisoft在2011年为《刺客信条3》内部开发了Sharpmake,经过与其他工具的比较后,明确了需要一个定制的生成器来满足性能需求。

扩展Sharpmake

Sharpmake是一个开源项目,提供了一些通用功能。对于受NDA限制的附加功能(如平台支持)或仅限内部使用的功能,可以通过扩展机制添加支持。推荐的扩展方式是遵循特定的文件夹布局,将额外的平台(或扩展)放在专用文件夹中,以便进行管理和开发。

Sharpmake不仅适用于游戏开发人员,也适用于需要快速、灵活生成大型项目配置的软件开发人员。
【实例截图】
【核心代码】
文件清单
└── Sharpmake-7bb10dd8dff853936893751451638a0668fef86d
    ├── CODE_OF_CONDUCT.md
    ├── Compile.ps1
    ├── CONTRIBUTING.md
    ├── Directory.Build.props
    ├── docs
    │   ├── Guidelines.md
    │   ├── img
    │   │   ├── AddDotNetRef.png
    │   │   ├── AddExternalReference.png
    │   │   ├── ResourceBuildAction.png
    │   │   └── WebReferences.png
    │   ├── Intro.md
    │   ├── OVERVIEW.md
    │   ├── Platforms.md
    │   ├── Samples.md
    │   ├── sharpmake_logo.svg
    │   └── Why.md
    ├── extract-vcpkg.ps1
    ├── functional_test.py
    ├── LICENSE.md
    ├── README.md
    ├── regression_test.py
    ├── RunProcess.ps1
    ├── RunSample.ps1
    ├── RunSharpmake.ps1
    ├── samples
    │   ├── CompileCommandDatabase
    │   │   ├── CompileCommandDatabase.sharpmake.cs
    │   │   ├── libgoodbye
    │   │   │   ├── goodbye.cpp
    │   │   │   └── goodbye.h
    │   │   ├── libhello
    │   │   │   ├── hello.cpp
    │   │   │   └── hello.h
    │   │   └── src
    │   │       └── main.cpp
    │   ├── ConfigureOrder
    │   │   ├── codebase
    │   │   │   ├── ChildProject
    │   │   │   │   ├── main.cpp
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   └── stdafx.h
    │   │   │   ├── FooBarProject
    │   │   │   │   ├── main.cpp
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   └── stdafx.h
    │   │   │   └── ParentProject
    │   │   │       ├── main.cpp
    │   │   │       ├── stdafx.cpp
    │   │   │       └── stdafx.h
    │   │   ├── ConfigureOrdering.sharpmake.cs
    │   │   ├── main.sharpmake.cs
    │   │   ├── reference
    │   │   │   └── projects
    │   │   │       ├── childproject.vcxproj
    │   │   │       ├── childproject.vcxproj.filters
    │   │   │       ├── configureorderingsolution.sln
    │   │   │       ├── foobarproject.vcxproj
    │   │   │       ├── foobarproject.vcxproj.filters
    │   │   │       ├── parentproject.vcxproj
    │   │   │       └── parentproject.vcxproj.filters
    │   │   └── Util.sharpmake.cs
    │   ├── CPPCLI
    │   │   ├── CLRTest.sharpmake.cs
    │   │   ├── codebase
    │   │   │   ├── CLRCPPProj
    │   │   │   │   ├── app.rc
    │   │   │   │   ├── AssemblyInfo.cpp
    │   │   │   │   ├── CLRCPPProj.cpp
    │   │   │   │   ├── CLRCPPProj.h
    │   │   │   │   └── ReadMe.txt
    │   │   │   ├── CSharpProjBuildOrderDependency
    │   │   │   │   ├── Class1.cs
    │   │   │   │   └── Properties
    │   │   │   │       └── AssemblyInfo.cs
    │   │   │   ├── OtherCSharpProj
    │   │   │   │   ├── Class1.cs
    │   │   │   │   └── Properties
    │   │   │   │       └── AssemblyInfo.cs
    │   │   │   ├── TestCSharpConsole
    │   │   │   │   ├── Program.cs
    │   │   │   │   └── Properties
    │   │   │   │       └── AssemblyInfo.cs
    │   │   │   └── theEmptyCPPProject
    │   │   │       ├── TestClass.cpp
    │   │   │       └── TestClass.h
    │   │   ├── projects.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── clrcppproj.vs2017.v4_6_2.vcxproj
    │   │           ├── clrcppproj.vs2017.v4_6_2.vcxproj.filters
    │   │           ├── clrcppproj.vs2019.v4_7_2.vcxproj
    │   │           ├── clrcppproj.vs2019.v4_7_2.vcxproj.filters
    │   │           ├── CPPCLI.vs2017.v4_6_2.sln
    │   │           ├── CPPCLI.vs2019.v4_7_2.sln
    │   │           ├── CSharpProjBuildOrderDependency.vs2017.v4_6_2.csproj
    │   │           ├── CSharpProjBuildOrderDependency.vs2019.v4_7_2.csproj
    │   │           ├── OtherCSharpProj.vs2017.v4_6_2.csproj
    │   │           ├── OtherCSharpProj.vs2019.v4_7_2.csproj
    │   │           ├── TestCSharpConsole.vs2017.v4_6_2.csproj
    │   │           ├── TestCSharpConsole.vs2019.v4_7_2.csproj
    │   │           ├── theemptycppproject.vs2017.v4_6_2.vcxproj
    │   │           ├── theemptycppproject.vs2017.v4_6_2.vcxproj.filters
    │   │           ├── theemptycppproject.vs2019.v4_7_2.vcxproj
    │   │           └── theemptycppproject.vs2019.v4_7_2.vcxproj.filters
    │   ├── CSharpHelloWorld
    │   │   ├── codebase
    │   │   │   └── HelloWorld
    │   │   │       ├── Program.cs
    │   │   │       └── Properties
    │   │   │           └── AssemblyInfo.cs
    │   │   ├── common.sharpmake.cs
    │   │   ├── HelloWorld.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── helloworld
    │   │           │   ├── HelloWorld.vs2017.v4_6_1.csproj
    │   │           │   └── HelloWorld.vs2022.net6_0.csproj
    │   │           ├── HelloWorldSolution.vs2017.v4_6_1.sln
    │   │           └── HelloWorldSolution.vs2022.net6_0.sln
    │   ├── CSharpImports
    │   │   ├── codebase
    │   │   │   └── CSharpImports
    │   │   │       ├── Debug.csharp
    │   │   │       ├── Program.cs
    │   │   │       ├── Properties
    │   │   │       │   └── AssemblyInfo.cs
    │   │   │       └── Release.csharp
    │   │   ├── common.sharpmake.cs
    │   │   ├── CSharpImports-post.props
    │   │   ├── CSharpImports-pre.props
    │   │   ├── CSharpImports.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── csharpimports
    │   │           │   └── CSharpImports.vs2019.v4_7_2.csproj
    │   │           └── CSharpImportsSolution.vs2019.v4_7_2.sln
    │   ├── CSharpVsix
    │   │   ├── codebase
    │   │   │   └── CSharpVsix
    │   │   │       ├── CSharpVsix.vs2015.v4_5.csproj
    │   │   │       ├── HelloWorldCommand.cs
    │   │   │       ├── HelloWorldCommandPackage.cs
    │   │   │       ├── HelloWorldCommandPackage.vsct
    │   │   │       ├── index.html
    │   │   │       ├── Key.snk
    │   │   │       ├── Properties
    │   │   │       │   └── AssemblyInfo.cs
    │   │   │       ├── Resources
    │   │   │       │   ├── HelloWorldCommandPackage.ico
    │   │   │       │   └── HelloWorldCommand.png
    │   │   │       ├── source.extension.vsixmanifest
    │   │   │       ├── stylesheet.css
    │   │   │       └── VSPackage.resx
    │   │   ├── CSharpVsix.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── csharpvsix
    │   │           │   ├── CSharpVsix.vs2022.v4_7_2.csproj
    │   │           │   └── CSharpVsix.vs2022.v4_7_2.csproj.user
    │   │           └── CSharpVsixSolution.vs2022.v4_7_2.sln
    │   ├── CSharpWCF
    │   │   ├── codebase
    │   │   │   ├── CSharpWCF
    │   │   │   │   ├── app.config
    │   │   │   │   ├── Class1.cs
    │   │   │   │   ├── Properties
    │   │   │   │   │   └── AssemblyInfo.cs
    │   │   │   │   └── Service References
    │   │   │   │       └── ServiceReference
    │   │   │   │           ├── configuration91.svcinfo
    │   │   │   │           ├── configuration.svcinfo
    │   │   │   │           ├── CSharpWCF.ServiceReference.CompositeType.datasource
    │   │   │   │           ├── Reference.cs
    │   │   │   │           ├── Reference.svcmap
    │   │   │   │           ├── Service11.xsd
    │   │   │   │           ├── Service12.xsd
    │   │   │   │           ├── Service1.disco
    │   │   │   │           ├── Service1.wsdl
    │   │   │   │           └── Service1.xsd
    │   │   │   └── CSharpWCFApp
    │   │   │       ├── IService1.cs
    │   │   │       ├── Properties
    │   │   │       │   └── AssemblyInfo.cs
    │   │   │       ├── Service1.svc
    │   │   │       ├── Service1.svc.cs
    │   │   │       ├── Web.config
    │   │   │       ├── Web.Debug.config
    │   │   │       └── Web.Release.config
    │   │   ├── CSharpWCF.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── csharpwcf
    │   │           │   └── CSharpWCF.vs2015.v4_5_2.csproj
    │   │           ├── csharpwcfapp
    │   │           │   └── CSharpWCFApp.vs2015.v4_5_2.csproj
    │   │           └── CSharpWCFSolution.vs2015.v4_5_2.sln
    │   ├── CustomBuildStep
    │   │   ├── codebase
    │   │   │   └── filegeneration.bat
    │   │   └── CustomBuildStep.sharpmake.cs
    │   ├── Directory.Build.props
    │   ├── FastBuildSimpleExecutable
    │   │   ├── codebase
    │   │   │   └── main.cpp
    │   │   ├── FastBuildSimpleExecutable.sharpmake.cs
    │   │   └── reference
    │   │       ├── fastbuildsample_vs2019_win64_fastbuild.bff
    │   │       ├── fastbuildsample_vs2019_win64_fastbuild-globalsettings.bff
    │   │       ├── fastbuildsample_vs2019_win64_fastbuild.sln
    │   │       ├── fastbuildsample_vs2019_win64_msbuild.sln
    │   │       ├── fastbuildsample_vs2022_win64_fastbuild.bff
    │   │       ├── fastbuildsample_vs2022_win64_fastbuild-globalsettings.bff
    │   │       ├── fastbuildsample_vs2022_win64_fastbuild.sln
    │   │       ├── fastbuildsample_vs2022_win64_msbuild.sln
    │   │       ├── fastbuildsimpleexecutable_vs2019_win64_fastbuild.bff
    │   │       ├── fastbuildsimpleexecutable_vs2019_win64_fastbuild.vcxproj
    │   │       ├── fastbuildsimpleexecutable_vs2019_win64_fastbuild.vcxproj.filters
    │   │       ├── fastbuildsimpleexecutable_vs2019_win64_msbuild.vcxproj
    │   │       ├── fastbuildsimpleexecutable_vs2019_win64_msbuild.vcxproj.filters
    │   │       ├── fastbuildsimpleexecutable_vs2022_win64_fastbuild.bff
    │   │       ├── fastbuildsimpleexecutable_vs2022_win64_fastbuild.vcxproj
    │   │       ├── fastbuildsimpleexecutable_vs2022_win64_fastbuild.vcxproj.filters
    │   │       ├── fastbuildsimpleexecutable_vs2022_win64_msbuild.vcxproj
    │   │       └── fastbuildsimpleexecutable_vs2022_win64_msbuild.vcxproj.filters
    │   ├── HelloAndroid
    │   │   ├── codebase
    │   │   │   ├── exe
    │   │   │   │   ├── exe.sharpmake.cs
    │   │   │   │   ├── main.cpp
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   └── stdafx.h
    │   │   │   ├── HelloAndroid.sharpmake.cs
    │   │   │   ├── static_lib1
    │   │   │   │   ├── src
    │   │   │   │   │   ├── ensure_debug.cpp
    │   │   │   │   │   ├── ensure_release.cpp
    │   │   │   │   │   ├── pch.cpp
    │   │   │   │   │   ├── pch.h
    │   │   │   │   │   ├── util_static_lib1.cpp
    │   │   │   │   │   └── util_static_lib1.h
    │   │   │   │   └── static_lib1.sharpmake.cs
    │   │   │   └── static lib2
    │   │   │       ├── static_lib2.sharpmake.cs
    │   │   │       ├── sub folder
    │   │   │       │   ├── useless_static_lib2.cpp
    │   │   │       │   └── useless_static_lib2.h
    │   │   │       ├── util_static_lib2.cpp
    │   │   │       └── util_static_lib2.h
    │   │   ├── gradle
    │   │   │   ├── app
    │   │   │   │   └── build.app.gradle.template
    │   │   │   └── root
    │   │   │       ├── build.gradle
    │   │   │       ├── build.gradle.template
    │   │   │       ├── gradle
    │   │   │       │   └── wrapper
    │   │   │       │       ├── gradle-wrapper.jar
    │   │   │       │       ├── gradle-wrapper.properties
    │   │   │       │       └── gradle-wrapper.properties.template
    │   │   │       ├── gradlew.bat
    │   │   │       └── settings.gradle.template
    │   │   ├── HelloAndroid.CommonProject.sharpmake.cs
    │   │   ├── HelloAndroid.CommonSolution.sharpmake.cs
    │   │   ├── HelloAndroid.CommonTarget.sharpmake.cs
    │   │   ├── HelloAndroid.Main.sharpmake.cs
    │   │   └── resources
    │   │       ├── AndroidManifest.xml
    │   │       ├── AndroidManifest.xml.template
    │   │       ├── build.xml
    │   │       ├── project.properties
    │   │       └── res
    │   │           └── values
    │   │               └── strings.xml
    │   ├── HelloAndroidAgde
    │   │   ├── codebase
    │   │   │   ├── exe
    │   │   │   │   ├── exe.sharpmake.cs
    │   │   │   │   ├── main.cpp
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   └── stdafx.h
    │   │   │   ├── HelloAndroidAgde.sharpmake.cs
    │   │   │   ├── static_lib1
    │   │   │   │   ├── src
    │   │   │   │   │   ├── ensure_debug.cpp
    │   │   │   │   │   ├── ensure_release.cpp
    │   │   │   │   │   ├── pch.cpp
    │   │   │   │   │   ├── pch.h
    │   │   │   │   │   ├── util_static_lib1.cpp
    │   │   │   │   │   └── util_static_lib1.h
    │   │   │   │   └── static_lib1.sharpmake.cs
    │   │   │   └── static lib2
    │   │   │       ├── static_lib2.sharpmake.cs
    │   │   │       ├── sub folder
    │   │   │       │   ├── useless_static_lib2.cpp
    │   │   │       │   └── useless_static_lib2.h
    │   │   │       ├── util_static_lib2.cpp
    │   │   │       └── util_static_lib2.h
    │   │   ├── gradle
    │   │   │   ├── app
    │   │   │   │   ├── build.gradle
    │   │   │   │   └── test-keystore.jks
    │   │   │   └── root
    │   │   │       ├── build.gradle
    │   │   │       ├── gradle
    │   │   │       │   └── wrapper
    │   │   │       │       ├── gradle-wrapper.jar
    │   │   │       │       └── gradle-wrapper.properties
    │   │   │       ├── gradle.properties
    │   │   │       ├── gradlew.bat
    │   │   │       └── settings.gradle
    │   │   ├── HelloAndroidAgde.CommonProject.sharpmake.cs
    │   │   ├── HelloAndroidAgde.CommonSolution.sharpmake.cs
    │   │   ├── HelloAndroidAgde.CommonTarget.sharpmake.cs
    │   │   ├── HelloAndroidAgde.Main.sharpmake.cs
    │   │   └── resources
    │   │       ├── AndroidManifest.xml
    │   │       ├── build.xml
    │   │       └── project.properties
    │   ├── HelloAssembly
    │   │   ├── codebase
    │   │   │   ├── hello_world.asm
    │   │   │   ├── main.cpp
    │   │   │   └── sub folder
    │   │   │       └── utils.asm
    │   │   ├── HelloAssembly.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── helloassembly_vs2019_win64.sln
    │   │           ├── helloassembly_vs2019_win64.vcxproj
    │   │           └── helloassembly_vs2019_win64.vcxproj.filters
    │   ├── HelloClangCl
    │   │   ├── codebase
    │   │   │   ├── dll1
    │   │   │   │   ├── dll1.sharpmake.cs
    │   │   │   │   ├── dllmain.cpp
    │   │   │   │   ├── precomp.cpp
    │   │   │   │   ├── precomp.h
    │   │   │   │   ├── util_dll.cpp
    │   │   │   │   └── util_dll.h
    │   │   │   ├── exe
    │   │   │   │   ├── exe.sharpmake.cs
    │   │   │   │   ├── main.cpp
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   └── stdafx.h
    │   │   │   ├── HelloClangCl.sharpmake.cs
    │   │   │   ├── static_lib1
    │   │   │   │   ├── src
    │   │   │   │   │   ├── ensure_debug.cpp
    │   │   │   │   │   ├── ensure_release.cpp
    │   │   │   │   │   ├── pch.cpp
    │   │   │   │   │   ├── pch.h
    │   │   │   │   │   ├── util_static_lib1.cpp
    │   │   │   │   │   └── util_static_lib1.h
    │   │   │   │   └── static_lib1.sharpmake.cs
    │   │   │   └── static lib2
    │   │   │       ├── static_lib2.sharpmake.cs
    │   │   │       ├── sub folder
    │   │   │       │   ├── useless_static_lib2.cpp
    │   │   │       │   └── useless_static_lib2.h
    │   │   │       ├── util_static_lib2.cpp
    │   │   │       └── util_static_lib2.h
    │   │   ├── HelloClangCl.CommonProject.sharpmake.cs
    │   │   ├── HelloClangCl.CommonSolution.sharpmake.cs
    │   │   ├── HelloClangCl.CommonTarget.sharpmake.cs
    │   │   └── HelloClangCl.Main.sharpmake.cs
    │   ├── HelloEvents
    │   │   ├── codebase
    │   │   │   ├── dll1
    │   │   │   │   ├── dll1.sharpmake.cs
    │   │   │   │   ├── precomp.cpp
    │   │   │   │   ├── precomp.h
    │   │   │   │   ├── util_dll.cpp
    │   │   │   │   └── util_dll.h
    │   │   │   ├── exe
    │   │   │   │   ├── exe.sharpmake.cs
    │   │   │   │   ├── main.cpp
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   └── stdafx.h
    │   │   │   ├── HelloEvents.sharpmake.cs
    │   │   │   ├── static_lib1
    │   │   │   │   ├── src
    │   │   │   │   │   ├── ensure_debug.cpp
    │   │   │   │   │   ├── ensure_release.cpp
    │   │   │   │   │   ├── pch.cpp
    │   │   │   │   │   ├── pch.h
    │   │   │   │   │   ├── util_static_lib1.cpp
    │   │   │   │   │   └── util_static_lib1.h
    │   │   │   │   └── static_lib1.sharpmake.cs
    │   │   │   └── static lib2
    │   │   │       ├── static_lib2.sharpmake.cs
    │   │   │       ├── sub folder
    │   │   │       │   ├── useless_static_lib2.cpp
    │   │   │       │   └── useless_static_lib2.h
    │   │   │       ├── util_static_lib2.cpp
    │   │   │       └── util_static_lib2.h
    │   │   ├── HelloEvents.CommonProject.sharpmake.cs
    │   │   ├── HelloEvents.CommonSolution.sharpmake.cs
    │   │   ├── HelloEvents.CommonTarget.sharpmake.cs
    │   │   └── HelloEvents.Main.sharpmake.cs
    │   ├── HelloIOS
    │   │   ├── codebase
    │   │   │   ├── exe
    │   │   │   │   ├── exe.sharpmake.cs
    │   │   │   │   ├── ios
    │   │   │   │   │   ├── Info.plist
    │   │   │   │   │   ├── LaunchScreen.storyboard
    │   │   │   │   │   ├── main_ios.h
    │   │   │   │   │   ├── main_ios.mm
    │   │   │   │   │   ├── Main.storyboard
    │   │   │   │   │   ├── unittest
    │   │   │   │   │   │   ├── excluded_from_build.mm
    │   │   │   │   │   │   └── unittest.mm
    │   │   │   │   │   └── UnitTestInfo.plist
    │   │   │   │   ├── main.mm
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   └── stdafx.h
    │   │   │   ├── HelloIOS.sharpmake.cs
    │   │   │   ├── static_lib1
    │   │   │   │   ├── src
    │   │   │   │   │   ├── ensure_debug.cpp
    │   │   │   │   │   ├── ensure_release.cpp
    │   │   │   │   │   ├── pch.cpp
    │   │   │   │   │   ├── pch.h
    │   │   │   │   │   ├── util_static_lib1.h
    │   │   │   │   │   └── util_static_lib1.mm
    │   │   │   │   └── static_lib1.sharpmake.cs
    │   │   │   └── static lib2
    │   │   │       ├── static_lib2.sharpmake.cs
    │   │   │       ├── sub folder
    │   │   │       │   ├── useless_static_lib2.h
    │   │   │       │   └── useless_static_lib2.mm
    │   │   │       ├── util_static_lib2.h
    │   │   │       └── util_static_lib2.mm
    │   │   ├── HelloIOS.CommonProject.sharpmake.cs
    │   │   ├── HelloIOS.CommonSolution.sharpmake.cs
    │   │   ├── HelloIOS.CommonTarget.sharpmake.cs
    │   │   └── HelloIOS.Main.sharpmake.cs
    │   ├── HelloLinux
    │   │   ├── codebase
    │   │   │   ├── dll1
    │   │   │   │   ├── dll1.sharpmake.cs
    │   │   │   │   ├── precomp.cpp
    │   │   │   │   ├── precomp.h
    │   │   │   │   ├── util_dll.cpp
    │   │   │   │   └── util_dll.h
    │   │   │   ├── exe
    │   │   │   │   ├── exe.sharpmake.cs
    │   │   │   │   ├── main.cpp
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   └── stdafx.h
    │   │   │   ├── external_lib
    │   │   │   │   └── external_lib.sharpmake.cs
    │   │   │   ├── header-only-lib
    │   │   │   │   ├── header-only-lib.h
    │   │   │   │   └── header-only-lib.sharpmake.cs
    │   │   │   ├── HelloLinux.sharpmake.cs
    │   │   │   ├── lib_group
    │   │   │   │   ├── lib_group.sharpmake.cs
    │   │   │   │   ├── precomp.cpp
    │   │   │   │   ├── precomp.h
    │   │   │   │   ├── util_dll.cpp
    │   │   │   │   └── util_dll.h
    │   │   │   ├── static_lib1
    │   │   │   │   ├── src
    │   │   │   │   │   ├── ensure_debug.cpp
    │   │   │   │   │   ├── ensure_release.cpp
    │   │   │   │   │   ├── pch.cpp
    │   │   │   │   │   ├── pch.h
    │   │   │   │   │   ├── util_static_lib1.cpp
    │   │   │   │   │   └── util_static_lib1.h
    │   │   │   │   └── static_lib1.sharpmake.cs
    │   │   │   └── static lib2
    │   │   │       ├── static_lib2.sharpmake.cs
    │   │   │       ├── sub folder
    │   │   │       │   ├── useless_static_lib2.cpp
    │   │   │       │   └── useless_static_lib2.h
    │   │   │       ├── util_static_lib2.cpp
    │   │   │       └── util_static_lib2.h
    │   │   ├── Dockerfile
    │   │   ├── HelloLinux.CommonProject.sharpmake.cs
    │   │   ├── HelloLinux.CommonSolution.sharpmake.cs
    │   │   ├── HelloLinux.CommonTarget.sharpmake.cs
    │   │   ├── HelloLinux.Main.sharpmake.cs
    │   │   └── reference
    │   │       └── codebase
    │   │           └── temp
    │   │               ├── projects
    │   │               │   ├── dll1
    │   │               │   │   └── dll1_linux_make.make
    │   │               │   ├── exe
    │   │               │   │   └── exe_linux_make.make
    │   │               │   ├── header-only-lib
    │   │               │   │   └── header-only-lib_linux_make.make
    │   │               │   ├── lib_group
    │   │               │   │   └── lib_group_linux_make.make
    │   │               │   ├── static_lib1
    │   │               │   │   └── static_lib1_linux_make.make
    │   │               │   └── static lib2
    │   │               │       └── static lib2_linux_make.make
    │   │               └── solutions
    │   │                   └── HelloLinux_linux_make.make
    │   ├── HelloRust
    │   │   ├── codebase
    │   │   │   ├── cpp
    │   │   │   │   └── main.cpp
    │   │   │   └── hellorust
    │   │   │       ├── build.rs
    │   │   │       ├── Cargo.toml
    │   │   │       └── src
    │   │   │           └── lib.rs
    │   │   └── HelloRust.sharpmake.cs
    │   ├── HelloWorld
    │   │   ├── codebase
    │   │   │   ├── main.cpp
    │   │   │   ├── stdafx.cpp
    │   │   │   └── stdafx.h
    │   │   ├── HelloWorld.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── helloworld_vs2019_win32.sln
    │   │           ├── helloworld_vs2019_win32.vcxproj
    │   │           ├── helloworld_vs2019_win32.vcxproj.filters
    │   │           ├── helloworld_vs2019_win64.sln
    │   │           ├── helloworld_vs2019_win64.vcxproj
    │   │           └── helloworld_vs2019_win64.vcxproj.filters
    │   ├── HelloXCode
    │   │   ├── codebase
    │   │   │   ├── dll1
    │   │   │   │   ├── dll1.sharpmake.cs
    │   │   │   │   ├── precomp.cpp
    │   │   │   │   ├── precomp.h
    │   │   │   │   ├── util_dll.cpp
    │   │   │   │   └── util_dll.h
    │   │   │   ├── exe
    │   │   │   │   ├── exe.sharpmake.cs
    │   │   │   │   ├── main.cpp
    │   │   │   │   ├── stdafx.cpp
    │   │   │   │   ├── stdafx.h
    │   │   │   │   └── test.sc
    │   │   │   ├── exe_prelinked
    │   │   │   │   ├── exe_prelinked.sharpmake.cs
    │   │   │   │   └── main.cpp
    │   │   │   ├── HelloXCode.sharpmake.cs
    │   │   │   ├── static_lib+1
    │   │   │   │   ├── src
    │   │   │   │   │   ├── ensure_debug.cpp
    │   │   │   │   │   ├── ensure_release.cpp
    │   │   │   │   │   ├── pch.cpp
    │   │   │   │   │   ├── pch.h
    │   │   │   │   │   ├── util_static_lib1.cpp
    │   │   │   │   │   └── util_static_lib1.h
    │   │   │   │   └── static_lib1.sharpmake.cs
    │   │   │   ├── static lib2
    │   │   │   │   ├── static_lib2.sharpmake.cs
    │   │   │   │   ├── sub folder
    │   │   │   │   │   ├── useless_static_lib2.cpp
    │   │   │   │   │   └── useless_static_lib2.h
    │   │   │   │   ├── util_static_lib2.cpp
    │   │   │   │   └── util_static_lib2.h
    │   │   │   ├── static_prelinked_lib_consumed
    │   │   │   │   ├── src
    │   │   │   │   │   ├── static_prelinked_lib_consumed.cpp
    │   │   │   │   │   └── static_prelinked_lib_consumed.h
    │   │   │   │   └── static_prelinked_lib_consumed.sharpmake.cs
    │   │   │   └── static_prelinked_lib_consumer
    │   │   │       ├── src
    │   │   │       │   ├── static_prelinked_lib_consumer.cpp
    │   │   │       │   └── static_prelinked_lib_consumer.h
    │   │   │       └── static_prelinked_lib1.sharpmake.cs
    │   │   ├── external
    │   │   │   ├── additionsource
    │   │   │   │   └── additionsourceplaceholder.cpp
    │   │   │   ├── additionsourcetest.cpp
    │   │   │   ├── external.cpp
    │   │   │   └── external.h
    │   │   ├── HelloXCode.CommonProject.sharpmake.cs
    │   │   ├── HelloXCode.CommonSolution.sharpmake.cs
    │   │   ├── HelloXCode.CommonTarget.sharpmake.cs
    │   │   └── HelloXCode.Main.sharpmake.cs
    │   ├── JumboBuild
    │   │   ├── codebase
    │   │   │   ├── main.cpp
    │   │   │   ├── test1.cpp
    │   │   │   ├── test1.h
    │   │   │   ├── test2.cpp
    │   │   │   └── test2.h
    │   │   ├── JumboBuild.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── jumbobuild_vs2019_win32.sln
    │   │           ├── jumbobuild_vs2019_win32.vcxproj
    │   │           ├── jumbobuild_vs2019_win32.vcxproj.filters
    │   │           ├── jumbobuild_vs2019_win64.sln
    │   │           ├── jumbobuild_vs2019_win64.vcxproj
    │   │           └── jumbobuild_vs2019_win64.vcxproj.filters
    │   ├── NetCore
    │   │   ├── DotNetCoreFrameworkHelloWorld
    │   │   │   ├── codebase
    │   │   │   │   ├── HelloWorld
    │   │   │   │   │   └── Program.cs
    │   │   │   │   └── HelloWorldMultiframework
    │   │   │   │       ├── Program.cs
    │   │   │   │       └── Properties
    │   │   │   │           └── AssemblyInfo.cs
    │   │   │   ├── HelloWorld.sharpmake.cs
    │   │   │   └── reference
    │   │   │       └── projects
    │   │   │           ├── helloworld
    │   │   │           │   ├── HelloWorld.vs2017.netcore3_1.csproj
    │   │   │           │   └── HelloWorld.vs2019.netcore3_1.csproj
    │   │   │           ├── helloworldmultiframework
    │   │   │           │   └── HelloWorldMultiFramework.vs2022.csproj
    │   │   │           ├── HelloWorldMultiFrameworkSolution.vs2022.sln
    │   │   │           ├── HelloWorldSolution.vs2017.netcore3_1.sln
    │   │   │           └── HelloWorldSolution.vs2019.netcore3_1.sln
    │   │   ├── DotNetFrameworkHelloWorld
    │   │   │   ├── codebase
    │   │   │   │   ├── HelloWorld
    │   │   │   │   │   └── Program.cs
    │   │   │   │   └── HelloWorldMultiFramework
    │   │   │   │       └── Program.cs
    │   │   │   ├── HelloWorld.sharpmake.cs
    │   │   │   └── reference
    │   │   │       └── projects
    │   │   │           ├── helloworld
    │   │   │           │   ├── HelloWorld.vs2017.v4_6_1.csproj
    │   │   │           │   └── HelloWorld.vs2019.v4_7_2.csproj
    │   │   │           ├── helloworldmultiframework
    │   │   │           │   └── HelloWorldMultiFramework.vs2019.csproj
    │   │   │           ├── HelloWorldMultiFrameworkSolution.vs2019.sln
    │   │   │           ├── HelloWorldSolution.vs2017.v4_6_1.sln
    │   │   │           └── HelloWorldSolution.vs2019.v4_7_2.sln
    │   │   ├── DotNetMultiFrameworksHelloWorld
    │   │   │   ├── codebase
    │   │   │   │   ├── HelloWorldLib
    │   │   │   │   │   └── HelloWorldWriter.cs
    │   │   │   │   └── HelloWorldMultiframeworks
    │   │   │   │       ├── Program.cs
    │   │   │   │       └── Properties
    │   │   │   │           └── AssemblyInfo.cs
    │   │   │   ├── HelloWorld.sharpmake.cs
    │   │   │   └── reference
    │   │   │       └── projects
    │   │   │           ├── helloworldlib
    │   │   │           │   └── HelloWorldLib.vs2019.csproj
    │   │   │           ├── helloworldmultiframeworks
    │   │   │           │   └── HelloWorldMultiFrameworks.vs2019.csproj
    │   │   │           └── HelloWorldMultiFrameworksSolution.vs2019.sln
    │   │   └── DotNetOSMultiFrameworksHelloWorld
    │   │       ├── codebase
    │   │       │   ├── HelloWorldLib
    │   │       │   │   └── HelloWorldWriter.cs
    │   │       │   └── HelloWorldMultiframeworks
    │   │       │       ├── Program.cs
    │   │       │       └── Properties
    │   │       │           └── AssemblyInfo.cs
    │   │       ├── HelloWorld.sharpmake.cs
    │   │       └── reference
    │   │           └── codebase
    │   │               ├── helloworldlib
    │   │               │   └── HelloWorldLib.vs2022.csproj
    │   │               ├── helloworldmultiframeworks
    │   │               │   └── HelloWorldExe.vs2022.csproj
    │   │               └── temp
    │   │                   └── solutions
    │   │                       └── OSMultiFrameworksHelloWorldSolution.sln
    │   ├── PackageReferences
    │   │   ├── codebase
    │   │   │   ├── CPPPackageReferences
    │   │   │   │   └── main.cpp
    │   │   │   └── CSharpPackageReferences
    │   │   │       ├── Program.cs
    │   │   │       └── Properties
    │   │   │           └── AssemblyInfo.cs
    │   │   ├── PackageReferences.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── cpppackagereferences
    │   │           │   ├── cpppackagereferences.vs2017.v4_7_2.vcxproj
    │   │           │   ├── cpppackagereferences.vs2017.v4_7_2.vcxproj.filters
    │   │           │   ├── cpppackagereferences.vs2019.v4_7_2.vcxproj
    │   │           │   ├── cpppackagereferences.vs2019.v4_7_2.vcxproj.filters
    │   │           │   └── packages.config
    │   │           ├── csharppackagereferences
    │   │           │   ├── CSharpPackageReferences.vs2017.v4_7_2.csproj
    │   │           │   └── CSharpPackageReferences.vs2019.v4_7_2.csproj
    │   │           ├── PackageReferenceSolution.vs2017.v4_7_2.sln
    │   │           └── PackageReferenceSolution.vs2019.v4_7_2.sln
    │   ├── Properties
    │   │   └── launchSettings.json
    │   ├── QTFileCustomBuild
    │   │   ├── codebase
    │   │   │   ├── blank.png
    │   │   │   ├── exec.qrc
    │   │   │   ├── floatanglespinbox.cpp
    │   │   │   ├── floatanglespinbox.h
    │   │   │   ├── floatcosanglespinbox.cpp
    │   │   │   ├── floatcosanglespinbox.h
    │   │   │   ├── main.cpp
    │   │   │   ├── privatewidget.cpp
    │   │   │   ├── privatewidget.h
    │   │   │   ├── privatewidget.ui
    │   │   │   ├── stdafx.cpp
    │   │   │   └── stdafx.h
    │   │   ├── QTFileCustomBuild.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── qtfilecustombuild_vs2017_win64.sln
    │   │           ├── qtfilecustombuild_vs2017_win64.vcxproj
    │   │           └── qtfilecustombuild_vs2017_win64.vcxproj.filters
    │   ├── Samples.csproj
    │   ├── SimpleExeLibDependency
    │   │   ├── libstuff
    │   │   │   ├── hello.cpp
    │   │   │   └── hello.h
    │   │   ├── LibStuff.sharpmake.cs
    │   │   ├── reference
    │   │   │   └── projects
    │   │   │       ├── ExeLibSolutionName_vs2017_win64.sln
    │   │   │       ├── LibStuffProject_ProjectName.vcxproj
    │   │   │       ├── LibStuffProject_ProjectName.vcxproj.filters
    │   │   │       ├── SimpleExeProjectName_vs2017_win64.vcxproj
    │   │   │       └── SimpleExeProjectName_vs2017_win64.vcxproj.filters
    │   │   ├── SimpleExeLibDependency.sharpmake.cs
    │   │   └── src
    │   │       └── main.cpp
    │   ├── vcpkg
    │   │   ├── bootstrap-sample.bat
    │   │   ├── extern
    │   │   │   └── vcpkg.zip
    │   │   ├── readme.md
    │   │   ├── sharpmake
    │   │   │   ├── baseclasses.sharpmake.cs
    │   │   │   ├── externprojects.sharpmake.cs
    │   │   │   ├── main.sharpmake.cs
    │   │   │   └── projects.sharpmake.cs
    │   │   ├── src
    │   │   │   └── vcpkgsample
    │   │   │       └── main.cpp
    │   │   └── update-vcpkg-packages.bat
    │   └── XCodeProjects
    │       ├── BrightnessControl
    │       │   ├── BrightnessControl.h
    │       │   ├── BrightnessControl.mm
    │       │   └── BrightnessControl.sharpmake.cs
    │       ├── CLITool
    │       │   ├── CLITool.sharpmake.cs
    │       │   ├── main.mm
    │       │   ├── stdafx.cpp
    │       │   └── stdafx.h
    │       ├── extern
    │       │   ├── fmt
    │       │   │   ├── fmt.sharpmake.cs
    │       │   │   ├── include
    │       │   │   │   └── fmt
    │       │   │   │       ├── args.h
    │       │   │   │       ├── chrono.h
    │       │   │   │       ├── color.h
    │       │   │   │       ├── compile.h
    │       │   │   │       ├── core.h
    │       │   │   │       ├── format.h
    │       │   │   │       ├── format-inl.h
    │       │   │   │       ├── os.h
    │       │   │   │       ├── ostream.h
    │       │   │   │       ├── printf.h
    │       │   │   │       ├── ranges.h
    │       │   │   │       ├── std.h
    │       │   │   │       └── xchar.h
    │       │   │   └── src
    │       │   │       ├── fmt.cc
    │       │   │       ├── format.cc
    │       │   │       └── os.cc
    │       │   ├── includes
    │       │   │   └── MetalCpp
    │       │   │       └── Metal.hpp
    │       │   └── StoreKit
    │       │       └── StoreKit.sharpmake.cs
    │       ├── FromPasteboard
    │       │   ├── FromPasteboard.sharpmake.cs
    │       │   └── main.mm
    │       ├── GetBrightness
    │       │   ├── GetBrightness.sharpmake.cs
    │       │   └── main.mm
    │       ├── GotoVSCode
    │       │   ├── GotoVSCode.sharpmake.cs
    │       │   └── main.mm
    │       ├── GotoXCode
    │       │   ├── GotoXCode.sharpmake.cs
    │       │   └── main.mm
    │       ├── GUITool
    │       │   ├── GUITool.sharpmake.cs
    │       │   ├── main.mm
    │       │   ├── stdafx.cpp
    │       │   └── stdafx.h
    │       ├── HasDebugger
    │       │   ├── HasDebugger.sharpmake.cs
    │       │   └── main.mm
    │       ├── HelloKitConsumer
    │       │   ├── HelloKitConsumer.sharpmake.cs
    │       │   └── main.cpp
    │       ├── HelloKitFramework
    │       │   ├── Foobar
    │       │   │   └── Hoge.h
    │       │   ├── HelloKit.cpp
    │       │   ├── HelloKitFramework.sharpmake.cs
    │       │   ├── HelloKit.h
    │       │   └── Info-Framework.plist
    │       ├── intern
    │       │   └── includes
    │       │       └── Globals.h
    │       ├── MetalNoStoryboard
    │       │   ├── AppDelegate.h
    │       │   ├── AppDelegate.mm
    │       │   ├── exportOptions.plist
    │       │   ├── foobar2.dat
    │       │   ├── foobar.dat
    │       │   ├── Info-catalyst.plist
    │       │   ├── Info-ios.plist
    │       │   ├── Info.plist
    │       │   ├── Info-tvos.plist
    │       │   ├── main.mm
    │       │   ├── MetalNoStoryboardProject.sharpmake.cs
    │       │   ├── Renderer.h
    │       │   ├── Renderer.mm
    │       │   ├── ViewController.h
    │       │   └── ViewController.mm
    │       ├── MetalWithStoryboard
    │       │   ├── AppDelegate.h
    │       │   ├── AppDelegate.m
    │       │   ├── Assets.xcassets
    │       │   │   ├── AccentColor.colorset
    │       │   │   │   └── Contents.json
    │       │   │   ├── AppIcon.appiconset
    │       │   │   │   └── Contents.json
    │       │   │   ├── ColorMap.textureset
    │       │   │   │   ├── Contents.json
    │       │   │   │   └── Universal.mipmapset
    │       │   │   │       ├── ColorMap.png
    │       │   │   │       └── Contents.json
    │       │   │   └── Contents.json
    │       │   ├── Base-appkit.lproj
    │       │   │   └── Main.storyboard
    │       │   ├── Base-uikit.lproj
    │       │   │   ├── LaunchScreen.storyboard
    │       │   │   └── Main.storyboard
    │       │   ├── GameViewController.h
    │       │   ├── GameViewController.m
    │       │   ├── main.m
    │       │   ├── MetalWithStoryboard.sharpmake.cs
    │       │   ├── Renderer.h
    │       │   ├── Renderer.m
    │       │   ├── Shaders.metal
    │       │   └── ShaderTypes.h
    │       ├── OpenAppStore
    │       │   ├── main.mm
    │       │   └── OpenAppStore.sharpmake.cs
    │       ├── OpenSettings
    │       │   ├── main.mm
    │       │   └── OpenSettings.sharpmake.cs
    │       ├── ReadAppData
    │       │   ├── foobar.dat
    │       │   ├── huba
    │       │   │   ├── fuga.dat
    │       │   │   └── hoge.dat
    │       │   ├── main.mm
    │       │   └── ReadAppData.sharpmake.cs
    │       ├── README.md
    │       ├── SampleBundle
    │       │   ├── samplebundle.cpp
    │       │   └── SampleBundle.sharpmake.cs
    │       ├── SetBrightness
    │       │   ├── main.mm
    │       │   └── SetBrightness.sharpmake.cs
    │       ├── ShellExec
    │       │   ├── main.mm
    │       │   └── ShellExec.sharpmake.cs
    │       ├── ShowInFinder
    │       │   ├── main.mm
    │       │   └── ShowInFinder.sharpmake.cs
    │       ├── SysInfo
    │       │   ├── main.mm
    │       │   └── SysInfo.sharpmake.cs
    │       ├── ToPasteboard
    │       │   ├── main.mm
    │       │   └── ToPasteboard.sharpmake.cs
    │       ├── XCodeProjects.CommonProject.sharpmake.cs
    │       ├── XCodeProjects.CommonSolution.sharpmake.cs
    │       ├── XCodeProjects.CommonTargets.sharpmake.cs
    │       ├── XCodeProjects.Main.sharpmake.cs
    │       └── XCodeProjects.Solution.sharpmake.cs
    ├── SamplesDef.json
    ├── Sharpmake
    │   ├── Analyzer
    │   │   └── Analyzer.cs
    │   ├── Assembler.cs
    │   ├── AttributeParsers.cs
    │   ├── Attributes.cs
    │   ├── BuildContext
    │   │   ├── BaseBuildContext.cs
    │   │   ├── ConfigureDependencyAnalyzer.cs
    │   │   ├── GenerateAll.cs
    │   │   ├── RedirectOutput.cs
    │   │   └── RegressionTest.cs
    │   ├── Builder.cs
    │   ├── BuilderExtension.cs
    │   ├── CommandLine.cs
    │   ├── Configurable.cs
    │   ├── ConfigureCollection.cs
    │   ├── DebugBreaks.cs
    │   ├── DebugProjectGenerator.cs
    │   ├── DependencyTracker.cs
    │   ├── DotNetDependency.cs
    │   ├── DotNetReferenceCollection.cs
    │   ├── EnumExtensions.cs
    │   ├── Exception.cs
    │   ├── ExtensionLoader.cs
    │   ├── ExtensionMethods.cs
    │   ├── FakeFileTree.cs
    │   ├── FastBuildSettings.cs
    │   ├── FileListFilter.cs
    │   ├── FileSystemStringComparer.cs
    │   ├── GeneratedAssemblyConfig.cs
    │   ├── GenerationOutput.cs
    │   ├── GeneratorManager.cs
    │   ├── GlobalSuppressions.cs
    │   ├── IAssemblerContext.cs
    │   ├── ICommandLineInterface.cs
    │   ├── IFastBuildCompilerSettings.cs
    │   ├── IFileGenerator.cs
    │   ├── IPlatformDescriptor.cs
    │   ├── IResolverHelper.cs
    │   ├── IWindowsFastBuildCompilerSettings.cs
    │   ├── KitsRootPaths.cs
    │   ├── MSBuildGlobalSettings.cs
    │   ├── Options.Agde.cs
    │   ├── Options.Android.cs
    │   ├── Options.AndroidMakefile.cs
    │   ├── Options.Clang.cs
    │   ├── Options.cs
    │   ├── Options.CSharp.cs
    │   ├── Options.Makefile.cs
    │   ├── Options.Vc.cs
    │   ├── Options.XCode.cs
    │   ├── PackageReferences.cs
    │   ├── PackageReferences.Template.cs
    │   ├── PathUtil.cs
    │   ├── PlatformAttributes.cs
    │   ├── PlatformEventArgs.cs
    │   ├── PlatformExceptions.cs
    │   ├── PlatformRegistry.cs
    │   ├── PreprocessorConditionParser.cs
    │   ├── Project.Configuration.cs
    │   ├── Project.cs
    │   ├── Properties
    │   │   └── AssemblyInfo.cs
    │   ├── ReferenceAlias.cs
    │   ├── RegexCache.cs
    │   ├── Resolver.cs
    │   ├── RustProject.cs
    │   ├── Sharpmake.csproj
    │   ├── SharpmakeExtension.cs
    │   ├── Solution.Configuration.cs
    │   ├── Solution.cs
    │   ├── SourceAttributeParser.cs
    │   ├── Strings.cs
    │   ├── Target.cs
    │   ├── ThreadPool.cs
    │   ├── Tools.cs
    │   ├── TrackedConfiguration.cs
    │   ├── TrackedProject.cs
    │   ├── UniqueList.cs
    │   ├── Util.cs
    │   └── VariableAssignment.cs
    ├── Sharpmake.Application
    │   ├── app.manifest
    │   ├── CommandLineArguments.cs
    │   ├── Program.cs
    │   ├── Properties
    │   │   └── AssemblyInfo.cs
    │   └── Sharpmake.Application.csproj
    ├── Sharpmake.FunctionalTests
    │   ├── FastBuildFunctionalTest
    │   │   ├── codebase
    │   │   │   ├── AllCppWithDotCExe
    │   │   │   │   ├── hello_c.c
    │   │   │   │   ├── hello_c.h
    │   │   │   │   └── main.cpp
    │   │   │   ├── ExplicitlyOrderedPostBuildTest
    │   │   │   │   └── main.cpp
    │   │   │   ├── MixCppAndCExe
    │   │   │   │   ├── hello_c.c
    │   │   │   │   ├── hello_c.h
    │   │   │   │   └── main.cpp
    │   │   │   ├── PostBuildCopyDirTest
    │   │   │   │   ├── dummyfile_to_be_copied_to_buildoutput.txt
    │   │   │   │   └── main.cpp
    │   │   │   ├── PostBuildCopySingleFileTest
    │   │   │   │   └── main.cpp
    │   │   │   ├── PostBuildExecuteTest
    │   │   │   │   └── main.cpp
    │   │   │   ├── PostBuildStampTest
    │   │   │   │   └── main.cpp
    │   │   │   ├── PostBuildTestExecution
    │   │   │   │   └── main.cpp
    │   │   │   ├── RequirePreBuildStep
    │   │   │   │   ├── execute.bat
    │   │   │   │   └── main.cpp
    │   │   │   ├── SimpleExeWithLib
    │   │   │   │   └── main.cpp
    │   │   │   ├── SimpleLib
    │   │   │   │   └── simplelib.cpp
    │   │   │   ├── SpanMultipleSrcDirs
    │   │   │   │   ├── additional_dir
    │   │   │   │   │   ├── extra_class1.cpp
    │   │   │   │   │   ├── extra_class1.h
    │   │   │   │   │   ├── extra_class2.cpp
    │   │   │   │   │   ├── extra_class2.h
    │   │   │   │   │   └── extra_file.cpp
    │   │   │   │   ├── dir_individual_files
    │   │   │   │   │   ├── floating_class.cpp
    │   │   │   │   │   ├── floating_class.h
    │   │   │   │   │   ├── floating_file.cpp
    │   │   │   │   │   └── floating_file_not_used.cpp
    │   │   │   │   ├── dir_not_used
    │   │   │   │   │   └── not_used.cpp
    │   │   │   │   ├── main_dir
    │   │   │   │   │   ├── main.cpp
    │   │   │   │   │   ├── util.cpp
    │   │   │   │   │   └── util.h
    │   │   │   │   └── temp
    │   │   │   │       └── isolate_list.txt
    │   │   │   └── UsePrecompExe
    │   │   │       ├── main.cpp
    │   │   │       ├── noprecomp_util.cpp
    │   │   │       ├── noprecomp_util.h
    │   │   │       ├── precomp.cpp
    │   │   │       ├── precomp.h
    │   │   │       ├── util.cpp
    │   │   │       ├── util.h
    │   │   │       ├── util_noprecomp.cpp_
    │   │   │       ├── util_noprecomp_excludedbyextension.ceepeepee
    │   │   │       ├── util_noprecomp_excludedbyextension.h
    │   │   │       ├── util_noprecomp.h_
    │   │   │       ├── util_withprecomp_weirdextension.ceecee
    │   │   │       └── util_withprecomp_weirdextension.h
    │   │   ├── FastBuildFunctionalTest.sharpmake.cs
    │   │   └── reference
    │   │       └── projects
    │   │           ├── explicitlyorderedpostbuildtest_vs2019_win64.bff
    │   │           ├── explicitlyorderedpostbuildtest_vs2019_win64.vcxproj
    │   │           ├── explicitlyorderedpostbuildtest_vs2019_win64.vcxproj.filters
    │   │           ├── fastbuildfunctionaltest_all.bff
    │   │           ├── fastbuildfunctionaltest_all.vcxproj
    │   │           ├── fastbuildfunctionaltest.bff
    │   │           ├── fastbuildfunctionaltest-globalsettings.bff
    │   │           ├── fastbuildfunctionaltest.sln
    │   │           ├── mixcppandcexe_vs2019_win64.bff
    │   │           ├── mixcppandcexe_vs2019_win64.vcxproj
    │   │           ├── mixcppandcexe_vs2019_win64.vcxproj.filters
    │   │           ├── postbuildcopydirtest_vs2019_win64.bff
    │   │           ├── postbuildcopydirtest_vs2019_win64.vcxproj
    │   │           ├── postbuildcopydirtest_vs2019_win64.vcxproj.filters
    │   │           ├── postbuildcopysinglefiletest_vs2019_win64.bff
    │   │           ├── postbuildcopysinglefiletest_vs2019_win64.vcxproj
    │   │           ├── postbuildcopysinglefiletest_vs2019_win64.vcxproj.filters
    │   │           ├── postbuildexecutetest_vs2019_win64.bff
    │   │           ├── postbuildexecutetest_vs2019_win64.vcxproj
    │   │           ├── postbuildexecutetest_vs2019_win64.vcxproj.filters
    │   │           ├── postbuildstamper_vs2019_win64.bff
    │   │           ├── postbuildstamper_vs2019_win64.vcxproj
    │   │           ├── postbuildstamper_vs2019_win64.vcxproj.filters
    │   │           ├── postbuildstamptest_vs2019_win64.bff
    │   │           ├── postbuildstamptest_vs2019_win64.vcxproj
    │   │           ├── postbuildstamptest_vs2019_win64.vcxproj.filters
    │   │           ├── postbuildtestexecution_vs2019_win64.bff
    │   │           ├── postbuildtestexecution_vs2019_win64.vcxproj
    │   │           ├── postbuildtestexecution_vs2019_win64.vcxproj.filters
    │   │           ├── requireprebuildstep_vs2019_win64.bff
    │   │           ├── requireprebuildstep_vs2019_win64.vcxproj
    │   │           ├── requireprebuildstep_vs2019_win64.vcxproj.filters
    │   │           ├── simpleexewithlib_vs2019_win64.bff
    │   │           ├── simpleexewithlib_vs2019_win64.vcxproj
    │   │           ├── simpleexewithlib_vs2019_win64.vcxproj.filters
    │   │           ├── simplelib_vs2019_win64.bff
    │   │           ├── simplelib_vs2019_win64.vcxproj
    │   │           ├── simplelib_vs2019_win64.vcxproj.filters
    │   │           ├── spanmultiplesrcdirsfbnoblobexclude_vs2019_win64.bff
    │   │           ├── spanmultiplesrcdirsfbnoblobexclude_vs2019_win64.vcxproj
    │   │           ├── spanmultiplesrcdirsfbnoblobexclude_vs2019_win64.vcxproj.filters
    │   │           ├── spanmultiplesrcdirsfbnoblobinclude_vs2019_win64.bff
    │   │           ├── spanmultiplesrcdirsfbnoblobinclude_vs2019_win64.vcxproj
    │   │           ├── spanmultiplesrcdirsfbnoblobinclude_vs2019_win64.vcxproj.filters
    │   │           ├── spanmultiplesrcdirsfbunityexclude_vs2019_win64.bff
    │   │           ├── spanmultiplesrcdirsfbunityexclude_vs2019_win64.vcxproj
    │   │           ├── spanmultiplesrcdirsfbunityinclude_vs2019_win64.bff
    │   │           ├── spanmultiplesrcdirsfbunityinclude_vs2019_win64.vcxproj
    │   │           ├── spanmultiplesrcdirsfbunityisolate_vs2019_win64.bff
    │   │           ├── spanmultiplesrcdirsfbunityisolate_vs2019_win64.vcxproj
    │   │           ├── useprecompexe_vs2019_win64.bff
    │   │           ├── useprecompexe_vs2019_win64.vcxproj
    │   │           └── useprecompexe_vs2019_win64.vcxproj.filters
    │   ├── NoAllFastBuildProjectFunctionalTest
    │   │   ├── codebase
    │   │   │   ├── LibA
    │   │   │   │   ├── LibA.cpp
    │   │   │   │   └── LibA.h
    │   │   │   ├── LibB
    │   │   │   │   ├── LibB.cpp
    │   │   │   │   └── LibB.h
    │   │   │   ├── LibC
    │   │   │   │   ├── LibC.cpp
    │   │   │   │   └── LibC.h
    │   │   │   ├── MainProject
    │   │   │   │   └── main.cpp
    │   │   │   ├── TestsA
    │   │   │   │   └── TestsA.cpp
    │   │   │   ├── TestsB
    │   │   │   │   └── TestsB.cpp
    │   │   │   └── TestsC
    │   │   │       └── TestsC.cpp
    │   │   └── NoAllFastBuildProjectFunctionalTest.sharpmake.cs
    │   ├── OnlyNeededFastBuildTest
    │   │   ├── codebase
    │   │   │   ├── SomeExeWithLib
    │   │   │   │   └── main.cpp
    │   │   │   ├── SomeLib
    │   │   │   │   └── somelib.cpp
    │   │   │   └── SomeStandaloneExe
    │   │   │       └── main.cpp
    │   │   └── OnlyNeededFastBuildTest.sharpmake.cs
    │   ├── Properties
    │   │   └── launchSettings.json
    │   ├── Sharpmake.FunctionalTests.csproj
    │   └── SharpmakePackageFunctionalTest
    │       ├── codebase
    │       │   └── SimpleProject
    │       │       └── SimpleProject.cs
    │       ├── SharpmakePackageFunctionalTest.sharpmake.cs
    │       └── SharpmakePackage.sharpmake.cs
    ├── Sharpmake.Generators
    │   ├── Apple
    │   │   ├── XCodeProj.cs
    │   │   ├── XCodeProj.Template.cs
    │   │   ├── XCode.Util.cs
    │   │   ├── XCWorkspace.cs
    │   │   └── XCWorkspace.Template.cs
    │   ├── CompilerSettings.cs
    │   ├── FastBuild
    │   │   ├── Bff.cs
    │   │   ├── Bff.Template.cs
    │   │   ├── Bff.Util.cs
    │   │   ├── IBffGenerationContext.cs
    │   │   ├── IClangPlatformBff.cs
    │   │   ├── IMicrosoftPlatformBff.cs
    │   │   ├── IPlatformBff.cs
    │   │   └── MasterBff.cs
    │   ├── FileGenerator.cs
    │   ├── FileGeneratorUtilities.cs
    │   ├── GeneratorManager.cs
    │   ├── Generic
    │   │   ├── JsonCompilationDatabase.cs
    │   │   ├── MakeApplication.cs
    │   │   ├── MakeApplication.Template.cs
    │   │   ├── Makefile.cs
    │   │   ├── Makefile.Template.cs
    │   │   ├── MakeProject.cs
    │   │   └── MakeProject.Template.cs
    │   ├── IGenerationContext.cs
    │   ├── Properties
    │   │   └── AssemblyInfo.cs
    │   ├── Sharpmake.Generators.csproj
    │   ├── VisualStudio
    │   │   ├── Androidproj.cs
    │   │   ├── Androidproj.Template.cs
    │   │   ├── Csproj.cs
    │   │   ├── Csproj.Template.cs
    │   │   ├── IPlatformVcxproj.cs
    │   │   ├── IVcxprojGenerationContext.cs
    │   │   ├── LaunchSettingsJson.cs
    │   │   ├── PackagesConfig.cs
    │   │   ├── PackagesConfig.Template.cs
    │   │   ├── ProjectJson.cs
    │   │   ├── ProjectJson.Template.cs
    │   │   ├── ProjectOptionsGenerator.cs
    │   │   ├── Pyproj.cs
    │   │   ├── Pyproj.Template.cs
    │   │   ├── Sln.cs
    │   │   ├── Sln.Template.cs
    │   │   ├── UserFile.cs
    │   │   ├── Vcxproj.cs
    │   │   ├── Vcxproj.Template.cs
    │   │   ├── VsProjCommon.cs
    │   │   ├── VsProjCommon.Template.cs
    │   │   └── VsUtil.cs
    │   └── XmlFileGenerator.cs
    ├── Sharpmake.Platforms
    │   └── Sharpmake.CommonPlatforms
    │       ├── Android
    │       │   ├── AndroidAgdePlatform.Bff.Template.cs
    │       │   ├── AndroidAgdePlatform.cs
    │       │   ├── AndroidFragments.cs
    │       │   ├── AndroidPlatformAgde.Vcxproj.Template.cs
    │       │   ├── AndroidPlatform.cs
    │       │   ├── AndroidPlatform.Vcxproj.Template.cs
    │       │   ├── GlobalSettings.cs
    │       │   └── Util.cs
    │       ├── Apple
    │       │   ├── BaseApplePlatform.Bff.Template.cs
    │       │   ├── BaseApplePlatform.cs
    │       │   ├── iOsPlatform.cs
    │       │   ├── MacCatalystPlatform.cs
    │       │   ├── MacOsPlatform.cs
    │       │   ├── tvOsPlatform.cs
    │       │   └── watchOsPlatform.cs
    │       ├── BaseMicrosoftPlatform.cs
    │       ├── BaseMicrosoftPlatform.Vcxproj.Template.cs
    │       ├── BasePlatform.cs
    │       ├── BasePlatform.Vcxproj.Template.cs
    │       ├── DefaultPlatform.cs
    │       ├── DotNetPlatform.cs
    │       ├── Linux
    │       │   ├── GlobalSettings.cs
    │       │   ├── LinuxOptions.cs
    │       │   ├── LinuxPlatform.Bff.Template.cs
    │       │   ├── LinuxPlatform.cs
    │       │   └── LinuxPlatform.Vcxproj.Template.cs
    │       ├── Properties
    │       │   └── AssemblyInfo.cs
    │       ├── Sharpmake.CommonPlatforms.csproj
    │       └── Windows
    │           ├── BaseWindowsPlatform.cs
    │           ├── ClangForWindowsSettings.cs
    │           ├── Win32Platform.cs
    │           ├── Win64EnvironmentVariableResolver.cs
    │           └── Win64Platform.cs
    ├── Sharpmake.sln
    ├── Sharpmake.sln.DotSettings
    ├── Sharpmake.UnitTests
    │   ├── BffUnityResolverTest.cs
    │   ├── CommandLineTest.cs
    │   ├── ConfigureAttributesTest.cs
    │   ├── CSharpDependencyPropagationTest.cs
    │   ├── CsprojTest.cs
    │   ├── DependencyPropagationTest.cs
    │   ├── DotNetReferenceCollectionTest.cs
    │   ├── JsonSerializerTest.cs
    │   ├── KitsRootPathsTests.cs
    │   ├── OrderableStringsTests.cs
    │   ├── PackageReferencesTest.cs
    │   ├── ResolverTest.cs
    │   ├── SharpmakeFileParserTest.cs
    │   ├── Sharpmake.UnitTests.csproj
    │   ├── StringsTests.cs
    │   ├── TargetTests.cs
    │   ├── TestFileGenerator.cs
    │   ├── TestProjectBuilder.cs
    │   ├── TestsSetup.cs
    │   ├── TestXcodeProjectGenerator.cs
    │   ├── UniqueListTests.cs
    │   └── UtilTest.cs
    ├── tools
    │   └── FastBuild
    │       ├── LICENSE.TXT
    │       ├── Linux-x64
    │       │   └── fbuild
    │       ├── OSX-x64
    │       │   └── FBuild
    │       └── Windows-x64
    │           └── FBuild.exe
    └── UpdateSamplesOutput.bat

343 directories, 929 files

标签:

实例下载地址

Sharpmake:高效的C#项目和解决方案生成器

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警