From acaa9ee991b584d536ffa9529f063d11be7923a4 Mon Sep 17 00:00:00 2001 From: Hemant Agrawal Date: Thu, 22 Feb 2018 11:39:05 +0530 Subject: [PATCH] move kernel modules directories This patch moves the kernel modules code from EAL to a common place. - Separate the kernel module code from user space code. Signed-off-by: Hemant Agrawal Tested-by: Bruce Richardson --- GNUmakefile | 2 +- MAINTAINERS | 8 ++-- kernel/Makefile | 9 ++++ kernel/freebsd/BSDmakefile.meson | 43 +++++++++++++++++ kernel/freebsd/Makefile | 9 ++++ .../freebsd}/contigmem/BSDmakefile | 0 .../freebsd}/contigmem/Makefile | 0 .../freebsd}/contigmem/contigmem.c | 0 .../freebsd}/contigmem/meson.build | 0 .../freebsd}/nic_uio/BSDmakefile | 0 .../freebsd}/nic_uio/Makefile | 0 .../freebsd}/nic_uio/meson.build | 0 .../freebsd}/nic_uio/nic_uio.c | 0 kernel/linux/Makefile | 9 ++++ .../linuxapp => kernel/linux}/igb_uio/Kbuild | 0 .../linux}/igb_uio/Makefile | 0 .../linux}/igb_uio/compat.h | 0 .../linux}/igb_uio/igb_uio.c | 0 .../linux}/igb_uio/meson.build | 2 +- .../linuxapp => kernel/linux}/kni/Makefile | 0 .../linuxapp => kernel/linux}/kni/compat.h | 0 .../linux}/kni/ethtool/README | 0 .../linux}/kni/ethtool/igb/e1000_82575.c | 0 .../linux}/kni/ethtool/igb/e1000_82575.h | 0 .../linux}/kni/ethtool/igb/e1000_api.c | 0 .../linux}/kni/ethtool/igb/e1000_api.h | 0 .../linux}/kni/ethtool/igb/e1000_defines.h | 0 .../linux}/kni/ethtool/igb/e1000_hw.h | 0 .../linux}/kni/ethtool/igb/e1000_i210.c | 0 .../linux}/kni/ethtool/igb/e1000_i210.h | 0 .../linux}/kni/ethtool/igb/e1000_mac.c | 0 .../linux}/kni/ethtool/igb/e1000_mac.h | 0 .../linux}/kni/ethtool/igb/e1000_manage.c | 0 .../linux}/kni/ethtool/igb/e1000_manage.h | 0 .../linux}/kni/ethtool/igb/e1000_mbx.c | 0 .../linux}/kni/ethtool/igb/e1000_mbx.h | 0 .../linux}/kni/ethtool/igb/e1000_nvm.c | 0 .../linux}/kni/ethtool/igb/e1000_nvm.h | 0 .../linux}/kni/ethtool/igb/e1000_osdep.h | 0 .../linux}/kni/ethtool/igb/e1000_phy.c | 0 .../linux}/kni/ethtool/igb/e1000_phy.h | 0 .../linux}/kni/ethtool/igb/e1000_regs.h | 0 .../linux}/kni/ethtool/igb/igb.h | 0 .../linux}/kni/ethtool/igb/igb_ethtool.c | 0 .../linux}/kni/ethtool/igb/igb_main.c | 0 .../linux}/kni/ethtool/igb/igb_param.c | 0 .../linux}/kni/ethtool/igb/igb_regtest.h | 0 .../linux}/kni/ethtool/igb/igb_vmdq.c | 0 .../linux}/kni/ethtool/igb/igb_vmdq.h | 0 .../linux}/kni/ethtool/igb/kcompat.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_82598.c | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_82598.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_82599.c | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_82599.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_api.c | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_api.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_common.c | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_common.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_dcb.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_ethtool.c | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_fcoe.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_main.c | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_mbx.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_osdep.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_phy.c | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_phy.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_type.h | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_x540.c | 0 .../linux}/kni/ethtool/ixgbe/ixgbe_x540.h | 0 .../linux}/kni/ethtool/ixgbe/kcompat.c | 0 .../linux}/kni/ethtool/ixgbe/kcompat.h | 0 .../linuxapp => kernel/linux}/kni/kni_dev.h | 0 .../linux}/kni/kni_ethtool.c | 0 .../linuxapp => kernel/linux}/kni/kni_fifo.h | 0 .../linuxapp => kernel/linux}/kni/kni_misc.c | 0 .../linuxapp => kernel/linux}/kni/kni_net.c | 0 kernel/meson.build | 46 +++++++++++++++++++ lib/librte_eal/bsdapp/Makefile | 2 - lib/librte_eal/linuxapp/Makefile | 2 - lib/librte_eal/meson.build | 22 --------- meson.build | 1 + 82 files changed, 123 insertions(+), 32 deletions(-) create mode 100644 kernel/Makefile create mode 100644 kernel/freebsd/BSDmakefile.meson create mode 100644 kernel/freebsd/Makefile rename {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/BSDmakefile (100%) rename {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/Makefile (100%) rename {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/contigmem.c (100%) rename {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/meson.build (100%) rename {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/BSDmakefile (100%) rename {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/Makefile (100%) rename {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/meson.build (100%) rename {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/nic_uio.c (100%) create mode 100644 kernel/linux/Makefile rename {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/Kbuild (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/Makefile (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/compat.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/igb_uio.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/meson.build (93%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/Makefile (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/compat.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/README (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_82575.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_82575.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_api.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_api.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_defines.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_hw.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_i210.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_i210.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mac.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mac.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_manage.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_manage.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mbx.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mbx.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_nvm.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_nvm.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_osdep.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_phy.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_phy.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_regs.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_ethtool.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_main.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_param.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_regtest.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_vmdq.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_vmdq.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/kcompat.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82598.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82598.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82599.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82599.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_api.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_api.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_common.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_common.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_dcb.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_ethtool.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_fcoe.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_main.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_mbx.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_osdep.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_phy.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_phy.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_type.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_x540.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_x540.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/kcompat.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/kcompat.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_dev.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_ethtool.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_fifo.h (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_misc.c (100%) rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_net.c (100%) create mode 100644 kernel/meson.build diff --git a/GNUmakefile b/GNUmakefile index d07fef0d5b..ae80720e99 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -12,7 +12,7 @@ export RTE_SDK # directory list # -ROOTDIRS-y := buildtools lib drivers app +ROOTDIRS-y := buildtools lib kernel drivers app ROOTDIRS- := test include $(RTE_SDK)/mk/rte.sdkroot.mk diff --git a/MAINTAINERS b/MAINTAINERS index eccbf407de..75d3e92c87 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -209,7 +209,7 @@ F: doc/guides/linux_gsg/ Linux UIO M: Ferruh Yigit -F: lib/librte_eal/linuxapp/igb_uio/ +F: kernel/linux/igb_uio/ F: drivers/bus/pci/linux/*uio* Linux VFIO @@ -225,11 +225,11 @@ F: doc/guides/freebsd_gsg/ FreeBSD contigmem M: Bruce Richardson -F: lib/librte_eal/bsdapp/contigmem/ +F: kernel/freebsd/contigmem/ FreeBSD UIO M: Bruce Richardson -F: lib/librte_eal/bsdapp/nic_uio/ +F: kernel/freebsd/nic_uio/ Core Libraries @@ -359,7 +359,7 @@ F: doc/guides/nics/features/bonding.ini Linux KNI M: Ferruh Yigit -F: lib/librte_eal/linuxapp/kni/ +F: kernel/linux/kni/ F: lib/librte_kni/ F: doc/guides/prog_guide/kernel_nic_interface.rst F: test/test/test_kni.c diff --git a/kernel/Makefile b/kernel/Makefile new file mode 100644 index 0000000000..8948d04257 --- /dev/null +++ b/kernel/Makefile @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0) +# Copyright 2017 NXP + +include $(RTE_SDK)/mk/rte.vars.mk + +DIRS-$(CONFIG_RTE_EXEC_ENV_LINUXAPP) += linux +DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += freebsd + +include $(RTE_SDK)/mk/rte.subdir.mk diff --git a/kernel/freebsd/BSDmakefile.meson b/kernel/freebsd/BSDmakefile.meson new file mode 100644 index 0000000000..42f5b2b9d8 --- /dev/null +++ b/kernel/freebsd/BSDmakefile.meson @@ -0,0 +1,43 @@ +# BSD LICENSE +# +# Copyright(c) 2017 Intel Corporation. All rights reserved. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# makefile for building kernel modules using meson +# takes parameters from the environment + +# source file is passed via KMOD_SRC as full path, we only use final +# component of it, as VPATH is used to find actual file, so as to +# have the .o files placed in the build, not source directory +VPATH = ${KMOD_SRC:H} +SRCS = ${KMOD_SRC:T} device_if.h bus_if.h pci_if.h +CFLAGS += $(KMOD_CFLAGS) + +.include diff --git a/kernel/freebsd/Makefile b/kernel/freebsd/Makefile new file mode 100644 index 0000000000..c93d7a6246 --- /dev/null +++ b/kernel/freebsd/Makefile @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright 2017 NXP + +include $(RTE_SDK)/mk/rte.vars.mk + +DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += contigmem +DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += nic_uio + +include $(RTE_SDK)/mk/rte.subdir.mk diff --git a/lib/librte_eal/bsdapp/contigmem/BSDmakefile b/kernel/freebsd/contigmem/BSDmakefile similarity index 100% rename from lib/librte_eal/bsdapp/contigmem/BSDmakefile rename to kernel/freebsd/contigmem/BSDmakefile diff --git a/lib/librte_eal/bsdapp/contigmem/Makefile b/kernel/freebsd/contigmem/Makefile similarity index 100% rename from lib/librte_eal/bsdapp/contigmem/Makefile rename to kernel/freebsd/contigmem/Makefile diff --git a/lib/librte_eal/bsdapp/contigmem/contigmem.c b/kernel/freebsd/contigmem/contigmem.c similarity index 100% rename from lib/librte_eal/bsdapp/contigmem/contigmem.c rename to kernel/freebsd/contigmem/contigmem.c diff --git a/lib/librte_eal/bsdapp/contigmem/meson.build b/kernel/freebsd/contigmem/meson.build similarity index 100% rename from lib/librte_eal/bsdapp/contigmem/meson.build rename to kernel/freebsd/contigmem/meson.build diff --git a/lib/librte_eal/bsdapp/nic_uio/BSDmakefile b/kernel/freebsd/nic_uio/BSDmakefile similarity index 100% rename from lib/librte_eal/bsdapp/nic_uio/BSDmakefile rename to kernel/freebsd/nic_uio/BSDmakefile diff --git a/lib/librte_eal/bsdapp/nic_uio/Makefile b/kernel/freebsd/nic_uio/Makefile similarity index 100% rename from lib/librte_eal/bsdapp/nic_uio/Makefile rename to kernel/freebsd/nic_uio/Makefile diff --git a/lib/librte_eal/bsdapp/nic_uio/meson.build b/kernel/freebsd/nic_uio/meson.build similarity index 100% rename from lib/librte_eal/bsdapp/nic_uio/meson.build rename to kernel/freebsd/nic_uio/meson.build diff --git a/lib/librte_eal/bsdapp/nic_uio/nic_uio.c b/kernel/freebsd/nic_uio/nic_uio.c similarity index 100% rename from lib/librte_eal/bsdapp/nic_uio/nic_uio.c rename to kernel/freebsd/nic_uio/nic_uio.c diff --git a/kernel/linux/Makefile b/kernel/linux/Makefile new file mode 100644 index 0000000000..c2c45a3e67 --- /dev/null +++ b/kernel/linux/Makefile @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: GPL-2.0 +# Copyright 2017 NXP + +include $(RTE_SDK)/mk/rte.vars.mk + +DIRS-$(CONFIG_RTE_EAL_IGB_UIO) += igb_uio +DIRS-$(CONFIG_RTE_KNI_KMOD) += kni + +include $(RTE_SDK)/mk/rte.subdir.mk diff --git a/lib/librte_eal/linuxapp/igb_uio/Kbuild b/kernel/linux/igb_uio/Kbuild similarity index 100% rename from lib/librte_eal/linuxapp/igb_uio/Kbuild rename to kernel/linux/igb_uio/Kbuild diff --git a/lib/librte_eal/linuxapp/igb_uio/Makefile b/kernel/linux/igb_uio/Makefile similarity index 100% rename from lib/librte_eal/linuxapp/igb_uio/Makefile rename to kernel/linux/igb_uio/Makefile diff --git a/lib/librte_eal/linuxapp/igb_uio/compat.h b/kernel/linux/igb_uio/compat.h similarity index 100% rename from lib/librte_eal/linuxapp/igb_uio/compat.h rename to kernel/linux/igb_uio/compat.h diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/kernel/linux/igb_uio/igb_uio.c similarity index 100% rename from lib/librte_eal/linuxapp/igb_uio/igb_uio.c rename to kernel/linux/igb_uio/igb_uio.c diff --git a/lib/librte_eal/linuxapp/igb_uio/meson.build b/kernel/linux/igb_uio/meson.build similarity index 93% rename from lib/librte_eal/linuxapp/igb_uio/meson.build rename to kernel/linux/igb_uio/meson.build index 257ef63139..356f4ab328 100644 --- a/lib/librte_eal/linuxapp/igb_uio/meson.build +++ b/kernel/linux/igb_uio/meson.build @@ -18,7 +18,7 @@ custom_target('igb_uio', 'M=' + meson.current_build_dir(), 'src=' + meson.current_source_dir(), 'EXTRA_CFLAGS=-I' + meson.current_source_dir() + - '/../../common/include', + '/../../../lib/librte_eal/common/include', 'modules'], depends: mkfile, build_by_default: get_option('enable_kmods')) diff --git a/lib/librte_eal/linuxapp/kni/Makefile b/kernel/linux/kni/Makefile similarity index 100% rename from lib/librte_eal/linuxapp/kni/Makefile rename to kernel/linux/kni/Makefile diff --git a/lib/librte_eal/linuxapp/kni/compat.h b/kernel/linux/kni/compat.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/compat.h rename to kernel/linux/kni/compat.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/README b/kernel/linux/kni/ethtool/README similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/README rename to kernel/linux/kni/ethtool/README diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_82575.c b/kernel/linux/kni/ethtool/igb/e1000_82575.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_82575.c rename to kernel/linux/kni/ethtool/igb/e1000_82575.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_82575.h b/kernel/linux/kni/ethtool/igb/e1000_82575.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_82575.h rename to kernel/linux/kni/ethtool/igb/e1000_82575.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.c b/kernel/linux/kni/ethtool/igb/e1000_api.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.c rename to kernel/linux/kni/ethtool/igb/e1000_api.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h b/kernel/linux/kni/ethtool/igb/e1000_api.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h rename to kernel/linux/kni/ethtool/igb/e1000_api.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_defines.h b/kernel/linux/kni/ethtool/igb/e1000_defines.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_defines.h rename to kernel/linux/kni/ethtool/igb/e1000_defines.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h b/kernel/linux/kni/ethtool/igb/e1000_hw.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h rename to kernel/linux/kni/ethtool/igb/e1000_hw.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_i210.c b/kernel/linux/kni/ethtool/igb/e1000_i210.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_i210.c rename to kernel/linux/kni/ethtool/igb/e1000_i210.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_i210.h b/kernel/linux/kni/ethtool/igb/e1000_i210.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_i210.h rename to kernel/linux/kni/ethtool/igb/e1000_i210.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mac.c b/kernel/linux/kni/ethtool/igb/e1000_mac.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mac.c rename to kernel/linux/kni/ethtool/igb/e1000_mac.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mac.h b/kernel/linux/kni/ethtool/igb/e1000_mac.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mac.h rename to kernel/linux/kni/ethtool/igb/e1000_mac.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_manage.c b/kernel/linux/kni/ethtool/igb/e1000_manage.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_manage.c rename to kernel/linux/kni/ethtool/igb/e1000_manage.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_manage.h b/kernel/linux/kni/ethtool/igb/e1000_manage.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_manage.h rename to kernel/linux/kni/ethtool/igb/e1000_manage.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.c b/kernel/linux/kni/ethtool/igb/e1000_mbx.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.c rename to kernel/linux/kni/ethtool/igb/e1000_mbx.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.h b/kernel/linux/kni/ethtool/igb/e1000_mbx.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.h rename to kernel/linux/kni/ethtool/igb/e1000_mbx.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_nvm.c b/kernel/linux/kni/ethtool/igb/e1000_nvm.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_nvm.c rename to kernel/linux/kni/ethtool/igb/e1000_nvm.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_nvm.h b/kernel/linux/kni/ethtool/igb/e1000_nvm.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_nvm.h rename to kernel/linux/kni/ethtool/igb/e1000_nvm.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h b/kernel/linux/kni/ethtool/igb/e1000_osdep.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h rename to kernel/linux/kni/ethtool/igb/e1000_osdep.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c b/kernel/linux/kni/ethtool/igb/e1000_phy.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c rename to kernel/linux/kni/ethtool/igb/e1000_phy.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.h b/kernel/linux/kni/ethtool/igb/e1000_phy.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.h rename to kernel/linux/kni/ethtool/igb/e1000_phy.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_regs.h b/kernel/linux/kni/ethtool/igb/e1000_regs.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_regs.h rename to kernel/linux/kni/ethtool/igb/e1000_regs.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h b/kernel/linux/kni/ethtool/igb/igb.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h rename to kernel/linux/kni/ethtool/igb/igb.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_ethtool.c b/kernel/linux/kni/ethtool/igb/igb_ethtool.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_ethtool.c rename to kernel/linux/kni/ethtool/igb/igb_ethtool.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c b/kernel/linux/kni/ethtool/igb/igb_main.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c rename to kernel/linux/kni/ethtool/igb/igb_main.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_param.c b/kernel/linux/kni/ethtool/igb/igb_param.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_param.c rename to kernel/linux/kni/ethtool/igb/igb_param.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_regtest.h b/kernel/linux/kni/ethtool/igb/igb_regtest.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_regtest.h rename to kernel/linux/kni/ethtool/igb/igb_regtest.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_vmdq.c b/kernel/linux/kni/ethtool/igb/igb_vmdq.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_vmdq.c rename to kernel/linux/kni/ethtool/igb/igb_vmdq.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_vmdq.h b/kernel/linux/kni/ethtool/igb/igb_vmdq.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_vmdq.h rename to kernel/linux/kni/ethtool/igb/igb_vmdq.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/kernel/linux/kni/ethtool/igb/kcompat.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h rename to kernel/linux/kni/ethtool/igb/kcompat.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82598.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_82598.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82598.c rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_82598.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82598.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_82598.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82598.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_82598.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_82599.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_82599.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_82599.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_82599.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_api.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.c rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_api.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_api.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_api.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_common.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_common.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_common.c rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_common.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_common.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_common.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_common.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_common.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_dcb.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_dcb.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_dcb.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_dcb.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_ethtool.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_ethtool.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_ethtool.c rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_ethtool.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_fcoe.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_fcoe.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_fcoe.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_fcoe.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_main.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_main.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_main.c rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_main.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_mbx.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_mbx.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_mbx.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_mbx.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_osdep.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_osdep.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_osdep.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_osdep.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_phy.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_phy.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_phy.c rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_phy.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_phy.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_phy.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_phy.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_phy.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_type.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_type.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_type.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_type.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_x540.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_x540.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_x540.c rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_x540.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_x540.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_x540.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_x540.h rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_x540.h diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.c b/kernel/linux/kni/ethtool/ixgbe/kcompat.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.c rename to kernel/linux/kni/ethtool/ixgbe/kcompat.c diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.h b/kernel/linux/kni/ethtool/ixgbe/kcompat.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.h rename to kernel/linux/kni/ethtool/ixgbe/kcompat.h diff --git a/lib/librte_eal/linuxapp/kni/kni_dev.h b/kernel/linux/kni/kni_dev.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/kni_dev.h rename to kernel/linux/kni/kni_dev.h diff --git a/lib/librte_eal/linuxapp/kni/kni_ethtool.c b/kernel/linux/kni/kni_ethtool.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/kni_ethtool.c rename to kernel/linux/kni/kni_ethtool.c diff --git a/lib/librte_eal/linuxapp/kni/kni_fifo.h b/kernel/linux/kni/kni_fifo.h similarity index 100% rename from lib/librte_eal/linuxapp/kni/kni_fifo.h rename to kernel/linux/kni/kni_fifo.h diff --git a/lib/librte_eal/linuxapp/kni/kni_misc.c b/kernel/linux/kni/kni_misc.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/kni_misc.c rename to kernel/linux/kni/kni_misc.c diff --git a/lib/librte_eal/linuxapp/kni/kni_net.c b/kernel/linux/kni/kni_net.c similarity index 100% rename from lib/librte_eal/linuxapp/kni/kni_net.c rename to kernel/linux/kni/kni_net.c diff --git a/kernel/meson.build b/kernel/meson.build new file mode 100644 index 0000000000..697c419b64 --- /dev/null +++ b/kernel/meson.build @@ -0,0 +1,46 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2017 Intel Corporation + +# Initially pull in common settings +#eal_inc = [global_inc] +#subdir('common') # defines common_sources, common_objs, etc. + +# Now do OS/exec-env specific settings, including building kernel modules +# The /eal/meson.build file should define env_sources, etc. +if host_machine.system() == 'linux' + dpdk_conf.set('RTE_EXEC_ENV_LINUXAPP', 1) + subdir('linux/igb_uio') + +elif host_machine.system() == 'freebsd' + dpdk_conf.set('RTE_EXEC_ENV_BSDAPP', 1) + kmods = ['contigmem', 'nic_uio'] + + # for building kernel modules, we use kernel build system using make, as + # with Linux. We have a skeleton BSDmakefile, which pulls many of its + # values from the environment. Each module only has a single source file + # right now, which allows us to simplify things. We pull in the sourcer + # files from the individual meson.build files, and then use a custom + # target to call make, passing in the values as env parameters. + kmod_cflags = ['-I' + meson.build_root(), + '-I' + join_paths(meson.source_root(), 'config'), + '-include rte_config.h'] + foreach k:kmods + subdir(join_paths('freebsd', k)) + custom_target(k, + input: [files('freebsd/BSDmakefile.meson'), sources], + output: k + '.ko', + command: ['make', '-f', '@INPUT0@', + 'KMOD_SRC=@INPUT1@', + 'KMOD=' + k, + 'KMOD_CFLAGS=' + ' '.join(kmod_cflags)], + build_by_default: get_option('enable_kmods')) + endforeach +else + error('unsupported system type @0@'.format(hostmachine.system())) +endif + +cflags += '-D_GNU_SOURCE' +sources = common_sources + env_sources +objs = common_objs + env_objs +headers = common_headers + env_headers +includes = eal_inc diff --git a/lib/librte_eal/bsdapp/Makefile b/lib/librte_eal/bsdapp/Makefile index 9d8e24777c..5b06b216aa 100644 --- a/lib/librte_eal/bsdapp/Makefile +++ b/lib/librte_eal/bsdapp/Makefile @@ -4,7 +4,5 @@ include $(RTE_SDK)/mk/rte.vars.mk DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += eal -DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += contigmem -DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += nic_uio include $(RTE_SDK)/mk/rte.subdir.mk diff --git a/lib/librte_eal/linuxapp/Makefile b/lib/librte_eal/linuxapp/Makefile index aa52a01ee8..a0fffa98e8 100644 --- a/lib/librte_eal/linuxapp/Makefile +++ b/lib/librte_eal/linuxapp/Makefile @@ -4,8 +4,6 @@ include $(RTE_SDK)/mk/rte.vars.mk DIRS-$(CONFIG_RTE_EXEC_ENV_LINUXAPP) += eal -DIRS-$(CONFIG_RTE_EAL_IGB_UIO) += igb_uio -DIRS-$(CONFIG_RTE_KNI_KMOD) += kni DEPDIRS-kni := eal CFLAGS += -DALLOW_EXPERIMENTAL_API diff --git a/lib/librte_eal/meson.build b/lib/librte_eal/meson.build index d9ba38533c..15d1c6afd3 100644 --- a/lib/librte_eal/meson.build +++ b/lib/librte_eal/meson.build @@ -12,33 +12,11 @@ subdir('common') # defines common_sources, common_objs, etc. if host_machine.system() == 'linux' dpdk_conf.set('RTE_EXEC_ENV_LINUXAPP', 1) subdir('linuxapp/eal') - subdir('linuxapp/igb_uio') elif host_machine.system() == 'freebsd' dpdk_conf.set('RTE_EXEC_ENV_BSDAPP', 1) subdir('bsdapp/eal') - kmods = ['contigmem', 'nic_uio'] - # for building kernel modules, we use kernel build system using make, as - # with Linux. We have a skeleton BSDmakefile, which pulls many of its - # values from the environment. Each module only has a single source file - # right now, which allows us to simplify things. We pull in the sourcer - # files from the individual meson.build files, and then use a custom - # target to call make, passing in the values as env parameters. - kmod_cflags = ['-I' + meson.build_root(), - '-I' + join_paths(meson.source_root(), 'config'), - '-include rte_config.h'] - foreach k:kmods - subdir(join_paths('bsdapp', k)) - custom_target(k, - input: [files('bsdapp/BSDmakefile.meson'), sources], - output: k + '.ko', - command: ['make', '-f', '@INPUT0@', - 'KMOD_SRC=@INPUT1@', - 'KMOD=' + k, - 'KMOD_CFLAGS=' + ' '.join(kmod_cflags)], - build_by_default: get_option('enable_kmods')) - endforeach else error('unsupported system type @0@'.format(hostmachine.system())) endif diff --git a/meson.build b/meson.build index 0d99313801..cc16595cb3 100644 --- a/meson.build +++ b/meson.build @@ -26,6 +26,7 @@ subdir('config') # build libs and drivers subdir('lib') +subdir('kernel') subdir('buildtools') subdir('drivers') -- 2.20.1