Skip to content
This repository was archived by the owner on Aug 11, 2021. It is now read-only.

Version 1.0.1 beta 5

Pre-release
Pre-release

Choose a tag to compare

@markfinal markfinal released this 25 Mar 13:32
· 961 commits to master since this release

This is the last planned beta of v1.0.1

Highlights of v1.0.1 beta 5

  • Clarified the API for inheriting public patches on C modules. For example, C.ConsoleApplication (and derived module classes) used to have CompilePubliclyAndLinkAgainst() which would both use the public patches of a dependent, but also forward them onto any dependee of the application. Applications are the end of the food chain though, so this would never happen, and confused the use of the API. This function has been moved to C.DynamicLibrary and C.CxxDynamicLibrary module classes. Note that this is a potentially breaking change to existing build scripts, depending on your use of this function. The likely use cases will be for applications using CompilePubliclyAndLinkAgainst - just change this to CompileAndLinkAgainst; and any module that accidentally benefited from the inherited patches accidentally - will likely need a CompileAndLinkAgainst added to resolve any compilation or linker errors.
  • Dynamic libraries now forward any public dynamic dependencies they have. Static libraries already did this, to avoid the need to specify transient dependencies. This change should simplify build scripts.
  • RTTI support in linker settings has been added, see C.ICommonLinkerSettings.EnableRunTimeTypeInfo.
  • A new module, C.ProceduralHeaderFileFromToolOutput has been added with support in all build modes. While the existing C.ProceduralHeaderFile module required string input from the code, this new module takes the standard output from a built executable as the content for the generated header.
  • A new evaluation reason, Bam.Core.ExecuteReasoning.EReason.DeferredEvaluation, has been added, to cover the cases as with C.ProceduralHeaderFileFromToolOutput, that does not know if its target file needs to be updated until the build has started. (All other types of evaluation reason trump deferred evaluation.) This is only applicable in the Native build mode currently.
  • Many bug fixes to improve experience.

Full changes since v1.0.1 beta 4

Known issues

Bug list