VirtualBox

source: vbox/trunk/tools/bin/include-workspace-projects.sh@ 95391

Last change on this file since 95391 was 95313, checked in by vboxsync, 3 years ago

tools/bin: Workspace generation: Factored out the project list into a separate include file, so that the generators (gen-slickedit-workspace.sh + gen-vscode-workspace.sh) use the same base. Avoids code duplication + missing newly added stuff.

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Author Date Id Revision
File size: 16.6 KB
Line 
1# $Id: include-workspace-projects.sh 95313 2022-06-20 17:18:18Z vboxsync $
2## @file
3# Include file for generating the workspace projects, called by the gen-XXX-workspace.sh generators.
4#
5
6#
7# Copyright (C) 2022 Oracle Corporation
8#
9# This file is part of VirtualBox Open Source Edition (OSE), as
10# available from http://www.virtualbox.org. This file is free software;
11# you can redistribute it and/or modify it under the terms of the GNU
12# General Public License (GPL) as published by the Free Software
13# Foundation, in version 2 as it comes in the "COPYING" file of the
14# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16#
17
18#
19# Generate the projects and workspace.
20#
21# Note! The configs aren't optimal yet, lots of adjustment wrt headers left to be done.
22#
23
24# src/VBox/Runtime
25my_generate_project "IPRT" "src/VBox/Runtime" --begin-incs "include" "src/VBox/Runtime/include" --end-includes "include/iprt" "src/VBox/Runtime"
26
27# src/VBox/VMM
28my_generate_project "VMM" "src/VBox/VMM" --begin-incs "include" "src/VBox/VMM" --end-includes "src/VBox/VMM" \
29 "include/VBox/vmm/cfgm.h" \
30 "include/VBox/vmm/cpum.*" \
31 "include/VBox/vmm/dbgf.h" \
32 "include/VBox/vmm/em.h" \
33 "include/VBox/vmm/gim.h" \
34 "include/VBox/vmm/apic.h" \
35 "include/VBox/vmm/gmm.*" \
36 "include/VBox/vmm/gvm.*" \
37 "include/VBox/vmm/hm*.*" \
38 "include/VBox/vmm/iom.h" \
39 "include/VBox/vmm/mm.h" \
40 "include/VBox/vmm/patm.*" \
41 "include/VBox/vmm/pdm*.h" \
42 "include/VBox/vmm/pgm.*" \
43 "include/VBox/vmm/selm.*" \
44 "include/VBox/vmm/ssm.h" \
45 "include/VBox/vmm/stam.*" \
46 "include/VBox/vmm/tm.h" \
47 "include/VBox/vmm/trpm.*" \
48 "include/VBox/vmm/vm.*" \
49 "include/VBox/vmm/vmm.*"
50
51# src/VBox/Additions
52my_generate_project "Add-darwin" "src/VBox/Additions/darwin" --begin-incs "include" "src/VBox/Additions/darwin" --end-includes "src/VBox/Additions/darwin"
53my_generate_project "Add-freebsd" "src/VBox/Additions/freebsd" --begin-incs "include" "src/VBox/Additions/freebsd" --end-includes "src/VBox/Additions/freebsd"
54my_generate_project "Add-haiku" "src/VBox/Additions/haiku" --begin-incs "include" "src/VBox/Additions/haiku" --end-includes "src/VBox/Additions/haiku"
55my_generate_project "Add-linux" "src/VBox/Additions/linux" --begin-incs "include" "src/VBox/Additions/linux" --end-includes "src/VBox/Additions/linux"
56my_generate_project "Add-os2" "src/VBox/Additions/os2" --begin-incs "include" "src/VBox/Additions/os2" --end-includes "src/VBox/Additions/os2"
57my_generate_project "Add-solaris" "src/VBox/Additions/solaris" --begin-incs "include" "src/VBox/Additions/solaris" --end-includes "src/VBox/Additions/solaris"
58my_generate_project "Add-win" "src/VBox/Additions/WINNT" --begin-incs "include" "src/VBox/Additions/WINNT" --end-includes "src/VBox/Additions/WINNT"
59if test -z "$MY_OPT_MINIMAL"; then
60 my_generate_project "Add-x11" "src/VBox/Additions/x11" --begin-incs "include" "src/VBox/Additions/x11" --end-includes "src/VBox/Additions/x11"
61fi
62my_generate_project "Add-Control" "src/VBox/Additions/common/VBoxControl" --begin-incs "include" "src/VBox/Additions/common/VBoxControl" --end-includes "src/VBox/Additions/common/VBoxControl"
63my_generate_project "Add-GuestDrv" "src/VBox/Additions/common/VBoxGuest" --begin-incs "include" "src/VBox/Additions/common/VBoxGuest" --end-includes "src/VBox/Additions/common/VBoxGuest" "include/VBox/VBoxGuest*.*"
64my_generate_project "Add-Lib" "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/*.*"
65my_generate_project "Add-Service" "src/VBox/Additions/common/VBoxService" --begin-incs "include" "src/VBox/Additions/common/VBoxService" --end-includes "src/VBox/Additions/common/VBoxService"
66my_generate_project "Add-VBoxVideo" "src/VBox/Additions/common/VBoxVideo" --begin-incs "include" "src/VBox/Additions/common/VBoxVideo" --end-includes "src/VBox/Additions/common/VBoxVideo"
67if test -z "$MY_OPT_MINIMAL"; then
68 my_generate_project "Add-pam" "src/VBox/Additions/common/pam" --begin-incs "include" "src/VBox/Additions/common/pam" --end-includes "src/VBox/Additions/common/pam"
69 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"
70 my_generate_project "Add-CredProv" "src/VBox/Additions/WINNT/VBoxCredProv" --begin-incs "include" "src/VBox/Additions/WINNT/VBoxCredProv" --end-includes "src/VBox/Additions/WINNT/VBoxCredProv"
71 my_generate_project "Add-GINA" "src/VBox/Additions/WINNT/VBoxGINA" --begin-incs "include" "src/VBox/Additions/WINNT/VBoxGINA" --end-includes "src/VBox/Additions/WINNT/VBoxGINA"
72fi
73
74# src/VBox/Debugger
75my_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"
76
77# src/VBox/Devices
78my_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"
79## @todo split this up.
80
81# src/VBox/Disassembler
82my_generate_project "DIS" "src/VBox/Disassembler" --begin-incs "include" "src/VBox/Disassembler" --end-includes "src/VBox/Disassembler" "include/VBox/dis*.h"
83
84# src/VBox/Frontends
85if test -z "$MY_OPT_MINIMAL"; then
86 my_generate_project "FE-VBoxAutostart" "src/VBox/Frontends/VBoxAutostart" --begin-incs "include" "src/VBox/Frontends/VBoxAutostart" --end-includes "src/VBox/Frontends/VBoxAutostart"
87 my_generate_project "FE-VBoxBugReport" "src/VBox/Frontends/VBoxBugReport" --begin-incs "include" "src/VBox/Frontends/VBoxBugReport" --end-includes "src/VBox/Frontends/VBoxBugReport"
88 my_generate_project "FE-VBoxBalloonCtrl" "src/VBox/Frontends/VBoxBalloonCtrl" --begin-incs "include" "src/VBox/Frontends/VBoxBalloonCtrl" --end-includes "src/VBox/Frontends/VBoxBalloonCtrl"
89fi
90my_generate_project "FE-VBoxManage" "src/VBox/Frontends/VBoxManage" --begin-incs "include" "src/VBox/Frontends/VBoxManage" --end-includes "src/VBox/Frontends/VBoxManage"
91my_generate_project "FE-VBoxHeadless" "src/VBox/Frontends/VBoxHeadless" --begin-incs "include" "src/VBox/Frontends/VBoxHeadless" --end-includes "src/VBox/Frontends/VBoxHeadless"
92my_generate_project "FE-VBoxSDL" "src/VBox/Frontends/VBoxSDL" --begin-incs "include" "src/VBox/Frontends/VBoxSDL" --end-includes "src/VBox/Frontends/VBoxSDL"
93my_generate_project "FE-VBoxShell" "src/VBox/Frontends/VBoxShell" --begin-incs "include" "src/VBox/Frontends/VBoxShell" --end-includes "src/VBox/Frontends/VBoxShell"
94# noise - my_generate_project "FE-VBoxBFE" "src/VBox/Frontends/VBoxBFE" --begin-incs "include" "src/VBox/Frontends/VBoxBFE" --end-includes "src/VBox/Frontends/VBoxBFE"
95FE_VBOX_WRAPPERS=""
96for d in ${MY_OUT_DIRS};
97do
98 if test -d "${MY_ROOT_DIR}/${d}/obj/VirtualBox/include"; then
99 FE_VBOX_WRAPPERS="${d}/obj/VirtualBox/include"
100 break
101 fi
102done
103if test -n "${FE_VBOX_WRAPPERS}"; then
104 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"
105else
106 my_generate_project "FE-VirtualBox" "src/VBox/Frontends/VirtualBox" --begin-incs "include" --end-includes "src/VBox/Frontends/VirtualBox"
107fi
108
109# src/VBox/GuestHost
110my_generate_project "HGSMI-GH" "src/VBox/GuestHost/HGSMI" --begin-incs "include" --end-includes "src/VBox/GuestHost/HGSMI"
111if test -z "$MY_OPT_MINIMAL"; then
112 my_generate_project "DnD-GH" "src/VBox/GuestHost/DragAndDrop" --begin-incs "include" --end-includes "src/VBox/GuestHost/DragAndDrop"
113fi
114my_generate_project "ShClip-GH" "src/VBox/GuestHost/SharedClipboard" --begin-incs "include" --end-includes "src/VBox/GuestHost/SharedClipboard"
115
116# src/VBox/HostDrivers
117my_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"
118my_generate_project "VBoxNetAdp" "src/VBox/HostDrivers/VBoxNetAdp" --begin-incs "include" "src/VBox/HostDrivers/VBoxNetAdp" --end-includes "src/VBox/HostDrivers/VBoxNetAdp" "include/VBox/intnet.h"
119my_generate_project "VBoxNetFlt" "src/VBox/HostDrivers/VBoxNetFlt" --begin-incs "include" "src/VBox/HostDrivers/VBoxNetFlt" --end-includes "src/VBox/HostDrivers/VBoxNetFlt" "include/VBox/intnet.h"
120my_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"
121my_generate_project "AdpCtl" "src/VBox/HostDrivers/adpctl" --begin-incs "include" --end-includes "src/VBox/HostDrivers/adpctl"
122
123# src/VBox/HostServices
124my_generate_project "GuestCntl" "src/VBox/HostServices/GuestControl" --begin-incs "include" "src/VBox/HostServices/GuestControl" --end-includes "src/VBox/HostServices/GuestControl"
125my_generate_project "DragAndDrop" "src/VBox/HostServices/DragAndDrop" --begin-incs "include" "src/VBox/HostServices/DragAndDrop" --end-includes "src/VBox/HostServices/DragAndDrop"
126my_generate_project "GuestProps" "src/VBox/HostServices/GuestProperties" --begin-incs "include" "src/VBox/HostServices/GuestProperties" --end-includes "src/VBox/HostServices/GuestProperties"
127my_generate_project "ShClip-HS" "src/VBox/HostServices/SharedClipboard" --begin-incs "include" "src/VBox/HostServices/SharedClipboard" --end-includes "src/VBox/HostServices/SharedClipboard"
128my_generate_project "SharedFolders" "src/VBox/HostServices/SharedFolders" --begin-incs "include" "src/VBox/HostServices/SharedFolders" --end-includes "src/VBox/HostServices/SharedFolders" "include/VBox/shflsvc.h"
129
130# src/VBox/ImageMounter
131my_generate_project "ImageMounter" "src/VBox/ImageMounter" --begin-incs "include" "src/VBox/ImageMounter" --end-includes "src/VBox/ImageMounter"
132
133# src/VBox/Installer
134my_generate_project "Installers" "src/VBox/Installer" --begin-incs "include" --end-includes "src/VBox/Installer"
135
136# src/VBox/Main
137my_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"
138## @todo seperate webservices and Main. pick the right headers. added generated headers.
139
140# src/VBox/Network
141my_generate_project "Net-DHCP" "src/VBox/NetworkServices/Dhcpd" --begin-incs "include" "src/VBox/NetworkServices/NetLib" --end-includes "src/VBox/NetworkServices/Dhcpd"
142my_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"
143my_generate_project "Net-NetLib" "src/VBox/NetworkServices/NetLib" --begin-incs "include" "src/VBox/NetworkServices/NetLib" --end-includes "src/VBox/NetworkServices/NetLib"
144
145# src/VBox/RDP
146my_generate_project "RDP-Client" "src/VBox/RDP/client-1.8.4" --begin-incs "include" "src/VBox/RDP/client-1.8.4" --end-includes "src/VBox/RDP/client-1.8.4"
147my_generate_project "RDP-Server" "src/VBox/RDP/server" --begin-incs "include" "src/VBox/RDP/server" --end-includes "src/VBox/RDP/server"
148my_generate_project "RDP-WebClient" "src/VBox/RDP/webclient" --begin-incs "include" "src/VBox/RDP/webclient" --end-includes "src/VBox/RDP/webclient"
149my_generate_project "RDP-Misc" "src/VBox/RDP" --begin-incs "include" --end-includes "src/VBox/RDP/auth" "src/VBox/RDP/tscpasswd" "src/VBox/RDP/x11server"
150
151# src/VBox/Storage
152my_generate_project "Storage" "src/VBox/Storage" --begin-incs "include" "src/VBox/Storage" --end-includes "src/VBox/Storage"
153
154# src/VBox/ValidationKit
155my_generate_project "ValidationKit" "src/VBox/ValidationKit" --begin-incs "include" --end-includes "src/VBox/ValidationKit"
156
157# src/VBox/ExtPacks
158my_generate_project "ExtPacks" "src/VBox/ExtPacks" --begin-incs "include" --end-includes "src/VBox/ExtPacks"
159
160# src/bldprogs
161my_generate_project "bldprogs" "src/bldprogs" --begin-incs "include" --end-includes "src/bldprogs"
162
163# A few things from src/lib
164lib=$(my_get_newest_ver src/libs/zlib)
165my_generate_project "zlib" "${lib}" --begin-incs "include" --end-includes "${lib}/*.c" "${lib}/*.h"
166lib=$(my_get_newest_ver src/libs/liblzf)
167my_generate_project "liblzf" "${lib}" --begin-incs "include" --end-includes "${lib}"
168lib=$(my_get_newest_ver src/libs/libpng)
169my_generate_project "libpng" "${lib}" --begin-incs "include" --end-includes "${lib}/*.c" "${lib}/*.h"
170lib=$(my_get_newest_ver src/libs/openssl)
171my_generate_project "openssl" "${lib}" --begin-incs "include" "${lib}/crypto" --end-includes "${lib}"
172lib=$(my_get_newest_ver src/libs/curl)
173my_generate_project "curl" "${lib}" --begin-incs "include" "${lib}/include" --end-includes "${lib}"
174lib=$(my_get_newest_ver src/libs/softfloat)
175my_generate_project "softfloat" "${lib}" --begin-incs "include" "${lib}/source/include" --end-includes "${lib}"
176
177# webtools
178my_generate_project "webtools" "webtools" --begin-incs "include" "webtools/tinderbox/server/Tinderbox3" --end-includes "webtools"
179
180# include/VBox
181my_generate_project "VBoxHeaders" "include" --begin-incs "include" --end-includes "include/VBox"
182
183# Misc
184my_generate_project "misc" "." --begin-incs "include" --end-includes \
185 "configure" \
186 "configure.vbs" \
187 "Config.kmk" \
188 "Makefile.kmk" \
189 "src/Makefile.kmk" \
190 "src/VBox/Makefile.kmk" \
191 "tools/env.sh" \
192 "tools/env.cmd" \
193 "tools/envSub.vbs" \
194 "tools/envSub.cmd" \
195 "tools/win/vbscript"
196
197
198# out/x.y/z/bin/sdk/bindings/xpcom
199XPCOM_INCS="src/libs/xpcom18a4"
200for d in \
201 "out/${KBUILD_TARGET}.${KBUILD_TARGET_ARCH}/${KBUILD_TYPE}/dist/sdk/bindings/xpcom" \
202 "out/${KBUILD_TARGET}.${KBUILD_TARGET_ARCH}/${KBUILD_TYPE}/bin/sdk/bindings/xpcom" \
203 "out/linux.amd64/debug/bin/sdk/bindings/xpcom" \
204 "out/linux.x86/debug/bin/sdk/bindings/xpcom" \
205 "out/darwin.amd64/debug/dist/sdk/bindings/xpcom" \
206 "out/darwin.x86/debug/bin/dist/bindings/xpcom" \
207 "out/haiku.amd64/debug/bin/sdk/bindings/xpcom" \
208 "out/haiku.x86/debug/bin/sdk/bindings/xpcom" \
209 "out/solaris.amd64/debug/bin/sdk/bindings/xpcom" \
210 "out/solaris.x86/debug/bin/sdk/bindings/xpcom";
211do
212 if test -d "${MY_ROOT_DIR}/${d}"; then
213 my_generate_project "SDK-xpcom" "${d}" --begin-incs "include" "${d}/include" --end-includes "${d}"
214 XPCOM_INCS="${d}/include"
215 break
216 fi
217done
218
219# lib/xpcom
220my_generate_project "xpcom" "src/libs/xpcom18a4" --begin-incs "include" "${XPCOM_INCS}" --end-includes "src/libs/xpcom18a4"
Note: See TracBrowser for help on using the repository browser.

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