VirtualBox

source: vbox/trunk/doc/kBuild-tricks.txt@ 64739

Last change on this file since 64739 was 47159, checked in by vboxsync, 11 years ago

Two kBuild tricks.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.6 KB
Line 
1
2kBuild / VBox Build Tricks
3==========================
4
5
6Introduction
7------------
8
9This document is written in reStructuredText (rst) which just happens to
10be used by Python, the primary language for this revamp. For more information
11on reStructuredText: http://docutils.sourceforge.net/rst.html
12
13
14Changing the output directory
15-----------------------------
16
17When switch between different VBox build settings it can be nice to have
18different output directories to avoid having to rebuild the whole source tree
19everything. One typical example is hardening, another is guest additions using
20crossbuild gcc w/ SDK. The latter is is simpler so that's the first example:
21
22.. code:: makefile
23
24 ifdef VBOX_WITH_COMPATIBLE_LINUX_GUEST_PACKAGE
25 PATH_OUT_BASE = $(PATH_ROOT)/add-out
26 endif
27
28The following example is the typical developer setup, i.e. disable hardening by
29default but respect command line overrides (kmk VBOX_WITH_HARDENING=1):
30
31.. code:: make
32
33 VBOX_WITH_HARDENING :=
34 ifeq ($(VBOX_WITH_HARDENING),)
35 VBOX_WITHOUT_HARDENING=1
36 else
37 PATH_OUT_BASE = $(PATH_ROOT)/hard-out
38 endif
39
40
41Share tools download directory between trunk and branches
42---------------------------------------------------------
43
44To avoid filling up your disk with unnecessary tool zip and tar.gz files, set
45the FETCHDIR variable in LocalConfig.kmk to point to a common directory for all
46VBox checkouts.
47
48.. code:: make
49
50 FETCHDIR = $(HOME)/Downloads/FetchDir
51
52
53-----
54
55.. [1] no such footnote
56
57
58-----
59
60:Status: $Id: kBuild-tricks.txt 47159 2013-07-15 12:48:05Z vboxsync $
61:Copyright: Copyright (C) 2006-2013 Oracle Corporation.
62
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