[2478] | 1 | # $Id: Makefile.kmk 102358 2023-11-28 11:18:21Z vboxsync $
|
---|
[6004] | 2 | ## @file
|
---|
[2478] | 3 | # Top-level makefile for src/VBox.
|
---|
[1] | 4 | #
|
---|
[2478] | 5 |
|
---|
| 6 | #
|
---|
[98103] | 7 | # Copyright (C) 2006-2023 Oracle and/or its affiliates.
|
---|
[5999] | 8 | #
|
---|
[96407] | 9 | # This file is part of VirtualBox base platform packages, as
|
---|
| 10 | # available from https://www.virtualbox.org.
|
---|
[5999] | 11 | #
|
---|
[96407] | 12 | # This program is free software; you can redistribute it and/or
|
---|
| 13 | # modify it under the terms of the GNU General Public License
|
---|
| 14 | # as published by the Free Software Foundation, in version 3 of the
|
---|
| 15 | # License.
|
---|
| 16 | #
|
---|
| 17 | # This program is distributed in the hope that it will be useful, but
|
---|
| 18 | # WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
| 19 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
| 20 | # General Public License for more details.
|
---|
| 21 | #
|
---|
| 22 | # You should have received a copy of the GNU General Public License
|
---|
| 23 | # along with this program; if not, see <https://www.gnu.org/licenses>.
|
---|
| 24 | #
|
---|
| 25 | # SPDX-License-Identifier: GPL-3.0-only
|
---|
| 26 | #
|
---|
[1] | 27 |
|
---|
[10061] | 28 | SUB_DEPTH = ../..
|
---|
| 29 | include $(KBUILD_PATH)/subheader.kmk
|
---|
| 30 |
|
---|
[14158] | 31 |
|
---|
[10061] | 32 | ifdef VBOX_ONLY_ADDITIONS
|
---|
[10133] | 33 | include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
|
---|
[43363] | 34 | if defined(VBOX_WITH_CROGL) || defined(VBOX_WITH_HGSMI)
|
---|
[98439] | 35 | if1of ($(KBUILD_TARGET), win linux solaris freebsd netbsd haiku)
|
---|
[16294] | 36 | include $(PATH_SUB_CURRENT)/GuestHost/Makefile.kmk
|
---|
| 37 | endif
|
---|
[14162] | 38 | endif
|
---|
[10133] | 39 | include $(PATH_SUB_CURRENT)/Additions/Makefile.kmk
|
---|
[11812] | 40 |
|
---|
[89656] | 41 | ifdef VBOX_WITH_ADDITIONS_SHIPPING_AUDIO_TEST
|
---|
[89627] | 42 | include $(PATH_SUB_CURRENT)/ValidationKit/utils/audio/Makefile.kmk
|
---|
| 43 | endif
|
---|
| 44 |
|
---|
[34484] | 45 | else ifdef VBOX_ONLY_DOCS
|
---|
[27014] | 46 | include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
|
---|
| 47 | include $(PATH_SUB_CURRENT)/HostDrivers/Makefile.kmk
|
---|
[34484] | 48 | include $(PATH_SUB_CURRENT)/Frontends/Makefile.kmk
|
---|
[27014] | 49 |
|
---|
[34484] | 50 | else ifdef VBOX_ONLY_EXTPACKS
|
---|
[11703] | 51 | include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
|
---|
[34484] | 52 | include $(PATH_SUB_CURRENT)/Devices/Makefile.kmk
|
---|
[11703] | 53 | include $(PATH_SUB_CURRENT)/HostDrivers/Makefile.kmk
|
---|
[74926] | 54 | include $(PATH_SUB_CURRENT)/Main/Makefile.kmk
|
---|
[51758] | 55 | include $(PATH_SUB_CURRENT)/Storage/Makefile.kmk
|
---|
[34484] | 56 | include $(PATH_SUB_CURRENT)/ExtPacks/Makefile.kmk
|
---|
[93921] | 57 | if defined(VBOX_WITH_VRDP) || defined(VBOX_WITH_VRDP_RDESKTOP)
|
---|
[34484] | 58 | include $(PATH_SUB_CURRENT)/RDP/Makefile.kmk
|
---|
| 59 | endif
|
---|
[34492] | 60 | include $(PATH_SUB_CURRENT)/VMM/Makefile.kmk
|
---|
[34662] | 61 | ifndef VBOX_ONLY_EXTPACKS_USE_IMPLIBS
|
---|
| 62 | include $(PATH_SUB_CURRENT)/Disassembler/Makefile.kmk
|
---|
| 63 | endif
|
---|
[11812] | 64 |
|
---|
| 65 | else ifdef VBOX_ONLY_SDK
|
---|
[102358] | 66 | include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
|
---|
[11812] | 67 | include $(PATH_SUB_CURRENT)/Main/Makefile.kmk
|
---|
[16373] | 68 | ifdef VBOX_WITH_VRDP
|
---|
| 69 | include $(PATH_SUB_CURRENT)/RDP/Makefile.kmk
|
---|
| 70 | endif
|
---|
[11812] | 71 | include $(PATH_SUB_CURRENT)/Installer/Makefile.kmk
|
---|
[19862] | 72 | include $(PATH_SUB_CURRENT)/Frontends/VBoxShell/Makefile.kmk
|
---|
[11812] | 73 |
|
---|
[51346] | 74 | else ifdef VBOX_ONLY_VALIDATIONKIT
|
---|
[34484] | 75 | include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
|
---|
| 76 | include $(PATH_SUB_CURRENT)/HostDrivers/Makefile.kmk
|
---|
[53577] | 77 | include $(PATH_SUB_CURRENT)/Disassembler/Makefile.kmk
|
---|
[51348] | 78 | include $(PATH_SUB_CURRENT)/ValidationKit/Makefile.kmk
|
---|
[34484] | 79 |
|
---|
[10061] | 80 | else
|
---|
[79891] | 81 | if defined(VBOX_WITH_MAIN) && "$(intersects $(KBUILD_TARGET_ARCH),$(VBOX_SUPPORTED_HOST_ARCHS))" != ""
|
---|
[10133] | 82 | include $(PATH_SUB_CURRENT)/Main/Makefile.kmk # Do this one first because of soap.
|
---|
| 83 | endif
|
---|
| 84 | include $(PATH_SUB_CURRENT)/Runtime/Makefile.kmk
|
---|
[10061] | 85 | include $(PATH_SUB_CURRENT)/Disassembler/Makefile.kmk
|
---|
[33567] | 86 | include $(PATH_SUB_CURRENT)/Storage/Makefile.kmk
|
---|
[79891] | 87 | if1of ($(KBUILD_TARGET_ARCH), $(VBOX_SUPPORTED_HOST_ARCHS))
|
---|
[29263] | 88 | include $(PATH_SUB_CURRENT)/VMM/Makefile.kmk
|
---|
[79891] | 89 | endif
|
---|
| 90 | include $(PATH_SUB_CURRENT)/Devices/Makefile.kmk
|
---|
[93427] | 91 | include $(PATH_SUB_CURRENT)/HostDrivers/Makefile.kmk
|
---|
[79891] | 92 | if1of ($(KBUILD_TARGET_ARCH), $(VBOX_SUPPORTED_HOST_ARCHS))
|
---|
[29263] | 93 | include $(PATH_SUB_CURRENT)/HostServices/Makefile.kmk
|
---|
[79891] | 94 | ifdef VBOX_WITH_DEBUGGER
|
---|
| 95 | include $(PATH_SUB_CURRENT)/Debugger/Makefile.kmk
|
---|
| 96 | endif
|
---|
| 97 | include $(PATH_SUB_CURRENT)/Frontends/Makefile.kmk
|
---|
[29263] | 98 | endif
|
---|
[10061] | 99 | ifdef VBOX_WITH_VRDP
|
---|
[10133] | 100 | include $(PATH_SUB_CURRENT)/RDP/Makefile.kmk
|
---|
[10061] | 101 | endif
|
---|
[25673] | 102 | if defined(VBOX_WITH_CROGL) || defined(VBOX_WITH_HGSMI) || defined(VBOX_WITH_HGCM)
|
---|
[14162] | 103 | include $(PATH_SUB_CURRENT)/GuestHost/Makefile.kmk
|
---|
| 104 | endif
|
---|
[12447] | 105 | ifdef VBOX_WITH_ADDITIONS
|
---|
| 106 | include $(PATH_SUB_CURRENT)/Additions/Makefile.kmk
|
---|
| 107 | endif
|
---|
[51346] | 108 | ifdef VBOX_WITH_VALIDATIONKIT
|
---|
[51348] | 109 | include $(PATH_SUB_CURRENT)/ValidationKit/Makefile.kmk
|
---|
[89656] | 110 | else ifdef VBOX_WITH_HOST_SHIPPING_AUDIO_TEST
|
---|
| 111 | include $(PATH_SUB_CURRENT)/ValidationKit/utils/audio/Makefile.kmk
|
---|
[33377] | 112 | endif
|
---|
[79891] | 113 | include $(PATH_SUB_CURRENT)/NetworkServices/Makefile.kmk
|
---|
| 114 | if1of ($(KBUILD_TARGET_ARCH), $(VBOX_SUPPORTED_HOST_ARCHS))
|
---|
| 115 | include $(PATH_SUB_CURRENT)/ExtPacks/Makefile.kmk
|
---|
[29263] | 116 | endif
|
---|
[75970] | 117 | include $(PATH_SUB_CURRENT)/ImageMounter/Makefile.kmk
|
---|
[79891] | 118 | if defined(VBOX_WITH_INSTALLER) && "$(intersects $(KBUILD_TARGET_ARCH),$(VBOX_SUPPORTED_HOST_ARCHS))" != ""
|
---|
[12318] | 119 | include $(PATH_SUB_CURRENT)/Installer/Makefile.kmk # Keep this last.
|
---|
| 120 | endif
|
---|
[11703] | 121 | endif # !VBOX_ONLY_ADDITIONS && !VBOX_ONLY_DOCS
|
---|
[10061] | 122 |
|
---|
[1] | 123 |
|
---|
[41477] | 124 | include $(FILE_KBUILD_SUB_FOOTER)
|
---|