1 | Copyright 2004, 2006 Vladimir Prus |
---|
2 | Distributed under the Boost Software License, Version 1.0. |
---|
3 | (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) |
---|
4 | |
---|
5 | Milestone 12 (in development) |
---|
6 | |
---|
7 | Changes in this release: |
---|
8 | |
---|
9 | - Support for autoconfiguration of toolset based on command-line |
---|
10 | toolset=xxxx or --toolset=xxxx options, and for default toolset |
---|
11 | configuration as a fallback. |
---|
12 | - Support for precompiled headers for gcc toolset, |
---|
13 | and improvements for msvc. |
---|
14 | - Mechanism for removing inherited requirements. |
---|
15 | - The 'make' rule support specifying usage-requirements. |
---|
16 | - New 'project.extension' rule for declaring standalone |
---|
17 | projects. |
---|
18 | - New 'conditional' convenience rule. |
---|
19 | - New 'glob-tree' rule. |
---|
20 | - The 'glob' rule accepts patterns to exclude. |
---|
21 | - Inline targets are now marked explicit automatically. |
---|
22 | - Toolsets can now implicitly add requirements to |
---|
23 | all targets. |
---|
24 | - New 'generate' rule. |
---|
25 | |
---|
26 | Documentation changes: |
---|
27 | |
---|
28 | - Installation instructions for Linux distributors. |
---|
29 | |
---|
30 | The following bugs were fixed: |
---|
31 | |
---|
32 | - The 'cflags' and 'linkflags' features not working for Darwin. |
---|
33 | - The intel toolset not working on Windows. |
---|
34 | - Fix library search options for CodeWarriour toolset. |
---|
35 | - The <install-source-root> could cause duplicate |
---|
36 | mkdir commands. |
---|
37 | - Numerious fixes in Boost autolink support |
---|
38 | - Numerious fixes in Boost.Python support. |
---|
39 | - Indirect properties not evaluates in usage requirements. |
---|
40 | |
---|
41 | Milestone 11 (Jule 20, 2006) |
---|
42 | |
---|
43 | Changes in this release: |
---|
44 | |
---|
45 | - New C++ compilers: IBM xlf, HP aCC, HP CXX, Intel fortran compiler. |
---|
46 | - New tools: Qt4 support, MS message compiler and IDL compiler. |
---|
47 | - New main targets: 'notfile' and 'cast'. |
---|
48 | |
---|
49 | - Core changes: |
---|
50 | |
---|
51 | - Only one file required at top level of a project, named Jamroot. |
---|
52 | - Jamfiles can now contain project-specific help messages. |
---|
53 | - "Indirect conditional requirements" introduced |
---|
54 | (http://tinyurl.com/mn3jp) |
---|
55 | - Strip suffix in main target names when computing names of generated |
---|
56 | files (URL) |
---|
57 | - The 'source-location' project attribute can contain |
---|
58 | several directories. |
---|
59 | - Usage requirements are propagated not only direct dependents, |
---|
60 | but to indirect dependents. |
---|
61 | |
---|
62 | - Command line option changes (see http://tinyurl.com/zbycz) |
---|
63 | - New option --build-dir |
---|
64 | - The --clean option cleans only target below the current directory, |
---|
65 | not globally. |
---|
66 | - New --clean-all option was added. |
---|
67 | - New option --debug-building |
---|
68 | - Running "bjam some_directory" works even if there's no Jamfile |
---|
69 | in the current directory. |
---|
70 | |
---|
71 | - Toolset improvements: |
---|
72 | - Assembling support with gcc, borland and msvc. |
---|
73 | - Support amd64/ia64 cross-compiling with msvc. |
---|
74 | - Improved, registry-based autodetection for msvc. |
---|
75 | - Serialize execution of gcc.link actions |
---|
76 | - Precompiled headers supported on MSVC |
---|
77 | (Need documentation) |
---|
78 | |
---|
79 | - New features <warnings> and <warnings-as-errors> |
---|
80 | - The 'glob' rule accepts wildcards in directory names. |
---|
81 | - The 'stage' rule was renamed to 'install' |
---|
82 | (the old name still available for compatibility) |
---|
83 | - The <tag> feature can accept user-defined function as value |
---|
84 | (URL) |
---|
85 | - The 'install' rule can install a directory hierarchy preserving relative |
---|
86 | paths. |
---|
87 | - The 'install' rule no longer allows to change library |
---|
88 | name during install. |
---|
89 | - The Jamfile referred via 'use-project' may declare project id different |
---|
90 | from the one in 'use-project'. |
---|
91 | - The 'using' rule now searches the directory of containing Jamfile. |
---|
92 | |
---|
93 | |
---|
94 | The following bugs were fixed: |
---|
95 | |
---|
96 | - The <library> feature was ignored for static linking |
---|
97 | - Fix #include scanning for C files. |
---|
98 | - Child projects were sometimes loaded before parent projects. |
---|
99 | - Fix project references with absolute paths on Windows. |
---|
100 | - The <dependency> feature was ignored for 'install' targets. |
---|
101 | - A generator having the same type in sources and targets was causing hang. |
---|
102 | - Use 'icpc' command for Intel, fixing errors with 8.1 and higher. |
---|
103 | - Generation of PS files with the FOP tool really produces .PS files. |
---|
104 | - No dependency scanning was done for C files. |
---|
105 | - The 'constant' and 'path-constant' rules did not accept multi-element |
---|
106 | value. |
---|
107 | - Don't pass -fcoalesce-templates to gcc on OSX 10.4 |
---|
108 | - Fix static lib suffix on OSX. |
---|
109 | - Fix rpath setting on Intel/Linux. |
---|
110 | - The 'install' rule don't unnecessary scans #includes in installed |
---|
111 | headers. |
---|
112 | |
---|
113 | |
---|
114 | Developer visible changes: |
---|
115 | |
---|
116 | - Ability to customize type's prefix depending on build properties. |
---|
117 | - Generator's 'run' method can return usage-requirements. |
---|
118 | - Main target rule is automatically declared for each new target type. |
---|
119 | - 'Link incompatible' feature attribute was removed |
---|
120 | - Generators no longer bypass unhandled sources, they just ignore them. |
---|
121 | - If there are several applicable generators, immediately report ambiguity. |
---|
122 | Provide a way to explicitly resolve conflicts between generators. |
---|
123 | - The 'flags' rule can match absense of feature. |
---|
124 | - Great improvement in response files handling |
---|
125 | - The 'toolset.flags' rules allows value-less feature to signify |
---|
126 | absense of this feature (fix hack-hack). |
---|
127 | - Automatically declare main target rule for each declared target type. |
---|
128 | - When inheriting types, inherit generators for the base type, as opposed |
---|
129 | to using various hacks to invoke base generators when needed. |
---|
130 | - Improve diagnostic for "duplicate actual target" and generator ambiguity. |
---|
131 | |
---|
132 | |
---|
133 | Milestone 10 (October 29, 2004) |
---|
134 | |
---|
135 | Changes in this release: |
---|
136 | |
---|
137 | Many toolsets were added: Intel, Metrowerks, Comeau, aCC, vacpp. |
---|
138 | Documentation was converted to BoostBook and improved. |
---|
139 | Performance was improved. |
---|
140 | |
---|
141 | - Toolsets initialization syntax is much more uniform. Compiler and linker |
---|
142 | flags can now be specified. |
---|
143 | - The algorithm for computing build properties was improved. Conditional |
---|
144 | requirements can be chained, and a number of bugs were fixed. |
---|
145 | - Specific order of properties can be specified. |
---|
146 | - The main target rules can be called from everywhere, not necessary from |
---|
147 | Jamfile. |
---|
148 | - Check for "unused sources" removed. |
---|
149 | - The <library> feature affects only linking now. |
---|
150 | - The <file> feature now works only for libraries. |
---|
151 | - Simpler syntax for "searched" libraries was added. |
---|
152 | - New <dependency> feature. |
---|
153 | |
---|
154 | |
---|
155 | Unix: |
---|
156 | The right order of static libraries on Unix is automatically |
---|
157 | computed. |
---|
158 | The <hardcode-dll-paths> feature is the default. |
---|
159 | gcc: |
---|
160 | The -fPIC option is passed when creating shared libraries. |
---|
161 | Problems with distcc were solved. |
---|
162 | Sun: |
---|
163 | It's now possible to use the sun linker (as opposed to gnu), and |
---|
164 | to compile C files. |
---|
165 | Darwin: |
---|
166 | Shared libraries are now supported. |
---|
167 | MSVC: Before resource files compilation, the setup script is invoked. |
---|
168 | Options deprecated in 8.0 are not longer used. |
---|
169 | |
---|
170 | |
---|
171 | The following bugs were fixed: |
---|
172 | |
---|
173 | - The <unit-test> rule did not handle the <library> property (!!!!!!) |
---|
174 | - Don't add "bin" to the build directory explicitly specified by the user. |
---|
175 | - Allow <include-type> to select staged targets, |
---|
176 | even with <traverse-dependencies>off. |
---|
177 | - Includes for the form '# include <whatever>" did not work. |
---|
178 | - (Qt) Add paths to all dependent libs to uic command |
---|
179 | line, which helps if the UI files uses plugins. |
---|
180 | - Using <toolset-msvc:version>xxx in requirements was broken. |
---|
181 | - Error message printed when target can be found is much more clear. |
---|
182 | - Inline targets in sources of 'stage' did not work. |
---|
183 | - Don't produce 'independent target' warnings on Windows |
---|
184 | - (gcc) The <link-runtime>static did not work. |
---|
185 | - (gcc) Suppress warnings from the 'ar' tool on some systems. |
---|
186 | - (gcc) Don't try to set soname on NT. |
---|
187 | |
---|
188 | Developer visible changes: |
---|
189 | |
---|
190 | - Generator priorities are gone, explicit overrides are used. |
---|
191 | - 'Active' features were removed |
---|
192 | - Support for VMS paths was added. |
---|
193 | |
---|
194 | Thanks to Christopher Currie, Pedro Ferreira, Philipp Frauenfelder, |
---|
195 | Andre Hentz, Jurgen Hunold, Toon Knapen, Johan Nilsson, Alexey Pakhunov, |
---|
196 | Brock Peabody, Michael Stevens and Zbynek Winkler who contributed |
---|
197 | code to this release. |
---|
198 | |
---|
199 | |
---|
200 | Milestone 9.1 (Nov 6, 2003) |
---|
201 | |
---|
202 | The following bugs were fixed: |
---|
203 | |
---|
204 | - The 'unit-test' rule used to ignore <library> properties. |
---|
205 | - The gcc toolset used to ignore <threading> property. |
---|
206 | |
---|
207 | Milestone 9 (Nov 6, 2003) |
---|
208 | |
---|
209 | Changes in this release |
---|
210 | |
---|
211 | - Putting library in sources of other library now works even for static |
---|
212 | linking, which makes expressing library->library dependency much |
---|
213 | simpler. |
---|
214 | - Performance was considerably improved. |
---|
215 | - Regression testing framework now works on windows. |
---|
216 | - The "alias" rule can have usage requirements and passes on usage |
---|
217 | requirements of sources. |
---|
218 | - The "stage" rule can traverse dependencies. |
---|
219 | - Support for "def files" was implemented. |
---|
220 | - Targets paths are now shorter. |
---|
221 | - Darwin toolset was improved. |
---|
222 | |
---|
223 | The following bugs were fixed: |
---|
224 | |
---|
225 | - It was not possible to specify empty suffix for a target type derived |
---|
226 | from other type. |
---|
227 | - The stage rules used to generate incorrect suffix in some cases. |
---|
228 | - It was possible to load Jamfile twice. |
---|
229 | - The 'use-project' rule was broken when referring to a child project. |
---|
230 | - Use of composite properties in requirements did not work. |
---|
231 | |
---|
232 | Developer visible changes: |
---|
233 | |
---|
234 | - New CALC builtin, which considerable improves performance. |
---|
235 | - Source layout was reorganized. |
---|
236 | - Handling of response file was simplified. |
---|
237 | |
---|
238 | Thanks to Pedro Ferreira, Kirill Lapshin, Andre Hentz, Paul Lin, |
---|
239 | Jurgen Hunold, Christopher Currie, and Brock Peabody, who contributed to |
---|
240 | this release. |
---|
241 | |
---|
242 | Milestone 8 (Oct 15, 2003) |
---|
243 | |
---|
244 | Changes in this release: |
---|
245 | |
---|
246 | - A regression testing framework was implemented. |
---|
247 | - New <implicit-dependency> feature was added for better handling |
---|
248 | of dependencies to generated headers. |
---|
249 | - The link-compatibility checks not longer cause projects to be skipped, |
---|
250 | and issue warning, not error, for main targets. |
---|
251 | - Algorithm for selecting main target alternative was improved. |
---|
252 | - The <dependency> feature was renamed to <use>. |
---|
253 | - Project root constants were made available in project root itself. |
---|
254 | |
---|
255 | The following bugs were fixed: |
---|
256 | |
---|
257 | - failure to recognize shared libraries with version as such |
---|
258 | - the 'path-constant' rule was mishandling absolute paths on Windows. |
---|
259 | |
---|
260 | |
---|
261 | Milestone 7 (Sep 11, 2003) |
---|
262 | |
---|
263 | Changes in this release: |
---|
264 | |
---|
265 | - Performance was improved. |
---|
266 | - Support for Sun and Darwin toolsets was added. |
---|
267 | - <tag> feature, which changes the name of target depending of build |
---|
268 | variant, was implemented. |
---|
269 | - Old-style targets-ids are no longer supported. |
---|
270 | - New 'glob' rule allows to easily perform wildcard matching in Jamfile. |
---|
271 | - Improve bison/flex support to understand C++. |
---|
272 | |
---|
273 | The following bugs were fixed: |
---|
274 | |
---|
275 | - bogus error on use of project default-build attribute with several |
---|
276 | main target alternatives. |
---|
277 | - broken toolset inheritance |
---|
278 | - hard error after skipping a target due to incompatible requirements |
---|
279 | - incorrect behaviour of a generator when producing several targets of |
---|
280 | the same type |
---|
281 | - errors on use of the 'project-root' rule in Jamfile context |
---|
282 | - inability to require specific compiler version for a main target. |
---|
283 | - incorrect behaviour of "bjam msvc" when msvc is configured with explicit |
---|
284 | version. |
---|
285 | |
---|
286 | Thanks to Christopher Currie, Pedro Ferreira and Michael Stevens, who |
---|
287 | contributed to this release. |
---|
288 | |
---|
289 | |
---|
290 | |
---|
291 | |
---|