Hopefully this is a "forehead slap" type of question...
We've been moving an ARM7 project using FreeRTOS 5.4.0 that was previously on CrossWorks 2.0 to a new repository and build environment using CrossWorks 2.1.1 starting with a new Project template and imported everything.
We've sorted through a bunch of stuff with the includes for the project, setting ANSI checking to NO and arm-unknown-elf for the GCC Target. All compiles and then when it gets to heap_2.c in the linker we get
"error: portBYTEALIGNMENTMASK undeclared (first use in this function)"
I can't for the life of me find where portBYTEALIGNMENTMASK is declared, so I'm not sure if we are missing something or if I still have a path that's not included in the project (most likely). I have found portBYTE_ALIGNMENT in portmacro.h (which makes perfect sense).
Once I get this to build cleanly and test out on the target, then I can introduce the next level of the port to get it up to a later version of FreeRTOS.
Thanks for any insights!
In my port I have a section in "portable.h" that decodes portBYTE_ALIGNMENT into a mask value.
if portBYTE_ALIGNMENT == 8
#define portBYTE_ALIGNMENT_MASK ( 0x0007 )
if portBYTE_ALIGNMENT == 4
#define portBYTE_ALIGNMENT_MASK ( 0x0003 )
if portBYTE_ALIGNMENT == 2
#define portBYTE_ALIGNMENT_MASK ( 0x0001 )
if portBYTE_ALIGNMENT == 1
#define portBYTE_ALIGNMENT_MASK ( 0x0000 )
#error "Invalid portBYTE_ALIGNMENT definition"
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.