summaryrefslogtreecommitdiffstats
path: root/src/VBox/Makefile.kmk
diff options
context:
space:
mode:
Diffstat (limited to 'src/VBox/Makefile.kmk')
-rw-r--r--src/VBox/Makefile.kmk111
1 files changed, 111 insertions, 0 deletions
diff --git a/src/VBox/Makefile.kmk b/src/VBox/Makefile.kmk
new file mode 100644
index 00000000..6e792e66
--- /dev/null
+++ b/src/VBox/Makefile.kmk
@@ -0,0 +1,111 @@
+# $Id: Makefile.kmk $
+## @file
+# Top-level makefile for src/VBox.
+#
+
+#
+# Copyright (C) 2006-2019 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.
+#
+
+SUB_DEPTH = ../..
+include $(KBUILD_PATH)/subheader.kmk
+
+
+ifdef VBOX_ONLY_ADDITIONS
+ include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
+ if defined(VBOX_WITH_CROGL) || defined(VBOX_WITH_HGSMI)
+ if1of ($(KBUILD_TARGET),win linux solaris freebsd netbsd haiku)
+ include $(PATH_SUB_CURRENT)/GuestHost/Makefile.kmk
+ endif
+ endif
+ include $(PATH_SUB_CURRENT)/Additions/Makefile.kmk
+
+else ifdef VBOX_ONLY_DOCS
+ include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/HostDrivers/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Frontends/Makefile.kmk
+
+else ifdef VBOX_ONLY_EXTPACKS
+ include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Devices/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/HostDrivers/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Main/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Storage/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/ExtPacks/Makefile.kmk
+ ifdef VBOX_WITH_VRDP
+ include $(PATH_SUB_CURRENT)/RDP/Makefile.kmk
+ endif
+ include $(PATH_SUB_CURRENT)/VMM/Makefile.kmk
+ ifndef VBOX_ONLY_EXTPACKS_USE_IMPLIBS
+ include $(PATH_SUB_CURRENT)/Disassembler/Makefile.kmk
+ endif
+
+else ifdef VBOX_ONLY_SDK
+ include $(PATH_SUB_CURRENT)/Main/Makefile.kmk
+ ifdef VBOX_WITH_VRDP
+ include $(PATH_SUB_CURRENT)/RDP/Makefile.kmk
+ endif
+ include $(PATH_SUB_CURRENT)/Installer/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Frontends/VBoxShell/Makefile.kmk
+
+else ifdef VBOX_ONLY_VALIDATIONKIT
+ include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/HostDrivers/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Additions/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Disassembler/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/ValidationKit/Makefile.kmk
+
+else
+ ifdef VBOX_WITH_MAIN
+ include $(PATH_SUB_CURRENT)/Main/Makefile.kmk # Do this one first because of soap.
+ endif
+ include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Disassembler/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Storage/Makefile.kmk
+ if1of ($(KBUILD_TARGET_ARCH), amd64 x86)
+ include $(PATH_SUB_CURRENT)/VMM/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/Devices/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/HostDrivers/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/HostServices/Makefile.kmk
+ endif
+ ifdef VBOX_WITH_DEBUGGER
+ include $(PATH_SUB_CURRENT)/Debugger/Makefile.kmk
+ endif
+ include $(PATH_SUB_CURRENT)/Frontends/Makefile.kmk
+ ifdef VBOX_WITH_VRDP
+ include $(PATH_SUB_CURRENT)/RDP/Makefile.kmk
+ else ifdef VBOX_WITH_VRDP_RDESKTOP
+ include $(PATH_SUB_CURRENT)/RDP/client-1.8.4/Makefile.kmk
+ endif
+ if defined(VBOX_WITH_CROGL) || defined(VBOX_WITH_HGSMI) || defined(VBOX_WITH_HGCM)
+ include $(PATH_SUB_CURRENT)/GuestHost/Makefile.kmk
+ endif
+ ifdef VBOX_WITH_ADDITIONS
+ include $(PATH_SUB_CURRENT)/Additions/Makefile.kmk
+ endif
+ ifdef VBOX_WITH_VALIDATIONKIT
+ include $(PATH_SUB_CURRENT)/ValidationKit/Makefile.kmk
+ endif
+ ifdef VBOX_WITH_MAIN
+ if1of ($(KBUILD_TARGET_ARCH), amd64 x86)
+ include $(PATH_SUB_CURRENT)/NetworkServices/Makefile.kmk
+ endif
+ endif
+ include $(PATH_SUB_CURRENT)/ExtPacks/Makefile.kmk
+ include $(PATH_SUB_CURRENT)/ImageMounter/Makefile.kmk
+ ifdef VBOX_WITH_INSTALLER
+ include $(PATH_SUB_CURRENT)/Installer/Makefile.kmk # Keep this last.
+ endif
+endif # !VBOX_ONLY_ADDITIONS && !VBOX_ONLY_DOCS
+
+
+include $(FILE_KBUILD_SUB_FOOTER)
+