File gcs.patch of Package libgcrypt
--- libgcrypt-1.11.2/cipher/asm-common-aarch64.h.orig 2025-10-22 14:32:46.925762787 +0000 +++ libgcrypt-1.11.2/cipher/asm-common-aarch64.h 2025-10-22 15:41:34.366304001 +0000 @@ -61,6 +61,12 @@ # define AARCH64_PAC_PROPERTY_FLAG 0 /* No PAC */ #endif +#if defined(__ARM_FEATURE_GCS_DEFAULT) && __ARM_FEATURE_GCS_DEFAULT == 1 +#define AARCH64_GCS_PROPERTY_FLAG (1<<2) +#else +#define AARCH64_GCS_PROPERTY_FLAG 0 /* No GCS */ +#endif + #ifdef HAVE_GCC_ASM_CFI_DIRECTIVES /* CFI directives to emit DWARF stack unwinding information. */ # define CFI_STARTPROC() .cfi_startproc; AARCH64_HINT_BTI_C @@ -154,7 +160,7 @@ ldp d8, d9, [sp], #16; \ CFI_ADJUST_CFA_OFFSET(-16); -#if (AARCH64_BTI_PROPERTY_FLAG | AARCH64_PAC_PROPERTY_FLAG) +#if (AARCH64_BTI_PROPERTY_FLAG | AARCH64_PAC_PROPERTY_FLAG | AARCH64_GCS_PROPERTY_FLAG) /* Generate PAC/BTI property for all assembly files including this header. * * libgcrypt support these extensions: @@ -178,7 +184,7 @@ ELF(.balign 8) ELF(.long 0xc0000000) ELF(.long 3f - 2f) ELF(2:) -ELF(.long (AARCH64_BTI_PROPERTY_FLAG | AARCH64_PAC_PROPERTY_FLAG)) +ELF(.long (AARCH64_BTI_PROPERTY_FLAG | AARCH64_PAC_PROPERTY_FLAG | AARCH64_GCS_PROPERTY_FLAG)) ELF(3:) ELF(.balign 8) ELF(4:)