Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/markdown/snippets/update_xc32_for_v5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
## XC32 support now aware of v5.00 features

XC32 features introduced in v5.00 can now be used. This includes
support for LTO auto and the C2x and CPP23 standards.
23 changes: 12 additions & 11 deletions mesonbuild/compilers/mixins/microchip.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,14 +122,15 @@ class Xc32Compiler(CompilerBase):

gcc_version = '4.5.1' # Defaults to GCC version used by first XC32 release (v1.00).

_COLOR_VERSION = ">=3.0" # XC32 version based on GCC 8.3.1+
_WPEDANTIC_VERSION = ">=1.40" # XC32 version based on GCC 4.8.3+
_LTO_AUTO_VERSION = "==-1"
_USE_MOLD_VERSION = "==-1"
_COLOR_VERSION = '>=3.0' # XC32 version based on GCC 8.3.1+
_WPEDANTIC_VERSION = '>=1.40' # XC32 version based on GCC 4.8.3+
_LTO_AUTO_VERSION = '>=5.00' # XC32 version based on GCC 13.2.1+
_LTO_CACHE_VERSION = '==-1'
_USE_MOLD_VERSION = '==-1'

def __init__(self) -> None:
if not self.is_cross:
raise EnvironmentException("XC32 supports only cross-compilation.")
raise EnvironmentException('XC32 supports only cross-compilation.')

def get_instruction_set_args(self, instruction_set: str) -> T.Optional[T.List[str]]:
return None
Expand Down Expand Up @@ -182,14 +183,14 @@ class Xc32CStds(GnuCStds):

"""Mixin for setting C standards based on XC32 version."""

_C18_VERSION = ">=3.0"
_C2X_VERSION = "==-1"
_C23_VERSION = "==-1"
_C2Y_VERSION = "==-1"
_C18_VERSION = '>=3.0'
_C2X_VERSION = '>=5.00'
_C23_VERSION = '==-1'
_C2Y_VERSION = '==-1'

class Xc32CPPStds(GnuCPPStds):

"""Mixin for setting C++ standards based on XC32 version."""

_CPP23_VERSION = "==-1"
_CPP26_VERSION = "==-1"
_CPP23_VERSION = '>=5.00'
_CPP26_VERSION = '==-1'
Loading