VirtualBox

source: vbox/trunk/tools/bin/common-gen-workspace.inc.sh

Last change on this file was 106321, checked in by vboxsync, 7 weeks ago

Windows installers: Big revamp for removing all DIFxApp-related / DIFxApi-related code and build dependencies for the host and guest installers. bugref:10762

This implements an own framework (VBoxWinDrvInst and VBoxWinDrvStore) for installing Windows drivers and querying / handling the Windows driver store,
along with testcases for the Windows guest and host installers.

  • Property svn:eol-style set to LF
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 25.3 KB
Line 
1#!/usr/bin/env kmk_ash
2# $Id: common-gen-workspace.inc.sh 106321 2024-10-15 13:06:30Z vboxsync $
3## @file
4# Script for generating a SlickEdit workspace.
5#
6
7#
8# Copyright (C) 2009-2024 Oracle and/or its affiliates.
9#
10# This file is part of VirtualBox base platform packages, as
11# available from https://www.virtualbox.org.
12#
13# This program is free software; you can redistribute it and/or
14# modify it under the terms of the GNU General Public License
15# as published by the Free Software Foundation, in version 3 of the
16# License.
17#
18# This program is distributed in the hope that it will be useful, but
19# WITHOUT ANY WARRANTY; without even the implied warranty of
20# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21# General Public License for more details.
22#
23# You should have received a copy of the GNU General Public License
24# along with this program; if not, see <https://www.gnu.org/licenses>.
25#
26# SPDX-License-Identifier: GPL-3.0-only
27#
28
29#
30# Some constants.
31#
32MY_CAT="kmk_cat"
33MY_CP="kmk_cp"
34MY_MKDIR="kmk_mkdir"
35MY_MV="kmk_mv"
36MY_SED="kmk_sed"
37MY_RM="kmk_rm"
38MY_SLEEP="kmk_sleep"
39MY_EXPR="kmk_expr"
40MY_SVN="svn"
41
42#MY_SORT="kmk_cat"
43MY_SORT="sort"
44
45
46#
47# Globals.
48#
49MY_OUT_DIRS="\
50out/${KBUILD_TARGET}.${KBUILD_TARGET_ARCH}/${KBUILD_TYPE} \
51out/${KBUILD_TARGET}.${KBUILD_TARGET_ARCH}/debug \
52out/${KBUILD_TARGET}.${KBUILD_TARGET_ARCH}/release \
53out/linux.amd64/debug \
54out/linux.x86/debug \
55out/win.amd64/debug \
56out/win.x86/debug \
57out/darwin.amd64/debug \
58out/darwin.x86/debug \
59out/haiku.amd64/debug \
60out/haiku.x86/debug \
61out/solaris.amd64/debug \
62out/solaris.x86/debug";
63
64
65#
66# Parameters w/ defaults.
67#
68MY_ROOT_DIR=".."
69
70
71##
72# Gets the absolute path to an existing directory.
73#
74# @param $1 The path.
75my_abs_dir()
76{
77 if test -n "${PWD}"; then
78 MY_ABS_DIR=`cd ${MY_ROOT_DIR}/${1} && echo ${PWD}`
79
80 else
81 # old cygwin shell has no PWD and need adjusting.
82 MY_ABS_DIR=`cd ${MY_ROOT_DIR}/${1} && pwd | ${MY_SED} -e 's,^/cygdrive/\(.\)/,\1:/,'`
83 fi
84 if test -z "${MY_ABS_DIR}"; then
85 MY_ABS_DIR="${1}"
86 fi
87}
88
89##
90# Gets the file name part of a path.
91#
92# @param $1 The path.
93my_get_name()
94{
95 SAVED_IFS=$IFS
96 IFS=":/ "
97 set $1
98 while test $# -gt 1 -a -n "${2}";
99 do
100 shift;
101 done
102
103 IFS=$SAVED_IFS
104 #echo "$1"
105 export MY_GET_NAME=$1
106}
107
108##
109# Gets the newest version of a library (like openssl).
110#
111# @param $1 The library base path relative to root.
112my_get_newest_ver()
113{
114 cd "${MY_ROOT_DIR}" > /dev/null
115 latest=
116 for ver in "$1"*;
117 do
118 if test -z "${latest}" || "${MY_EXPR}" "${ver}" ">" "${latest}" > /dev/null; then
119 latest="${ver}"
120 fi
121 done
122 if test -z "${latest}"; then
123 echo "error: could not find any version of: $1" >&2;
124 exit 1;
125 fi
126 echo "${latest}"
127 return 0;
128}
129
130
131##
132# Generate file entry for the specified file if it was found to be of interest.
133#
134# @param $1 The output file name base.
135# @param $2 The file name.
136# @param $3 Optional folder override.
137my_file()
138{
139 # sort and filter by file type.
140 case "$2" in
141 # drop these.
142 *.kup|*~|*.pyc|*.exe|*.sys|*.dll|*.o|*.obj|*.lib|*.a|*.ko)
143 return 0
144 ;;
145
146 # by prefix or directory component.
147 tst*|*/testcase/*)
148 MY_FOLDER="$1-Testcases.lst"
149 ;;
150
151 # by extension.
152 *.c|*.cpp|*.m|*.mm|*.pl|*.py|*.as|*.c.h|*.cpp.h|*.java)
153 MY_FOLDER="$1-Sources.lst"
154 ;;
155
156 *.h|*.hpp|*.mm)
157 MY_FOLDER="$1-Headers.lst"
158 ;;
159
160 *.asm|*.s|*.S|*.inc|*.mac)
161 MY_FOLDER="$1-Assembly.lst"
162 ;;
163
164 *)
165 MY_FOLDER="$1-Others.lst"
166 ;;
167 esac
168 if test -n "$3";
169 then
170 MY_FOLDER="$1-$3.lst"
171 fi
172
173 ## @todo only files which are in subversion.
174# if ${MY_SVN} info "${2}" > /dev/null 2>&1; then
175 my_get_name "${2}"
176 echo ' <!-- sortkey: '"${MY_GET_NAME}"' --> <F N="'"${2}"'"/>' >> "${MY_FOLDER}"
177# fi
178}
179
180##
181# Generate file entry for the specified file if it was found to be of interest.
182#
183# @param $1 The output file name base.
184# @param $2 The wildcard spec.
185# @param $3 Optional folder override.
186my_wildcard()
187{
188 if test -n "$3"; then
189 MY_FOLDER="$1-$3.lst"
190 else
191 MY_FOLDER="$1-All.lst"
192 fi
193 EXCLUDES="*.log;*.kup;*~;*.bak;*.bak?;*.pyc;*.exe;*.sys;*.dll;*.o;*.obj;*.lib;*.a;*.ko;*.class;*.cvsignore;*.done;*.project;*.actionScriptProperties;*.scm-settings;*.svnpatch.rej;*.svn-base;.svn/*;*.gitignore;*.gitattributes;*.gitmodules;*.swagger-codegen-ignore;*.png;*.bmp;*.jpg;*.gif;*.jar;*.checksrc;*.clang-format;*.dir-locals.el;*.drirc;*.editorconfig;*.htaccess"
194 echo ' <F N="'"${2}"'/*" Recurse="1" Excludes="'"${EXCLUDES}"'"/>' >> "${MY_FOLDER}"
195}
196
197##
198# Generate file entries for the specified sub-directory tree.
199#
200# @param $1 The output filename.
201# @param $2 The sub-directory.
202# @param $3 Optional folder override.
203my_sub_tree()
204{
205 if test -n "$MY_DBG"; then echo "dbg: my_sub_tree: ${2}"; fi
206
207 # Skip .svn directories.
208 case "$2" in
209 */.svn|*/.svn)
210 return 0
211 ;;
212 esac
213
214 # Process the files in the directory.
215 for f in $2/*;
216 do
217 if test -d "${f}";
218 then
219 my_sub_tree "${1}" "${f}" "${3}"
220 else
221 my_file "${1}" "${f}" "${3}"
222 fi
223 done
224 return 0;
225}
226
227##
228# Generate the projects.
229#
230# This requires the main script to implement the my_generate_project() function.
231#
232# Note! The configs aren't optimal yet, lots of adjustment wrt headers left to be done.
233#
234my_generate_all_projects()
235{
236 # src/VBox/Runtime
237 my_generate_project "IPRT" "src/VBox/Runtime" --begin-incs "include" "src/VBox/Runtime/include" --end-includes "include/iprt" "src/VBox/Runtime"
238
239 # src/VBox/VMM
240 my_generate_project "VMM" "src/VBox/VMM" --begin-incs "include" "src/VBox/VMM" --end-includes "src/VBox/VMM" \
241 "include/VBox/vmm/cfgm.h" \
242 "include/VBox/vmm/cpum.*" \
243 "include/VBox/vmm/dbgf.h" \
244 "include/VBox/vmm/em.h" \
245 "include/VBox/vmm/gim.h" \
246 "include/VBox/vmm/apic.h" \
247 "include/VBox/vmm/gmm.*" \
248 "include/VBox/vmm/gvm.*" \
249 "include/VBox/vmm/hm*.*" \
250 "include/VBox/vmm/iom.h" \
251 "include/VBox/vmm/mm.h" \
252 "include/VBox/vmm/patm.*" \
253 "include/VBox/vmm/pdm*.h" \
254 "include/VBox/vmm/pgm.*" \
255 "include/VBox/vmm/selm.*" \
256 "include/VBox/vmm/ssm.h" \
257 "include/VBox/vmm/stam.*" \
258 "include/VBox/vmm/tm.h" \
259 "include/VBox/vmm/trpm.*" \
260 "include/VBox/vmm/vm.*" \
261 "include/VBox/vmm/vmm.*"
262
263 # src/VBox/Additions
264 my_generate_project "Add-darwin" "src/VBox/Additions/darwin" --begin-incs "include" "src/VBox/Additions/darwin" --end-includes "src/VBox/Additions/darwin"
265 my_generate_project "Add-freebsd" "src/VBox/Additions/freebsd" --begin-incs "include" "src/VBox/Additions/freebsd" --end-includes "src/VBox/Additions/freebsd"
266 my_generate_project "Add-haiku" "src/VBox/Additions/haiku" --begin-incs "include" "src/VBox/Additions/haiku" --end-includes "src/VBox/Additions/haiku"
267 my_generate_project "Add-linux" "src/VBox/Additions/linux" --begin-incs "include" "src/VBox/Additions/linux" --end-includes "src/VBox/Additions/linux"
268 my_generate_project "Add-os2" "src/VBox/Additions/os2" --begin-incs "include" "src/VBox/Additions/os2" --end-includes "src/VBox/Additions/os2"
269 my_generate_project "Add-solaris" "src/VBox/Additions/solaris" --begin-incs "include" "src/VBox/Additions/solaris" --end-includes "src/VBox/Additions/solaris"
270 if test -z "$MY_OPT_MINIMAL"; then
271 my_generate_project "Add-x11" "src/VBox/Additions/x11" --begin-incs "include" "src/VBox/Additions/x11" --end-includes "src/VBox/Additions/x11"
272 fi
273 my_generate_project "Add-Control" "src/VBox/Additions/common/VBoxControl" --begin-incs "include" "src/VBox/Additions/common/VBoxControl" --end-includes "src/VBox/Additions/common/VBoxControl"
274 my_generate_project "Add-VBoxGuest" "src/VBox/Additions/common/VBoxGuest" --begin-incs "include" "src/VBox/Additions/common/VBoxGuest" --end-includes "src/VBox/Additions/common/VBoxGuest" "include/VBox/VBoxGuest*.*"
275 my_generate_project "Add-Vbgl" "src/VBox/Additions/common/VBoxGuest/lib" --begin-incs "include" "src/VBox/Additions/common/VBoxGuest/lib" --end-includes "src/VBox/Additions/common/VBoxGuest/lib" "include/VBox/VBoxGuest/lib/*.*"
276 my_generate_project "Add-VBoxService" "src/VBox/Additions/common/VBoxService" --begin-incs "include" "src/VBox/Additions/common/VBoxService" --end-includes "src/VBox/Additions/common/VBoxService"
277 my_generate_project "Add-VBoxVideo" "src/VBox/Additions/common/VBoxVideo" --begin-incs "include" "src/VBox/Additions/common/VBoxVideo" --end-includes "src/VBox/Additions/common/VBoxVideo"
278 my_generate_project "Add-nt-Tray" "src/VBox/Additions/WINNT/VBoxTray" --begin-incs "include" "src/VBox/Additions/WINNT/include" "src/VBox/Additions/WINNT/VBoxTray" --end-includes "src/VBox/Additions/WINNT/VBoxTray"
279 if test -z "$MY_OPT_MINIMAL"; then
280 my_generate_project "Add-cmn-pam" "src/VBox/Additions/common/pam" --begin-incs "include" "src/VBox/Additions/common/pam" --end-includes "src/VBox/Additions/common/pam"
281 my_generate_project "Add-cmn-test" "src/VBox/Additions/common/testcase" --begin-incs "include" "src/VBox/Additions/common/testcase" --end-includes "src/VBox/Additions/common/testcase"
282 mesa=$(my_get_newest_ver src/VBox/Additions/3D/mesa/mesa)
283 my_generate_project "Add-3D-Mesa" "${mesa}" --begin-incs "include" "${mesa}/include" --end-includes "${mesa}"
284 my_generate_project "Add-3D-win" "src/VBox/Additions/3D/win" --begin-incs "include" "src/VBox/Additions/3D/win/include" "${mesa}/include" --end-includes "src/VBox/Additions/3D/win"
285 my_generate_project "Add-nt-Graphics" "src/VBox/Additions/WINNT/Graphics" --begin-incs "include" "src/VBox/Additions/WINNT/Graphics/Video/common" "src/VBox/Additions/WINNT/include" "src/VBox/Additions/3D/win/include" "${mesa}/include" --end-includes "src/VBox/Additions/WINNT/Graphics"
286 my_generate_project "Add-nt-Installer" "src/VBox/Additions/WINNT/Installer" --begin-incs "include" "src/VBox/Additions/WINNT/include" --end-includes "src/VBox/Additions/WINNT/Installer"
287 my_generate_project "Add-nt-Mouse" "src/VBox/Additions/WINNT/Mouse" --begin-incs "include" "src/VBox/Additions/WINNT/include" --end-includes "src/VBox/Additions/WINNT/Mouse"
288 my_generate_project "Add-nt-SharedFolders" "src/VBox/Additions/WINNT/SharedFolders" --begin-incs "include" "src/VBox/Additions/WINNT/include" --end-includes "src/VBox/Additions/WINNT/SharedFolders"
289 my_generate_project "Add-nt-tools" "src/VBox/Additions/WINNT/tools" --begin-incs "include" "src/VBox/Additions/WINNT/include" --end-includes "src/VBox/Additions/WINNT/tools"
290 my_generate_project "Add-nt-CredProv" "src/VBox/Additions/WINNT/VBoxCredProv" --begin-incs "include" "src/VBox/Additions/WINNT/VBoxCredProv" --end-includes "src/VBox/Additions/WINNT/VBoxCredProv"
291 my_generate_project "Add-nt-GINA" "src/VBox/Additions/WINNT/VBoxGINA" --begin-incs "include" "src/VBox/Additions/WINNT/VBoxGINA" --end-includes "src/VBox/Additions/WINNT/VBoxGINA"
292 my_generate_project "Add-nt-Hook" "src/VBox/Additions/WINNT/VBoxHook" --begin-incs "include" "src/VBox/Additions/WINNT/include" --end-includes "src/VBox/Additions/WINNT/VBoxHook"
293 fi
294
295 # src/VBox/Debugger
296 my_generate_project "Debugger" "src/VBox/Debugger" --begin-incs "include" "src/VBox/Debugger" --end-includes "src/VBox/Debugger" "include/VBox/dbggui.h" "include/VBox/dbg.h"
297
298 # src/VBox/Devices
299 if test -z "$MY_OPT_MINIMAL"; then
300 my_generate_project "Devices" "src/VBox/Devices" --begin-incs "include" "src/VBox/Devices" --end-includes "src/VBox/Devices" "include/VBox/pci.h" "include/VBox/pdm*.h"
301 fi
302 ## @todo split this up.
303
304 # src/VBox/Disassembler
305 my_generate_project "DIS" "src/VBox/Disassembler" --begin-incs "include" "src/VBox/Disassembler" --end-includes "src/VBox/Disassembler" "include/VBox/dis*.h"
306
307 # src/VBox/Frontends
308 if test -z "$MY_OPT_MINIMAL"; then
309 my_generate_project "FE-VBoxAutostart" "src/VBox/Frontends/VBoxAutostart" --begin-incs "include" "src/VBox/Frontends/VBoxAutostart" --end-includes "src/VBox/Frontends/VBoxAutostart"
310 my_generate_project "FE-VBoxBugReport" "src/VBox/Frontends/VBoxBugReport" --begin-incs "include" "src/VBox/Frontends/VBoxBugReport" --end-includes "src/VBox/Frontends/VBoxBugReport"
311 my_generate_project "FE-VBoxBalloonCtrl" "src/VBox/Frontends/VBoxBalloonCtrl" --begin-incs "include" "src/VBox/Frontends/VBoxBalloonCtrl" --end-includes "src/VBox/Frontends/VBoxBalloonCtrl"
312 fi
313 my_generate_project "FE-VBoxManage" "src/VBox/Frontends/VBoxManage" --begin-incs "include" "src/VBox/Frontends/VBoxManage" --end-includes "src/VBox/Frontends/VBoxManage"
314 my_generate_project "FE-VBoxHeadless" "src/VBox/Frontends/VBoxHeadless" --begin-incs "include" "src/VBox/Frontends/VBoxHeadless" --end-includes "src/VBox/Frontends/VBoxHeadless"
315 my_generate_project "FE-VBoxSDL" "src/VBox/Frontends/VBoxSDL" --begin-incs "include" "src/VBox/Frontends/VBoxSDL" --end-includes "src/VBox/Frontends/VBoxSDL"
316 if test -z "$MY_OPT_MINIMAL"; then
317 my_generate_project "FE-VBoxShell" "src/VBox/Frontends/VBoxShell" --begin-incs "include" "src/VBox/Frontends/VBoxShell" --end-includes "src/VBox/Frontends/VBoxShell"
318 my_generate_project "FE-VBoxBFE" "src/VBox/Frontends/VBoxBFE" --begin-incs "include" "src/VBox/Frontends/VBoxBFE" --end-includes "src/VBox/Frontends/VBoxBFE"
319 fi
320 FE_VBOX_WRAPPERS=""
321 for d in ${MY_OUT_DIRS};
322 do
323 if test -d "${MY_ROOT_DIR}/${d}/obj/VirtualBox/include"; then
324 FE_VBOX_WRAPPERS="${d}/obj/VirtualBox/include"
325 break
326 fi
327 done
328 if test -n "${FE_VBOX_WRAPPERS}"; then
329 my_generate_project "FE-VirtualBox" "src/VBox/Frontends/VirtualBox" --begin-incs "include" "${FE_VBOX_WRAPPERS}" --end-includes "src/VBox/Frontends/VirtualBox" "${FE_VBOX_WRAPPERS}/COMWrappers.cpp" "${FE_VBOX_WRAPPERS}/COMWrappers.h"
330 else
331 my_generate_project "FE-VirtualBox" "src/VBox/Frontends/VirtualBox" --begin-incs "include" --end-includes "src/VBox/Frontends/VirtualBox"
332 fi
333
334 # src/VBox/GuestHost
335 my_generate_project "HGSMI-GH" "src/VBox/GuestHost/HGSMI" --begin-incs "include" --end-includes "src/VBox/GuestHost/HGSMI"
336 if test -z "$MY_OPT_MINIMAL"; then
337 my_generate_project "DragAndDrop-GH" "src/VBox/GuestHost/DragAndDrop" --begin-incs "include" --end-includes "src/VBox/GuestHost/DragAndDrop"
338 fi
339 my_generate_project "ShClip-GH" "src/VBox/GuestHost/SharedClipboard" --begin-incs "include" --end-includes "src/VBox/GuestHost/SharedClipboard"
340 my_generate_project "Install-GH" "src/VBox/GuestHost/installation" --begin-incs "include" --end-includes "src/VBox/GuestHost/installation"
341
342 # src/VBox/HostDrivers
343 my_generate_project "SUP" "src/VBox/HostDrivers/Support" --begin-incs "include" "src/VBox/HostDrivers/Support" --end-includes "src/VBox/HostDrivers/Support" "include/VBox/sup.h" "include/VBox/sup.mac"
344 my_generate_project "VBoxNetAdp" "src/VBox/HostDrivers/VBoxNetAdp" --begin-incs "include" "src/VBox/HostDrivers/VBoxNetAdp" --end-includes "src/VBox/HostDrivers/VBoxNetAdp" "include/VBox/intnet.h"
345 my_generate_project "VBoxNetFlt" "src/VBox/HostDrivers/VBoxNetFlt" --begin-incs "include" "src/VBox/HostDrivers/VBoxNetFlt" --end-includes "src/VBox/HostDrivers/VBoxNetFlt" "src/VBox/HostDrivers/win" "src/VBox/HostDrivers/darwin" "src/VBox/HostDrivers/linux" "src/VBox/HostDrivers/freebsd" "include/VBox/intnet.h"
346 my_generate_project "VBoxUSB" "src/VBox/HostDrivers/VBoxUSB" --begin-incs "include" "src/VBox/HostDrivers/VBoxUSB" --end-includes "src/VBox/HostDrivers/VBoxUSB" "include/VBox/usblib*.h" "include/VBox/usbfilter.h"
347 my_generate_project "AdpCtl" "src/VBox/HostDrivers/adpctl" --begin-incs "include" --end-includes "src/VBox/HostDrivers/adpctl"
348
349 # src/VBox/HostServices
350 my_generate_project "HS-auth" "src/VBox/HostServices/auth" --begin-incs "include" "src/VBox/HostServices/auth" --end-includes "src/VBox/HostServices/auth"
351 my_generate_project "HS-common" "src/VBox/HostServices/common" --begin-incs "include" "src/VBox/HostServices/common" --end-includes "src/VBox/HostServices/common"
352 my_generate_project "HS-testcase" "src/VBox/HostServices/testcase" --begin-incs "include" "src/VBox/HostServices/testcase" --end-includes "src/VBox/HostServices/testcase"
353 my_generate_project "GstCtl-HS" "src/VBox/HostServices/GuestControl" --begin-incs "include" "src/VBox/HostServices/GuestControl" --end-includes "src/VBox/HostServices/GuestControl"
354 if test -z "$MY_OPT_MINIMAL"; then
355 my_generate_project "DragAndDrop-HS" "src/VBox/HostServices/DragAndDrop" --begin-incs "include" "src/VBox/HostServices/DragAndDrop" --end-includes "src/VBox/HostServices/DragAndDrop"
356 fi
357 my_generate_project "GuestProps-HS" "src/VBox/HostServices/GuestProperties" --begin-incs "include" "src/VBox/HostServices/GuestProperties" --end-includes "src/VBox/HostServices/GuestProperties"
358 my_generate_project "ShClip-HS" "src/VBox/HostServices/SharedClipboard" --begin-incs "include" "src/VBox/HostServices/SharedClipboard" --end-includes "src/VBox/HostServices/SharedClipboard"
359 my_generate_project "ShFolders-HS" "src/VBox/HostServices/SharedFolders" --begin-incs "include" "src/VBox/HostServices/SharedFolders" --end-includes "src/VBox/HostServices/SharedFolders" "include/VBox/shflsvc.h"
360
361 # src/VBox/ImageMounter
362 if test -z "$MY_OPT_MINIMAL"; then
363 my_generate_project "ImageMounter" "src/VBox/ImageMounter" --begin-incs "include" "src/VBox/ImageMounter" --end-includes "src/VBox/ImageMounter"
364 fi
365
366 # src/VBox/Installer
367 if test -z "$MY_OPT_MINIMAL"; then
368 my_generate_project "Installers" "src/VBox/Installer" --begin-incs "include" --end-includes "src/VBox/Installer"
369 fi
370
371 # src/VBox/Main
372 my_generate_project "Main" "src/VBox/Main" --begin-incs "include" "src/VBox/Main/include" --end-includes "src/VBox/Main" "include/VBox/com" "include/VBox/settings.h"
373 ## @todo seperate webservices and Main. pick the right headers. added generated headers.
374
375 # src/VBox/Network
376 my_generate_project "Net-DHCP" "src/VBox/NetworkServices/Dhcpd" --begin-incs "include" "src/VBox/NetworkServices/NetLib" --end-includes "src/VBox/NetworkServices/Dhcpd"
377 my_generate_project "Net-NAT" "src/VBox/NetworkServices/NAT" --begin-incs "include" "src/VBox/NetworkServices/NAT" --end-includes "src/VBox/NetworkServices/NAT" "src/VBox/Devices/Network/slirp"
378 my_generate_project "Net-NetLib" "src/VBox/NetworkServices/NetLib" --begin-incs "include" "src/VBox/NetworkServices/NetLib" --end-includes "src/VBox/NetworkServices/NetLib"
379
380 # src/VBox/RDP
381 if test -z "$MY_OPT_MINIMAL"; then
382 my_generate_project "RDP-Server" "src/VBox/RDP/server" --begin-incs "include" "src/VBox/RDP/server" --end-includes "src/VBox/RDP/server"
383 my_generate_project "RDP-WebClient" "src/VBox/RDP/webclient" --begin-incs "include" "src/VBox/RDP/webclient" --end-includes "src/VBox/RDP/webclient"
384 my_generate_project "RDP-Misc" "src/VBox/RDP" --begin-incs "include" --end-includes "src/VBox/RDP/auth" "src/VBox/RDP/tscpasswd" "src/VBox/RDP/x11server"
385 fi
386
387 # src/VBox/Storage
388 my_generate_project "Storage" "src/VBox/Storage" --begin-incs "include" "src/VBox/Storage" --end-includes "src/VBox/Storage"
389
390 # src/VBox/ValidationKit
391 if test -z "$MY_OPT_MINIMAL"; then
392 my_generate_project "ValidationKit" "src/VBox/ValidationKit" --begin-incs "include" --end-includes "src/VBox/ValidationKit"
393 fi
394
395 # src/VBox/ExtPacks
396 my_generate_project "ExtPacks" "src/VBox/ExtPacks" --begin-incs "include" --end-includes "src/VBox/ExtPacks"
397
398 # src/bldprogs
399 my_generate_project "bldprogs" "src/bldprogs" --begin-incs "include" --end-includes "src/bldprogs"
400
401 # A few things from src/lib
402 if test -z "$MY_OPT_MINIMAL"; then
403 lib=$(my_get_newest_ver src/libs/zlib)
404 my_generate_project "zlib" "${lib}" --begin-incs "include" --end-includes "${lib}/*.c" "${lib}/*.h"
405 lib=$(my_get_newest_ver src/libs/liblzf)
406 my_generate_project "liblzf" "${lib}" --begin-incs "include" --end-includes "${lib}"
407 lib=$(my_get_newest_ver src/libs/libpng)
408 my_generate_project "libpng" "${lib}" --begin-incs "include" --end-includes "${lib}/*.c" "${lib}/*.h"
409 lib=$(my_get_newest_ver src/libs/openssl)
410 my_generate_project "openssl" "${lib}" --begin-incs "include" "${lib}/crypto" --end-includes "${lib}"
411 lib=$(my_get_newest_ver src/libs/curl)
412 my_generate_project "curl" "${lib}" --begin-incs "include" "${lib}/include" --end-includes "${lib}"
413 lib=$(my_get_newest_ver src/libs/softfloat)
414 my_generate_project "softfloat" "${lib}" --begin-incs "include" "${lib}/source/include" --end-includes "${lib}"
415 lib=$(my_get_newest_ver src/libs/libvorbis)
416 my_generate_project "libvorbis" "${lib}" --begin-incs "include" "${lib}/include/vorbis" --end-includes "${lib}"
417 lib=$(my_get_newest_ver src/libs/libogg)
418 my_generate_project "libogg" "${lib}" --begin-incs "include" "${lib}/include/ogg" --end-includes "${lib}"
419 fi
420
421 # webtools
422 if test -z "$MY_OPT_MINIMAL"; then
423 my_generate_project "webtools" "webtools" --begin-incs "include" "webtools/tinderbox/server/Tinderbox3" --end-includes "webtools"
424 fi
425
426 # include/VBox
427 my_generate_project "VBoxHeaders" "include" --begin-incs "include" --end-includes "include/VBox"
428
429 # Misc
430 my_generate_project "misc" "." --begin-incs "include" --end-includes \
431 "configure" \
432 "configure.vbs" \
433 "Config.kmk" \
434 "Makefile.kmk" \
435 "src/Makefile.kmk" \
436 "src/VBox/Makefile.kmk" \
437 "tools/env.sh" \
438 "tools/env.cmd" \
439 "tools/envSub.vbs" \
440 "tools/envSub.cmd" \
441 "tools/win/vbscript"
442
443
444 # out/x.y/z/bin/sdk/bindings/xpcom
445 XPCOM_INCS="src/libs/xpcom18a4"
446 for d in \
447 "out/${KBUILD_TARGET}.${KBUILD_TARGET_ARCH}/${KBUILD_TYPE}/dist/sdk/bindings/xpcom" \
448 "out/${KBUILD_TARGET}.${KBUILD_TARGET_ARCH}/${KBUILD_TYPE}/bin/sdk/bindings/xpcom" \
449 "out/linux.amd64/debug/bin/sdk/bindings/xpcom" \
450 "out/linux.x86/debug/bin/sdk/bindings/xpcom" \
451 "out/darwin.amd64/debug/dist/sdk/bindings/xpcom" \
452 "out/darwin.x86/debug/bin/dist/bindings/xpcom" \
453 "out/haiku.amd64/debug/bin/sdk/bindings/xpcom" \
454 "out/haiku.x86/debug/bin/sdk/bindings/xpcom" \
455 "out/solaris.amd64/debug/bin/sdk/bindings/xpcom" \
456 "out/solaris.x86/debug/bin/sdk/bindings/xpcom";
457 do
458 if test -d "${MY_ROOT_DIR}/${d}"; then
459 my_generate_project "SDK-xpcom" "${d}" --begin-incs "include" "${d}/include" --end-includes "${d}"
460 XPCOM_INCS="${d}/include"
461 break
462 fi
463 done
464
465 # lib/xpcom
466 my_generate_project "xpcom" "src/libs/xpcom18a4" --begin-incs "include" "${XPCOM_INCS}" --end-includes "src/libs/xpcom18a4"
467}
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette