Skip to content

Sharpmake 0.16.0

Compare
Choose a tag to compare
@belkiss belkiss released this 27 Mar 10:52
f605ddb

Deprecation / removal of features

  • Remove support for LLVM_vs2012 and LLVM_vs2014 PlatformToolsets, since they probably are broken anyway 7ff6ab2e
  • Remove code that has been marked Obsolete for a very long time b24704af
  • Remove deprecated TreatWarningAsError (notice the missing S at the end of warning) 6a454c19
  • Deprecate CommonLanguageRuntimeSupport.SafeMsilClrSupportOldSyntax value, since it has been removed in vs2008 or so 7ab57874
  • Rename SpectreMitigation.Enabled to SpectreMitigation.Spectre, and mark the old name Obsolete with a message 42b048df
  • Rename ShowProgress.DisplayAll and ShowProgress.DisplaysSome to ShowProgress.LinkVerbose and ShowProgress.LinkVerboseLib, and mark the old names Obsolete with a message a54cdc3d
  • Rename SubSystem.Application to SubSystem.Windows, and mark the old name Obsolete with a message c2a236ed

New features / improvements

  • Added pre/post event commands to makefile gen and use them in HelloLinux sample
  • [GithubActions] Only generate mdb files in release on windows. 871b34d2
  • [GithubActions] Allow CI to continue on failure 446700dd
  • Lower unitests output path 1077fa50
  • Allow overriding the sharpmake executable in the debug project extension. 00b96802
  • Move path util methods to their own file. 5bc3a91a
  • [Vcxproj] Remove all the useless code setting Executable, Include and Library Path VC++ directories when using a LLVM platform toolset c167bc58
  • Improve gitignore to ignore all temp directories under the codebases bc81433b
  • Add HelloClangCl sample 5b55a560
  • Update embedded FastBuild executables to latest 1.04 67f4f57c
  • Create CODE_OF_CONDUCT.md 9a1a586a
  • Create CONTRIBUTING.md 8c4a80d1
  • Demote the obsolete errors to warnings in the SpectreMitigation and ShowProgress options when using the deprecated values, and map them to the proper ones 79ecc58d
  • Demote the obsolete from error to warning in the SubSystem option when using the deprecated value Application, and map it to Windows. 6626df34
  • Update OVERVIEW.md ae2a9c5e
  • Update Intro.md 69c1b65c
  • Update Intro.md ea04b677
  • Add new entries in MSVC ForceFileOutput linker option enum 19c433c4
  • Add new entry UseFastLinkTimeCodeGeneration in MSVC LinkTimeCodeGeneration linker option enum 6fdecb58
  • Add new entries in MSVC SubSystem linker option enum c2a236ed
  • Add new entries in MSVC ShowProgress linker option enum a54cdc3d
  • Document some msvc options, using info extracted from MS xml files d8c5212d
  • Add vs2013 VectorCall option Options.Vc.Compiler.CallingConvention.vectorcall 0633ff4e
  • Add vs2019 AVX512 option Options.Vc.Compiler.EnhancedInstructionSet.AdvancedVectorExtensions512 ce9e20ad
  • Add new entries SpectreLoad and SpectreLoadCF in SpectreMitigation option enum 42b048df
  • Document VC options CommonLanguageRuntimeSupport 7ab57874
  • Document VC options WarningLevel and TreatWarningsAsErrors 6a454c19
  • Document some msvc options, using info extracted from MS xml files 4432f46b
  • Add support for MSVC 16.7 Asan 10d49850

Bug fixes

  • [Vcxproj] Linux debugging fixes
    • Lowercase drive letter in the various path, necessary because for some reason wsl mounts C: to /mnt/c
    • Ensure we have trailing slashes, otherwise VS will add the wrong slash to OutputDir if none is present
  • Removed wrong ending slash in OutDir and IntDir
  • Linux path: Lowercase drive letter. Ending slash.
  • Fix support for ClangCl PlatformToolset e6ae5fed
  • Wrap FastBuild executable in nmake build/rebuild commands with double quotes to fix invocation when ProjectDir contains spaces 13953499
  • Remove un-existing configurations from Pyproj
  • Fixed Sharpmake.Package attribute failing when using /generateDebugSolution
  • fix: add tmp to .gitignore 131f3e5e
  • fix(main): add AppDomain.UnhandledException to display exception details on all crashes 701e40c2
  • Catch all exceptions thrown by the read of the ReadCleanupDatabase. 0c7d8d42