1# 2# Copyright 2019, Data61, CSIRO (ABN 41 687 119 230) 3# 4# SPDX-License-Identifier: BSD-2-Clause 5# 6 7cmake_minimum_required(VERSION 3.8.2) 8 9project(libsel4vmmplatsupport C) 10 11add_compile_options(-std=gnu99) 12 13config_option( 14 LibSel4VMMPlatsupportVESAFrameBuffer 15 VMM_PLATSUPPORT_VESA_FRAMEBUFFER 16 "Expose VESA Frame Buffer 17 Support for mapping the VESA frame buffer frames into the guest OS. 18 This option is useful for working around non-working video drivers otherwise, 19 due to missing features or such." 20 DEFAULT 21 ON 22 DEPENDS 23 "KernelPlatPC99" 24) 25 26mark_as_advanced(LibSel4VMMPlatsupportVESAFrameBuffer) 27 28add_config_library(sel4vmmplatsupport "${configure_string}") 29 30file( 31 GLOB 32 sources 33 src/*.c 34 src/drivers/*.c 35 src/arch/${KernelArch}/*.c 36 src/arch/${KernelArch}/devices/*.c 37 src/arch/${KernelArch}/drivers/*.c 38 src/sel4_arch/${KernelSel4Arch}/*.c 39 src/plat/${KernelPlatform}/*.c 40 src/plat/${KernelPlatform}/devices/*.c 41) 42 43add_library(sel4vmmplatsupport STATIC EXCLUDE_FROM_ALL ${sources}) 44target_include_directories( 45 sel4vmmplatsupport 46 PUBLIC include arch_include/${KernelArch} plat_include/${KernelPlatform} 47) 48target_include_directories(sel4vmmplatsupport PRIVATE src/sel4_arch/${KernelSel4Arch}) 49target_include_directories(sel4vmmplatsupport PRIVATE src/arch/${KernelArch}) 50 51target_link_libraries( 52 sel4vmmplatsupport 53 muslc 54 sel4 55 utils 56 sel4utils 57 platsupport 58 pci 59 ethdrivers 60 sel4vm 61 fdt 62 fdtgen 63 sel4_autoconf 64 sel4vm_Config 65 usbdrivers_Config 66) 67