Releases: ubisoft/Sharpmake
Releases · ubisoft/Sharpmake
Sharpmake 0.23.0
New features / improvements
- Support AGDE PreApkInstallCommands and PostApkInstallCommands 8657f305
- Update LangVersion to C# 10 7e26d9a0
- Feature: Add platform 'catalyst' (for Mac Catalyst) f2970224
- Add support for tagging a shared object with a build id. 492c1dda
- Feature: add platform watchOS e0342e72
- Feature: Add platform tvos 345212c8
- Introduce cleanup context for debug solution 307f743b
- Refactor: add DevEnv.xcode to replace DevEnv.xcode4ios 340374b5
- Add portable debug types for C# projects ae9bff3f
- feat: Support GenerateBindingRedirectsOutputType option 03d1331f
Bug fixes
- Restore original value for DebugType.None 4a40634e
- avoid folder hierarchy messing up and the wrong filename in the project c9ec5bba
- support to get SystemFrameworks from dependencies 2809f72e
- Mark enum value DevEnv.xcode4ios as obsolete and throw error when used 6de8dadb
- Skip tests samples updating of reference files for tests not used in regression tests. 90f795d4
- Fix sharpmake execution for helloclangcl in github ci. ce5f1cff
- Fix missing nuget package reference when the Target Framework contains an... 6dfcc05e
- Cache some extensive file/directory.exists improving /diagnostics performance. ff268e6f
Sharpmake 0.22.2
New features / improvements
- Optimize PlatformRegistry 1312a94f
- Project.Configuration.BuildDependencyNodeTree optimization d3c803d2
- Optimize Targets.Initialize() a6350270
- Optimize Bff.Generate() 429755b7
- Minor optimization in MasterBff.Generate() 1d25bf72
- Refactoring of IFileGenerator and FileGenerator interface 3f8604e3
- Optimize Project.GetConfiguration() 140a11a1
- Testing ServerGC is active. 37fa5f27
- Util class methods optimizations 25af50f7
Bug fixes
- Fix spelling a0ce84b1
Sharpmake 0.22.1
New features / improvements
- Do not link or reference dotnet build-order dependencies 723c8384
Bug fixes
Sharpmake 0.22.0
Important notes
Sharpmake executable is now built using .net6 and cannot be built with .net framework anymore.
New features / improvements
- Preparation for some upcoming refactoring in IFileGenerator and FileGenerator. 5f6db7e2
- Add basic support for using net 7.0 in target fragment a7644ff6
- Updated UpdateSampleOutput batch file to use .net 6.0 executable 1c6652c6
- Sharpmake is now using .net 6.0 instead of .net 5.0 e9b72682
- Kill .net 4.7.2 version of sharpmake and some related refactoring 8c215bf5
- Switch to using server garbage collection for sharpmake application, for some nice speedups a36bfa45
- Add build assembly/reference support in Builder/Assembler f7aba1ce
- Add FastBuild UnityInputIsolateListFile support 11d58824
- Add precompiled header output file name 36c48fbe
- Add missing CppLanguageStandard.CPP20 for NMake Intellisense helper. a69628fb
Bug fixes
- Fix for handling multiple files with same names 413fee42
- Fix generated iOS project can't be loaded issue 9deb6a92
- fix the first path separator might miss in PathUtil.FindCommonRootPath() on unix-like os 0461670f
- Fix unit test for CLR projects e9ae348d
- Wrap custom command in quotes when using MSBuild 9120c431
- Fixed support of RTTI flag in CLR project 823ed2e1
- fixed DebugProject.ProjectPath 9818883c
Sharpmake 0.21.1
New features / improvements
- Update dependency to Newtonsoft.Json in PackageReferences sample to make Github security happy 023fa25d
- [DebugSolution] Improve file sorting in the debug projects 69f48ab0
- Add new utility method to find the common root path in a list of paths 61acf806
- [Linux] Add new option to choose the C++ Standard Library to use: Linux.Options.General.StdLib 1425773e
- Added apk name to fastbuild properties of agde fastbuild project file df08e4a5
- added a /debugSolutionDevEnv cmdline to be able to customize the devenv... e39e31c1
- support cpp20 for Xcode c9d24243
- Add new Default entry for OpenMP option, to get the default compiler option and not write it in either bff nor vcxproj b5956f2a
Bug fixes
- Change implementation of Solution.Configuration.IncludeOnlyNeededFastBuildProjects to fix inconsistencies in sln and masterbff 4901d0bb
- Fix arguments when debugging the functional tests from the sharpmake solution 00d29217
- Ignore duplicated dll when present in the dotnet runtime 88e71724
- Remove duplicate implementation of option XCode.Compiler.LibraryStandard 33c92c44
- CI: Disable HelloAndroid until we find time to fix it following Github VM update f017b198
- Fix the intellisense NMake parameter for C++17 04ba1128
- Fix vs2022 override, RTM version started using the proper toochain version in VCInstallDir dd9358b9
Full Changelog
Sharpmake 0.21.0
New features / improvements
- Fix determinism in UnityResolver and introduce FragmentHashUnityResolver 69a9d688
- [CI] Update Android build-tools version when symlinking dx.bat and dx.jar 36c74111
- [AndroidSample] Update Gradle to 7.0.2, and remove now un-necessary workaround in the CI (symlinks of d8 to dx) - Replace/remove deprecated properties - Use JAVA11 96cbae21
- [Android] Disable LTO by default on all optimizations 086298d5
- Initial AGDE FastBuild support 2b0a96d2
Bug fixes
Sharpmake 0.20.2
Sharpmake 0.20.1
New features / improvements
- Add support for WinSDK 11 22H2 (10.0.22621) f5917635
Bug fixes
- custom pre-build steps ids were broken between the consumer and definition d16f0be7
- [Bff|Linux] Fix regression when sysroot option is not used, the LinkerOptions was removed from the bff, creating errors 6d8a0bd5
Full Changelog: 0.20.0...0.20.1
Sharpmake 0.20.0
New features / improvements
- [NuGet/C++] Add support for nuget packages in c++ * Rename existing PackageReference sample to CSharpPackageReference and add C++ version 281bd887
- [Linux|Bff] Add new linux SysRoot PathOption 263f8b62
- Add support for WarningsAsErrors for C# projects (#187) 85fc91cf
- [.NET Core] Add options for PublishSingleFile and PublishTrimmed (#181) 5b0d2de5
- Added support for FileVersion, Version, Product and Copyright fields in C# projects (#186) a0f691fa
- Add support for 'nullable' field in C# projects (#188) 2c2e0992
- Added support for Protobuf-includes in C# projects (#190) 487190da
- Added proper support for .Net Core/.Net 5.0 C++/CLI project support (#194) cf1c3f2c
- ClangForWindowsSettings : allow user to override LLVM's windows lib directory 1fcec5f4
- Add the possibility for a platform to register extra stamp events f424cac9
- Add an option FastBuildSupportLinkerStampList to FastBuildSettings, to indicate if the fastbuild exe that's used support multi stamping (that's a feature that's only in the internal fastbuild fork atm) f424cac9
- Use the extra stamp events on linux to strip debug symbol info, that will fix un-necessary rebuilds when cross compiling with FastBuild for linux f424cac9
- Inform msbuild to use static graph evaluation when restoring nuget packages, this should speed it up 41c6be9a
- Add a property to IPlatformDescriptor indicating if the platform invokes the compiler for the link, which means that linker arguments need to be prefixed wit -Wl, with clang for instance e3142832
- Support string macro of Android project 6608365f
- Bump actions/checkout from 2 to 3.0.2 bffe1027
- Use string macro directly on agde c56a17fc
- Enable string macro on agde 4cdc5e98
- [Linux] Add the option of stripping the debug symbols from the exe and keep them in a separate file a41b6f5f
- Bump actions/upload-artifact from 2 to 3 920aade8
- Bump actions/download-artifact from 2 to 3 59e49264
- Add support for Rust projects 8020f251
- Ignore case when sorting configurations in vsproj 867fe2f7
- [Bff] Ignore case when sorting individual files alphabetically 09c0ee38
- add support for buildMultitargeting and buildTransitive in AssetDependency e3a6eaab
- Added support for FrameworkReference-elements to support proper method of including ASP.Net See https://docs.microsoft.com/en-us/aspnet/core/fundamentals/target-aspnetcore?view=aspnetcore-5.0&tabs=visual-studio da7eb708
- Add support for the DefaultItemExcludes property in C# projects 6c7ab26a
- [Errors] Add type name to parameter not found exception to help diagnose issue quicker. 5f895fe6
Bug fixes
- [Bff] Fix undeclared config error when multiple master bff are used and project bff contain multiple platforms 6fe596c3
- [Linux|Vcxproj] Properly indent the vcxproj sections 260b72ab
- Fix map file generation on Apple platforms, map needs to be lowercase for ld to understand it 12a6c9d1
- fix: missing setter for conf.AddFastBuildProjectToSolutionCallback 42e14488
- fix: C language std in bff b98be87c
- Fixes an issue with Linux vcxproj generation. bffba15e
- [Android|Vsproj] Filter the list of configurations by platform to fix retrieval of options that must be identical across all configurations fc45e27a
- [Linux|Vcxproj] Improve conditional on the Globals property group to prevent polluting the x64 platform 3352f888
- Fix typos in PackageReferences.AssetsDependency 8f9f24aa
- Throw an error in case the platform toolset is not Default for Platform.agde f2aa5f80
- Fix Android AGDE MSBuild overrides f9cc7da9
- Fix base class call in Android platform 4f4791a1
- Fix Android AGDE CppLanguageStandard 8d66bd5b
- Make the Platform.agde comment follow xmldoc 7c5ec0bc
Sharpmake 0.19.1
New features / improvements
- Add support for mixed/partial .Net C++ projects 73ede621
- [LinuxOnWindows] Add an option to set the PlatformToolset instead of hardcoding Remote_GCC_1_0 a760cc3b
- [FastBuildAll] Propagate the first project conf options to the FastBuildAll conf ddde6211
Bug fixes
- Fixed issue with ApplicationIcon being written as absolute and not as relative. a17e80a4
- Fix remote debugging and remove platform test from Sharpmake's core to put it in the linux module instead ccc243ae
- Fix indentation and content of nmake vcxproj to closer match what VisualStudio does 9f9c4015
- Remove $(ProjectDir) from linux nmake template, since it's plain wrong 9f9c4015
- Make unix path conversion utilities public ee9f8b6c