7 # Copyright (C) 2006-2024 Oracle and/or its affiliates.
9 # This file is part of VirtualBox base platform packages, as
10 # available from https://www.virtualbox.org.
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
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.
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>.
25 # SPDX-License-Identifier: GPL-3.0-only
29 include $(KBUILD_PATH
)/subheader.kmk
32 # Sub-makefiles / Sub-directories.
34 ifndef VBOX_ONLY_ROOT_MAKEFILE
35 if
(defined
(VBOX_WITH_DOCS
) || defined
(VBOX_WITH_MAIN
)) \
36 && ( !defined
(VBOX_ONLY_BUILD
) \
37 || defined
(VBOX_ONLY_DOCS
) \
38 ||
(defined
(VBOX_ONLY_SDK
) && !defined
(VBOX_ONLY_SDK_IN_VM
))) \
39 && "$(intersects $(KBUILD_TARGET_ARCH),$(VBOX_SUPPORTED_HOST_ARCHS))" != ""
40 include $(PATH_SUB_CURRENT
)/doc
/manual
/Makefile.kmk
42 include $(PATH_SUB_CURRENT
)/src
/Makefile.kmk
43 ifdef VBOX_WITH_INCLUDE_SYNTAX_CHECKING
44 include $(PATH_SUB_CURRENT
)/include/Makefile.kmk
49 # Below we might need TOOL_ZIP_UNPACK (for the additions/docs/efifw packages
50 # from the build server), and it's not really worth the effort of dragging in
51 #q this tool only if absolutely needed.
53 ## @todo Hack to get at TOOL_ZIP_UNPACK; see if this can be integrated somehow...
54 include $(KBUILD_PATH
)/tools
/ZIP.kmk
60 ## @todo split up this file!
64 # Clean up global stuff that Config.kmk generates.
67 $(VBOX_PACKAGE_HEADER
) \
68 $(VBOX_LICENSE_VER_KMK
) \
70 $(VBOX_VERSION_HEADER
) \
71 $(VBOX_VERSION_STAMP
) \
72 $(wildcard $(PATH_OUT
)/version-stamp-
*.
*.
*) \
73 $(VBOX_SVN_REV_KMK
).ts \
75 $(PATH_OUT
)/DynamicConfig.kmk
78 if
!defined
(VBOX_ONLY_ADDITIONS
) \
79 && !defined
(VBOX_ONLY_DOCS
) \
80 && !defined
(VBOX_ONLY_EXTPACKS
) \
81 && !defined
(VBOX_ONLY_VALIDATIONKIT
) # -> line 426b ;-)
83 if
!defined
(VBOX_OSE
) && defined
(VBOX_LICENSE_FILES
)
85 # Install the license (and misc non-executable stuff).
87 INSTALLS
+= InstallLicenseFiles
88 InstallLicenseFiles_INST
= $(INST_BIN
)
89 InstallLicenseFiles_MODE
= 0644
90 InstallLicenseFiles_SOURCES
=
91 InstallLicenseFiles_SOURCES
+= \
92 $(VBOX_BRAND_LICENSE_HTML
)=>License-
$(VBOX_LICENSE_VER
).html \
93 $(foreach f
,$(VBOX_INSTALLER_ADD_LANGUAGES
),$(VBOX_BRAND_
$(f
)_LICENSE_HTML
)=>License-
$(VBOX_LICENSE_VER
)-$(f
).html
)
98 # Install external binaries (mostly redistributable parts of tools we use).
100 # To avoid dragging in unnecessary tools and sdks here, we don't use the .win
101 # and .linux property suffixes.
103 if
!defined
(VBOX_ONLY_SDK
)
104 INSTALLS
+= InstallExternalLibs
107 InstallExternalLibs_INST
= $(INST_BIN
)
110 if1of
($(KBUILD_TARGET
), win os2
)
111 ifdef VBOX_WITH_VBOXSDL
112 include $(KBUILD_PATH
)/sdks
/LIBSDL.kmk
113 InstallExternalLibs_SOURCES
+= \
114 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(DLL_SDK_LIBSDL_SDL
))
115 ifdef VBOX_WITH_SECURELABEL
116 InstallExternalLibs_SOURCES
+= \
117 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(DLL_SDK_LIBSDL_SDLTTF
))
119 ifeq ($(KBUILD_TARGET
),os2
)
120 InstallExternalLibs_SOURCES
+= \
121 $(DLL_SDK_LIBSDL_FSLIB
)
127 # The compiler runtime DLLs.
128 ifeq ($(KBUILD_TARGET
).
$(VBOX_WITHOUT_COMPILER_REDIST
),win.
)
129 ifndef TOOL_
$(VBOX_VCC_TOOL
)
130 include $(KBUILD_PATH
)/tools
/$(VBOX_VCC_TOOL
).kmk
132 ifneq ($(KBUILD_TARGET_ARCH
),arm64
)
133 ifndef TOOL_
$(VBOX_VCC_TOOL_STEM
)X86
134 include $(KBUILD_PATH
)/tools
/$(VBOX_VCC_TOOL_STEM
)X86.kmk
137 ifdef PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)_REDIST
138 InstallExternalLibs_SOURCES
+= \
139 $(foreachfile redistdll
, $(qaddprefix
,$(requote unq
,$(PATH_TOOL_
$(VBOX_VCC_TOOL
)_REDIST_CRT
)/), \
140 $(TOOL_
$(VBOX_VCC_TOOL
)_REDIST_CRT_DLLS
) $(TOOL_
$(VBOX_VCC_TOOL
)_REDIST_CPP_DLLS
)) \
141 ,$(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(redistdll
)) \
142 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(redistdll
))=>testcase
/$(qnotdir
,$(redistdll
)))
143 ifdef VBOX_WITH_32_ON_64_MAIN_API
144 InstallExternalLibs_SOURCES
+= \
145 $(foreachfile redistdll
, $(qaddprefix
,$(requote unq
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_REDIST_CRT
)/), \
146 $(TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_REDIST_CRT_DLLS
) $(TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_REDIST_CPP_DLLS
)) \
147 ,$(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(redistdll
),x86
)=>x86
/$(qnotdir
,$(redistdll
)))
149 ifeq ($(VBOX_VCC_CRT_TYPE
),d
)
150 InstallExternalLibs_SOURCES
+= \
151 $(foreachfile redistdll
, $(qaddprefix
,$(requote unq
,$(PATH_TOOL_
$(VBOX_VCC_TOOL
)_REDIST_DEBUG_CRT
)/), \
152 $(addsuffix d.dll
,$(basename $(TOOL_
$(VBOX_VCC_TOOL
)_REDIST_CRT_DLLS
) $(TOOL_
$(VBOX_VCC_TOOL
)_REDIST_CPP_DLLS
)))) \
153 ,$(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(redistdll
)) \
154 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(redistdll
))=>testcase
/$(qnotdir
,$(redistdll
)))
155 ifdef VBOX_WITH_32_ON_64_MAIN_API
156 InstallExternalLibs_SOURCES
+= \
157 $(foreachfile redistdll
, $(qaddprefix
,$(requote unq
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_REDIST_DEBUG_CRT
)/), \
158 $(addsuffix d.dll
,$(basename $(TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_REDIST_CRT_DLLS
) $(TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_REDIST_CPP_DLLS
)))) \
159 ,$(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(redistdll
),x86
)=>x86
/$(qnotdir
,$(redistdll
)))
162 ifeq ($(KBUILD_TYPE
),asan
)
163 ifeq ($(KBUILD_TARGET_ARCH
),amd64
)
164 InstallExternalLibs_SOURCES
+= \
165 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)AMD64_BIN
)/clang_rt.asan_dynamic-x86_64.dll
) \
166 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)AMD64_BIN
)/clang_rt.asan_dynamic-x86_64.dll
)=>testcase
/clang_rt.asan_dynamic-x86_64.dll
167 ifeq ($(VBOX_VCC_CRT_TYPE
),d
)
168 InstallExternalLibs_SOURCES
+= \
169 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)AMD64_BIN
)/clang_rt.asan_dbg_dynamic-x86_64.dll
) \
170 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)AMD64_BIN
)/clang_rt.asan_dbg_dynamic-x86_64.dll
)=>testcase
/clang_rt.asan_dbg_dynamic-x86_64.dll
173 ifeq ($(KBUILD_TARGET_ARCH
),x86
)
174 InstallExternalLibs_SOURCES
+= \
175 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_BIN
)/clang_rt.asan_dynamic-i386.dll
) \
176 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_BIN
)/clang_rt.asan_dynamic-i386.dll
)=>testcase
/clang_rt.asan_dynamic-i386.dll
177 ifeq ($(VBOX_VCC_CRT_TYPE
),d
)
178 InstallExternalLibs_SOURCES
+= \
179 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_BIN
)/clang_rt.asan_dbg_dynamic-i386.dll
) \
180 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_BIN
)/clang_rt.asan_dbg_dynamic-i386.dll
)=>testcase
/clang_rt.asan_dbg_dynamic-i386.dll
183 ifdef VBOX_WITH_32_ON_64_MAIN_API
184 InstallExternalLibs_SOURCES
+= $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_BIN
)/clang_rt.asan_dynamic-i386.dll
,x86
)=>x86
/clang_rt.asan_dynamic-i386.dll
185 ifeq ($(VBOX_VCC_CRT_TYPE
),d
)
186 InstallExternalLibs_SOURCES
+= $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(PATH_TOOL_
$(VBOX_VCC_TOOL_STEM
)X86_BIN
)/clang_rt.asan_dbg_dynamic-i386.dll
,x86
)=>x86
/clang_rt.asan_dbg_dynamic-i386.dll
191 VBOX_VCC_REDIR_BASE
:= Microsoft.VC
$(substr
$(VBOX_VCC_TOOL
),4,3)
192 VBOX_PATH_VCC_REDIST
= $(PATH_TOOL_
$(VBOX_VCC_TOOL
))/redist
/
193 VBOX_PATH_VCC_REDIST_CRT
= $(VBOX_PATH_VCC_REDIST
)/$(subst amd64
,x64
,$(KBUILD_TARGET_ARCH
))/$(VBOX_VCC_REDIR_BASE
).CRT
194 VBOX_PATH_VCC_REDIST_CRT_DBG
= $(VBOX_PATH_VCC_REDIST
)/Debug_NonRedist
/$(subst amd64
,x64
,$(KBUILD_TARGET_ARCH
))/$(VBOX_VCC_REDIR_BASE
).DebugCRT
195 VBOX_PATH_VCC_REDIST_CRT_X86
= $(VBOX_PATH_VCC_REDIST
)/x86
/$(VBOX_VCC_REDIR_BASE
).CRT
196 VBOX_PATH_VCC_REDIST_CRT_DBG_X86
= $(VBOX_PATH_VCC_REDIST
)/Debug_NonRedist
/x86
/$(VBOX_VCC_REDIR_BASE
).DebugCRT
198 InstallExternalLibs_SOURCES
+= \
199 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT
)/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll
) \
200 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT
)/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll
) \
201 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT
)/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll
)=>testcase
/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll \
202 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT
)/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll
)=>testcase
/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll
203 ifdef VBOX_WITH_32_ON_64_MAIN_API
204 InstallExternalLibs_SOURCES
+= \
205 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT_X86
)/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll
,x86_
)=>x86
/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll \
206 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT_X86
)/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll
,x86_
)=>x86
/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4).dll
208 ifeq ($(VBOX_VCC_CRT_TYPE
),d
)
209 InstallExternalLibs_SOURCES
+= \
210 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT_DBG
)/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4)d.dll
) \
211 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT_DBG
)/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4)d.dll
) \
212 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT_DBG
)/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4)d.dll
)=>testcase
/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4)d.dll \
213 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT_DBG
)/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4)d.dll
)=>testcase
/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4)d.dll
214 ifdef VBOX_WITH_32_ON_64_MAIN_API
215 InstallExternalLibs_SOURCES
+= \
216 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT_DBG_X86
)/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
)d
,4).dll
,x86_
)=>x86
/msvcr
$(substr
$(VBOX_VCC_TOOL_STEM
),4)d.dll \
217 $(call VBOX_RE_SIGN_DLL_FN
,InstallExternalLibs
,$(VBOX_PATH_VCC_REDIST_CRT_DBG_X86
)/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
)d
,4).dll
,x86_
)=>x86
/msvcp
$(substr
$(VBOX_VCC_TOOL_STEM
),4)d.dll
224 # Install our Qt DLLs / Shared Objects / Frameworks.
225 # Note: The installer fixes the darwin .dylibs when hardening is enabled.
226 # Note: Contents/Info.plist is where it's in 4.7.x, not sure if the location is kosher... According to
227 # https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/FrameworkAnatomy.html
228 # the Info.plist file goes into Resources.
230 if defined
(VBOX_WITH_QTGUI
) && !defined
(VBOX_ONLY_SDK
) && "$(KBUILD_TARGET)" == "darwin"
231 include $(KBUILD_PATH
)/units
/qt6.kmk
234 qt-bin_INST
= $(INST_VIRTUALBOX
)Contents
/
236 qt-bin_EXEC_SOURCES
= $(foreach qtmod
,$(VBOX_QT_MOD_NAMES
), \
237 $(PATH_SDK_QT6_LIB
)/$(qtmod
).framework
/Versions
/A
/$(qtmod
)=>Frameworks
/$(qtmod
).framework
/Versions
/A
/$(qtmod
))
238 qt-bin_SOURCES
= $(foreach qtmod
,$(VBOX_QT_MOD_NAMES
), \
239 $(PATH_SDK_QT6_LIB
)/$(qtmod
).framework
/Versions
/A
/Resources
/Info.plist
=>Frameworks
/$(qtmod
).framework
/Versions
/A
/Resources
/Info.plist
)
240 ifdef VBOX_WITH_QT_DSYMS
241 qt-bin_SOURCES
+= $(foreach qtmod
,$(VBOX_QT_MOD_NAMES
), \
242 $(PATH_SDK_QT6_LIB
)/$(qtmod
).framework.dSYM
/Contents
/Info.plist
=>Frameworks
/$(qtmod
).framework.dSYM
/Contents
/Info.plist \
243 $(PATH_SDK_QT6_LIB
)/$(qtmod
).framework.dSYM
/Contents
/Resources
/DWARF
/$(qtmod
)=>Frameworks
/$(qtmod
).framework.dSYM
/Contents
/Resources
/DWARF
/$(qtmod
))
245 qt-bin_EXEC_SOURCES
+= \
246 $(PATH_SDK_QT6
)/plugins
/platforms
/libqcocoa
$(SUFF_DLL
)=>plugins
/platforms
/libqcocoa
$(SUFF_DLL
) \
247 $(PATH_SDK_QT6
)/plugins
/platforms
/libqminimal
$(SUFF_DLL
)=>plugins
/platforms
/libqminimal
$(SUFF_DLL
) \
248 $(PATH_SDK_QT6
)/plugins
/platforms
/libqoffscreen
$(SUFF_DLL
)=>plugins
/platforms
/libqoffscreen
$(SUFF_DLL
) \
249 $(PATH_SDK_QT6
)/plugins
/sqldrivers
/libqsqlite
$(SUFF_DLL
)=>plugins
/sqldrivers
/libqsqlite
$(SUFF_DLL
) \
250 $(PATH_SDK_QT6
)/plugins
/styles
/libqmacstyle
$(SUFF_DLL
)=>plugins
/styles
/libqmacstyle
$(SUFF_DLL
)
251 ifdef VBOX_WITH_QT_DSYMS
252 qt-bin_SOURCES
+= $(foreach qtplat
, qcocoa qminimal qoffscreen
, \
253 $(PATH_SDK_QT6
)/plugins
/platforms
/lib
$(qtplat
)$(SUFF_DLL
).dSYM
/Contents
/Info.plist
=>plugins
/platforms
/lib
$(qtplat
)$(SUFF_DLL
).dSYM
/Contents
/Info.plist \
254 $(PATH_SDK_QT6
)/plugins
/platforms
/lib
$(qtplat
)$(SUFF_DLL
).dSYM
/Contents
/Resources
/DWARF
/$(qtplat
)=>plugins
/platforms
/lib
$(qtplat
)$(SUFF_DLL
).dSYM
/Contents
/Resources
/DWARF
/$(qtplat
))
255 qt-bin_SOURCES
+= $(foreach qtsqldrv
, qsqlite
, \
256 $(PATH_SDK_QT6
)/plugins
/sqldrivers
/lib
$(qtsqldrv
)$(SUFF_DLL
).dSYM
/Contents
/Info.plist
=>plugins
/sqldrivers
/lib
$(qtsqldrv
)$(SUFF_DLL
).dSYM
/Contents
/Info.plist \
257 $(PATH_SDK_QT6
)/plugins
/sqldrivers
/lib
$(qtsqldrv
)$(SUFF_DLL
).dSYM
/Contents
/Resources
/DWARF
/$(qtsqldrv
)=>plugins
/sqldrivers
/lib
$(qtsqldrv
)$(SUFF_DLL
).dSYM
/Contents
/Resources
/DWARF
/$(qtsqldrv
))
258 qt-bin_SOURCES
+= $(foreach qtstyl
, qmacstyle
, \
259 $(PATH_SDK_QT6
)/plugins
/styles
/lib
$(qtstyl
)$(SUFF_DLL
).dSYM
/Contents
/Info.plist
=>plugins
/styles
/lib
$(qtstyl
)$(SUFF_DLL
).dSYM
/Contents
/Info.plist \
260 $(PATH_SDK_QT6
)/plugins
/styles
/lib
$(qtstyl
)$(SUFF_DLL
).dSYM
/Contents
/Resources
/DWARF
/$(qtstyl
)=>plugins
/styles
/lib
$(qtstyl
)$(SUFF_DLL
).dSYM
/Contents
/Resources
/DWARF
/$(qtstyl
))
262 qt-bin_SYMLINKS
= $(foreach qtmod
, $(VBOX_QT_MOD_NAMES
), \
263 Frameworks
/$(qtmod
).framework
/Versions
/Current
=>A \
264 Frameworks
/$(qtmod
).framework
/$(qtmod
)=>Versions
/A
/$(qtmod
) \
265 Frameworks
/$(qtmod
).framework
/Resources
=>Versions
/A
/Resources
)
266 qt-bin_INSTALLER
= $(INSTALL
) $(if
$(uid
),-o
$(uid
)) $(if
$(gid
),-g
$(gid
)) $(if
$(mode
),-m
$(mode
)) $(4) -- "$(1)" "$(2)" \
267 $(if-expr
"$(source_type_prefix)" == "EXEC_" \
268 ,$(NLTAB
)install_name_tool \
269 $(if-expr
"$(suffix $2)" == "", -id
"$(if $(VBOX_WITH_HARDENING),/Applications/VirtualBox.app/Contents/Framework,@rpath)/$(notdir $(2)).framework/Version/A/$(notdir $(2))",) \
270 $(foreach qtmod
, $(VBOX_QT_MOD_NAMES
), \
271 $(foreach prefix, @executable_path
/..
/Frameworks
/ $(PATH_SDK_QT6
)/Frameworks
/ $(PATH_SDK_QT6
)/, \
272 -change
"$(prefix)$(qtmod).framework/Versions/A/$(qtmod)" \
273 "$(if $(VBOX_WITH_HARDENING),/Applications/VirtualBox.app/Contents/Frameworks,@rpath)/$(qtmod).framework/Versions/A/$(qtmod)") ) \
274 "$(2)",) # HACK ALERT! Using $(source_type_prefix) to detect EXEC_SOURCES.
275 else if defined
(VBOX_WITH_QTGUI
) && !defined
(VBOX_ONLY_SDK
) && (defined
(VBOX_WITH_ORACLE_QT
) || defined
(VBOX_WITH_QT_PAYLOAD
))
277 include $(KBUILD_PATH
)/units
/qt6.kmk
281 qt-bin_INST
= $(INST_BIN
)
283 ifeq ($(KBUILD_TARGET
),win
)
285 $(foreach qtmod
,$(VBOX_QT_MOD_NAMES
),$(call VBOX_RE_SIGN_DLL_FN
,qt-bin
,$(PATH_SDK_QT6
)/bin
/$(qtmod
)$(SUFF_DLL
)))
287 $(call VBOX_RE_SIGN_DLL_FN
,qt-bin
,$(PATH_SDK_QT6
)/plugins
/platforms
/qwindows
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
))=>platforms
/qwindows
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
) \
288 $(call VBOX_RE_SIGN_DLL_FN
,qt-bin
,$(PATH_SDK_QT6
)/plugins
/platforms
/qminimal
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
))=>platforms
/qminimal
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
) \
289 $(call VBOX_RE_SIGN_DLL_FN
,qt-bin
,$(PATH_SDK_QT6
)/plugins
/platforms
/qoffscreen
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
))=>platforms
/qoffscreen
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
) \
290 $(call VBOX_RE_SIGN_DLL_FN
,qt-bin
,$(PATH_SDK_QT6
)/plugins
/sqldrivers
/qsqlite
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
))=>sqldrivers
/qsqlite
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
) \
291 $(call VBOX_RE_SIGN_DLL_FN
,qt-bin
,$(PATH_SDK_QT6
)/plugins
/styles
/qmodernwindowsstyle
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
))=>styles
/qmodernwindowsstyle
$(VBOX_QT_POSTFIX
)$(VBOX_QT_DBG
)$(SUFF_DLL
)
292 ifdef VBOX_WITH_QT_PDBS
293 qt-bin_SOURCES
+= $(foreach qtmod
,$(VBOX_QT_MOD_NAMES
),$(wildcard $(PATH_SDK_QT6
)/qt
*/$(PATH_SDK_QT6_LIB
)/$(qtmod
).pdb
))
297 VBOX_QT_VERSION_MAJOR
:= 6
298 ifdef VBOX_WITH_HARDENING
299 # The wildcards are necessary to install the libs instead of the symlinks
301 $(foreach qtmod
,$(VBOX_QT_MOD_NAMES
),$(wildcard $(PATH_SDK_QT6_LIB
)/lib
$(qtmod
).so.
*.
*.
*[0-9])=>lib
$(qtmod
).so.
$(VBOX_QT_VERSION_MAJOR
)) \
302 $(foreach lib
,$(VBOX_QT_PLUGINS
),$(PATH_SDK_QT6
)/$(lib
)=>$(lib
))
303 else # !VBOX_WITH_HARDENING
304 # For non-hardened builds we need to remove the RUNPATH. This stuff is
305 # ugly but we need to prevent kBuild from hard-linking otherwise we
306 # (indirectly) change the binaries in tools
308 $(foreach qtmod
,$(VBOX_QT_MOD_NAMES
),$(qt-bin_0_OUTDIR
)/lib
$(qtmod
).so.
$(VBOX_QT_VERSION_MAJOR
)=>lib
$(qtmod
).so.
$(VBOX_QT_VERSION_MAJOR
)) \
309 $(foreach lib
,$(VBOX_QT_PLUGINS
),$(qt-bin_0_OUTDIR
)/$(lib
)=>$(lib
))
311 $(foreach qtmod
,$(VBOX_QT_MOD_NAMES
),$$(qt-bin_0_OUTDIR
)/lib
$(qtmod
).so.
$(VBOX_QT_VERSION_MAJOR
)): \
312 $$(qt-bin_0_OUTDIR
)/% : $(PATH_SDK_QT6_LIB
)/% |
$$(qt-bin_0_OUTDIR
)/
313 $(call MSG_INST_FILE
,$^
,$@
)
315 $(QUIET
)chrpath
--replace
"\$$ORIGIN" $@
317 ifn1of
($(KBUILD_TARGET
), solaris linux
)
318 $(foreach lib
,$(VBOX_QT_PLUGINS
),$$(qt-bin_0_OUTDIR
)/$(lib
)): $$(qt-bin_0_OUTDIR
)/% : \
319 $(PATH_SDK_QT6
)/% |
$$(qt-bin_0_OUTDIR
)/
320 $(call MSG_INST_FILE
,$^
,$@
)
321 $(QUIET
)$(MKDIR
) -p
$(@D
)
323 $(QUIET
)chrpath
--delete
$@
324 endif # !solaris and !linux
326 # @todo For solaris and some linuxes dlopen fails to navigate executable rpath to dependent libraries,
327 # so add explicit rpath for libqxcb.so, find better solution later.
328 if1of
($(KBUILD_TARGET
), solaris linux
)
329 $(foreach lib
,$(VBOX_QT_PLUGINS
),$$(qt-bin_0_OUTDIR
)/$(lib
)): $$(qt-bin_0_OUTDIR
)/% : \
330 $(PATH_SDK_QT6
)/% |
$$(qt-bin_0_OUTDIR
)/
331 $(call MSG_INST_FILE
,$^
,$@
)
332 $(QUIET
)$(MKDIR
) -p
$(@D
)
334 $(QUIET
)chrpath
--replace
"\$$ORIGIN/../../" $@
335 endif # solaris linux
337 endif # !VBOX_WITH_HARDENING
339 endif # defined(VBOX_WITH_QTGUI) && !defined(VBOX_ONLY_SDK)
343 # Install additions iso from the build server if configured to do so.
345 # Note! For building the combined package, just get the additions .ISO
346 # once for amd64 to prevent version inconsistences. In all other
347 # cases we get the .ISO per target architecture.
349 if defined
(VBOX_WITH_ADDITIONS_FROM_BUILD_SERVER
) \
350 && (!defined
(VBOX_WITH_COMBINED_PACKAGE
) ||
"$(KBUILD_TARGET_ARCH)" == "amd64")
351 INSTALLS
+= buildserver-additions
352 buildserver-additions_INST
= $(INST_ADDITIONS_ISO
)
353 buildserver-additions_MODE
= 0644
354 buildserver-additions_SOURCES
= $(PATH_TARGET
)/VBoxGuestAdditions.iso
355 buildserver-additions_CLEANS
= \
356 $(buildserver-additions_0_OUTDIR
)/unpacked.ts \
357 $(buildserver-additions_0_OUTDIR
)/VBoxGuestAdditions.zip \
358 $(buildserver-additions_0_OUTDIR
)/VBoxGuestAdditions.zip.tmp \
359 $(PATH_TARGET
)/VBoxGuestAdditions.iso
361 $$(buildserver-additions_0_OUTDIR
)/unpacked.ts
+|
$(PATH_TARGET
)/VBoxGuestAdditions.iso
: \
362 $$(buildserver-additions_0_OUTDIR
)/VBoxGuestAdditions.zip
363 $(call MSG_L1
,Unpacking additions archive
)
364 $(QUIET
)$(TOOL_ZIP_UNPACK
) $(TOOL_ZIP_UNPACKFLAGS
) -o
$< -d
$(PATH_TARGET
)
365 $(TOUCH
) -c
-- $(PATH_TARGET
)/VBoxGuestAdditions.iso
366 $(APPEND
) -t
$@
"done"
368 $$(buildserver-additions_0_OUTDIR
)/VBoxGuestAdditions.zip
: $(VBOX_SVN_REV_KMK
) $(KBUILD_DEVTOOLS
)/bin
/additions.sh |
$$(dir $$@
)
369 $(RM
) -f
-- "$@" "$@.tmp"
370 $(SHELL
) $(KBUILD_DEVTOOLS
)/bin
/additions.sh
--cmd fetch
--filename
"$@.tmp" $(if
$(VBOX_USE_PROXY_FOR_BUILD_SERVER
),--default-proxy
,)
371 $(MV
) -f
-- "$@.tmp" "$@"
373 endif # VBOX_WITH_ADDITIONS_FROM_BUILD_SERVER unless win.x86+combined
377 # Install documentation files (at the moment the .chm) from the build server.
379 ifdef VBOX_WITH_DOCS_FROM_BUILD_SERVER
380 ## @todo r=bird: Too much mess now for $(PATH_TARGET); move to doc/manual/.
381 INSTALLS
+= buildserver-docs
382 buildserver-docs_INST
= $(INST_BIN
)
383 buildserver-docs_MODE
= 0644
384 buildserver-docs_SOURCES
= \
385 $(addprefix $(PATH_TARGET
)/, \
386 $(if-expr defined
(VBOX_WITH_DOCS_QHELP_PACKING
),UserManual.qch UserManual.qhc
,) \
388 $(foreach f
,$(VBOX_MANUAL_ADD_LANGUAGES
), \
389 $(if-expr defined
(VBOX_WITH_DOCS_QHELP_PACKING
),UserManual_
$(f
).qch UserManual_
$(f
).qhc
,) \
390 UserManual_
$(f
).pdf
))
391 buildserver-docs_CLEANS
= \
392 $(buildserver-docs_0_OUTDIR
)/unpacked.ts \
393 $(buildserver-docs_0_OUTDIR
)/VBoxDocumentation.zip \
394 $(buildserver-docs_0_OUTDIR
)/VBoxDocumentation.zip.tmp \
395 $(addprefix $(PATH_TARGET
)/, \
396 VirtualBox.chm UserManual.qch UserManual.qhc UserManual.pdf \
397 $(foreach f
,$(VBOX_MANUAL_ADD_LANGUAGES
), \
398 VirtualBox_
$(f
).chm \
399 UserManual_
$(f
).qch UserManual_
$(f
).qhc \
400 UserManual_
$(f
).pdf
))
402 $$(buildserver-docs_0_OUTDIR
)/unpacked.ts
+| \
403 $(if-expr defined
(VBOX_WITH_DOCS_QHELP_PACKING
),$(PATH_TARGET
)/UserManual.qch
$(PATH_TARGET
)/UserManual.qhc
,) \
404 $(PATH_TARGET
)/UserManual.pdf \
405 $(foreach f
,$(VBOX_MANUAL_ADD_LANGUAGES
), \
406 $(if-expr defined
(VBOX_WITH_DOCS_QHELP_PACKING
),$(PATH_TARGET
)/UserManual_
$(f
).qch
$(PATH_TARGET
)/UserManual_
$(f
).qhc
,) \
407 $(PATH_TARGET
)/UserManual_
$(f
).pdf
): \
408 $$(buildserver-docs_0_OUTDIR
)/VBoxDocumentation.zip
409 $(call MSG_L1
,Unpacking documentation
)
410 $(QUIET
)$(TOOL_ZIP_UNPACK
) $(TOOL_ZIP_UNPACKFLAGS
) -o
$< -d
$(PATH_TARGET
)
412 $(if-expr defined
(VBOX_WITH_DOCS_QHELP_PACKING
),$(PATH_TARGET
)/UserManual.qch
$(PATH_TARGET
)/UserManual.qhc
,) \
413 $(PATH_TARGET
)/UserManual.pdf \
414 $(foreach f
,$(VBOX_MANUAL_ADD_LANGUAGES
), \
415 $(if-expr defined
(VBOX_WITH_DOCS_QHELP_PACKING
),$(PATH_TARGET
)/UserManual_
$(f
).qch
$(PATH_TARGET
)/UserManual_
$(f
).qhc
,) \
416 $(PATH_TARGET
)/UserManual_
$(f
).pdf
)
417 $(APPEND
) -t
$@
"done"
419 $$(buildserver-docs_0_OUTDIR
)/VBoxDocumentation.zip
: $(VBOX_SVN_REV_KMK
) $(KBUILD_DEVTOOLS
)/bin
/documentation.sh |
$$(dir $$@
)
420 $(RM
) -f
-- "$@" "$@.tmp"
421 $(SHELL
) $(KBUILD_DEVTOOLS
)/bin
/documentation.sh
--cmd fetch
--filename
"$@.tmp" $(if
$(VBOX_USE_PROXY_FOR_BUILD_SERVER
),--default-proxy
,)
422 $(MV
) -f
-- "$@.tmp" "$@"
424 endif # VBOX_WITH_DOCS_FROM_BUILD_SERVER
427 if defined
(VBOX_WITH_EFI
) && !defined
(VBOX_ONLY_SDK
)
429 # Install EFI firmware image
431 VBOX_EFI_FIRMWARE_ARCHES
:= x86 amd64
432 ifdef VBOX_WITH_VIRT_ARMV8
433 VBOX_EFI_FIRMWARE_ARCHES
+= arm32 arm64
435 VBOX_EFI_ARCH_TO_DBGSUFF.x86
:= .pdb
436 VBOX_EFI_ARCH_TO_DBGSUFF.amd64
:= .pdb
437 VBOX_EFI_ARCH_TO_DBGSUFF.arm32
:= .debug
438 VBOX_EFI_ARCH_TO_DBGSUFF.arm64
:= .debug
440 ifdef VBOX_WITH_EFIFW_FROM_BUILD_SERVER
442 # Either from the build server.
444 ifndef VBOX_EFI_FIRMWARE_EFI_MODULES_KMK_INCLUDED
445 include $(PATH_ROOT
)/src
/VBox
/Devices
/EFI
/Firmware
/EfiModules.kmk
447 INSTALLS
+= buildserver-efifw
448 buildserver-efifw_INST
= $(INST_BIN
)
449 buildserver-efifw_MODE
= 0644
450 buildserver-efifw_SOURCES
= \
451 $(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
),$(buildserver-efifw_0_OUTDIR
)/VBoxEFI-
$(arch
).fd
)
452 buildserver-efifw_CLEANS
= \
453 $(buildserver-efifw_0_OUTDIR
)/unpacked.ts \
454 $(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
),$(buildserver-efifw_0_OUTDIR
)/VBoxEFI-
$(arch
).fd
) \
455 $(buildserver-efifw_0_OUTDIR
)/VBoxEfiFirmware.zip \
456 $(buildserver-efifw_0_OUTDIR
)/VBoxEfiFirmware.zip.tmp \
457 $(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
) \
458 ,$(foreach dbgsuff
,$(VBOX_EFI_ARCH_TO_DBGSUFF.
$(arch
)) \
459 ,$(foreach mod
,$(VBOX_EFI_MODULES_FLAT.
$(arch
)) \
460 ,$(buildserver-efifw_0_OUTDIR
)/amd64
/$(mod
)$(dbgsuff
))))
462 INSTALLS
+= buildserver-efifw-dbg
463 buildserver-efifw-dbg_INST
= $(INST_VBOXDBG_SYMS
)
464 buildserver-efifw-dbg_MODE
= 0644
465 buildserver-efifw-dbg_SOURCES
= \
466 $(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
) \
467 ,$(foreach dbgsuff
,$(VBOX_EFI_ARCH_TO_DBGSUFF.
$(arch
)) \
468 ,$(foreach mod
,$(VBOX_EFI_MODULES_FLAT.
$(arch
)) \
469 ,$(buildserver-efifw_0_OUTDIR
)/$(arch
)/$(mod
)$(dbgsuff
)=>$(arch
)/$(mod
)$(dbgsuff
))))
471 $$(buildserver-efifw_0_OUTDIR
)/unpacked.ts \
472 +|
$(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
),$$(buildserver-efifw_0_OUTDIR
)/VBoxEFI-
$(arch
).fd
) \
473 $(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
) \
474 ,$(foreach dbgsuff
,$(VBOX_EFI_ARCH_TO_DBGSUFF.
$(arch
)) \
475 ,$(foreach mod
,$(VBOX_EFI_MODULES_FLAT.
$(arch
)) \
476 ,$$(buildserver-efifw_0_OUTDIR
)/$(arch
)/$(mod
)$(dbgsuff
)))): \
477 $$(buildserver-efifw_0_OUTDIR
)/VBoxEfiFirmware.zip
478 $(call MSG_L1
,Unpacking EFI firmware
)
479 $(QUIET
)$(TOOL_ZIP_UNPACK
) $(TOOL_ZIP_UNPACKFLAGS
) -o
$< -d
$(buildserver-efifw_0_OUTDIR
)
480 $(MKDIR
) -p
-- $(dir $@
)/amd64
$(dir $@
)/x86
482 $(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
) \
483 ,$(foreach dbgsuff
,$(VBOX_EFI_ARCH_TO_DBGSUFF.
$(arch
)) \
484 ,$(foreach mod
,$(VBOX_EFI_MODULES_FLAT.
$(arch
)) \
485 ,$(buildserver-efifw_0_OUTDIR
)/amd64
/$(mod
)$(dbgsuff
)))) \
486 ,$(NLTAB
) $(QUIET
)$(TEST
) '!' -f
$(file
) -- $(TOUCH_EXT
) $(file
) )
487 $(TOUCH
) -c
-- $(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
),$(buildserver-efifw_0_OUTDIR
)/VBoxEFI-
$(arch
).fd
)
488 $(APPEND
) -t
$@
"done"
490 $$(buildserver-efifw_0_OUTDIR
)/VBoxEfiFirmware.zip
: \
491 $(VBOX_SVN_REV_KMK
) $(KBUILD_DEVTOOLS
)/bin
/efi_firmware.sh |
$$(dir $$@
)
492 $(RM
) -f
-- "$@" "$@.tmp"
493 $(SHELL
) $(KBUILD_DEVTOOLS
)/bin
/efi_firmware.sh
--cmd fetch
--filename
"$@.tmp" $(if
$(VBOX_USE_PROXY_FOR_BUILD_SERVER
),--default-proxy
,)
494 $(MV
) -f
-- "$@.tmp" "$@"
496 else # !VBOX_WITH_EFIFW_FROM_BUILD_SERVER
498 # Or from the local copy (no debug).
500 INSTALLS
+= local-efifw
501 local-efifw_INST
= $(INST_BIN
)
502 local-efifw_MODE
= 0644
503 local-efifw_SOURCES
:= \
504 $(foreach arch
,$(VBOX_EFI_FIRMWARE_ARCHES
),$(PATH_ROOT
)/src
/VBox
/Devices
/EFI
/FirmwareBin
/VBoxEFI-
$(arch
).fd
)
505 endif # !VBOX_WITH_EFIFW_FROM_BUILD_SERVER
506 endif # VBOX_WITH_EFI && !VBOX_ONLY_SDK
509 ifdef VBOX_WITH_EXTPACKS_FROM_BUILD_SERVER
511 # Get the extension pack from from the build server to facility the automatic
512 # testing (everything in one tarball (VBoxAll-*)).
514 # Note! Using the plural here as we might be downloading more packages eventually.
516 INSTALLS
+= buildserver-extpacks
517 buildserver-extpacks_INST
= $(INST_DIST
)
518 buildserver-extpacks_MODE
= 0644
519 buildserver-extpacks_SOURCES
= \
520 $(buildserver-extpacks_0_OUTDIR
)/$(VBOX_PUEL_MANGLED_NAME
).vbox-extpack
521 buildserver-extpacks_CLEANS
= \
522 $(buildserver-extpacks_0_OUTDIR
)/$(VBOX_PUEL_MANGLED_NAME
).vbox-extpack \
523 $(buildserver-extpacks_0_OUTDIR
)/$(VBOX_PUEL_MANGLED_NAME
).vbox-extpack.tmp
525 $$(buildserver-extpacks_0_OUTDIR
)/$(VBOX_PUEL_MANGLED_NAME
).vbox-extpack
: \
526 $(VBOX_SVN_REV_KMK
) $(KBUILD_DEVTOOLS
)/bin
/extpacks.sh |
$$(dir $$@
)
527 $(RM
) -f
-- "$@.tmp" "$@"
528 $(SHELL
) $(KBUILD_DEVTOOLS
)/bin
/extpacks.sh
--cmd fetch
--filename
"$@.tmp" --vbox-version
"$(VBOX_VERSION_STRING_NO_PUB)" \
529 $(if
$(VBOX_USE_PROXY_FOR_BUILD_SERVER
),--default-proxy
,)
530 $(MV
) -f
-- "$@.tmp" "$@"
537 # Install staged binaries on platforms where we can't cross
540 ifn1of
($(KBUILD_TARGET
), linux win
)
541 VBOX_PATH_STAGED ?
= .
544 ifndef VBOX_WITH_LINUX_ADDITIONS
545 ifndef VBOX_WITH_WIN32_ADDITIONS
546 ifneq ($(wildcard $(VBOX_PATH_STAGED
)/VBoxGuestAdditions.iso
),)
547 INSTALLS
+= staged-additions
548 staged-additions_INST
= $(INST_ADDITIONS_ISO
)
549 staged-additions_MODE
= 0644
550 staged-additions_SOURCES
= $(VBOX_PATH_STAGED
)/VBoxGuestAdditions.iso
556 ifndef VBOX_WITH_WIN32_ADDITIONS
557 ifneq ($(wildcard $(VBOX_PATH_STAGED
)/guesttool.exe
),)
558 INSTALLS
+= staged-guesttool
559 staged-guesttool_INST
= $(INST_BIN
)
560 staged-guesttool_SOURCES
= $(VBOX_PATH_STAGED
)/guesttool.exe
566 endif # !VBOX_ONLY_ADDITIONS && !VBOX_ONLY_DOCS && !VBOX_ONLY_EXTPACKS && !VBOX_ONLY_VALIDATIONKIT
570 # It may sound a bit odd, but for preparing the documentation package the
571 # doxygen documentation isn't needed and increases the build time a lot.
573 else # !VBOX_ONLY_DOCS
575 # Generate documentation.
576 # (This should be converted into a separate pass or merged with an existing one later.)
578 ifdef VBOX_WITH_ALL_DOXYGEN_TARGETS
583 endif # !VBOX_ONLY_DOCS
586 # The core (VMM+Devices+Main) documentation.
588 # This includes so much because we wish to have the complete CFGM
591 VBOX_CORE_DOXYFILE_OUTPUT
= $(PATH_OUT
)/docs
/Core
592 BLDDIRS
+= $(VBOX_CORE_DOXYFILE_OUTPUT
)
594 $(VBOX_CORE_DOXYFILE_OUTPUT
)/Doxyfile.Core \
595 $(VBOX_CORE_DOXYFILE_OUTPUT
)/Doxyfile.Core.dep
597 VBOX_CORE_DOXYFILE_INPUT_DIRS
= \
600 include/iprt
/crypto \
601 include/iprt
/formats \
604 include/iprt
/solaris \
610 include/VBox
/ExtPack \
611 include/VBox
/HostServices \
612 include/VBox
/GuestHost \
618 src
/VBox
/VMM
/VMMAll \
619 src
/VBox
/VMM
/VMMSwitcher \
620 src
/VBox
/VMM
/include \
623 src
/VBox
/Devices
/Audio \
624 src
/VBox
/Devices
/Bus \
625 src
/VBox
/Devices
/Graphics \
626 src
/VBox
/Devices
/Graphics
/BIOS \
627 src
/VBox
/Devices
/Graphics
/shaderlib \
628 src
/VBox
/Devices
/Input \
629 src
/VBox
/Devices
/Networking \
630 src
/VBox
/Devices
/PC \
631 src
/VBox
/Devices
/PC
/BIOS \
632 src
/VBox
/Devices
/Parallel \
633 src
/VBox
/Devices
/Serial \
634 src
/VBox
/Devices
/Storage \
635 src
/VBox
/Devices
/USB \
636 src
/VBox
/Devices
/USB
/darwin \
637 src
/VBox
/Devices
/USB
/linux \
638 src
/VBox
/Devices
/USB
/os2 \
639 src
/VBox
/Devices
/USB
/solaris \
640 src
/VBox
/Devices
/USB
/vrdp \
641 src
/VBox
/Devices
/USB
/win32 \
642 src
/VBox
/Devices
/VMMDev \
643 src
/VBox
/Main
/include \
644 src
/VBox
/Main
/include/hgcm \
647 src
/VBox
/Main
/webservice \
649 src
/VBox
/Main
/src-all \
650 src
/VBox
/Main
/src-all
/win \
651 src
/VBox
/Main
/src-client \
652 src
/VBox
/Main
/src-client
/win \
653 src
/VBox
/Main
/src-client
/xpcom \
654 src
/VBox
/Main
/src-server \
655 src
/VBox
/Main
/src-server
/darwin \
656 src
/VBox
/Main
/src-server
/linux \
657 src
/VBox
/Main
/src-server
/os2 \
658 src
/VBox
/Main
/src-server
/solaris \
659 src
/VBox
/Main
/src-server
/win \
660 src
/VBox
/Main
/src-server
/xpcom \
661 src
/VBox
/HostServices \
662 src
/VBox
/HostServices
/DragAndDrop \
663 src
/VBox
/HostServices
/GuestControl \
664 src
/VBox
/HostServices
/GuestProperties \
665 src
/VBox
/HostServices
/SharedClipboard \
666 src
/VBox
/HostServices
/SharedFolders \
667 src
/VBox
/HostServices
/SharedOpenGL \
668 src
/VBox
/HostServices
/SharedOpenGL
/crserver \
669 src
/VBox
/HostServices
/SharedOpenGL
/crserverlib \
670 src
/VBox
/HostServices
/SharedOpenGL
/render \
671 src
/VBox
/HostServices
/SharedOpenGL
/unpacker \
672 src
/VBox
/HostServices
/auth \
673 src
/VBox
/HostServices
/auth
/directoryservice \
674 src
/VBox
/HostServices
/auth
/pam \
675 src
/VBox
/HostServices
/auth
/simple \
676 src
/VBox
/HostServices
/auth
/winlogon \
677 src
/VBox
/HostDrivers
/Support \
678 src
/VBox
/HostDrivers
/Support
/darwin \
679 src
/VBox
/HostDrivers
/Support
/freebsd \
680 src
/VBox
/HostDrivers
/Support
/linux \
681 src
/VBox
/HostDrivers
/Support
/os2 \
682 src
/VBox
/HostDrivers
/Support
/solaris \
683 src
/VBox
/HostDrivers
/Support
/win \
684 src
/VBox
/HostDrivers
/VBoxNetFlt \
685 src
/VBox
/HostDrivers
/VBoxNetFlt
/darwin \
686 src
/VBox
/HostDrivers
/VBoxNetFlt
/linux \
687 src
/VBox
/HostDrivers
/VBoxNetFlt
/solaris \
688 src
/VBox
/HostDrivers
/VBoxNetFlt
/win \
689 src
/VBox
/HostDrivers
/VBoxNetNat \
690 src
/VBox
/HostDrivers
/VBoxNetNat
/darwin \
691 src
/VBox
/HostDrivers
/VBoxNetNat
/linux \
692 src
/VBox
/HostDrivers
/VBoxNetNat
/solaris \
693 src
/VBox
/HostDrivers
/VBoxNetNat
/win \
694 src
/VBox
/HostDrivers
/VBoxNetAdp \
695 src
/VBox
/HostDrivers
/VBoxNetAdp
/darwin \
696 src
/VBox
/HostDrivers
/VBoxNetAdp
/linux \
697 src
/VBox
/HostDrivers
/VBoxNetAdp
/solaris \
698 src
/VBox
/HostDrivers
/VBoxNetAdp
/win \
699 src
/VBox
/HostDrivers
/VBoxPci \
700 src
/VBox
/HostDrivers
/VBoxPci
/darwin \
701 src
/VBox
/HostDrivers
/VBoxPci
/linux \
702 src
/VBox
/HostDrivers
/VBoxPci
/solaris \
703 src
/VBox
/HostDrivers
/VBoxPci
/win \
704 src
/VBox
/HostDrivers
/VBoxUSB \
705 src
/VBox
/HostDrivers
/VBoxUSB
/darwin \
706 src
/VBox
/HostDrivers
/VBoxUSB
/os2 \
707 src
/VBox
/HostDrivers
/VBoxUSB
/solaris \
708 src
/VBox
/HostDrivers
/VBoxUSB
/win \
709 src
/VBox
/HostDrivers
/VBoxUSB
/win
/Device \
710 src
/VBox
/HostDrivers
/VBoxUSB
/win
/Device
/amd64 \
711 src
/VBox
/HostDrivers
/VBoxUSB
/win
/Device
/x86 \
712 src
/VBox
/HostDrivers
/VBoxUSB
/win
/Filter \
713 src
/VBox
/HostDrivers
/VBoxUSB
/win
/Install \
714 src
/VBox
/HostDrivers
/VBoxUSB
/win
/Monitor \
715 src
/VBox
/HostDrivers
/VBoxUSB
/win
/Monitor
/win32 \
716 src
/VBox
/HostDrivers
/VBoxUSB
/win
/Monitor
/win64 \
717 src
/VBox
/HostDrivers
/VBoxUSB
/win
/usbd \
719 src
/VBox
/Additions
/WINNT \
720 src
/VBox
/Additions
/WINNT
/Graphics \
721 src
/VBox
/Additions
/WINNT
/Graphics
/Video \
722 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/common \
723 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/common
/wddm \
724 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/common
/xpdm \
725 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/disp \
726 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/disp
/common \
727 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/disp
/wddm \
728 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/disp
/wddm
/dbg \
729 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/disp
/xpdm \
730 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/mp \
731 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/mp
/common \
732 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/mp
/wddm \
733 src
/VBox
/Additions
/WINNT
/Graphics
/Video
/mp
/xpdm \
734 src
/VBox
/Additions
/WINNT
/Graphics
/Wine_new \
735 src
/VBox
/Additions
/WINNT
/Graphics
/Wine_new
/d3d8 \
736 src
/VBox
/Additions
/WINNT
/Graphics
/Wine_new
/d3d9 \
737 src
/VBox
/Additions
/WINNT
/Graphics
/Wine_new
/libWine \
738 src
/VBox
/Additions
/WINNT
/Graphics
/Wine_new
/switcher \
739 src
/VBox
/Additions
/WINNT
/Graphics
/Wine_new
/vbox \
740 src
/VBox
/Additions
/WINNT
/Graphics
/Wine_new
/wined3d \
741 src
/VBox
/Additions
/WINNT
/Installer \
742 src
/VBox
/Additions
/WINNT
/Installer
/ISO \
743 src
/VBox
/Additions
/WINNT
/Installer
/InstallHelper \
744 src
/VBox
/Additions
/WINNT
/Installer
/Languages \
745 src
/VBox
/Additions
/WINNT
/Installer
/Loader \
746 src
/VBox
/Additions
/WINNT
/Mouse \
747 src
/VBox
/Additions
/WINNT
/Mouse
/NT5 \
748 src
/VBox
/Additions
/WINNT
/Mouse
/common \
749 src
/VBox
/Additions
/WINNT
/SharedFolders \
750 src
/VBox
/Additions
/WINNT
/SharedFolders
/redirector \
751 src
/VBox
/Additions
/WINNT
/SharedFolders
/redirector
/dll \
752 src
/VBox
/Additions
/WINNT
/SharedFolders
/redirector
/sys \
753 src
/VBox
/Additions
/WINNT
/SharedFolders
/redirector
/sys
/rdbss \
754 src
/VBox
/Additions
/WINNT
/VBoxCredProv \
755 src
/VBox
/Additions
/WINNT
/VBoxGINA \
756 src
/VBox
/Additions
/WINNT
/VBoxHook \
757 src
/VBox
/Additions
/WINNT
/VBoxTray \
758 src
/VBox
/Additions
/WINNT
/VBoxUSB \
759 src
/VBox
/Additions
/WINNT
/i8042prt \
760 src
/VBox
/Additions
/WINNT
/i8042prt
/i386 \
761 src
/VBox
/Additions
/WINNT
/i8042prt
/include \
762 src
/VBox
/Additions
/WINNT
/include \
763 src
/VBox
/Additions
/common \
764 src
/VBox
/Additions
/common
/VBoxControl \
765 src
/VBox
/Additions
/common
/VBoxGuest \
766 src
/VBox
/Additions
/common
/VBoxGuest
/freebsd \
767 src
/VBox
/Additions
/common
/VBoxGuest
/linux \
768 src
/VBox
/Additions
/common
/VBoxGuest
/win \
769 src
/VBox
/Additions
/common
/VBoxGuestLib \
770 src
/VBox
/Additions
/common
/VBoxService \
771 src
/VBox
/Additions
/common
/VBoxVideo \
772 src
/VBox
/Additions
/common
/crOpenGL \
773 src
/VBox
/Additions
/common
/crOpenGL
/array \
774 src
/VBox
/Additions
/common
/crOpenGL
/feedback \
775 src
/VBox
/Additions
/common
/crOpenGL
/pack \
776 src
/VBox
/Additions
/common
/crOpenGL
/passthrough \
777 src
/VBox
/Additions
/common
/pam \
778 src
/VBox
/Additions
/darwin \
779 src
/VBox
/Additions
/freebsd \
780 src
/VBox
/Additions
/freebsd
/Installer \
781 src
/VBox
/Additions
/freebsd
/drm \
782 src
/VBox
/Additions
/freebsd
/vboxvfs \
783 src
/VBox
/Additions
/linux \
784 src
/VBox
/Additions
/linux
/drm \
785 src
/VBox
/Additions
/linux
/installer \
786 src
/VBox
/Additions
/linux
/selinux-fedora \
787 src
/VBox
/Additions
/linux
/sharedfolders \
788 src
/VBox
/Additions
/os2 \
789 src
/VBox
/Additions
/os2
/VBoxGradd \
790 src
/VBox
/Additions
/os2
/VBoxGradd
/graddlib \
791 src
/VBox
/Additions
/os2
/VBoxGrext \
792 src
/VBox
/Additions
/os2
/VBoxMouse \
793 src
/VBox
/Additions
/os2
/VBoxSF \
794 src
/VBox
/Additions
/solaris \
795 src
/VBox
/Additions
/solaris
/DRM \
796 src
/VBox
/Additions
/solaris
/Installer \
797 src
/VBox
/Additions
/solaris
/SharedFolders \
798 src
/VBox
/Additions
/solaris
/SharedFolders
/solaris10 \
799 src
/VBox
/Additions
/solaris
/SharedFolders
/solaris10
/sys \
800 src
/VBox
/Additions
/solaris
/Virtio \
801 src
/VBox
/Additions
/x11 \
802 src
/VBox
/Additions
/x11
/Installer \
803 src
/VBox
/Additions
/x11
/VBoxClient \
804 src
/VBox
/Additions
/x11
/vboxmouse \
805 src
/VBox
/Additions
/x11
/vboxmouse
/xorg70 \
806 src
/VBox
/Additions
/x11
/vboxmouse
/xorg71 \
807 src
/VBox
/Additions
/x11
/vboxvideo \
808 src
/VBox
/NetworkServices \
809 src
/VBox
/NetworkServices
/Dhcpd \
810 src
/VBox
/NetworkServices
/NAT \
811 src
/VBox
/NetworkServices
/NetLib \
813 src
/VBox
/ValidationKit
/ \
814 src
/VBox
/ValidationKit
/docs
/ \
815 src
/VBox
/ValidationKit
/testdriver
/ \
816 src
/VBox
/ValidationKit
/bootsectors
/ \
817 src
/VBox
/ValidationKit
/bootsectors
/bs3kit
/ \
818 src
/VBox
/ValidationKit
/tests
/ \
819 src
/VBox
/ValidationKit
/tests
/additions
/ \
820 src
/VBox
/ValidationKit
/tests
/api
/ \
821 src
/VBox
/ValidationKit
/tests
/autostart
/ \
822 src
/VBox
/ValidationKit
/tests
/benchmarks
/ \
823 src
/VBox
/ValidationKit
/tests
/cpu
/ \
824 src
/VBox
/ValidationKit
/tests
/installation
/ \
825 src
/VBox
/ValidationKit
/tests
/network
/ \
826 src
/VBox
/ValidationKit
/tests
/selftests
/ \
827 src
/VBox
/ValidationKit
/tests
/smoketests
/ \
828 src
/VBox
/ValidationKit
/tests
/storage
/ \
829 src
/VBox
/ValidationKit
/tests
/teleportation
/ \
830 src
/VBox
/ValidationKit
/tests
/unittests
/ \
831 src
/VBox
/ValidationKit
/tests
/usb
/ \
832 src
/VBox
/ValidationKit
/common
/ \
833 src
/VBox
/ValidationKit
/utils
/ \
834 src
/VBox
/ValidationKit
/utils
/TestExecServ
/ \
835 src
/VBox
/ValidationKit
/utils
/cpu
/ \
836 src
/VBox
/ValidationKit
/utils
/misc
/ \
837 src
/VBox
/ValidationKit
/utils
/network
/ \
838 src
/VBox
/ValidationKit
/utils
/nt
/ \
839 src
/VBox
/ValidationKit
/utils
/usb
/ \
840 src
/VBox
/ValidationKit
/vms
/ \
841 src
/VBox
/ValidationKit
/testmanager
/ \
842 src
/VBox
/ValidationKit
/testmanager
/core
/ \
843 src
/VBox
/ValidationKit
/testmanager
/db
/ \
844 src
/VBox
/ValidationKit
/testmanager
/debug
/ \
845 src
/VBox
/ValidationKit
/testmanager
/cgi
/ \
846 src
/VBox
/ValidationKit
/testmanager
/webui
/ \
847 src
/VBox
/ValidationKit
/testboxscript
/
849 # These must come first in order to make things look nice.
850 VBOX_CORE_DOXYFILE_INPUT_FIRST
= \
851 $(PATH_ROOT
)/doc
/VBox-doc.c \
852 $(PATH_ROOT
)/doc
/VBox-CodingGuidelines.
cpp \
853 $(PATH_ROOT
)/doc
/VBox-MakefileGuidelines.
cpp \
854 $(PATH_ROOT
)/src
/VBox
/VMM
/Docs-CodingGuidelines.
cpp \
855 $(PATH_ROOT
)/src
/VBox
/VMM
/Docs-RawMode.
cpp \
856 $(PATH_ROOT
)/include/VBox
/cdefs.h \
857 $(PATH_ROOT
)/include/VBox
/vmm
/vmm.h \
858 $(PATH_ROOT
)/include/VBox
/vmm
/vmapi.h \
859 $(PATH_ROOT
)/include/VBox
/vmm
/cpum.h \
860 $(PATH_ROOT
)/include/VBox
/vmm
/mm.h \
861 $(PATH_ROOT
)/include/VBox
/vmm
/pgm.h \
862 $(PATH_ROOT
)/include/VBox
/vmm
/selm.h \
863 $(PATH_ROOT
)/include/VBox
/vmm
/trpm.h \
864 $(PATH_ROOT
)/include/VBox
/vmm
/dbgf.h \
865 $(PATH_ROOT
)/include/VBox
/vmm
/stam.h \
866 $(PATH_ROOT
)/include/VBox
/vmm
/em.h \
867 $(PATH_ROOT
)/include/VBox
/vmm
/hm.h \
868 $(PATH_ROOT
)/include/VBox
/vmm
/hm_svm.h \
869 $(PATH_ROOT
)/include/VBox
/vmm
/hm_vmx.h \
870 $(PATH_ROOT
)/include/VBox
/vmm
/iem.h \
871 $(PATH_ROOT
)/include/VBox
/vmm
/nem.h \
872 $(PATH_ROOT
)/include/VBox
/vmm
/pdm.h \
873 $(PATH_ROOT
)/include/VBox
/vmm
/pdmifs.h \
874 $(PATH_ROOT
)/include/VBox
/vmm
/pdmaudioifs.h \
875 $(PATH_ROOT
)/include/VBox
/vmm
/pdmnetifs.h \
876 $(PATH_ROOT
)/include/VBox
/vmm
/pdmserialifs.h \
877 $(PATH_ROOT
)/include/VBox
/vmm
/pdmstorageifs.h \
878 $(PATH_ROOT
)/include/VBox
/vmm
/iom.h \
879 $(PATH_ROOT
)/include/VBox
/vmm
/cfgm.h \
880 $(PATH_ROOT
)/include/VBox
/vmm
/gim.h \
881 $(PATH_ROOT
)/include/VBox
/vmm
/tm.h \
882 $(PATH_ROOT
)/include/VBox
/vmm
/ssm.h \
884 $(PATH_ROOT
)/src
/VBox
/VMM
/include/CFGMInternal.h \
885 $(PATH_ROOT
)/src
/VBox
/VMM
/include/CPUMInternal.h \
886 $(PATH_ROOT
)/src
/VBox
/VMM
/include/DBGFInternal.h \
887 $(PATH_ROOT
)/src
/VBox
/VMM
/include/EMInternal.h \
888 $(PATH_ROOT
)/src
/VBox
/VMM
/include/HMInternal.h \
889 $(PATH_ROOT
)/src
/VBox
/VMM
/include/IEMInternal.h \
890 $(PATH_ROOT
)/src
/VBox
/VMM
/include/IOMInternal.h \
891 $(PATH_ROOT
)/src
/VBox
/VMM
/include/MMInternal.h \
892 $(PATH_ROOT
)/src
/VBox
/VMM
/include/NEMInternal.h \
893 $(PATH_ROOT
)/src
/VBox
/VMM
/include/PDMInternal.h \
894 $(PATH_ROOT
)/src
/VBox
/VMM
/include/PGMInternal.h \
895 $(PATH_ROOT
)/src
/VBox
/VMM
/include/GIMInternal.h \
896 $(PATH_ROOT
)/src
/VBox
/VMM
/include/SELMInternal.h \
897 $(PATH_ROOT
)/src
/VBox
/VMM
/include/SSMInternal.h \
898 $(PATH_ROOT
)/src
/VBox
/VMM
/include/STAMInternal.h \
899 $(PATH_ROOT
)/src
/VBox
/VMM
/include/TMInternal.h \
900 $(PATH_ROOT
)/src
/VBox
/VMM
/include/TRPMInternal.h \
901 $(PATH_ROOT
)/src
/VBox
/VMM
/include/VMInternal.h \
902 $(PATH_ROOT
)/src
/VBox
/VMM
/include/VMMInternal.h \
904 $(PATH_ROOT
)/include/VBox
/vmm
/vm.h \
906 $(PATH_ROOT
)/include/VBox
/sup.h \
907 $(PATH_ROOT
)/include/VBox
/vd.h \
908 $(PATH_ROOT
)/include/VBox
/types.h \
909 $(PATH_ROOT
)/include/VBox
/err.h \
910 $(PATH_ROOT
)/include/VBox
/vmm
/cpumdis.h \
911 $(PATH_ROOT
)/include/VBox
/dbggui.h \
912 $(PATH_ROOT
)/include/VBox
/dis.h \
913 $(PATH_ROOT
)/include/VBox
/disopcode-x86-amd64.h \
914 $(PATH_ROOT
)/include/VBox
/intnet.h \
915 $(PATH_ROOT
)/include/VBox
/settings.h \
916 $(PATH_ROOT
)/include/VBox
/pci.h \
917 $(PATH_ROOT
)/include/VBox
/scsi.h \
918 $(PATH_ROOT
)/include/VBox
/shflsvc.h \
919 $(PATH_ROOT
)/include/VBox
/hgcmsvc.h \
920 $(PATH_ROOT
)/include/VBox
/usb.h \
921 $(PATH_ROOT
)/include/VBox
/vusb.h \
923 $(PATH_ROOT
)/include/VBox
/log.h \
924 $(PATH_ROOT
)/include/VBox
/param.h \
925 $(PATH_ROOT
)/include/VBox
/version.h \
927 $(PATH_ROOT
)/include/VBox
/com
/com.h \
928 $(PATH_ROOT
)/include/VBox
/com
/utils.h
930 VBOX_CORE_DOXYFILE_INPUT
:= \
931 $(filter-out %.
cpp.h
, $(sort $(wildcard $(addsuffix /*.h
, $(VBOX_CORE_DOXYFILE_INPUT_DIRS
)))) ) \
932 $(foreach dir, $(VBOX_CORE_DOXYFILE_INPUT_DIRS
) \
933 , $(wildcard $(dir)/*.
cpp $(dir)/*.c
$(dir)/*.m
$(dir)/*.mm
$(dir)/*.py
$(dir)/.asm
))
934 VBOX_CORE_DOXYFILE_INPUT
:= \
935 $(VBOX_CORE_DOXYFILE_INPUT_FIRST
) \
936 $(sort $(filter-out $(VBOX_CORE_DOXYFILE_INPUT_FIRST
) %/CPUM-armv8.
cpp, $(VBOX_CORE_DOXYFILE_INPUT
)))
938 VBOX_CORE_DOXYFILE_INPUT
+= \
939 $(wildcard $(PATH_ROOT
)/src
/VBox
/VMM
/VMMAll
/*.h
$(PATH_ROOT
)/src
/VBox
/VMM
/VMMR3
/*.h
$(PATH_ROOT
)/src
/VBox
/VMM
/VMMR0
/*.h
)
942 includedep
$(VBOX_CORE_DOXYFILE_OUTPUT
)/Doxyfile.Core.dep
944 # Generate the Doxyfile
945 $(VBOX_CORE_DOXYFILE_OUTPUT
)/Doxyfile.Core
: Doxyfile.Core \
946 $(comp-vars VBOX_CORE_DOXYFILE_INPUT
,DOXYGEN_CORE_INPUT_PREV
,FORCE
) \
947 $(comp-vars VBOX_CORE_DOXYFILE_OUTPUT
,DOXYGEN_CORE_OUTPUT_PREV
,FORCE
) \
949 $(QUIET
)$(RM
) -f
$@
$@.tmp
$@.dep
950 $(QUIET
)$(CP
) -f Doxyfile.Core
$@.tmp
951 $(QUIET
)$(APPEND
) $@.tmp
952 $(QUIET
)$(APPEND
) $@.tmp
"OUTPUT_DIRECTORY = $(VBOX_CORE_DOXYFILE_OUTPUT)"
953 $(QUIET
)$(APPEND
) $@.tmp
"WARN_LOGFILE = $(VBOX_CORE_DOXYFILE_OUTPUT)/errors"
954 $(QUIET
)$(APPEND
) $@.tmp
"INCLUDE_PATH = $(PATH_ROOT)/include $(PATH_ROOT)/src/VBox/VMM $(PATH_ROOT)/src/VBox/Main/include "
955 $(QUIET
)$(APPEND
) $@.tmp
"INCLUDE_FILE_PATTERNS = *.cpp.h"
956 $(QUIET
)$(APPEND
) $@.tmp
"EXCLUDE = " \
957 "$(PATH_ROOT)/src/VBox/Additions/common/crOpenGL/utils.c" \
958 "$(PATH_ROOT)/src/VBox/HostServices/SharedOpenGL/crserver/main.c" \
959 "$(PATH_ROOT)/src/VBox/HostServices/SharedOpenGL/crserverlib/server_main.c" \
960 "$(PATH_ROOT)/src/VBox/HostServices/SharedOpenGL/unpacker/unpack_arrays.c" \
961 "$(PATH_ROOT)/src/VBox/Additions/common/crOpenGL/context.c" \
963 "$(PATH_ROOT)/src/VBox/VMM/include/IEMInternal-armv8.h" \
964 "src/VBox/VMM/include/IEMInternal-armv8.h" \
965 "$(PATH_ROOT)/src/VBox/VMM/VMMAll/CPUMAllRegs-armv8.cpp" \
966 "src/VBox/VMM/VMMAll/CPUMAllRegs-armv8.cpp" \
967 "$(PATH_ROOT)/src/VBox/VMM/VMMR3/CPUM-armv8.cpp" \
968 "src/VBox/VMM/VMMR3/CPUM-armv8.cpp" \
969 "$(PATH_ROOT)/src/VBox/VMM/VMMR3/HM-armv8.cpp" \
970 "src/VBox/VMM/VMMR3/HM-armv8.cpp"
971 ## @todo ARMv8: crap is duplicated multiple times or in different sections. Clean up the above *armv8* mess.
972 $(QUIET
)$(APPEND
) $@.tmp
973 $(QUIET
)$(APPEND
) $@.tmp
'INPUT = $(foreach x,$(VBOX_CORE_DOXYFILE_INPUT),\$(NLTAB)$(x))'
974 $(QUIET
)$(APPEND
) $@.tmp
975 $(QUIET
)$(APPEND
) $@.tmp
"PREDEFINED += $(DEFS) $(DEFS.$(KBUILD_TARGET)) $(DEFS.$(KBUILD_TARGET_ARCH)) $(ARCH_BITS_DEFS)"
976 $(QUIET
)$(APPEND
) $@.tmp
"PREDEFINED += ARCH_BITS=HC_ARCH_BITS R3_ARCH_BITS=HC_ARCH_BITS R0_ARCH_BITS=HC_ARCH_BITS "
977 $(QUIET
)$(APPEND
) $@.tmp
978 $(QUIET
)$(APPEND
) $@.tmp
"PLANTUML_JAR_PATH = $(firstword $(rsort $(wildcard $(KBUILD_DEVTOOLS)/common/plantuml/v*/plantuml*.jar)))"
979 $(QUIET
)$(APPEND
) $@.tmp
980 $(QUIET
)$(MV
) -f
$@.tmp
$@
981 @
$(APPEND
) $@.dep
"DOXYGEN_CORE_OUTPUT_PREV = $(VBOX_CORE_DOXYFILE_OUTPUT)"
982 @
$(APPEND
) $@.dep
"DOXYGEN_CORE_INPUT_PREV = $(VBOX_CORE_DOXYFILE_INPUT)"
985 # Note! We must add the VBOX_JAVA dir to the path so doxygen can run plantuml.jar.
986 $(VBOX_CORE_DOXYFILE_OUTPUT
)/docs.Core
: $(VBOX_CORE_DOXYFILE_OUTPUT
)/Doxyfile.Core
$$(VBOX_CORE_DOXYFILE_INPUT
) \
987 |
$(VBOX_CORE_DOXYFILE_OUTPUT
)/
989 $(QUIET
)$(RM
) -Rf
$(VBOX_CORE_DOXYFILE_OUTPUT
)/html
/
990 $(if-expr
$(VBOX_JAVA_VERSION
)+0 >= 70000, $(REDIRECT
) -E
"PATH=$(VBOX_JAVA_BIN_PATH)$(HOST_PATH_SEP)$(PATH)" --,) \
991 $(VBOX_DOXYGEN
) $(VBOX_CORE_DOXYFILE_OUTPUT
)/Doxyfile.Core
994 -e
'/^ *$(DOLLAR)/d' \
995 -e
'/\/src\/VBox\/Main\/.* warning: documented symbol.*::~.* was not declared or defined/b ignore' \
996 -e
'/\/src\/VBox\/Main\/.* warning: explicit link request to.* could not be resolved/b ignore' \
997 -e
'/\/src\/VBox\/Additions\/common\/crOpenGL\/.* warning/b ignore' \
998 -e
'/\/src\/VBox\/Additions\/x11\/VBoxClient\/seamless-x11\.h.* warning/b ignore' \
999 -e
'/\/src\/VBox\/HostDrivers\/Support\/win\/SUPR3HardenedMain-win\.cpp.* warning/b ignore' \
1000 -e
'/\/src\/VBox\/ValidationKit\/.* warning/b ignore' \
1001 -e
'/WRAPPED_MODULE_SYMBOL_INCLUDE/b ignore' \
1003 -e
'/unable to resolve link to .dtrace_pops_t./b ignore' \
1008 -e
'/^[[:space:]]/b ignore' \
1009 -e
'/^Possible candidates/b ignore' \
1010 -e
'/^def testmanager::webui::wuicontentbase::__init__/b ignore' \
1011 -e
'b nextwarning' \
1014 --output
$(VBOX_CORE_DOXYFILE_OUTPUT
)/errors2 \
1015 $(VBOX_CORE_DOXYFILE_OUTPUT
)/errors
1016 $(CAT
) $(VBOX_CORE_DOXYFILE_OUTPUT
)/errors2
1017 $(SED
) -e
"/[^ ]/q 1" $(VBOX_CORE_DOXYFILE_OUTPUT
)/errors2
1020 docs.Core docs.core
: $(VBOX_CORE_DOXYFILE_OUTPUT
)/docs.Core
1023 # This is a bit odd, but we attach the optional scm check run onto the 'docs' pass
1024 # so the build box output is less confusing on failure.
1026 ifeq ($(KBUILD_HOST
),$(KBUILD_TARGET
))
1027 ifdef VBOX_WITH_SCM_CHECK_RUN
1030 .PHONY
: scm.
check.run
1031 scm.
check.run
: $(VBOX_PATH_TOOLS
)/scm
$(HOSTSUFF_EXE
)
1032 $(REDIRECT
) -E VBOX_LOG_FLAGS
="disabled" -E VBOX_LOG_DEST
="nofile" \
1033 $(if-expr
"$(KBUILD_HOST)" == "darwin",-E DYLD_FALLBACK_LIBRARY_PATH
="$(VBOX_PATH_TOOLS)/..",) -- \
1034 $(VBOX_PATH_TOOLS
)/scm
$(HOSTSUFF_EXE
) -qvv
--check-run
$(PATH_ROOT
)
1039 # Combined package build (windows only).
1041 # The combined package is created by the amd64 environment, so we do the arm64
1042 # packaging in the build phase since it's just a few very slow jobs. We hold
1043 # back the amd64 build until the amd64 packaging starts, to try encourage
1044 # parallel execution.
1046 # Note! VBOX_WITH_ADDITIONS_FROM_BUILD_SERVER=1 is required because the additions
1047 # packing must be done in amd64 mode as it picks files from the arm64 build.
1050 VBOX_COMBINED_PACKAGE_DEFS
:= \
1051 VBOX_WITH_COMBINED_PACKAGE
=1 \
1052 VBOX_WITH_ALL_DOXYGEN_TARGETS
= \
1053 VBOX_WITH_ADDITIONS_FROM_BUILD_SERVER
=1
1055 combined-package-fetch
:
1056 + $(KMK
) -C tools
$(VBOX_COMBINED_PACKAGE_DEFS
) KBUILD_TARGET_ARCH
=amd64
1057 + $(KMK
) -C tools
$(VBOX_COMBINED_PACKAGE_DEFS
) KBUILD_TARGET_ARCH
=arm64
1059 combined-package-build-amd64
:
1060 + $(KMK
) docs
all $(VBOX_COMBINED_PACKAGE_DEFS
) KBUILD_TARGET_ARCH
=amd64
1062 combined-package-build-arm64
:
1063 + $(KMK
) docs
all $(VBOX_COMBINED_PACKAGE_DEFS
) KBUILD_TARGET_ARCH
=arm64
1065 combined-package-build-arm64-packing
: combined-package-build-arm64
1066 + $(KMK
) packing
$(VBOX_COMBINED_PACKAGE_DEFS
) KBUILD_TARGET_ARCH
=arm64
1068 combined-package-build
: combined-package-build-arm64-packing combined-package-build-amd64
1070 combined-package-packing
:
1071 + $(KMK
) packing
$(VBOX_COMBINED_PACKAGE_DEFS
) KBUILD_TARGET_ARCH
=amd64
1076 # Common rsync bits.
1080 ## Overridable ssh name.
1081 # On windows build boxes install https://github.com/PowerShell/Win32-OpenSSH/releases
1082 # and point to it in LocalConfig. (The cygwin ssh frequently segfaults due to
1083 # termination race or something along those lines.)
1085 VBOX_SSH_FOR_RSYNC ?
= $(VBOX_SSH
)
1087 ## Overridable rsh name.
1088 VBOX_RSYNC ?
= rsync
--rsh
="$(VBOX_SSH_FOR_RSYNC)"
1089 VBOX_RSYNC_NOSSH ?
= rsync
1092 # The basic rsync invocation for syncing the tree into a VM; the source and
1093 # target specs are missing.
1096 # @param 2 arch or *.
1097 # @param 3 nossh or empty
1099 VBOX_RSYNC_IN_FN
= $(if-expr
"$(3)" != "nossh",$(VBOX_RSYNC
),$(VBOX_RSYNC_NOSSH
)) \
1100 -a
-v
--delete
--delete-excluded
--prune-empty-dirs \
1103 --exclude
=doc
/Devices
/ \
1106 --exclude
=tinderclient.log \
1107 --exclude
=tools
/FetchDir
/ \
1108 --exclude
=webtools
/ \
1110 --exclude
=tools
/common
/plantuml
/ \
1111 $(if-expr
"$1" == "solaris",--exclude
=tools
/common
/openwatcom
/,) \
1112 $(foreach os
,$(filter-out $(1), darwin freebsd linux solaris os2 win
), \
1113 --exclude
=tools
/$(os
)/ \
1114 --exclude
=tools
/$(os
).x86
/ \
1115 --exclude
=tools
/$(os
).amd64
/ \
1116 --exclude
=tools
/$(os
).arm64
/ )
1121 VBOX_BLD_VM_LNX_IP
:= 192.168.27.2
1122 VBOX_BLD_VM_LNX_ARM64_IP
:= 192.168.27.26 ## @todo this should've been 22, not 26...
1123 VBOX_BLD_VM_OS2_IP
:= 192.168.27.3
1124 VBOX_BLD_VM_SOLARIS_IP
:= 192.168.27.4
1125 VBOX_BLD_VM_DARWIN_X86_IP
:= 192.168.27.5
1126 VBOX_BLD_VM_DARWIN_AMD64_IP
:= 192.168.27.15
1127 VBOX_BLD_VM_DARWIN_109_AMD64_IP
:= 192.168.27.18
1128 VBOX_BLD_VM_DARWIN_ARM64_IP
:= 192.168.27.25
1129 VBOX_BLD_VM_WIN_X86_IP
:= 192.168.27.6
1130 VBOX_BLD_VM_WIN_AMD64_IP
:= 192.168.27.16
1131 VBOX_BLD_VM_WIN_ARM64_IP
:= 192.168.27.36 # .26 is taken by the linux arm build vm...
1132 VBOX_BLD_VM_FBSD_X86_IP
:= 192.168.27.7
1133 VBOX_BLD_VM_FBSD_AMD64_IP
:= 192.168.27.17
1135 VBOX_WITH_OS2_ADD_BUILD
= 1
1138 # For profiling the VM building steps.
1141 VBOX_BLD_VM_MSG_BEGIN
= $(call MSG_L1
,Building
$1.
)
1142 VBOX_BLD_VM_MSG_END__
=
1144 VBOX_BLD_VM_MSG_BEGIN
= @echo
"$(date ) - Start building $1."
1145 VBOX_BLD_VM_MSG_END__
= @echo
"$(date ) - Done building $1."
1149 # For killing old build jobs in the OS/2 VM before rsyncing.
1151 VBOX_BLD_VM_OS2_KKILL_STUFF
= $(REDIRECT_EXT
) --stdin-pipe
-- rsh
-l vbox
$(VBOX_BLD_VM_OS2_IP
) "kkill -All -Tree kmk.exe gcc.exe & sleep.exe 1 & kkill -All gcc.exe emxomfld.exe as.exe kmk.exe "
1155 # Build the additions, all of them.
1157 # This is currently tailored (hardcoded) for the additions
1158 # build box. Can make it pretty and configurable later.
1160 # The fetching must be done in serial fashion, while the building
1161 # should be more flexible wrt to -jN.
1164 + $(KMK
) -C tools fetch VBOX_ONLY_ADDITIONS
=1
1165 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=darwin VBOX_ONLY_ADDITIONS
=1 VBOX_DEF_MACOSX_VERSION_MIN
=10.7
1166 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=darwin VBOX_ONLY_ADDITIONS
=1 #VBOX_DEF_MACOSX_VERSION_MIN=10.5
1167 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=linux VBOX_ONLY_ADDITIONS
=1
1168 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=linux VBOX_ONLY_ADDITIONS
=1
1169 ifdef VBOX_WITH_LNX_ARM64_ADDITIONS
1170 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=arm64 KBUILD_TARGET
=linux VBOX_ONLY_ADDITIONS
=1
1172 ifdef VBOX_WITH_OS2_ADD_BUILD
1173 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=os2 VBOX_ONLY_ADDITIONS
=1
1175 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=solaris VBOX_ONLY_ADDITIONS
=1
1176 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=solaris VBOX_ONLY_ADDITIONS
=1
1177 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=win VBOX_ONLY_ADDITIONS
=1
1178 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=win VBOX_ONLY_ADDITIONS
=1
1179 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=arm64 KBUILD_TARGET
=win VBOX_ONLY_ADDITIONS
=1
1182 ## @todo Currently combined solaris additions building assumes that amd64 is
1183 # built first. The windows amd64 additions need some x86 files, so don't change
1184 # the order of the windows builds. TODO: Split building and packing for these two VMs.
1186 additions-build-rsync-into-vms \
1187 additions-build-win.x86 \
1188 additions-build-win.amd64 \
1189 additions-build-win.arm64 \
1190 additions-build-solaris.amd64 \
1191 additions-build-solaris.x86 \
1192 additions-build-os2.x86 \
1193 additions-build-linux \
1194 additions-build-darwin.x86 \
1195 additions-build-darwin.amd64 \
1196 $(if
$(VBOX_WITH_LNX_ARM64_ADDITIONS
), additions-build-linux.arm64
,)
1198 additions-build-rsync-into-vms
: \
1199 additions-build-solaris.rsync-into-vm \
1200 additions-build-os2.rsync-into-vm \
1201 additions-build-darwin.x86.rsync-into-vm \
1202 additions-build-darwin.amd64.rsync-into-vm \
1203 additions-build-linux.rsync-into-vm \
1204 $(if
$(VBOX_WITH_LNX_ARM64_ADDITIONS
), additions-build-linux.arm64.rsync-into-vm
,)
1205 $(call MSG_L1
,Rsynced the sources
+ tools into the VMs.
)
1206 .NOTPARALLEL
: additions-build-rsync-into-vms
1207 .PHONY
: additions-build-rsync-into-vms
1210 VBOX_ADDITIONS_BUILD.amd64
= VBOX_ONLY_ADDITIONS
=1 VBOX_WITHOUT_ADDITIONS_ISO
=1 \
1211 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=amd64 VBOX_SVN_REV
=$(VBOX_SVN_REV
)
1213 VBOX_ADDITIONS_BUILD.x86
= VBOX_ONLY_ADDITIONS
=1 VBOX_WITHOUT_ADDITIONS_ISO
=1 \
1214 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=x86 VBOX_SVN_REV
=$(VBOX_SVN_REV
)
1216 VBOX_ADDITIONS_BUILD.arm64
= VBOX_ONLY_ADDITIONS
=1 VBOX_WITHOUT_ADDITIONS_ISO
=1 \
1217 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=arm64 VBOX_SVN_REV
=$(VBOX_SVN_REV
)
1219 # Automatically determine the additions build subdir name. Used for figuring
1220 # out directory names inside the additions building VMs.
1221 VBOX_ADDITIONS_BUILD_SUBDIRNAME
:= $(lastword
$(subst /, ,$(PATH_ROOT
)))
1223 ifeq ($(KBUILD_TARGET
),win
)
1224 additions-build-win.amd64
:
1225 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.amd64
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1226 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.amd64
) packing
1228 additions-build-win.amd64
:
1229 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/amd64 additions build
+pack
)
1230 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_AMD64_IP
) ' cd e:/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_ADDITIONS_BUILD.amd64) all packing '
1231 $(call VBOX_BLD_VM_MSG_END__
,Windows
/amd64 additions build
+pack
)
1234 ifeq ($(KBUILD_TARGET
),win
)
1235 additions-build-win.x86
:
1236 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1237 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) packing
1239 additions-build-win.x86
:
1240 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/x86 additions build
+pack
)
1241 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_X86_IP
) ' cd e:/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_ADDITIONS_BUILD.x86) all packing '
1242 $(call VBOX_BLD_VM_MSG_END__
,Windows
/x86 additions build
+pack
)
1245 ifeq ($(KBUILD_TARGET
),win
)
1246 additions-build-win.arm64
:
1247 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.arm64
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1248 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.arm64
) packing
1250 additions-build-win.arm64
:
1251 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/arm64 additions build
+pack
)
1252 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_ARM64_IP
) ' cd e:/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_ADDITIONS_BUILD.arm64) all packing '
1253 $(call VBOX_BLD_VM_MSG_END__
,Windows
/arm64 additions build
+pack
)
1256 # ASSUMES the 64-bit edition are built first. This also serializes VM access.
1257 ifeq ($(KBUILD_TARGET
),solaris
)
1258 additions-build-solaris.amd64
:
1259 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.amd64
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1260 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.amd64
) packing
1262 additions-build-solaris.x86
: additions-build-solaris.amd64
1263 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
=1 all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1264 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
=1 packing
1266 additions-build-solaris.rsync-into-vm
:
1268 additions-build-solaris.rsync-into-vm
:
1269 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,solaris
,*) \
1270 '--exclude=src/VBox/Additions/WINNT/**' \
1271 '--exclude=src/VBox/Frontends/**' \
1272 '--exclude=src/VBox/VMM/**' \
1273 .
$(VBOX_BLD_VM_SOLARIS_IP
):/mnt
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)
1275 additions-build-solaris.build-it
: additions-build-solaris.rsync-into-vm
1276 $(call VBOX_BLD_VM_MSG_BEGIN
,Solaris
/amd64 additions build
+pack
)
1277 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_SOLARIS_IP
) ' cd /mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.amd64) all packing '
1278 $(call VBOX_BLD_VM_MSG_END__
,Solaris
/amd64 additions build
+pack
)
1279 $(call VBOX_BLD_VM_MSG_BEGIN
,Solaris
/x86 additions build
+pack
)
1280 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_SOLARIS_IP
) ' cd /mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.x86) all packing VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE=1 '
1281 $(call VBOX_BLD_VM_MSG_END__
,Solaris
/x86 additions build
+pack
)
1283 additions-build-solaris.rsync-out-of-vm
: additions-build-solaris.build-it
1284 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_SOLARIS_IP
):/mnt
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)/out
/solaris.x86 out
/
1285 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_SOLARIS_IP
):/mnt
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)/out
/solaris.amd64 out
/
1287 .NOTPARALLEL
: additions-build-solaris.rsync-into-vm
1288 .PHONY
: additions-build-solaris.rsync-into-vm additions-build-solaris.rsync-out-of-vm additions-build-solaris.build-it
1290 additions-build-solaris.amd64
: additions-build-solaris.rsync-out-of-vm
1291 additions-build-solaris.x86
: additions-build-solaris.rsync-out-of-vm
1294 ifdef VBOX_WITH_OS2_ADD_BUILD
1295 ifeq ($(KBUILD_TARGET
),os2
)
1296 additions-build-os2.x86
:
1297 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1298 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) packing
1300 additions-build-os2.rsync-into-vm
:
1302 additions-build-os2.rsync-into-vm
:
1303 -$(VBOX_BLD_VM_OS2_KKILL_STUFF
)
1304 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,os2
,*,nossh
)\
1305 '--exclude=src/VBox/Additions/x11/**' \
1306 '--exclude=src/VBox/Additions/WINNT/**' \
1307 '--exclude=src/VBox/Frontends/**' \
1308 '--exclude=src/VBox/VMM/**' \
1309 . rsync
://vbox@
$(VBOX_BLD_VM_OS2_IP
)/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)
1311 additions-build-os2.build-it
: #additions-build-os2.rsync-into-vm
1312 $(call VBOX_BLD_VM_MSG_BEGIN
,OS
/2 additions build
+pack
)
1313 $(TIME
) -- $(REDIRECT_EXT
) --stdin-pipe
-- rsh
-l vbox
$(VBOX_BLD_VM_OS2_IP
) "cd e:\\tinderbox\\$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && e: && kbuild\\bin\\os2.x86\\kmk_ash tools\\env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.x86) all packing"
1314 $(call VBOX_BLD_VM_MSG_END__
,OS
/2 additions build
+pack
)
1316 additions-build-os2.rsync-out-of-vm
: additions-build-os2.build-it
1317 -$(VBOX_BLD_VM_OS2_KKILL_STUFF
)
1318 $(TIME
) -- $(VBOX_RSYNC_NOSSH
) -v
-a
--delete rsync
://vbox@
$(VBOX_BLD_VM_OS2_IP
)/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)/out
/os2.x86 .
/out
1320 .NOTPARALLEL
: additions-build-os2.rsync-into-vm
1321 .PHONY
: additions-build-os2.rsync-into-vm additions-build-os2.rsync-out-of-vm additions-build-os2.build-it
1323 additions-build-os2.x86
: additions-build-os2.rsync-out-of-vm
1327 additions-build-os2.x86
:
1332 ifeq ($(KBUILD_TARGET
),linux
)
1333 additions-build-linux.amd64
:
1334 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.amd64
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1335 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.amd64
) packing VBOX_WITHOUT_LINUX_GUEST_PACKAGE
=1
1337 additions-build-linux.x86
:
1338 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1339 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) packing VBOX_WITHOUT_LINUX_GUEST_PACKAGE
=1
1341 additions-build-linux
: additions-build-linux.x86 additions-build-linux.amd64
1342 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1343 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) packing VBOX_WITH_COMBINED_LINUX_GUEST_PACKAGE
=1
1345 ifdef VBOX_WITH_LNX_ARM64_ADDITIONS
1346 additions-build-linux.arm64
:
1347 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.arm64
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1348 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.arm64
) packing
1351 additions-build-linux.rsync-into-vm
:
1352 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,linux
,*) \
1353 '--exclude=src/VBox/Additions/WINNT/**' \
1354 '--include=src/VBox/Devices/' \
1355 '--include=src/VBox/Devices/Audio/' \
1356 '--include=src/VBox/Devices/Audio/**' \
1357 '--include=src/VBox/Devices/build/' \
1358 '--include=src/VBox/Devices/build/**' \
1359 '--exclude=src/VBox/Devices/**' \
1360 '--exclude=src/VBox/Debugger/**' \
1361 '--exclude=src/VBox/ExtPacks/**' \
1362 '--exclude=src/VBox/Frontends/**' \
1363 '--exclude=src/VBox/HostService/**' \
1364 '--exclude=src/VBox/ImageMounter/**' \
1365 '--exclude=src/VBox/Main/**' \
1366 '--exclude=src/VBox/NetworkServices/**' \
1367 '--exclude=src/VBox/RDP/**' \
1368 '--exclude=src/VBox/Storage/**' \
1369 '--include=src/VBox/ValidationKit/' \
1370 '--include=src/VBox/ValidationKit/Config.kmk' \
1371 '--include=src/VBox/ValidationKit/utils/' \
1372 '--include=src/VBox/ValidationKit/utils/audio/' \
1373 '--include=src/VBox/ValidationKit/utils/audio/**' \
1374 '--exclude=src/VBox/ValidationKit/**' \
1375 '--exclude=src/VBox/VMM/**' \
1376 '--exclude=src/libs/dxvk-native-**' \
1377 '--exclude=src/libs/curl-**' \
1378 '--exclude=src/libs/libjpeg-turbo-**' \
1379 '--exclude=src/libs/libogg-**' \
1380 '--exclude=src/libs/libpng-**' \
1381 '--exclude=src/libs/libssh-**' \
1382 '--exclude=src/libs/libtpms-**' \
1383 '--exclude=src/libs/libvorbis-**' \
1384 '--exclude=src/libs/libvpx-**' \
1385 '--exclude=src/libs/libxml-**' \
1386 '--exclude=src/libs/softfloat-**' \
1387 '--exclude=src/libs/TestFloat-**' \
1388 '--exclude=src/libs/xpcom18a4/**' \
1389 '--exclude=src/apps/**' \
1390 .
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)
1392 additions-build-linux.build-it
: additions-build-linux.rsync-into-vm
1393 ifdef VBOX_WITH_LIGHTDM_GREETER_PACKING
1394 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/amd64 additions
/greeter
)
1395 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'dchroot -c ubuntu-11.10-amd64 "cd /mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.amd64) PATH_OUT=/mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME)/out/linux.amd64/$(KBUILD_TYPE)/greeter VBOX_WITH_LIGHTDM_GREETER=1 vbox-greeter " '
1396 $(call VBOX_BLD_VM_MSG_END__
,Linux
/amd64 additions
/greeter
)
1398 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/amd64 additions build
+pack
)
1399 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'dchroot -c debian-4.0-amd64 "cd /mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.amd64) all packing VBOX_WITHOUT_LINUX_GUEST_PACKAGE=1 VBOX_WITH_LIGHTDM_GREETER_PACKING=$(VBOX_WITH_LIGHTDM_GREETER_PACKING) " '
1400 $(call VBOX_BLD_VM_MSG_END__
,Linux
/amd64 additions build
+pack
)
1401 ifdef VBOX_WITH_LIGHTDM_GREETER_PACKING
1402 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/x86 additions
/greeter
)
1403 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'linux32 dchroot -c ubuntu-11.10-i386 "cd /mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && KBUILD_HOST_ARCH=x86 tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.x86) PATH_OUT=/mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME)/out/linux.x86/$(KBUILD_TYPE)/greeter VBOX_WITH_LIGHTDM_GREETER=1 vbox-greeter " '
1404 $(call VBOX_BLD_VM_MSG_END__
,Linux
/x86 additions
/greeter
)
1406 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/x86 additions build
+pack
)
1407 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'linux32 dchroot -c rhel3-i386 "cd /mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.x86) all packing VBOX_WITHOUT_LINUX_GUEST_PACKAGE=1 VBOX_WITH_LIGHTDM_GREETER_PACKING=$(VBOX_WITH_LIGHTDM_GREETER_PACKING) " '
1408 $(call VBOX_BLD_VM_MSG_END__
,Linux
/x86 additions build
+pack
)
1409 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/x86 additions combine
)
1410 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'linux32 dchroot -c rhel3-i386 "cd /mnt/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.x86) all packing VBOX_WITH_COMBINED_LINUX_GUEST_PACKAGE=1 " '
1411 $(call VBOX_BLD_VM_MSG_END__
,Linux
/x86 additions combine
)
1413 additions-build-linux.rsync-out-of-vm
: additions-build-linux.build-it
1414 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)/out
/linux.x86 out
/
1415 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)/out
/linux.amd64 out
/
1417 .NOTPARALLEL
: additions-build-linux.rsync-into-vm
1418 .PHONY
: additions-build-linux.rsync-into-vm additions-build-linux.rsync-out-of-vm additions-build-linux.build-it
1420 additions-build-linux
: additions-build-linux.rsync-out-of-vm
1423 # Preliminary arm64 Linux guest additions build.
1425 ifdef VBOX_WITH_LNX_ARM64_ADDITIONS
1426 additions-build-linux.arm64.rsync-into-vm
:
1427 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,linux
,*) \
1428 '--exclude=src/VBox/Additions/WINNT/**' \
1429 '--include=src/VBox/Devices/' \
1430 '--include=src/VBox/Devices/Audio/' \
1431 '--include=src/VBox/Devices/Audio/**' \
1432 '--include=src/VBox/Devices/build/' \
1433 '--include=src/VBox/Devices/build/**' \
1434 '--exclude=src/VBox/Devices/**' \
1435 '--exclude=src/VBox/Debugger/**' \
1436 '--exclude=src/VBox/ExtPacks/**' \
1437 '--exclude=src/VBox/Frontends/**' \
1438 '--exclude=src/VBox/HostService/**' \
1439 '--exclude=src/VBox/ImageMounter/**' \
1440 '--exclude=src/VBox/NetworkServices/**' \
1441 '--exclude=src/VBox/RDP/**' \
1442 '--exclude=src/VBox/Storage/**' \
1443 '--include=src/VBox/ValidationKit/' \
1444 '--include=src/VBox/ValidationKit/Config.kmk' \
1445 '--include=src/VBox/ValidationKit/utils/' \
1446 '--include=src/VBox/ValidationKit/utils/audio/' \
1447 '--include=src/VBox/ValidationKit/utils/audio/**' \
1448 '--exclude=src/VBox/ValidationKit/**' \
1449 '--exclude=src/VBox/VMM/**' \
1450 '--exclude=src/libs/dxvk-native-**' \
1451 '--exclude=src/libs/curl-**' \
1452 '--exclude=src/libs/libjpeg-turbo-**' \
1453 '--exclude=src/libs/libogg-**' \
1454 '--exclude=src/libs/libpng-**' \
1455 '--exclude=src/libs/libssh-**' \
1456 '--exclude=src/libs/libtpms-**' \
1457 '--exclude=src/libs/libvorbis-**' \
1458 '--exclude=src/libs/libvpx-**' \
1459 '--exclude=src/libs/libxml-**' \
1460 '--exclude=src/libs/softfloat-**' \
1461 '--exclude=src/libs/TestFloat-**' \
1462 '--exclude=src/libs/xpcom18a4/**' \
1463 '--exclude=src/apps/**' \
1464 .
$(VBOX_BLD_VM_LNX_ARM64_IP
):/home
/vbox
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)
1466 additions-build-linux.arm64.build-it
: additions-build-linux.arm64.rsync-into-vm
1467 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/arm64 additions build
+pack
)
1468 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_ARM64_IP
) 'cd /home/vbox/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.arm64) VBOX_WITH_WARNINGS_AS_ERRORS= VBOX_WITHOUT_LINUX_TEST_BUILDS=1 VBOX_WITH_LNX_ARM64_ADDITIONS=1 all packing'
1469 $(call VBOX_BLD_VM_MSG_END__
,Linux
/arm64 additions build
+pack
)
1471 additions-build-linux.arm64.rsync-out-of-vm
: additions-build-linux.arm64.build-it
1472 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_LNX_ARM64_IP
):/home
/vbox
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)/out
/linux.arm64 out
/
1474 .NOTPARALLEL
: additions-build-linux.arm64.rsync-into-vm
1475 .PHONY
: additions-build-linux.arm64.rsync-into-vm additions-build-linux.arm64.rsync-out-of-vm additions-build-linux.arm64.build-it
1477 additions-build-linux.arm64
: additions-build-linux.arm64.rsync-out-of-vm
1482 ifeq ($(KBUILD_TARGET
),darwin
)
1483 additions-build-darwin.amd64
:
1484 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.amd64
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1485 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.amd64
) packing
1487 additions-build-darwin.x86
:
1488 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) all $(VBOX_ADD_HOST_BUILD_TWEAK
)
1489 + $(TIME
) -- $(KMK
) $(VBOX_ADDITIONS_BUILD.x86
) packing
1491 additions-build-darwin
: additions-build-darwin.amd64 additions-build-darwin.x86
1492 .PHONY
: additions-build-darwin.amd64 additions-build-darwin.x86
1494 additions-build-darwin.amd64.rsync-into-vm
:
1495 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_109_AMD64_IP
) 'sudo rm -Rf /Users/vbox/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME)/out/'
1496 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,darwin
,*) \
1497 '--exclude=src/libs/xpcom18a4/**' \
1498 '--exclude=src/libs/curl*/**' \
1499 '--exclude=src/libs/libxml*/**' \
1500 '--exclude=src/libs/libvpx*/**' \
1501 '--exclude=src/VBox/Additions/WINNT/**' \
1502 '--exclude=src/VBox/Additions/x11/**' \
1503 '--exclude=src/VBox/Artwork/x11/**' \
1504 '--include=src/VBox/Devices/' \
1505 '--include=src/VBox/Devices/Audio/' \
1506 '--include=src/VBox/Devices/Audio/**' \
1507 '--include=src/VBox/Devices/build/' \
1508 '--include=src/VBox/Devices/build/**' \
1509 '--exclude=src/VBox/Devices/**' \
1510 '--exclude=src/VBox/Disassembler/**' \
1511 '--exclude=src/VBox/ExtPacks/**' \
1512 '--exclude=src/VBox/Frontends/**' \
1513 '--exclude=src/VBox/HostDriver/**' \
1514 '--exclude=src/VBox/HostService/**' \
1515 '--exclude=src/VBox/ImageMounter/**' \
1516 '--exclude=src/VBox/Installer/win/**' \
1517 '--exclude=src/VBox/Main/**' \
1518 '--exclude=src/VBox/NetworkService/**' \
1519 '--exclude=src/VBox/RDP/**' \
1520 '--exclude=src/VBox/Storage/**' \
1521 '--include=src/VBox/ValidationKit/' \
1522 '--include=src/VBox/ValidationKit/Config.kmk' \
1523 '--include=src/VBox/ValidationKit/utils/' \
1524 '--include=src/VBox/ValidationKit/utils/audio/' \
1525 '--include=src/VBox/ValidationKit/utils/audio/**' \
1526 '--exclude=src/VBox/ValidationKit/**' \
1527 '--exclude=src/VBox/VMM/**' \
1528 '--exclude=src/apps/**' \
1529 '--exclude=src/recompiler/**' \
1530 .
$(VBOX_BLD_VM_DARWIN_109_AMD64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)
1532 additions-build-darwin.x86.rsync-into-vm
:
1533 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_X86_IP
) 'sudo rm -Rf /Users/vbox/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME)/out/'
1534 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,darwin
,*) \
1535 '--exclude=src/libs/xpcom18a4/**' \
1536 '--exclude=src/libs/curl*/**' \
1537 '--exclude=src/libs/libxml*/**' \
1538 '--exclude=src/libs/libvpx*/**' \
1539 '--exclude=src/VBox/Additions/WINNT/**' \
1540 '--exclude=src/VBox/Additions/x11/**' \
1541 '--exclude=src/VBox/Artwork/x11/**' \
1542 '--include=src/VBox/Devices/' \
1543 '--include=src/VBox/Devices/Audio/' \
1544 '--include=src/VBox/Devices/Audio/**' \
1545 '--include=src/VBox/Devices/build/' \
1546 '--include=src/VBox/Devices/build/**' \
1547 '--exclude=src/VBox/Devices/**' \
1548 '--exclude=src/VBox/Disassembler/**' \
1549 '--exclude=src/VBox/ExtPacks/**' \
1550 '--exclude=src/VBox/Frontends/**' \
1551 '--exclude=src/VBox/HostDriver/**' \
1552 '--exclude=src/VBox/HostService/**' \
1553 '--exclude=src/VBox/ImageMounter/**' \
1554 '--exclude=src/VBox/Installer/win/**' \
1555 '--exclude=src/VBox/Main/**' \
1556 '--exclude=src/VBox/NetworkService/**' \
1557 '--exclude=src/VBox/RDP/**' \
1558 '--exclude=src/VBox/Storage/**' \
1559 '--include=src/VBox/ValidationKit/' \
1560 '--include=src/VBox/ValidationKit/Config.kmk' \
1561 '--include=src/VBox/ValidationKit/utils/' \
1562 '--include=src/VBox/ValidationKit/utils/audio/' \
1563 '--include=src/VBox/ValidationKit/utils/audio/**' \
1564 '--exclude=src/VBox/ValidationKit/**' \
1565 '--exclude=src/VBox/VMM/**' \
1566 '--exclude=src/apps/**' \
1567 '--exclude=src/recompiler/**' \
1568 .
$(VBOX_BLD_VM_DARWIN_X86_IP
):/Users
/vbox
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)
1570 additions-build-darwin.amd64.build-it
: additions-build-darwin.amd64.rsync-into-vm
1571 $(call VBOX_BLD_VM_MSG_BEGIN
,Darwin
/amd64 Additions
)
1572 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_109_AMD64_IP
) 'cd /Users/vbox/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.amd64) all ' # VBOX_DEF_MACOSX_VERSION_MIN=10.7
1573 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_109_AMD64_IP
) 'cd /Users/vbox/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.amd64) packing ' # VBOX_DEF_MACOSX_VERSION_MIN=10.7
1574 $(call VBOX_BLD_VM_MSG_END__
,Darwin
/amd64 Additions
)
1576 additions-build-darwin.x86.build-it
: additions-build-darwin.x86.rsync-into-vm
1577 $(call VBOX_BLD_VM_MSG_BEGIN
,Darwin
/x86 Additions
)
1578 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_X86_IP
) 'cd /Users/vbox/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.x86) all ' # VBOX_DEF_MACOSX_VERSION_MIN=10.5
1579 # no pkgbuild # $(TIME) -- $(VBOX_SSH) vbox@$(VBOX_BLD_VM_DARWIN_X86_IP) 'cd /Users/vbox/tinderbox/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_ADDITIONS_BUILD.x86) packing ' # VBOX_DEF_MACOSX_VERSION_MIN=10.5
1580 $(call VBOX_BLD_VM_MSG_END__
,Darwin
/x86 Additions
)
1582 additions-build-darwin.amd64.rsync-out-of-vm
: additions-build-darwin.amd64.build-it
1583 $(TIME
) -- $(VBOX_RSYNC
) -a
-v
--delete
$(VBOX_BLD_VM_DARWIN_109_AMD64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)/out
/darwin.amd64 out
/
1585 additions-build-darwin.x86.rsync-out-of-vm
: additions-build-darwin.x86.build-it
1586 $(TIME
) -- $(VBOX_RSYNC
) -a
-v
--delete
$(VBOX_BLD_VM_DARWIN_X86_IP
):/Users
/vbox
/tinderbox
/$(VBOX_ADDITIONS_BUILD_SUBDIRNAME
)/out
/darwin.x86 out
/
1588 additions-build-darwin.amd64
: additions-build-darwin.amd64.rsync-out-of-vm
1589 additions-build-darwin.x86
: additions-build-darwin.x86.rsync-out-of-vm
1590 additions-build-darwin
: additions-build-darwin.x86.rsync-out-of-vm additions-build-darwin.amd64.rsync-out-of-vm
1592 .PHONY
: additions-build-darwin.amd64.rsync-into-vm additions-build-darwin.amd64.rsync-out-of-vm additions-build-darwin.amd64.build-it \
1593 additions-build-darwin.x86.rsync-into-vm additions-build-darwin.x86.rsync-out-of-vm additions-build-darwin.x86.build-it
1598 + $(KMK
) VBOX_ONLY_ADDITIONS
=1 \
1599 VBOX_WITH_ADDITIONS_ISO.darwin.amd64
=1 \
1600 VBOX_WITH_ADDITIONS_ISO.darwin.x86
= \
1601 VBOX_WITH_ADDITIONS_ISO.freebsd.amd64
= \
1602 VBOX_WITH_ADDITIONS_ISO.freebsd.x86
= \
1603 VBOX_WITH_ADDITIONS_ISO.linux.amd64
= \
1604 VBOX_WITH_ADDITIONS_ISO.linux.x86
=1 \
1605 VBOX_WITH_ADDITIONS_ISO.linux.arm64
=1 \
1606 VBOX_WITH_COMBINED_LINUX_GUEST_PACKAGE
=1 \
1607 $(if
$(VBOX_WITH_LNX_ARM64_ADDITIONS
), VBOX_WITH_LNX_ARM64_ADDITIONS
=1,) \
1608 VBOX_WITH_ADDITIONS_ISO.os2.x86
=1 \
1609 VBOX_WITH_ADDITIONS_ISO.solaris.amd64
=1 \
1610 VBOX_WITH_ADDITIONS_ISO.solaris.x86
=1 \
1611 VBOX_WITH_COMBINED_SOLARIS_GUEST_PACKAGE
=1 \
1612 VBOX_WITH_ADDITIONS_ISO.win.amd64
=1 \
1613 VBOX_WITH_ADDITIONS_ISO.win.x86
=1 \
1614 VBOX_WITH_ADDITIONS_ISO.win.arm64
=1 \
1615 -C src
/VBox
/Additions \
1616 $(VBOX_PATH_ADDITIONS
)/VBoxGuestAdditions.zip
1619 additions-build-win.x86 \
1620 additions-build-win.amd64 \
1621 additions-build-win.arm64 \
1622 additions-build-solaris.amd64 \
1623 additions-build-solaris.x86 \
1624 additions-build-os2.x86 \
1625 additions-build-linux \
1626 additions-build-linux.amd64 \
1627 additions-build-linux.x86 \
1628 additions-build-linux.x86.combined \
1629 $(if
$(VBOX_WITH_LNX_ARM64_ADDITIONS
), additions-build-linux.arm64
,) \
1630 additions-build-darwin \
1631 additions-build-darwin.x86 \
1632 additions-build-darwin.amd64 \
1637 # Build the extension packs, all of them.
1639 # This is tailored (hardcoded) for the extension pack build box.
1641 # The fetching must be done in serial fashion, while the building should be
1642 # more flexible wrt to -jN.
1645 + $(KMK
) -C tools fetch VBOX_ONLY_EXTPACKS
=1
1646 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=darwin VBOX_ONLY_EXTPACKS
=1
1647 # + $(KMK) -C tools fetch KBUILD_TARGET_ARCH=amd64 KBUILD_TARGET=freebsd VBOX_ONLY_EXTPACKS=1
1648 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=linux VBOX_ONLY_EXTPACKS
=1
1649 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=solaris VBOX_ONLY_EXTPACKS
=1
1650 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=win VBOX_ONLY_EXTPACKS
=1
1651 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=arm64 KBUILD_TARGET
=darwin VBOX_ONLY_EXTPACKS
=1
1652 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=arm64 KBUILD_TARGET
=win VBOX_ONLY_EXTPACKS
=1
1656 extpacks-build-win.amd64 \
1657 extpacks-build-win.arm64 \
1658 extpacks-build-solaris.amd64 \
1659 extpacks-build-linux.amd64 \
1660 extpacks-build-darwin.amd64 \
1661 extpacks-build-darwin.arm64 \
1662 extpacks-build-freebsd.amd64
1664 VBOX_EXTPACKS_BUILD.amd64
= VBOX_ONLY_EXTPACKS
=1 VBOX_WITH_MAIN_NLS
= VBOX_WITH_PUEL_NLS_NO_QM
=1 \
1665 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=amd64 VBOX_SVN_REV
=$(VBOX_SVN_REV
) VBOX_ONLY_EXTPACKS_USE_IMPLIBS
=1
1667 VBOX_EXTPACKS_BUILD.arm64
= VBOX_ONLY_EXTPACKS
=1 VBOX_WITH_MAIN_NLS
= VBOX_WITH_PUEL_NLS_NO_QM
=1 \
1668 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=arm64 VBOX_SVN_REV
=$(VBOX_SVN_REV
) VBOX_ONLY_EXTPACKS_USE_IMPLIBS
=1
1670 ifdef VBOX_WITH_PUEL_NLS
1671 VBOX_EXTPACKS_HOST_EXTRA
= VBOX_WITH_PUEL_NLS_NO_QM
=
1673 VBOX_EXTPACKS_HOST_EXTRA
= VBOX_WITH_PUEL_NLS_NO_QM
=
1676 # Automatically determine the extpack build subdir name. Used for figuring out
1677 # directory names inside the extension pack building VMs.
1678 VBOX_EXTPACKS_BUILD_SUBDIRNAME
:= $(lastword
$(subst /, ,$(PATH_ROOT
)))
1680 # When building in parallel on a Windows host, make sure we finish the host
1681 # bit before kicking off any UNIX guest or we'll run into file sharing issues.
1682 ifeq ($(KBUILD_TARGET
),win
)
1683 VBOX_EXTPACKS_BUILD_WIN_HOST_FIRST
= extpacks-build-win.amd64 extpacks-build-win.arm64
1685 VBOX_EXTPACKS_BUILD_WIN_HOST_FIRST
=
1688 extpacks-build-win.amd64
:
1689 ifeq ($(KBUILD_TARGET
),win
)
1690 + $(TIME
) -- $(KMK
) $(VBOX_EXTPACKS_BUILD.amd64
) all $(VBOX_EXTPACKS_HOST_EXTRA
) $(VBOX_EXTPACKS_HOST_BUILD_TWEAK
)
1692 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/amd64 extension packs
)
1693 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_AMD64_IP
) 'cd e:/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_EXTPACKS_BUILD.amd64) all '
1694 $(call VBOX_BLD_VM_MSG_END__
,Windows
/amd64 extension packs
)
1697 extpacks-build-win.arm64
:
1698 ifeq ($(KBUILD_TARGET
),win
)
1699 + $(TIME
) -- $(KMK
) $(VBOX_EXTPACKS_BUILD.arm64
) all $(VBOX_EXTPACKS_HOST_EXTRA
) $(VBOX_EXTPACKS_HOST_BUILD_TWEAK
)
1701 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/arm64 extension packs
)
1702 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_ARM64_IP
) 'cd e:/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_EXTPACKS_BUILD.arm64) all '
1703 $(call VBOX_BLD_VM_MSG_END__
,Windows
/arm64 extension packs
)
1706 ifeq ($(KBUILD_TARGET
),solaris
)
1707 extpacks-build-solaris.amd64
:
1708 + $(TIME
) -- $(KMK
) $(VBOX_EXTPACKS_BUILD.amd64
) all $(VBOX_EXTPACKS_HOST_EXTRA
) $(VBOX_EXTPACKS_HOST_BUILD_TWEAK
)
1711 # Serialize 32-bit and 64-bit ASSUMING the same VM builds both.
1712 extpacks-build-solaris.rsync-into-vm
: $(VBOX_EXTPACKS_BUILD_WIN_HOST_FIRST
)
1713 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,solaris
,*) .
$(VBOX_BLD_VM_SOLARIS_IP
):/mnt
/tinderbox
/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME
)
1715 extpacks-build-solaris.build-it
: extpacks-build-solaris.rsync-into-vm
1716 $(call VBOX_BLD_VM_MSG_BEGIN
,Solaris
/amd64 extension packs
)
1717 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_SOLARIS_IP
) 'cd /mnt/tinderbox/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_EXTPACKS_BUILD.amd64) all '
1718 $(call VBOX_BLD_VM_MSG_END__
,Solaris
/amd64 extension packs
)
1720 extpacks-build-solaris.rsync-out-of-vm
: extpacks-build-solaris.build-it
1721 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_SOLARIS_IP
):/mnt
/tinderbox
/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME
)/out
/solaris.amd64 out
/
1723 #.NOTPARALLEL: extpacks-build-solaris.rsync-into-vm
1724 .PHONY
: extpacks-build-solaris.rsync-out-of-vm extpacks-build-solaris.rsync-into-vm extpacks-build-solaris.build-it
1726 extpacks-build-solaris.amd64
: extpacks-build-solaris.rsync-out-of-vm
1729 ifeq ($(KBUILD_TARGET
),linux
)
1730 extpacks-build-linux.amd64
: $(VBOX_EXTPACKS_BUILD_WIN_HOST_FIRST
)
1731 + $(TIME
) -- $(KMK
) $(VBOX_EXTPACKS_BUILD.amd64
) all $(VBOX_EXTPACKS_HOST_EXTRA
) $(VBOX_EXTPACKS_HOST_BUILD_TWEAK
)
1734 extpacks-build-linux.rsync-into-vm
: $(VBOX_EXTPACKS_BUILD_WIN_HOST_FIRST
)
1735 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,linux
,*) \
1736 '--exclude=src/VBox/Additions/**' \
1737 '--exclude=src/VBox/Debugger/**' \
1738 '--exclude=src/VBox/Frontends/**' \
1739 '--exclude=src/VBox/GuestHost/**' \
1740 '--exclude=src/VBox/HostServices/**' \
1741 '--exclude=src/VBox/ImageMounter/**' \
1742 '--exclude=src/VBox/NetworkServices/**' \
1743 '--exclude=src/app/**' \
1744 .
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME
)
1746 extpacks-build-linux.build-it
: extpacks-build-linux.rsync-into-vm
1747 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/amd64 extension packs
)
1748 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'dchroot -c ol-7.5-amd64 "cd /mnt/tinderbox/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME) && PATH=/opt/rh/devtoolset-9/root/bin:$$PATH tools/env.sh --no-wine kmk $(VBOX_EXTPACKS_BUILD.amd64) all " '
1749 $(call VBOX_BLD_VM_MSG_END__
,Linux
/amd64 extension packs
)
1751 extpacks-build-linux.rsync-out-of-vm
: extpacks-build-linux.build-it
1752 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME
)/out
/linux.amd64 out
/
1754 .PHONY
: extpacks-build-linux.rsync-out-of-vm extpacks-build-linux.rsync-into-vm extpacks-build-linux.build-it
1756 extpacks-build-linux.amd64
: extpacks-build-linux.rsync-out-of-vm
1759 extpacks-build-freebsd.amd64
: $(VBOX_EXTPACKS_BUILD_WIN_HOST_FIRST
)
1760 #ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),freebsd.amd64)
1761 # + $(TIME) -- $(KMK) $(VBOX_EXTPACKS_BUILD.amd64) all $(VBOX_EXTPACKS_HOST_EXTRA) $(VBOX_EXTPACKS_HOST_BUILD_TWEAK)
1763 # $(call VBOX_BLD_VM_MSG_BEGIN,FreeBSD/amd64 extension packs)
1764 # $(TIME) -- $(VBOX_SSH) vbox@$(VBOX_BLD_VM_FBSD_AMD64_IP) 'cd /mnt/tinderbox/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_EXTPACKS_BUILD.amd64) all '
1765 # $(call VBOX_BLD_VM_MSG_END__,FreeBSD/amd64 extension packs)
1768 extpacks-build-darwin.amd64
: $(VBOX_EXTPACKS_BUILD_WIN_HOST_FIRST
)
1769 ifeq ($(KBUILD_TARGET
).
$(KBUILD_TARGET_ARCH
),darwin.amd64
)
1770 + $(TIME
) -- $(KMK
) $(VBOX_EXTPACKS_BUILD.amd64
) all $(VBOX_EXTPACKS_HOST_EXTRA
) $(VBOX_EXTPACKS_HOST_BUILD_TWEAK
)
1772 $(call VBOX_BLD_VM_MSG_BEGIN
,Darwin
/amd64 extension packs
)
1773 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,darwin
,amd64
) .
$(VBOX_BLD_VM_DARWIN_109_AMD64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME
)
1774 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_109_AMD64_IP
) 'PATH=$$PATH:/opt/local/bin; cd /Users/vbox/tinderbox/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME) && KBUILD_HOST_ARCH=amd64 tools/env.sh --no-wine kmk $(VBOX_EXTPACKS_BUILD.amd64) all '
1775 $(TIME
) -- $(VBOX_RSYNC
) -am
-v
--delete
$(VBOX_BLD_VM_DARWIN_109_AMD64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME
)/out
/darwin.amd64 out
/
1776 $(call VBOX_BLD_VM_MSG_END__
,Darwin
/amd64 extension packs
)
1779 extpacks-build-darwin.arm64
: $(VBOX_EXTPACKS_BUILD_WIN_HOST_FIRST
)
1780 ifeq ($(KBUILD_TARGET
).
$(KBUILD_TARGET_ARCH
),darwin.arm64
)
1781 + $(TIME
) -- $(KMK
) $(VBOX_EXTPACKS_BUILD.arm64
) all $(VBOX_EXTPACKS_HOST_EXTRA
) $(VBOX_EXTPACKS_HOST_BUILD_TWEAK
)
1783 $(call VBOX_BLD_VM_MSG_BEGIN
,Darwin
/arm64 extension packs
)
1784 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,darwin
,arm64
) .
$(VBOX_BLD_VM_DARWIN_ARM64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME
)
1785 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_ARM64_IP
) 'PATH=$$PATH:/opt/local/bin; cd /Users/vbox/tinderbox/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME) && KBUILD_HOST_ARCH=arm64 tools/env.sh --no-wine kmk $(VBOX_EXTPACKS_BUILD.arm64) all '
1786 $(TIME
) -- $(VBOX_RSYNC
) -am
-v
--delete
$(VBOX_BLD_VM_DARWIN_ARM64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_EXTPACKS_BUILD_SUBDIRNAME
)/out
/darwin.arm64 out
/
1787 $(call VBOX_BLD_VM_MSG_END__
,Darwin
/arm64 extension packs
)
1791 + $(KMK
) VBOX_WITH_EXTPACK_OS_ARCHS
="darwin.amd64 darwin.arm64 linux.amd64 solaris.amd64 win.amd64 win.arm64" \
1792 VBOX_ONLY_EXTPACKS
=1 packing
1793 # +++ freebsd.amd64 ^^^
1796 extpacks-build-win.amd64 \
1797 extpacks-build-win.arm64 \
1798 extpacks-build-solaris.amd64 \
1799 extpacks-build-linux \
1800 extpacks-build-linux.amd64 \
1801 extpacks-build-freebsd.amd64 \
1802 extpacks-build-darwin.amd64 \
1803 extpacks-build-darwin.arm64 \
1808 # Build the test suite, all of it.
1810 # This is currently tailored (hardcoded) for the additions build box just like
1811 # the additions build above, which it in fact is a copy of.
1813 validationkit-fetch
:
1814 + $(KMK
) -C tools fetch VBOX_ONLY_VALIDATIONKIT
=1
1815 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=darwin VBOX_ONLY_VALIDATIONKIT
=1
1816 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=darwin VBOX_ONLY_VALIDATIONKIT
=1
1817 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=arm64 KBUILD_TARGET
=darwin VBOX_ONLY_VALIDATIONKIT
=1
1818 # + $(KMK) -C tools fetch KBUILD_TARGET_ARCH=amd64 KBUILD_TARGET=freebsd VBOX_ONLY_VALIDATIONKIT=1
1819 # + $(KMK) -C tools fetch KBUILD_TARGET_ARCH=x86 KBUILD_TARGET=freebsd VBOX_ONLY_VALIDATIONKIT=1
1820 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=linux VBOX_ONLY_VALIDATIONKIT
=1
1821 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=linux VBOX_ONLY_VALIDATIONKIT
=1
1822 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=arm64 KBUILD_TARGET
=linux VBOX_ONLY_VALIDATIONKIT
=1
1823 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=os2 VBOX_ONLY_VALIDATIONKIT
=1
1824 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=solaris VBOX_ONLY_VALIDATIONKIT
=1
1825 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=solaris VBOX_ONLY_VALIDATIONKIT
=1
1826 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=amd64 KBUILD_TARGET
=win VBOX_ONLY_VALIDATIONKIT
=1
1827 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=x86 KBUILD_TARGET
=win VBOX_ONLY_VALIDATIONKIT
=1
1828 + $(KMK
) -C tools fetch KBUILD_TARGET_ARCH
=arm64 KBUILD_TARGET
=win VBOX_ONLY_VALIDATIONKIT
=1
1831 validationkit-build
: \
1832 validationkit-build-rsync-into-vms \
1833 validationkit-build-solaris.amd64 \
1834 validationkit-build-solaris.x86 \
1835 validationkit-build-win.x86 \
1836 validationkit-build-win.amd64 \
1837 validationkit-build-win.arm64 \
1838 validationkit-build-os2.x86 \
1839 validationkit-build-linux \
1840 validationkit-build-linux.arm64 \
1841 validationkit-build-freebsd.amd64 \
1842 validationkit-build-freebsd.x86 \
1843 validationkit-build-darwin.amd64 \
1844 validationkit-build-darwin.x86 \
1845 validationkit-build-darwin.arm64
1847 validationkit-build-rsync-into-vms
: \
1848 validationkit-build-solaris.rsync-into-vm \
1849 validationkit-build-os2.rsync-into-vm \
1850 validationkit-build-linux.rsync-into-vm \
1851 validationkit-build-linux.arm64.rsync-into-vm
1852 $(call MSG_L1
,Rsynced the sources
+ tools into the VMs.
)
1853 .NOTPARALLEL
: validationkit-build-rsync-into-vms
1854 .PHONY
: validationkit-build-rsync-into-vms
1857 VBOX_VALIDATIONKIT_BUILD.amd64
= VBOX_ONLY_VALIDATIONKIT
=1 \
1858 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=amd64 VBOX_SVN_REV
=$(VBOX_SVN_REV
)
1860 VBOX_VALIDATIONKIT_BUILD.x86
= VBOX_ONLY_VALIDATIONKIT
=1 \
1861 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=x86 VBOX_SVN_REV
=$(VBOX_SVN_REV
)
1863 VBOX_VALIDATIONKIT_BUILD.arm64
= VBOX_ONLY_VALIDATIONKIT
=1 \
1864 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=arm64 VBOX_SVN_REV
=$(VBOX_SVN_REV
)
1866 # Automatically determine the Validation Kit build subdir name. Used for figuring
1867 # out directory names inside the test suite building VMs.
1868 VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
:= $(lastword
$(subst /, ,$(PATH_ROOT
)))
1870 # When building in parallel on a Windows host, make sure we finish the host
1871 # bit before kicking off any UNIX guest or we'll run into file sharing issues.
1872 ifeq ($(KBUILD_TARGET
),win
)
1873 VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
= validationkit-build-win.x86 validationkit-build-win.amd64 validationkit-build-win.arm64
1875 VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
=
1878 validationkit-build-win.amd64
:
1879 ifeq ($(KBUILD_TARGET
),win
)
1880 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.amd64
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
1882 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/amd64 Validation Kit
)
1883 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_AMD64_IP
) 'cd e:/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_VALIDATIONKIT_BUILD.amd64) all '
1884 $(call VBOX_BLD_VM_MSG_END__
,Windows
/amd64 Validation Kit
)
1887 validationkit-build-win.x86
:
1888 ifeq ($(KBUILD_TARGET
),win
)
1889 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.x86
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
1891 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/x86 Validation Kit
)
1892 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_X86_IP
) 'cd e:/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_VALIDATIONKIT_BUILD.x86) all '
1893 $(call VBOX_BLD_VM_MSG_END__
,Windows
/x86 Validation Kit
)
1896 validationkit-build-win.arm64
:
1897 ifeq ($(KBUILD_TARGET
),win
)
1898 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.arm64
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
1900 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/arm64 Validation Kit
)
1901 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_ARM64_IP
) 'cd e:/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_VALIDATIONKIT_BUILD.arm64) all '
1902 $(call VBOX_BLD_VM_MSG_END__
,Windows
/arm64 Validation Kit
)
1905 ifeq ($(KBUILD_TARGET
),solaris
)
1906 validationkit-build-solaris.amd64
:
1907 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.amd64
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
1909 validationkit-build-solaris.x86
:
1910 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.x86
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
1913 validationkit-build-solaris.rsync-into-vm
: $(VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
)
1914 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,solaris
,*) \
1915 '--exclude=src/VBox/Additions/WINNT/**' \
1916 '--exclude=src/VBox/Frontends/**' \
1917 '--exclude=src/VBox/VMM/**' \
1918 .
$(VBOX_BLD_VM_SOLARIS_IP
):/mnt
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)
1920 validationkit-build-solaris.build-it
: validationkit-build-solaris.rsync-into-vm
1921 $(call VBOX_BLD_VM_MSG_BEGIN
,Solaris
/amd64 Validation Kit
)
1922 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_SOLARIS_IP
) 'cd /mnt/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.amd64) all '
1923 $(call VBOX_BLD_VM_MSG_END__
,Solaris
/amd64 Validation Kit
)
1924 $(call VBOX_BLD_VM_MSG_BEGIN
,Solaris
/x86 Validation Kit
)
1925 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_SOLARIS_IP
) 'cd /mnt/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.x86) all '
1926 $(call VBOX_BLD_VM_MSG_END__
,Solaris
/x86 Validation Kit
)
1928 validationkit-build-solaris.rsync-out-of-vm
: validationkit-build-solaris.build-it
1929 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_SOLARIS_IP
):/mnt
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/solaris.x86 out
/
1930 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_SOLARIS_IP
):/mnt
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/solaris.amd64 out
/
1932 .PHONY
: validationkit-build-solaris.rsync-out-of-vm validationkit-build-solaris.rsync-into-vm validationkit-build-solaris.build-it
1934 validationkit-build-solaris.amd64
: validationkit-build-solaris.rsync-out-of-vm
1935 validationkit-build-solaris.x86
: validationkit-build-solaris.rsync-out-of-vm
1938 ifeq ($(KBUILD_TARGET
),os2
)
1939 validationkit-build-os2.x86
:
1940 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.x86
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
1941 validationkit-build-os2.rsync-into-vm
:
1943 validationkit-build-os2.rsync-into-vm
:
1944 -$(VBOX_BLD_VM_OS2_KKILL_STUFF
)
1945 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,os2
,*,nossh
) \
1946 '--exclude=src/VBox/Additions/**' \
1947 '--exclude=src/VBox/Frontends/**' \
1948 '--exclude=src/VBox/VMM/**' \
1949 . rsync
://vbox@
$(VBOX_BLD_VM_OS2_IP
)/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)
1951 validationkit-build-os2.build-it
: validationkit-build-os2.rsync-into-vm
1952 $(call VBOX_BLD_VM_MSG_BEGIN
,OS
/2 Validation Kit
)
1953 $(TIME
) -- $(REDIRECT_EXT
) --stdin-pipe
-- rsh
-l vbox
$(VBOX_BLD_VM_OS2_IP
) "cd e:\\tinderbox\\$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && e: && kbuild\\bin\\os2.x86\\kmk_ash tools\\env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.x86) all"
1954 $(call VBOX_BLD_VM_MSG_END__
,OS
/2 Validation Kit
)
1956 validationkit-build-os2.rsync-out-of-vm
: validationkit-build-os2.build-it
1957 -$(VBOX_BLD_VM_OS2_KKILL_STUFF
)
1958 $(TIME
) -- $(VBOX_RSYNC_NOSSH
) -v
-a
--delete rsync
://vbox@
$(VBOX_BLD_VM_OS2_IP
)/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/os2.x86 .
/out
1960 .PHONY
: validationkit-build-os2.rsync-into-vm validationkit-build-os2.rsync-out-of-vm validationkit-build-os2.build-it
1962 validationkit-build-os2.x86
: validationkit-build-os2.rsync-out-of-vm
1965 ifeq ($(KBUILD_TARGET
),linux
)
1966 validationkit-build-linux.amd64
:
1967 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.amd64
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
1969 validationkit-build-linux.x86
:
1970 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.x86
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
1972 validationkit-build-linux
: validationkit-build-linux.x86 validationkit-build-linux.amd64
1974 validationkit-build-linux.rsync-into-vm
: $(VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
)
1975 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,linux
,*) \
1976 '--exclude=src/VBox/Additions/**' \
1977 '--exclude=src/VBox/Debugger/**' \
1978 '--exclude=src/VBox/Frontends/**' \
1979 '--exclude=src/VBox/GuestHost/**' \
1980 '--exclude=src/VBox/HostServices/**' \
1981 '--exclude=src/VBox/ImageMounter/**' \
1982 '--include=src/VBox/Main/' \
1983 '--include=src/VBox/Main/idl**' \
1984 '--exclude=src/VBox/Main/**' \
1985 '--exclude=src/VBox/NetworkServices/**' \
1986 '--exclude=src/VBox/RDP/**' \
1987 '--exclude=src/VBox/Storage/**' \
1988 '--exclude=src/VBox/VMM/**' \
1989 '--exclude=src/app/**' \
1990 .
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)
1992 validationkit-build-linux.build-it
: validationkit-build-linux.rsync-into-vm
1993 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/amd64 Validation Kit
)
1994 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'dchroot -c debian-4.0-amd64 "cd /mnt/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.amd64) all " '
1995 $(call VBOX_BLD_VM_MSG_END__
,Linux
/amd64 Validation Kit
)
1996 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/x86 Validation Kit
)
1997 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'linux32 dchroot -c rhel3-i386 "cd /mnt/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.x86) all " '
1998 $(call VBOX_BLD_VM_MSG_END__
,Linux
/x86 Validation Kit
)
2000 validationkit-build-linux.rsync-out-of-vm
: validationkit-build-linux.build-it
2001 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/linux.x86 out
/
2002 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/linux.amd64 out
/
2004 .PHONY
: validationkit-build-linux.rsync-out-of-vm validationkit-build-linux.rsync-into-vm validationkit-build-linux.build-it
2006 validationkit-build-linux
: validationkit-build-linux.rsync-out-of-vm
2010 # ValidationKit build for Linux ARM.
2012 validationkit-build-linux.arm64.rsync-into-vm
: $(VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
)
2013 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,linux
,*) \
2014 '--exclude=src/VBox/Additions/**' \
2015 '--exclude=src/VBox/Debugger/**' \
2016 '--exclude=src/VBox/Frontends/**' \
2017 '--exclude=src/VBox/GuestHost/**' \
2018 '--exclude=src/VBox/HostServices/**' \
2019 '--exclude=src/VBox/ImageMounter/**' \
2020 '--include=src/VBox/Main/' \
2021 '--include=src/VBox/Main/idl**' \
2022 '--exclude=src/VBox/Main/**' \
2023 '--exclude=src/VBox/NetworkServices/**' \
2024 '--exclude=src/VBox/RDP/**' \
2025 '--exclude=src/VBox/Storage/**' \
2026 '--exclude=src/VBox/VMM/**' \
2027 '--exclude=src/app/**' \
2028 .
$(VBOX_BLD_VM_LNX_ARM64_IP
):/home
/vbox
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)
2030 validationkit-build-linux.arm64.build-it
: validationkit-build-linux.arm64.rsync-into-vm
2031 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/arm64 Validation Kit
)
2032 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_ARM64_IP
) 'cd /home/vbox/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.arm64) all '
2033 $(call VBOX_BLD_VM_MSG_END__
,Linux
/arm64 Validation Kit
)
2035 validationkit-build-linux.arm64.rsync-out-of-vm
: validationkit-build-linux.arm64.build-it
2036 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_LNX_ARM64_IP
):/home
/vbox
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/linux.arm64 out
/
2038 .PHONY
: validationkit-build-linux.arm64.rsync-out-of-vm validationkit-build-linux.arm64.rsync-into-vm validationkit-build-linux.arm64.build-it
2040 validationkit-build-linux.arm64
: validationkit-build-linux.arm64.rsync-out-of-vm
2043 validationkit-build-freebsd.amd64
: $(VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
)
2044 #ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),freebsd.amd64)
2045 # + $(TIME) -- $(KMK) $(VBOX_VALIDATIONKIT_BUILD.amd64) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK)
2047 # $(call VBOX_BLD_VM_MSG_BEGIN,Freebsd/amd64 Validation Kit)
2048 # $(TIME) -- $(VBOX_SSH) vbox@$(VBOX_BLD_VM_FBSD_AMD64_IP) 'cd /mnt/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.amd64) all '
2049 # $(call VBOX_BLD_VM_MSG_END__,Freebsd/amd64 Validation Kit)
2052 validationkit-build-freebsd.x86
: $(VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
)
2053 #ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),freebsd.x86)
2054 # + $(TIME) -- $(KMK) $(VBOX_VALIDATIONKIT_BUILD.x86) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK)
2056 # $(call VBOX_BLD_VM_MSG_BEGIN,Freebsd/x86 Validation Kit)
2057 # $(TIME) -- $(VBOX_SSH) vbox@$(VBOX_BLD_VM_FBSD_X86_IP) 'cd /mnt/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.x86) all '
2058 # $(call VBOX_BLD_VM_MSG_END__,Freebsd/x86 Validation Kit)
2061 validationkit-build-darwin.amd64
: $(VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
)
2062 ifeq ($(KBUILD_TARGET
).
$(KBUILD_TARGET_ARCH
),darwin.amd64
)
2063 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.amd64
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
2065 $(call VBOX_BLD_VM_MSG_BEGIN
,Darwin
/amd64 Validation Kit
)
2066 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,darwin
,amd64
) .
$(VBOX_BLD_VM_DARWIN_AMD64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)
2067 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_AMD64_IP
) 'cd /Users/vbox/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.amd64) all '
2068 $(TIME
) -- $(VBOX_RSYNC
) -am
-v
--delete
$(VBOX_BLD_VM_DARWIN_AMD64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/darwin.amd64 out
/
2069 $(call VBOX_BLD_VM_MSG_END__
,Darwin
/amd64 Validation Kit
)
2072 validationkit-build-darwin.x86
: $(VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
)
2073 ifeq ($(KBUILD_TARGET
).
$(KBUILD_TARGET_ARCH
),darwin.x86
)
2074 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.x86
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
2076 $(call VBOX_BLD_VM_MSG_BEGIN
,Darwin
/x86 Validation Kit
)
2077 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,darwin
,x86
) .
$(VBOX_BLD_VM_DARWIN_X86_IP
):/Users
/vbox
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)
2078 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_X86_IP
) 'cd /Users/vbox/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.x86) all '
2079 $(TIME
) -- $(VBOX_RSYNC
) -am
-v
--delete
$(VBOX_BLD_VM_DARWIN_X86_IP
):/Users
/vbox
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/darwin.x86 out
/
2080 $(call VBOX_BLD_VM_MSG_END__
,Darwin
/x86 Validation Kit
)
2083 validationkit-build-darwin.arm64
: $(VBOX_VALIDATIONKIT_BUILD_WIN_HOST_FIRST
)
2084 ifeq ($(KBUILD_TARGET
).
$(KBUILD_TARGET_ARCH
),darwin.arm64
)
2085 + $(TIME
) -- $(KMK
) $(VBOX_VALIDATIONKIT_BUILD.arm64
) all $(VBOX_VALIDATIONKIT_HOST_BUILD_TWEAK
)
2087 $(call VBOX_BLD_VM_MSG_BEGIN
,Darwin
/arm64 Validation Kit
)
2088 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,darwin
,arm64
) .
$(VBOX_BLD_VM_DARWIN_ARM64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)
2089 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_DARWIN_ARM64_IP
) 'PATH=$$PATH:/opt/local/bin; cd /Users/vbox/tinderbox/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME) && KBUILD_HOST_ARCH=arm64 tools/env.sh --no-wine kmk $(VBOX_VALIDATIONKIT_BUILD.arm64) all '
2090 $(TIME
) -- $(VBOX_RSYNC
) -am
-v
--delete
$(VBOX_BLD_VM_DARWIN_ARM64_IP
):/Users
/vbox
/tinderbox
/$(VBOX_VALIDATIONKIT_BUILD_SUBDIRNAME
)/out
/darwin.arm64 out
/
2091 $(call VBOX_BLD_VM_MSG_END__
,Darwin
/arm64 Validation Kit
)
2095 validationkit-packing
:
2096 + $(KMK
) VBOX_ONLY_VALIDATIONKIT
=1 \
2097 VBOX_WITH_VALIDATIONKIT_PACKING.darwin.amd64
=1 \
2098 VBOX_WITH_VALIDATIONKIT_PACKING.darwin.x86
=2 \
2099 VBOX_WITH_VALIDATIONKIT_PACKING.darwin.arm64
=1 \
2100 VBOX_WITH_VALIDATIONKIT_PACKING.freebsd.amd64
= \
2101 VBOX_WITH_VALIDATIONKIT_PACKING.freebsd.x86
= \
2102 VBOX_WITH_VALIDATIONKIT_PACKING.linux.amd64
=1 \
2103 VBOX_WITH_VALIDATIONKIT_PACKING.linux.x86
=1 \
2104 VBOX_WITH_VALIDATIONKIT_PACKING.linux.arm64
=1 \
2105 VBOX_WITH_VALIDATIONKIT_PACKING.os2.x86
=1 \
2106 VBOX_WITH_VALIDATIONKIT_PACKING.solaris.amd64
=1 \
2107 VBOX_WITH_VALIDATIONKIT_PACKING.solaris.x86
=1 \
2108 VBOX_WITH_VALIDATIONKIT_PACKING.win.amd64
=1 \
2109 VBOX_WITH_VALIDATIONKIT_PACKING.win.x86
=1 \
2110 VBOX_WITH_VALIDATIONKIT_PACKING.win.arm64
=1 \
2111 -C src
/VBox
/ValidationKit \
2112 $(PATH_OUT
)/VBoxValidationKit.zip \
2113 $(PATH_OUT
)/VBoxTestBoxScript.zip
2116 validationkit-build-win.x86 \
2117 validationkit-build-win.amd64 \
2118 validationkit-build-win.arm64 \
2119 validationkit-build-solaris.amd64 \
2120 validationkit-build-solaris.x86 \
2121 validationkit-build-os2.x86 \
2122 validationkit-build-linux \
2123 validationkit-build-linux.amd64 \
2124 validationkit-build-linux.x86 \
2125 validationkit-build-linux.arm64 \
2126 validationkit-build-freebsd.amd64 \
2127 validationkit-build-freebsd.x86 \
2128 validationkit-build-darwin.amd64 \
2129 validationkit-build-darwin.x86 \
2130 validationkit-build-darwin.arm64 \
2131 validationkit-packing
2135 # Build the EFI firmware, all of it.
2138 + $(KMK
) -C tools fetch VBOX_ONLY_EXTPACKS
=1 VBOX_ONLY_EFI
=1
2140 efi-build
: $(VBOX_VERSION_HEADER
)
2141 + $(KMK
) -C src
/VBox
/Devices
/EFI
/Firmware
$(VBOX_EFI_FIRMWARE_SUFFIX
) --output-sync
=recurse
2144 + $(KMK
) -C src
/VBox
/Devices
/EFI
/Firmware
$(VBOX_EFI_FIRMWARE_SUFFIX
) $(PATH_STAGE
)/VBoxEfiFirmware.zip
2149 # Build the SDK, all of it.
2151 # Hosting the build on windows, with the linux part in a VM.
2154 + $(KMK
) -C tools fetch VBOX_ONLY_SDK
=1 VBOX_ONLY_SDK_ON_HOST
=1
2155 + $(KMK
) -C tools fetch VBOX_ONLY_SDK
=1 VBOX_ONLY_SDK_IN_VM
=1 KBUILD_TARGET
=linux
2156 + $(KMK
) -C tools fetch VBOX_ONLY_SDK
=1 VBOX_ONLY_SDK_IN_VM
=1 KBUILD_TARGET
=win
2159 sdk-build-rsync-into-vms \
2163 sdk-build-rsync-into-vms
: \
2164 sdk-build-linux.rsync-into-vm
2165 $(call MSG_L1
,Rsynced the sources
+ tools into the VM
(s
).
)
2166 .NOTPARALLEL
: sdk-build-rsync-into-vms
2167 .PHONY
: sdk-build-rsync-into-vms
2169 VBOX_SDK_BUILD.amd64
= VBOX_ONLY_SDK
=1 KBUILD_TYPE
=$(KBUILD_TYPE
) KBUILD_TARGET_ARCH
=amd64 VBOX_SVN_REV
=$(VBOX_SVN_REV
)
2171 # Automatically determine the SDL build subdir name. Used for figuring
2172 # out directory names inside the test suite building VMs.
2173 VBOX_SDK_BUILD_SUBDIRNAME
:= $(lastword
$(subst /, ,$(PATH_ROOT
)))
2176 ifeq ($(KBUILD_TARGET
),win
)
2177 + $(TIME
) -- $(KMK
) $(VBOX_SDK_BUILD.amd64
) VBOX_ONLY_SDK_ON_HOST
=1 all $(VBOX_SDK_HOST_BUILD_TWEAK
)
2179 $(call VBOX_BLD_VM_MSG_BEGIN
,Windows
/amd64 SDK
)
2180 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_WIN_X86_IP
) 'cd e:/$(VBOX_SDK_BUILD_SUBDIRNAME) && tools/env.sh kmk $(VBOX_SDK_BUILD.amd64) VBOX_ONLY_SDK_IN_VM=1 all '
2181 $(call VBOX_BLD_VM_MSG_END__
,Windows
/amd64 SDK
)
2184 ifeq ($(KBUILD_TARGET
),linux
)
2186 + $(TIME
) -- $(KMK
) $(VBOX_SDK_BUILD.amd64
) all $(VBOX_SDK_HOST_BUILD_TWEAK
)
2189 sdk-build-linux.rsync-into-vm
: $(VBOX_SDK_BUILD_WIN_HOST_FIRST
)
2190 $(TIME
) -- $(call VBOX_RSYNC_IN_FN
,linux
,*) \
2191 '--exclude=src/VBox/Additions/**' \
2192 '--exclude=src/VBox/Artwork/**' \
2193 '--exclude=src/VBox/Devices**' \
2194 '--exclude=src/VBox/Debugger/**' \
2195 '--exclude=src/VBox/Disassembler/**' \
2196 '--exclude=src/VBox/ExtPacks/**' \
2197 '--include=src/VBox/Frontends/' \
2198 '--include=src/VBox/Frontends/VBoxShell**' \
2199 '--exclude=src/VBox/Frontends/**' \
2200 '--exclude=src/VBox/GuestHost/**' \
2201 '--exclude=src/VBox/HostDrivers/**' \
2202 '--exclude=src/VBox/HostServices/**' \
2203 '--exclude=src/VBox/ImageMounter/**' \
2204 '--exclude=src/VBox/NetworkServices/**' \
2205 '--exclude=src/VBox/Storage/**' \
2206 '--exclude=src/VBox/VMM/**' \
2207 '--include=src/libs/' \
2208 '--include=src/libs/Makefile.kmk' \
2209 '--include=src/libs/xpcom**' \
2210 '--exclude=src/libs/**' \
2211 .
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_SDK_BUILD_SUBDIRNAME
)
2213 sdk-build-linux.build-it
: sdk-build-linux.rsync-into-vm
2214 $(call VBOX_BLD_VM_MSG_BEGIN
,Linux
/amd64 SDK
)
2215 $(TIME
) -- $(VBOX_SSH
) vbox@
$(VBOX_BLD_VM_LNX_IP
) 'cd /mnt/tinderbox/$(VBOX_SDK_BUILD_SUBDIRNAME) && tools/env.sh --no-wine kmk $(VBOX_SDK_BUILD.amd64) VBOX_ONLY_SDK_IN_VM=1 all '
2216 $(call VBOX_BLD_VM_MSG_END__
,Linux
/amd64 SDK
)
2218 sdk-build-linux.rsync-out-of-vm
: sdk-build-linux.build-it
2219 $(TIME
) -- $(VBOX_RSYNC
) -a
--delete
$(VBOX_BLD_VM_LNX_IP
):/mnt
/tinderbox
/$(VBOX_SDK_BUILD_SUBDIRNAME
)/out
/linux.amd64 out
/
2221 .PHONY
: sdk-build-linux.rsync-out-of-vm sdk-build-linux.rsync-into-vm sdk-build-linux.build-it
2223 sdk-build-linux
: sdk-build-linux.rsync-out-of-vm
2228 + $(KMK
) VBOX_ONLY_SDK
=1 VBOX_ONLY_SDK_ON_HOST
=1 \
2229 VBOX_WITH_SDK_PACKING.linux.amd64
=1 \
2230 VBOX_WITH_SDK_PACKING.win.amd64
=1 \
2231 -C src
/VBox
/Installer packing
2241 # Generate VirtualBox-x.x.x.zip (PUEL) snapshot archive for internal use only
2243 # - must be executed on an PUEL checkout
2246 # the path where to store the zip archive
2247 ZIPPATH ?
= $(abspath
$(PATH_ROOT
)/..
)
2248 # the root directory inside the zip archive
2249 ZIPROOT ?
= VirtualBox-
$(VBOX_VERSION_STRING
)
2250 # the name of the zip archive
2251 ZIPNAME ?
= VirtualBox-
$(VBOX_VERSION_STRING
).zip
2253 @
$(call MSG_L1
,Creating zip
$(ZIPPATH
)/$(ZIPNAME
))
2254 @if
[ ! -r
"$(PATH_ROOT)/src/VBox/RDP/server/server.cpp" ]; then \
2256 echo
"Did not find RDP stuff, is this an OSE branch?"; \
2260 @if
[ -z
"$(PASSWORD)" ]; then \
2262 echo
"Please specify a password with PASSWORD=..."; \
2266 $(QUIET
)$(MKDIR
) -p
$(ZIPPATH
)
2267 $(QUIET
)$(RM
) -f
$(ZIPPATH
)/$(ZIPROOT
)
2268 $(QUIET
)$(RM
) -f
$(ZIPPATH
)/$(ZIPNAME
)
2269 $(QUIET
)$(LN_SYMLINK
) $(PATH_ROOT
) $(ZIPPATH
)/$(ZIPROOT
)
2270 $(QUIET
)(cd
$(ZIPPATH
); 7z a \
2271 -l
-tzip
-mmt
=on
-mx
=7 -p
$(PASSWORD
) \
2273 -i
!$(ZIPROOT
)/Config.kmk \
2274 -i
!$(ZIPROOT
)/Doxyfile.Core \
2275 -i
!$(ZIPROOT
)/Makefile.kmk \
2276 -i
!$(ZIPROOT
)/configure \
2277 -i
!$(ZIPROOT
)/configure.vbs \
2279 -i
!$(ZIPROOT
)/include \
2280 -i
!$(ZIPROOT
)/kBuild \
2282 -i
!$(ZIPROOT
)/tools
/env.sh \
2283 -i
!$(ZIPROOT
)/tools
/linux.x86
/bin
/* \
2284 -i
!$(ZIPROOT
)/tools
/linux.amd64
/bin
/* \
2285 -x
!$(ZIPROOT
)/doc
/Devices \
2286 -x
!$(ZIPROOT
)/doc
/\
*pdf \
2287 -x
!$(ZIPROOT
)/doc
/VMM \
2288 -x
!$(ZIPROOT
)/doc
/licenses_old \
2289 -x
!$(ZIPROOT
)/doc
/manual
/de_DE \
2290 -x
!$(ZIPROOT
)/doc
/manual
/fr_FR \
2291 -x
!$(ZIPROOT
)/src
/tests \
2292 -x
!$(ZIPROOT
)/src
/VBox
/Artwork
/2008-\
* \
2293 -x
!$(ZIPROOT
)/src
/VBox
/Installer
/AMI \
2294 -x
!$(ZIPROOT
)/src
/VBox
/Installer
/Avanquest \
2295 -x
!$(ZIPROOT
)/src
/VBox
/Installer
/Encore \
2296 -x
!$(ZIPROOT
)/src
/VBox
/Installer
/linux
/debian \
2297 -x
!$(ZIPROOT
)/src
/VBox
/Installer
/linux
/rpm \
2298 $(ZIPPATH
)/$(ZIPNAME
))
2299 $(QUIET
)$(RM
) $(ZIPPATH
)/$(ZIPROOT
)
2303 # Generate VirtualBox-x.x.x.tar.bz2 (OSE) snapshot archive
2309 $(QUIET
)$(RM
) -Rf
$(wildcard $(PATH_OUT
)/vbox-ose-snap-
*) $(wildcard $(PATH_OUT
)/VirtualBox-
*.
tar.bz2
)
2310 $(call MSG_L1
,Making OSE snapshot at
$(PATH_OUT
)/vbox-ose-snap-
$(VBOX_VERSION_STRING
))
2311 $(KBUILD_DEVTOOLS
)/bin
/ose-snapshot.sh
$(PATH_OUT
)/vbox-ose-snap-
$(VBOX_VERSION_STRING
)
2312 $(call MSG_L1
,Creating OSE tarball
$(PATH_OUT
)/VirtualBox-
$(VBOX_VERSION_STRING
)-r
$(VBOX_SVN_REV
).
tar.bz2
)
2313 $(REDIRECT
) -C
$(PATH_OUT
)/vbox-ose-snap-
$(VBOX_VERSION_STRING
) -- \
2314 $(KBUILD_DEVTOOLS
)/bin
/ose-tarball.sh
$(PATH_OUT
)/VirtualBox-
$(VBOX_VERSION_STRING
)-r
$(VBOX_SVN_REV
).
tar.bz2
2316 $(QUIET
)$(RM
) $(wildcard $(PATH_OUT
)/VirtualBox-
*.
tar.bz2
)
2317 $(call MSG_L1
,Creating OSE tarball
$(PATH_OUT
)/VirtualBox-
$(VBOX_VERSION_STRING
)-r
$(VBOX_SVN_REV
).
tar.bz2
)
2318 $(REDIRECT
) -C
$(PATH_ROOT
) -- \
2319 $(KBUILD_DEVTOOLS
)/bin
/ose-tarball.sh
$(PATH_OUT
)/VirtualBox-
$(VBOX_VERSION_STRING
)-r
$(VBOX_SVN_REV
).
tar.bz2
2324 # Generate ALL the rules.
2326 include $(FILE_KBUILD_SUB_FOOTER
)
2330 # Generate x86.mac and err.mac.
2333 $(SED
) -f
include/VBox
/err.sed
--output
include/VBox
/err.mac
include/VBox
/err.h
2334 $(APPEND
) include/VBox
/err.mac
'%include "iprt/err.mac"'
2335 $(SED
) -f
include/VBox
/err.sed
--output
include/iprt
/err.mac
include/iprt
/err.h
2336 $(SED
) -f
include/VBox
/various.sed
--output
include/iprt
/x86.mac
include/iprt
/x86.h
2337 $(SED
) -f
include/VBox
/various.sed
--output
include/iprt
/formats
/dwarf.mac
include/iprt
/formats
/dwarf.h
2338 $(APPEND
) include/iprt
/x86.mac
'%include "iprt/x86extra.mac"'
2339 $(SED
) -f
include/VBox
/various.sed
--output
include/VBox
/apic.mac
include/VBox
/apic.h
2340 $(SED
) -f
include/VBox
/various.sed
--output
include/VBox
/bios.mac
include/VBox
/bios.h
2341 $(SED
) -f
include/VBox
/various.sed
--output
include/VBox
/param.mac
include/VBox
/param.h
2342 $(SED
) -f
include/VBox
/various.sed
--output
include/VBox
/VMMDevTesting.mac
include/VBox
/VMMDevTesting.h
2343 $(SED
) -f
include/VBox
/various.sed
--output
include/VBox
/vmm
/cpuidcall.mac
include/VBox
/vmm
/cpuidcall.h
2350 $(ECHO
) This is now done by gen-slickedit-workspace.sh
/cmd.
2355 # Add fetching of the tools to the 'up[date][2]' targets.
2357 up update up2 update2
::
2359 +$(MAKE
) -C tools fetch
2361 $(MAKE
) -C tools
-f Makefile-ose.kmk fetch
2367 # Build the essentials to run a VM. Incomplete. Use with care!
2379 $(if-expr defined
(VBOX_WITH_RAW_MODE
),VMMRC VBoxDDRC VBoxDD2RC
,) \
2380 $(if-expr defined
(VBOX_WITH_MIDL_PROXY_STUB
) && "$(KBUILD_TARGET)" == "win",VBoxProxyStub
,) \
2381 $(if-expr defined
(VBOX_WITH_SDS
),VBoxSDS
,) \
2382 $(if-expr defined
(VBOX_WITH_QTGUI
),VirtualBox
,)
2386 # Runs the analysis with parfait
2388 # @todo A lot of stuff doesn't compile with parfait under
2389 # Windows yet due to insufficient MSVC emulation.
2390 # Thatswhy the build is just ignoring errors and we let
2391 # parfait work on whats there, even if incomplete.
2392 # See @bugref{3409} for updates.
2395 ifdef VBOX_WITH_PARFAIT
2396 ifeq ($(KBUILD_TARGET
),win
)
2397 - $(REDIRECT
) -E
"PARFAIT_DUMP_PATH=$(PATH_OUT)" -- $(TIME
) -- $(KMK
) all -k
2399 + $(REDIRECT
) -E
"PARFAIT_DUMP_PATH=$(PATH_OUT)" -- $(TIME
) -- $(KMK
) all
2401 - $(REDIRECT
) -E
"PARFAIT_DUMP_PATH=$(PATH_OUT)" -- $(TIME
) -- $(VBOX_PARFAIT
) \
2402 $(if-expr defined
(VBOX_PARFAIT_SERVER
),-s
$(VBOX_PARFAIT_SERVER
),) \
2403 $(VBOX_PARFAIT_OPTS
) \
2404 $(if-expr defined
(VBOX_PARFAIT_SERVER_BASELINE
),-b
$(VBOX_PARFAIT_SERVER_BASELINE
),-b
$(PATH_ROOT
)/tools
/parfait-vbox-baseline.conf
) \
2405 -j
$(if-expr
$(KMK_OPTS_JOBS
) > 0, $(KMK_OPTS_JOBS
), 1) \
2406 -o
$(PATH_OUT
)/report.txt \
2407 -g
$(PATH_OUT
)/html \
2408 -c
$(PATH_ROOT
)/tools
/parfait-vbox.conf \
2409 --exclude-from
=$(PATH_ROOT
)/tools
/parfait-vbox-exclude.conf \
2410 --mrr-include-flagged
=all --mrr-exclude-flagged
=false
,wontfix \
2412 -r
$(VBOX_SVN_REV
) \
2415 $(ECHO
) This target requires VBOX_WITH_PARFAIT to be set.