subsys: app_memory: Fixed the build issue wrt ARC.

The linker script is updated to support the new method of size
calculation.

Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
diff --git a/include/arch/arc/v2/linker.ld b/include/arch/arc/v2/linker.ld
index 6de1632..be69ce3 100644
--- a/include/arch/arc/v2/linker.ld
+++ b/include/arch/arc/v2/linker.ld
@@ -128,22 +128,28 @@
 	GROUP_START(RAMABLE_REGION)
 
 #include <app_data_alignment.ld>
+
+#if defined(CONFIG_APP_SHARED_MEM)
+#if defined(CONFIG_MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT)
+#define APP_SHARED_ALIGN MPU_MIN_SIZE_ALIGN
+		#include <app_smem.ld>
+#else
 	SECTION_PROLOGUE(_APP_SMEM_SECTION_NAME, (OPTIONAL),)
 	{
 		MPU_MIN_SIZE_ALIGN
 		_image_ram_start = .;
 		_app_smem_start = .;
-#if defined(CONFIG_MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT)
-		#include <app_smem.ld>
-#else
 		APP_SMEM_SECTION()
-#endif
 		MPU_MIN_SIZE_ALIGN
 		_app_smem_end = .;
-	} GROUP_DATA_LINK_IN(RAMABLE_REGION, RAMABLE_REGION)
+	} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
+
+#endif  /* CONFIG_MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT */
 
 	_app_smem_size = _app_smem_end - _app_smem_start;
 	_app_smem_rom_start = LOADADDR(_APP_SMEM_SECTION_NAME);
+#endif /* CONFIG_APP_SHARED_MEM */
+
 #ifdef CONFIG_APPLICATION_MEMORY
 	SECTION_DATA_PROLOGUE(_APP_DATA_SECTION_NAME, (OPTIONAL),)
 	{
diff --git a/scripts/gen_app_partitions.py b/scripts/gen_app_partitions.py
index 528490b..2ed7125 100644
--- a/scripts/gen_app_partitions.py
+++ b/scripts/gen_app_partitions.py
@@ -22,15 +22,14 @@
 linker_start_seq = """
 	SECTION_PROLOGUE(_APP_SMEM_SECTION_NAME, (OPTIONAL),)
 	{
-		. = ALIGN(4);
+		APP_SHARED_ALIGN;
 		_image_ram_start = .;
 		_app_smem_start = .;
 """
 
 linker_end_seq = """
 		_app_smem_end = .;
-		_app_smem_size = _app_smem_end - _app_smem_start;
-		. = ALIGN(4);
+		APP_SHARED_ALIGN;
 	} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
 """