# SPDX-License-Identifier: Apache-2.0

zephyr_library()
zephyr_library_property(ALLOW_EMPTY TRUE)
zephyr_library_sources_ifdef(CONFIG_ARCV2_INTERRUPT_UNIT    intc_arcv2_irq_unit.c)
zephyr_library_sources_ifdef(CONFIG_CAVS_ICTL               intc_cavs.c)
zephyr_library_sources_ifdef(CONFIG_DW_ICTL                 intc_dw.c)
zephyr_library_sources_ifdef(CONFIG_DW_ICTL_ACE             intc_dw_ace.c)
zephyr_library_sources_ifdef(CONFIG_EXTI_STM32              intc_exti_stm32.c)
zephyr_library_sources_ifdef(CONFIG_GD32_EXTI               intc_gd32_exti.c)
zephyr_library_sources_ifdef(CONFIG_GIC_V1                  intc_gic.c)
zephyr_library_sources_ifdef(CONFIG_GIC_V2                  intc_gic.c)
zephyr_library_sources_ifdef(CONFIG_GIC_V3                  intc_gicv3.c)
zephyr_library_sources_ifdef(CONFIG_GIC_V3_ITS              intc_gicv3_its.c)
zephyr_library_sources_ifdef(CONFIG_INTEL_VTD_ICTL          intc_intel_vtd.c)
zephyr_library_sources_ifdef(CONFIG_IOAPIC                  intc_ioapic.c)
zephyr_library_sources_ifdef(CONFIG_ITE_IT8XXX2_INTC        intc_ite_it8xxx2.c)
zephyr_library_sources_ifdef(CONFIG_ITE_IT8XXX2_INTC_V2     intc_ite_it8xxx2_v2.c)
zephyr_library_sources_ifdef(CONFIG_ITE_IT8XXX2_WUC         wuc_ite_it8xxx2.c)
zephyr_library_sources_ifdef(CONFIG_LEON_IRQMP              intc_irqmp.c)
zephyr_library_sources_ifdef(CONFIG_LOAPIC                  intc_loapic.c intc_system_apic.c)
zephyr_library_sources_ifdef(CONFIG_LOAPIC_SPURIOUS_VECTOR  intc_loapic_spurious.S)
zephyr_library_sources_ifdef(CONFIG_MCHP_ECIA_XEC           intc_mchp_ecia_xec.c)
zephyr_library_sources_ifdef(CONFIG_NPCX_MIWU               intc_miwu.c)
zephyr_library_sources_ifdef(CONFIG_PLIC                    intc_plic.c)
zephyr_library_sources_ifdef(CONFIG_RV32M1_INTMUX           intc_rv32m1_intmux.c)
zephyr_library_sources_ifdef(CONFIG_SAM0_EIC                intc_sam0_eic.c)
zephyr_library_sources_ifdef(CONFIG_SHARED_IRQ              intc_shared_irq.c)
zephyr_library_sources_ifdef(CONFIG_INTC_ESP32              intc_esp32.c)
zephyr_library_sources_ifdef(CONFIG_INTC_ESP32C3            intc_esp32c3.c)
zephyr_library_sources_ifdef(CONFIG_SWERV_PIC               intc_swerv_pic.c)
zephyr_library_sources_ifdef(CONFIG_VEXRISCV_LITEX_IRQ      intc_vexriscv_litex.c)
zephyr_library_sources_ifdef(CONFIG_VIM                     intc_vim.c)
zephyr_library_sources_ifdef(CONFIG_NUCLEI_ECLIC            intc_nuclei_eclic.c)
zephyr_library_sources_ifdef(CONFIG_NUCLEI_ECLIC            intc_nuclei_eclic.S)
zephyr_library_sources_ifdef(CONFIG_NXP_S32_EIRQ            intc_eirq_nxp_s32.c)
zephyr_library_sources_ifdef(CONFIG_NXP_S32_WKPU            intc_wkpu_nxp_s32.c)
zephyr_library_sources_ifdef(CONFIG_XMC4XXX_INTC            intc_xmc4xxx.c)
zephyr_library_sources_ifdef(CONFIG_NXP_PINT                intc_nxp_pint.c)
zephyr_library_sources_ifdef(CONFIG_RENESAS_RA_ICU          intc_renesas_ra_icu.c)
zephyr_library_sources_ifdef(CONFIG_NXP_IRQSTEER            intc_nxp_irqsteer.c)

if(CONFIG_INTEL_VTD_ICTL)
  zephyr_library_include_directories(${ZEPHYR_BASE}/arch/x86/include)
endif()

if(CONFIG_PLIC_SHELL)
  message(WARNING "
      WARNING:  `CONFIG_PLIC_SHELL` is enabled.
      This can use quite a bit of RAM (PLICs * IRQs * sizeof(uint16_t))"
  )
endif()

zephyr_library_include_directories(${ZEPHYR_BASE}/arch/common/include)
