diff --git a/arch/z16/include/z16f/irq.h b/arch/z16/include/z16f/irq.h index f896f65034e..9ebc90d5057 100644 --- a/arch/z16/include/z16f/irq.h +++ b/arch/z16/include/z16f/irq.h @@ -167,6 +167,7 @@ struct xcptcontext uint16_t regs[XCPTCONTEXT_REGS]; +#ifdef CONFIG_ENABLE_ALL_SIGNALS /* The following retains that state during signal execution. * * REVISIT: Because there is only one copy of these save areas, @@ -177,6 +178,7 @@ struct xcptcontext uint32_t saved_pc; /* Saved return address */ uint16_t saved_i; /* Saved interrupt state */ +#endif /* CONFIG_ENABLE_ALL_SIGNALS */ }; #endif diff --git a/arch/z16/src/z16f/Make.defs b/arch/z16/src/z16f/Make.defs index 1563e48977c..5533fe25006 100644 --- a/arch/z16/src/z16f/Make.defs +++ b/arch/z16/src/z16f/Make.defs @@ -25,12 +25,16 @@ HEAD_SSRC = z16f_head.S CMN_CSRCS = z16_allocateheap.c z16_copystate.c z16_createstack.c z16_doirq.c CMN_CSRCS += z16_exit.c z16_initialstate.c z16_initialize.c z16_idle.c CMN_CSRCS += z16_nputs.c z16_registerdump.c z16_releasestack.c -CMN_CSRCS += z16_schedulesigaction.c z16_sigdeliver.c z16_switchcontext.c +CMN_CSRCS += z16_switchcontext.c CMN_CSRCS += z16_stackframe.c z16_usestack.c CHIP_SSRCS = z16f_lowuart.S z16f_saveusercontext.S z16f_restoreusercontext.S CHIP_CSRCS = z16f_clkinit.c z16f_sysexec.c z16f_irq.c z16f_serial.c +ifeq ($(CONFIG_ENABLE_ALL_SIGNALS),y) +CMN_CSRCS += z16_schedulesigaction.c z16_sigdeliver.c +endif + ifneq ($(CONFIG_SCHED_TICKLESS),y) CHIP_CSRCS += z16f_timerisr.c endif