Skip to content

Releases: ubisoft/Sharpmake

Sharpmake 0.21.1

19 Aug 06:18
0.21.1
f1234fb
Compare
Choose a tag to compare

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

0.21.0...0.21.1

Sharpmake 0.21.0

07 Jul 12:49
0.21.0
2fd4786
Compare
Choose a tag to compare

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

  • [AndroidAgde] Multiple fixes for Android AGDE 4d5de640
  • [AndroidAgde|FastBuild] Fix librarian used with NDK above 22, as GNU binutils were removed we need to use LLVM binutils ff7c8e51
  • Fixed linking of shared libraries with AGDE 4067dace
  • Fixed constant recompiling issue with agde 59c3a162

Sharpmake 0.20.2

13 Jun 08:02
0.20.2
154af26
Compare
Choose a tag to compare

New features / improvements

  • [Vcxproj] Add a property in conf to allow disabling the vc overrides when writing some vcxproj 83e8d148
  • Propagate WriteVcOverrides to FastBuildAll project 3244b755

Bug fixes

  • Fix android build by removing inclusion of android native app glue 6d89058f
  • [Android] Fix compatibility of VS2019 props with recent NDKs by forcing HostTag 206808e7

Sharpmake 0.20.1

06 Jun 14:14
0.20.1
1809504
Compare
Choose a tag to compare

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

25 May 12:50
0.20.0
8f42be5
Compare
Choose a tag to compare

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

21 Mar 14:06
0.19.1
eab7d8b
Compare
Choose a tag to compare

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

Sharpmake 0.19.0

08 Mar 14:19
0.19.0
6c15b02
Compare
Choose a tag to compare

New features / improvements

  • Add an option to allow the copy of pdb files to dependents even in Export projects 7b179a1b
  • [GithubActions] Prettify the xcodebuild output 1c9ad2dd
  • New xcode options (Single prelink) 3ac4925a
  • Add a ForceGenerateFastBuildAll flag in Solution. bf2435d9
  • Add FastBuildSettings.WorkspaceRoot, to optionally override the root directory under which paths can be expressed relative to one another in bff files (default is Project.RootPath). d15c5d15
  • [New][Bff] Record the unity files in the auto cleanup db, so we can auto remove stale ones a0c127ea

Bug fixes

  • [CI] Force use windows-2019 for functional tests and samples bfe983dc
  • [Bff] Put the input files just after the output file in the linker node This can fix duplicate symbol issues when using lld-link that doesn't behave exactly as link when it comes to ordering 31e14856
  • Fix WinFormSubTypes serialization eba20e8c
  • convert CSProjSubTypeInfos fields to members 01a7d3bf

Sharpmake 0.18.3

24 Jan 14:34
0.18.3
e4da5b5
Compare
Choose a tag to compare

Important notes

  • Deprecate Solution.PerforceRootPath and Project.PerforceRootPath, scc info shouldn't be stored in project or solution files a7335d29

New features / improvements

  • New experimental feature: allow skipping FastBuild projects from the solution when they are not really necessary The new behavior is activated by setting IncludeOnlyNeededFastBuildProjects to true in solution configure methods d4fefed1
  • Make Sln.SolutionExtension public 751b5c0b
  • Add support for VcxprojUserFile.LocalDebuggerAttach (#164) b061d7e6

Bug fixes

  • Use master bff directory to compute customPreBuildExe, same as other steps 0f45d667
  • Fix missing define in generated debug solution d54a2128
  • Remove deprecated comment ac831efe
  • Fix UpdateSamplesOutput.bat to use the net5 binaries. Ran it too, to update generated "reference" folders. 016ec11d
  • Copy conf.FastbuildCacheAllowed and conf.FastbuildDistribution properties when generating FastBuildAll project. 2041aabf

Sharpmake 0.18.2

10 Jan 17:56
0.18.2
77a764c
Compare
Choose a tag to compare

New features / improvements

  • Added command line argument to override the generated debug solution path 8abc9ab7
  • Add support for MSVC Code Analysis 9d936a88

Bug fixes

  • Prevent GetProgramCommandLine() from converting the quotes, and do it only when needed, in the Execute method b9013867

Sharpmake 0.18.1

21 Dec 11:27
0.18.1
cac2a9d
Compare
Choose a tag to compare

New features / improvements

  • [Bff] Improve error message when multiple nodes output to the same file, indicating which file is involved eb7db676

Bug fixes

  • [CI] Fix Android build on CI following update to SDK 32 3e9d32eb
  • Fix debug project generation too harsh filtering b3df7fb4