# $Id: Makefile.kmk 70161 2017-12-15 17:03:56Z vboxsync $ ## @file # Top-level makefile for the VBox Host drivers. # # # Copyright (C) 2006-2017 Oracle Corporation # # This file is part of VirtualBox Open Source Edition (OSE), as # available from http://www.virtualbox.org. This file is free software; # you can redistribute it and/or modify it under the terms of the GNU # General Public License (GPL) as published by the Free Software # Foundation, in version 2 as it comes in the "COPYING" file of the # VirtualBox OSE distribution. VirtualBox OSE is distributed in the # hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. # # The contents of this file may alternatively be used under the terms # of the Common Development and Distribution License Version 1.0 # (CDDL) only, as it comes in the "COPYING.CDDL" file of the # VirtualBox OSE distribution, in which case the provisions of the # CDDL are applicable instead of those of the GPL. # # You may elect to license modified versions of this file under the # terms and conditions of either the GPL or the CDDL or both. # SUB_DEPTH = ../../.. include $(KBUILD_PATH)/subheader.kmk # Include sub-makefiles. include $(PATH_SUB_CURRENT)/Support/Makefile.kmk if !defined(VBOX_ONLY_DOCS) \ && !defined(VBOX_ONLY_EXTPACKS) \ && !defined(VBOX_ONLY_VALIDATIONKIT) if1of ($(KBUILD_TARGET),win) include $(PATH_SUB_CURRENT)/win/Makefile.kmk endif ifdef VBOX_WITH_USB include $(PATH_SUB_CURRENT)/VBoxUSB/Makefile.kmk endif if1of ($(KBUILD_TARGET), darwin solaris win linux freebsd) ifdef VBOX_WITH_NETFLT include $(PATH_SUB_CURRENT)/VBoxNetFlt/Makefile.kmk endif endif if1of ($(KBUILD_TARGET), darwin solaris win linux freebsd) ifdef VBOX_WITH_NETADP include $(PATH_SUB_CURRENT)/VBoxNetAdp/Makefile.kmk endif endif if1of ($(KBUILD_TARGET), darwin freebsd linux solaris) include $(PATH_SUB_CURRENT)/adpctl/Makefile.kmk endif if1of ($(KBUILD_TARGET), darwin freebsd linux) include $(PATH_SUB_CURRENT)/$(KBUILD_TARGET)/Makefile.kmk endif if1of ($(KBUILD_TARGET), linux) ifdef VBOX_WITH_PCI_PASSTHROUGH include $(PATH_SUB_CURRENT)/VBoxPci/Makefile.kmk endif endif endif # !defined(VBOX_ONLY_DOCS) && !defined(VBOX_ONLY_VALIDATIONKIT) # # Build test for the linux host kernel modules. # if defined(VBOX_WITH_TESTCASES) \ && !defined(VBOX_ONLY_SDK) \ && !defined(VBOX_ONLY_DOCS) \ && !defined(VBOX_ONLY_VALIDATIONKIT) \ && !defined(VBOX_WITHOUT_LINUX_TEST_BUILDS) \ && "$(KBUILD_TARGET)" == "linux" \ && "$(KBUILD_HOST_ARCH)" == "$(KBUILD_TARGET_ARCH)" ifneq ($(KERN_DIR),) save_symvers = vboxdrv-src use_symvers = vboxdrv-src $(foreach module, vboxdrv-src $(if $(VBOX_WITH_NETFLT),VBoxNetFlt-src) \ $(if $(VBOX_WITH_NETADP),VBoxNetAdp-src) $(if $(VBOX_WITH_PCI_PASSTHROUGH),VBoxPci-src), \ $(eval $(VBOX_LINUX_GENERATE_KMOD_TEST))) endif endif # Let kBuild generate the rules. include $(FILE_KBUILD_SUB_FOOTER)