source: trunk/README.DEV @ 424

Last change on this file since 424 was 424, checked in by dmik, 12 years ago

kmk: Added the 'packing' target to automatically generate the WPI and ZIP archives.

File size: 4.1 KB
Line 
1This file contains instructions on building Lucide.
2
3
4
5REQUIREMENTS
6
7In order to build Lucide, you will need the following tools:
8
9  - kBuild version 0.1.5 (r2206) or later. Get it with the following command:
10
11      svn co http://svn.netlabs.org/repos/kbuild/trunk/kBuild -r 2206
12
13  - GCC compiler version 3.3.5 or 4.4.2 for OS/2 and the patched OpenWatcom
14    linker. The GCC compiler must be set up to use the OpenWatcom linker for
15    linking.
16
17    If you do not have a working GCC environment with the above requirements, it
18    is recommended to download a ready-to-use GCC 4.2.2 distribution from here:
19
20      ftp://ftp.netlabs.org/pub/qt4/tools/gcc-4_4_2-complete-20091205.zip
21
22    Follow the installation instructions contained in the README file inside
23    this ZIP archive to set up the GCC environment.
24
25  - SOM SDK 2.x. The one that is part of the OS/2 Tooklit version 4.5 is known
26    to work and recommended. Note that installing the Toolkit is not required
27    (though it will also work) -- you may simply extract the "som" subdirectory
28    (with all its contents) out of the Toolkit and place it to some directory.
29    You don't need to put any statements in CONFIG.SYS in this case.
30
31  - RC.EXE version 4 or 5 which should be located in a directory listed in PATH.
32
33  - LxLite 1.3.3 or above should also be located in PATH, otherwise packing the
34    resulting EXEs and DLLs will be disabled. You can take LxLite here:
35
36      http://www.os2site.com/sw/util/archiver/lxlt133.zip
37
38
39
40SETTING UP THE ENVIRONMENT
41
42Copy "LocalEnv.cmd.tpl" to "LocalEnv.cmd" and adjust the copy to match your
43environment. Each option in "LocalEnv.cmd.tpl" has a comment describing what it
44does.
45
46You may also want to adjust the configuration of the Lucide build according to
47your needs. To do so, copy "LocalConfig.kmk.tpl" to "LocalConfig.kmk" and adjust
48the copy to match your requirements. Each option in "LocalConfig.kmk.tpl" has a
49comment descriping what it does.
50
51
52
53BUILDING THE PRODUCT
54
55Now, start "env.cmd" to setup the environment and type "kmk" in the root
56directory of the Lucide source tree to start kBuild and build the release
57version of Lucide and all plugins.
58
59If you are a developer, you may prefer to use the "se.cmd" script instead of
60starting "env.cmd" in each new shell. This script will allow you to run "kmk"
61in the correct environment from any directory inside the Lucide source tree by
62simply typing "se kmk" in that directory. This is especially handy if you use
63e.g. File Commander as your development IDE. The "se.cmd" script may be taken
64at:
65
66  ftp://ftp.netlabs.org/pub/qt4/tools/se10.zip
67
68
69
70GENERATING DISTRIBUTION ARCHIVES
71
72In order to generate WPI and ZIP distribution archives in the output directory,
73issue the following command (prefixed with "se" if you use it):
74
75  kmk packing
76
77Note that this command will perform a complete cleanup before packing, to make
78sure everything is rebuilt from scratch.
79
80
81
82USEFUL KBUILD TARGETS
83
84The following kmk targets may be of interest:
85
86  - clean           Cleans up the build by deleting all generated output.
87  - uninstall       Deletes all installed files.
88  - packing         Creates distribution archives in the output directory
89                    (see GENERATING DISTRIBUTION ARCHIVES above).
90
91
92
93USEFUL KBUILD VARIABLES
94
95These are the frequently used variables that change the Lucide build or
96behavior. You may set them in the OS/2 environment or put to your
97"LocalConfig.kmk" or pass to "kmk" as command line arguments in the form of
98"VARIABLE=VALUE".
99
100  * BUILD_TYPE
101
102    Build type. May be set to "release" (default) or "debug".
103
104    Note that you may also pass "debug" or "release" as the first argument to
105    the "env.cmd" script to set the build type to "debug".
106
107    Hint: If you use "se.cmd", you may pass arguments to "env.cmd" and start
108    "kmk" in one step, like that: "se @(debug) kmk".
109
110  * KBUILD_VERBOSE
111
112    Level of kBuild verbosity, 1 to 3 (default is nothing which means almost
113    quiet). The highest level will make kBuild print every command it executes
114    which is useful when something does not work like you want.
115
Note: See TracBrowser for help on using the repository browser.