source: trunk/README.DEV @ 433

Last change on this file since 433 was 433, checked in by dmik, 11 years ago

Updated version to 1.32 beta.

File size: 4.9 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 in the root of the source tree (prefixed with "se"
74if you use it):
75
76  kmk packing
77
78Note that this command will perform a complete cleanup before packing, to make
79sure everything is rebuilt from scratch. For testing purposes, you may omit
80the cleanup pass by invoking the "kmk fastpacking" which will only generate
81the distribution archives from the existing build.
82
83IMPORTANT:
84
85    Do not forget to update VERSION and VERSIONDATE in Config.kmk and the
86    version path in warpin/lucide_wpi.wis before the release and increase it
87    immediately after the release (after tagging the SVN trunk with the release
88    tag) with assigning the beta state (see below).
89
90    The version assignment scheme is as follows:
91
92    * VERSION is set to "X.YZ beta" for the development phase and to "X.YZ"
93      for releases.
94
95    * The WarpIn version path is set to to X\Y\Z\0 for the development phase
96      and to X\Y\Z\1 for releases.
97
98
99
100USEFUL KBUILD TARGETS
101
102The following kmk targets may be of interest:
103
104  - clean           Cleans up the build by deleting all generated output.
105  - uninstall       Deletes all installed files.
106  - packing,        Creates distribution archives in the output directory
107    fastpacking     (see GENERATING DISTRIBUTION ARCHIVES above).
108
109
110
111USEFUL KBUILD VARIABLES
112
113These are the frequently used variables that change the Lucide build or
114behavior. You may set them in the OS/2 environment or put to your
115"LocalConfig.kmk" or pass to "kmk" as command line arguments in the form of
116"VARIABLE=VALUE".
117
118  * BUILD_TYPE
119
120    Build type. May be set to "release" (default) or "debug".
121
122    Note that you may also pass "debug" or "release" as the first argument to
123    the "env.cmd" script to set the build type to "debug".
124
125    Hint: If you use "se.cmd", you may pass arguments to "env.cmd" and start
126    "kmk" in one step, like that: "se @(debug) kmk".
127
128  * KBUILD_VERBOSE
129
130    Level of kBuild verbosity, 1 to 3 (default is nothing which means almost
131    quiet). The highest level will make kBuild print every command it executes
132    which is useful when something does not work like you want.
133
Note: See TracBrowser for help on using the repository browser.