[2] | 1 | <!-- |
---|
| 2 | //----------------------------------------------------------- |
---|
| 3 | // Copyright Christian Arnault LAL-Orsay CNRS |
---|
| 4 | // arnault@lal.in2p3.fr |
---|
| 5 | // See the complete license in cmt_license.txt "http://www.cecill.info". |
---|
| 6 | //----------------------------------------------------------- |
---|
| 7 | --> |
---|
| 8 | |
---|
| 9 | <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
---|
| 10 | <html> |
---|
| 11 | <head> |
---|
| 12 | <title>Release notes</title> |
---|
| 13 | |
---|
| 14 | <style type='text/css'> |
---|
| 15 | li.bug |
---|
| 16 | { |
---|
| 17 | color:#FF0000; |
---|
| 18 | } |
---|
| 19 | li.new |
---|
| 20 | { |
---|
| 21 | color:#0000FF; |
---|
| 22 | font-weight:bold; |
---|
| 23 | } |
---|
| 24 | li.int |
---|
| 25 | { |
---|
| 26 | color:#00FF00; |
---|
| 27 | } |
---|
| 28 | <!-- font-style:italic; --> |
---|
| 29 | </style> |
---|
| 30 | </head> |
---|
| 31 | |
---|
| 32 | <body BGCOLOR="#FFFFFF" link="#550088" alink="#007777" alink="#007777"> |
---|
| 33 | <h1>Release notes</h1> |
---|
| 34 | |
---|
| 35 | <blockquote> |
---|
| 36 | <center><i>Notation</i></center> |
---|
| 37 | <ul> |
---|
| 38 | <li class="new">New features</li> |
---|
| 39 | <li class="bug">Bug fixes</li> |
---|
| 40 | <li class="int">Internal management</li> |
---|
| 41 | </ul> |
---|
| 42 | </blockquote> |
---|
| 43 | |
---|
| 44 | <ul> |
---|
| 45 | |
---|
[219] | 46 | <li> |
---|
[384] | 47 | <b>v1r20p20070208</b> |
---|
| 48 | <ul> |
---|
[387] | 49 | <li class="bug">Disable the creation of <tt><project>_ROOT/CONFIG</tt> |
---|
[386] | 50 | variables for the PACKAGE_POLICY_FOR_<tt><project></tt> virtual package</li> |
---|
[384] | 51 | </ul> |
---|
| 52 | </li> |
---|
| 53 | |
---|
| 54 | <li> |
---|
| 55 | <b>v1r20</b> |
---|
| 56 | <ul> |
---|
| 57 | <li class="new">Add support for the -import=PkgA,PkgB,... syntax: |
---|
| 58 | <pre>library Lalib *.cpp -import=A,C</pre> |
---|
| 59 | </li> |
---|
| 60 | |
---|
| 61 | |
---|
| 62 | <li class="new">Extend the project syntax to support macros/tags. E.g.: |
---|
| 63 | <pre> project Project |
---|
| 64 | |
---|
| 65 | author garonne |
---|
| 66 | |
---|
| 67 | use P1 v1.* |
---|
| 68 | |
---|
| 69 | container container v1 |
---|
| 70 | |
---|
| 71 | # Policy definitions used by all packages belonging to this project |
---|
| 72 | tag ATLAS |
---|
| 73 | |
---|
| 74 | macro use_build_strategy "without_installarea" \ |
---|
| 75 | ATLAS "with_installarea" |
---|
| 76 | |
---|
| 77 | macro use_setup_strategy "no_root" \ |
---|
| 78 | ATLAS "root" |
---|
| 79 | |
---|
| 80 | macro use_structure_strategy "with_version_directory" \ |
---|
| 81 | ATLAS "without_version_directory" |
---|
| 82 | |
---|
| 83 | build_strategy $(use_build_strategy) |
---|
| 84 | setup_strategy $(use_setup_strategy) |
---|
| 85 | structure_strategy $(use_structure_strategy) |
---|
| 86 | ...</pre> |
---|
| 87 | </li> |
---|
| 88 | <li class="new">Extend the strategy syntax for supporting variable, e.g.: |
---|
| 89 | <pre> |
---|
| 90 | macro use_strategy "without_installarea" \ |
---|
| 91 | ATLAS "with_installarea" |
---|
| 92 | |
---|
| 93 | build_strategy $(use_strategy)</pre> |
---|
| 94 | </li> |
---|
| 95 | |
---|
| 96 | <li class="new">Enable the package selection by native_version requirements:<pre>use foo -native_version=2.0</pre> |
---|
| 97 | To activate this feature, it is necessary to execute the <tt>cmt config</tt> in all packages to |
---|
| 98 | create for each eligible package a <tt>cmt/native_version.cmt</tt> file generated from the |
---|
| 99 | <tt><package>_native_version macro</tt> and used for the package selection. |
---|
| 100 | </li> |
---|
| 101 | |
---|
| 102 | |
---|
| 103 | <li class="new"> |
---|
| 104 | Add macros $(${GROUP}_pre_constituents), $(${GROUP}_post_constituents) for |
---|
| 105 | ordering targets executed by default during make execution. |
---|
| 106 | </li> |
---|
| 107 | |
---|
| 108 | <li class="bug">Correct problems with the cxx pre-compiler parser for dealing with continuation |
---|
| 109 | character, space, etc. This problem created in some case the missing dependencies problem with |
---|
| 110 | previous releases (Thanks to Scott Snyder, |
---|
| 111 | see <a href="http://savannah.cern.ch/bugs/?23384">bug report</a>). |
---|
| 112 | </li> |
---|
| 113 | |
---|
| 114 | <li class="bug">Fix bugs with <tt>-no_auto_imports</tt>.</li> |
---|
| 115 | |
---|
| 116 | <li class="bug">Return status code when executing make by the <tt>"cmt make"</tt> action |
---|
| 117 | name.</li> |
---|
| 118 | |
---|
| 119 | <li class="bug">Correct the fact that a <tt>"apply_tag"</tt> protected by a private section is exported in |
---|
| 120 | all the client packages.</li> |
---|
| 121 | |
---|
| 122 | |
---|
| 123 | </ul> |
---|
| 124 | </li> |
---|
| 125 | |
---|
| 126 | |
---|
| 127 | |
---|
| 128 | <li> |
---|
[304] | 129 | <b>v1r19</b> |
---|
| 130 | <ul> |
---|
| 131 | <li class="new">Add support for wildcarded project dependencies which Allow CMTPROJECTPATH overrides, e.g.: use project v*.</li> |
---|
| 132 | <li class="new">Support for the author keyword at the project level and the corresponding command is <tt>cmt show project_author</tt> |
---|
| 133 | to obtain it from command line.</li> |
---|
| 134 | <li class="new">Extend the strategy syntax for supporting variable, e.g.: |
---|
| 135 | <pre> |
---|
| 136 | macro use_strategy "without_installarea" \ |
---|
| 137 | ATLAS "with_installarea" |
---|
| 138 | |
---|
| 139 | build_strategy $(use_strategy) |
---|
| 140 | </pre> |
---|
| 141 | </li> |
---|
| 142 | <li class="new">Add a option to bypass the <tt>cmt config</tt> step after the cvs checkout: <tt>cmt co -no_config ...</tt>.</li> |
---|
| 143 | <li class="new">Add a new traversal mode for the cmtpath_pattern: <tt>cmtpath_pattern_revert</tt>. This is for constructing macro from current |
---|
| 144 | project to projects used (Atlas's request).</li> |
---|
| 145 | <li class="bug">Disable warning about tags,e.g. CMTSITE. To re-enable them you should use cmt with the <tt>-warnings</tt> option.</li> |
---|
| 146 | <li class="int">Introduce the pre-compiler __APPLE__ macro for removing compilation warnings.</li> |
---|
| 147 | |
---|
| 148 | </ul> |
---|
| 149 | </li> |
---|
| 150 | |
---|
| 151 | <li> |
---|
| 152 | <b>v1r18p20061003</b> |
---|
| 153 | <ul> |
---|
| 154 | <li class="bug">Correct problem with long word during compilation which reach make limit(Atlas's request).</li> |
---|
| 155 | </ul> |
---|
| 156 | </li> |
---|
| 157 | |
---|
| 158 | <li> |
---|
[219] | 159 | <b>v1r18p20060606</b> |
---|
| 160 | <ul> |
---|
| 161 | |
---|
| 162 | <!-- |
---|
| 163 | <li class="new"></li> |
---|
| 164 | <li class="bug"></li> |
---|
| 165 | <li class="int"></li> |
---|
| 166 | --> |
---|
| 167 | |
---|
| 168 | <li class="new"> |
---|
| 169 | Add a touch functionnality, e.g. <tt>cvs co -t package</tt>, during cvs checkout, this is mainly due that cvs keeps the file |
---|
| 170 | timestamps so that build tools, i.d. make, can not recognize it as "new". The "best" default behaviour is for it to set the filestamp |
---|
| 171 | to the checkout time.</li> |
---|
| 172 | |
---|
| 173 | <li class="new"> Add the support on Linux/make for creating separate directory for libraries/constituents. |
---|
| 174 | To be Atlas compliant, this strategy is not built by default you should called explicitely the STRUCTURED_OUTPUT option, e.g. |
---|
| 175 | <tt>make STRUCTURED_OUTPUT=1</tt>. For more informations see the following <a href="http://trac.lal.in2p3.fr/CMT/ticket/10">Bug |
---|
| 176 | report</a>.</li> |
---|
| 177 | |
---|
| 178 | <li class="new"> Supress the n repeated entries in the CMTPATH after the first found occurence.</li> |
---|
| 179 | |
---|
| 180 | <li class="int"> Add the cvs <tt>"-f"</tt> option which force cvs to ignore the user .cvsrc file during cvs |
---|
| 181 | command execution. It appears to create problem with the cmtcvs plugin and empty directories |
---|
| 182 | within cvs.</li> |
---|
| 183 | |
---|
| 184 | <li class="int">Translate symlinks for the <tt>cmt show packages</tt> command.<li> |
---|
| 185 | |
---|
| 186 | <li class="bug"> Bring a better support for the cmt checkout operation to bypass cvs weird behaviours, e.g. chekout |
---|
| 187 | localy a directory whithout any files inside creates nothing.</li> |
---|
| 188 | |
---|
| 189 | <li class="bug"> Correct problems when checkouting successively the same package with a different tag in the |
---|
| 190 | <tt>without version directory</tt>mode.</li> |
---|
| 191 | |
---|
| 192 | <li class="bug">Compute the project of the package when expanding the <project> template to fix packages with offset .</li> |
---|
| 193 | |
---|
| 194 | </ul> |
---|
| 195 | |
---|
| 196 | </li> |
---|
| 197 | |
---|
[104] | 198 | <li> |
---|
| 199 | <b>v1r18p20051101</b> |
---|
[2] | 200 | |
---|
[104] | 201 | <ul> |
---|
| 202 | |
---|
| 203 | <!-- |
---|
| 204 | <li class="new"></li> |
---|
| 205 | <li class="bug"></li> |
---|
| 206 | <li class="int"></li> |
---|
| 207 | --> |
---|
| 208 | |
---|
| 209 | <li class="new">Add a new standard macro definition |
---|
| 210 | <tt>$(q)</tt> to hold a double quote. This is useful to |
---|
| 211 | define symbol values that contin doublequotes so as they are |
---|
| 212 | not filtered out by CMT. Typical usage is to cope with paths |
---|
| 213 | containing spaces on Windows. Various fixes have been done |
---|
| 214 | to improve the support of spaces in paths</li> |
---|
| 215 | |
---|
| 216 | <li class="new">The <tt>pacman</tt> source file for CMT now |
---|
| 217 | includes a constraint on the version of Pacman.</li> |
---|
| 218 | |
---|
| 219 | <li class="bug">Added a mechanism to filter out bad items in |
---|
| 220 | a PATH symbol. This was causing troubles at <tt>source |
---|
| 221 | setup</tt> time</li> |
---|
| 222 | |
---|
| 223 | <li class="bug">Added a protection against old protocols in |
---|
| 224 | the CVS pluggin</li> |
---|
| 225 | |
---|
| 226 | <li class="bug">Better support of release-less projects on |
---|
| 227 | Windows</li> |
---|
| 228 | |
---|
| 229 | <li class="bug">Added a protection against single level |
---|
| 230 | directories in CMTPATH</li> |
---|
| 231 | |
---|
| 232 | <li class="bug">Added a protection against unexisting |
---|
| 233 | makefile fragments when running the <tt>clean</tt> target.</li> |
---|
| 234 | |
---|
| 235 | <li class="bug">The definition of standard macros was not |
---|
| 236 | properly set when using the <tt>cmt broadcast</tt> |
---|
| 237 | command. Thus environment variables where badly preset.</li> |
---|
| 238 | |
---|
| 239 | <li class="int">Improve the automatic preparation of CMT releases</li> |
---|
| 240 | |
---|
| 241 | <li class="int">The internal <tt>Makefile</tt> structure has |
---|
| 242 | been cleaned up to remove obsolete internal targets (leading |
---|
| 243 | to confusing behavours in some cases)</li> |
---|
| 244 | |
---|
| 245 | </ul> |
---|
| 246 | |
---|
| 247 | </li> |
---|
| 248 | |
---|
[2] | 249 | <li> |
---|
[83] | 250 | <b>v1r18p20050901</b> |
---|
| 251 | |
---|
| 252 | <ul> |
---|
| 253 | |
---|
| 254 | <!-- |
---|
| 255 | <li class="new"></li> |
---|
| 256 | <li class="bug"></li> |
---|
| 257 | <li class="int"></li> |
---|
| 258 | --> |
---|
| 259 | |
---|
[85] | 260 | <li class="new">Package creation (either from the <tt>cmt |
---|
| 261 | create</tt> or the <tt>cmt co</tt> commands is affected by |
---|
| 262 | the specification of the structuring style or of the |
---|
| 263 | structuring strategy.</li> |
---|
| 264 | |
---|
| 265 | <li class="new">Introduce a new strategy structure_strategy |
---|
| 266 | with only one value with/out_version_directory. This is |
---|
| 267 | mostly useful when installed in a project file to condition |
---|
| 268 | the behaviour of package creation afterwards</li> |
---|
| 269 | |
---|
[83] | 270 | <li class="new">Support dependency building using external |
---|
| 271 | tools such as cpp -M. Fix the cmt_build_des.sh wrapper |
---|
| 272 | script to properly format the command output.</li> |
---|
| 273 | |
---|
| 274 | <li class="new">Perform the cmt checkout onto a project even |
---|
| 275 | if the basic directory structure of the project is already |
---|
| 276 | in place.</li> |
---|
| 277 | |
---|
| 278 | <li class="new">When no current project is defined the |
---|
| 279 | strategies are taken from the top project (eg obtained from |
---|
| 280 | the CMTPATH)</li> |
---|
| 281 | |
---|
| 282 | <li class="new">The include_dirs statement can now be hidden |
---|
| 283 | in a private section.</li> |
---|
| 284 | |
---|
| 285 | <li class="new">The include_dirs statement now accepts a |
---|
| 286 | macro reference as its value</li> |
---|
| 287 | |
---|
| 288 | |
---|
| 289 | |
---|
| 290 | <li class="bug">Fix incorrect generation of XXXROOT and |
---|
| 291 | XXXCONFIG environment variables according to strategies</li> |
---|
| 292 | |
---|
| 293 | <li class="bug">Protect against missing un/install targets</li> |
---|
| 294 | |
---|
| 295 | <li class="bug">Fix a typo in cmt_uninstall_action.bat |
---|
| 296 | resulting in bad management of make cleanup on Windows</li> |
---|
| 297 | |
---|
| 298 | <li class="bug">When creating a parent-less project, link it |
---|
| 299 | to exisiting top project(s) and upgrade strategies |
---|
| 300 | accordingly. Avoid confusions when mixing explicit CMTPATH, |
---|
| 301 | CMTPROJECTPATH and project files </li> |
---|
| 302 | |
---|
| 303 | <li class="bug">Don't apply include_dirs when their expanded |
---|
| 304 | value is empty (avoid killing -I"")</li> |
---|
| 305 | |
---|
| 306 | <li class="bug">Reset CMTPATH to empty when filling in |
---|
| 307 | CMTPATH from projects (avoid confusions and |
---|
| 308 | dupplications)</li> |
---|
| 309 | |
---|
| 310 | <li class="bug">Fix a bug in dependency builder that missed |
---|
| 311 | some statements after a single line C++ comment</li> |
---|
| 312 | |
---|
| 313 | <li class="bug">Cleanup unneeded duplicate path |
---|
| 314 | separators</li> |
---|
| 315 | |
---|
| 316 | <li class="bug">Fix a bug in standard macro generation for |
---|
| 317 | projects</li> |
---|
| 318 | |
---|
| 319 | </ul> |
---|
| 320 | |
---|
| 321 | </li> |
---|
| 322 | |
---|
| 323 | <li> |
---|
[46] | 324 | <b>v1r18p20050501</b> |
---|
| 325 | |
---|
| 326 | <ul> |
---|
| 327 | |
---|
| 328 | <!-- |
---|
| 329 | <li class="new"></li> |
---|
| 330 | <li class="bug"></li> |
---|
| 331 | <li class="int"></li> |
---|
| 332 | --> |
---|
| 333 | |
---|
| 334 | <li class="new">Fill in a pacman cache for CMT using pacman3 |
---|
| 335 | syntax. The Pacman package name is CMT.</li> |
---|
| 336 | |
---|
| 337 | <li class="new">Extend the recursive checkout mechanism to |
---|
| 338 | projects. The recursivity covers the use relationships |
---|
| 339 | between projects and propagates to packges of a project when |
---|
| 340 | the container package is specified in the project file.</li> |
---|
| 341 | |
---|
| 342 | <li class="new">Add the cvssubprojects query command to |
---|
| 343 | retrieve subprojects at a CVS repository level</li> |
---|
| 344 | |
---|
| 345 | <li class="new">Add a container statement in project |
---|
| 346 | file. The syntax is like use statements. It indicates that a |
---|
| 347 | container-like package exists in the project. This is useful |
---|
| 348 | for recursive checkout operations.</li> |
---|
| 349 | |
---|
| 350 | <li class="int">Migrate to a new version of the CVS |
---|
| 351 | pluggin. Now the protocol level is explicitly referenced |
---|
| 352 | when sending CVS requests via the pluggin. The new protocol |
---|
| 353 | gives the nature of the CVS module: is it a project or a |
---|
| 354 | package. The protocol level is specified in a dedicated |
---|
| 355 | macro in the CMT requirements file.</li> |
---|
| 356 | |
---|
| 357 | <li class="bug">Fix the production of shared libraries on CYGWIN</li> |
---|
| 358 | |
---|
| 359 | <li class="bug">Fix ambiguities between physical paths and |
---|
| 360 | logical paths in PATH variables management</li> |
---|
| 361 | |
---|
| 362 | <li class="bug">Fix arg counting bugs in cvstags and cvssubpackages commands</li> |
---|
| 363 | |
---|
| 364 | </ul> |
---|
| 365 | |
---|
| 366 | </li> |
---|
| 367 | |
---|
| 368 | <li> |
---|
[32] | 369 | <b>v1r18p20050401</b> |
---|
[2] | 370 | |
---|
| 371 | <ul> |
---|
| 372 | |
---|
| 373 | <!-- |
---|
| 374 | <li class="new"></li> |
---|
| 375 | <li class="bug"></li> |
---|
| 376 | <li class="int"></li> |
---|
| 377 | --> |
---|
| 378 | |
---|
[32] | 379 | <li class="new">Introduce a new bug reporting system: Trac</li> |
---|
| 380 | |
---|
| 381 | <li class="new">Accept HEAD or head as a valid version tag for packages</li> |
---|
| 382 | |
---|
| 383 | <li class="new">The path of CMT is removed from |
---|
| 384 | CMTPATH. Packages aside CMT are no longer reachable by |
---|
| 385 | default</li> |
---|
| 386 | |
---|
| 387 | <li class="new">Major restructuring of the project |
---|
| 388 | management and package localisation. The most important |
---|
| 389 | parameter becomes the search path CMTPROJECTPATH for |
---|
| 390 | projects. Then CMTPATH is deduced from the effective list of |
---|
| 391 | used projects. Project files and the dependency graph |
---|
| 392 | described by the project use statement becomes a central |
---|
| 393 | mechanism.</li> |
---|
| 394 | |
---|
| 395 | <li class="new">Introduce the management of releases for |
---|
| 396 | projects. Release must exactly match</li> |
---|
| 397 | |
---|
| 398 | <li class="new">Install a mechanism to detect unused tags |
---|
| 399 | from arguments or CMTSITE. This is performed during the |
---|
| 400 | setup generation</li> |
---|
| 401 | |
---|
| 402 | <li class="int">Source code management tansfered to SVN</li> |
---|
| 403 | |
---|
| 404 | <li class="int">Restructure the strategy management to make |
---|
| 405 | it fully generic.</li> |
---|
| 406 | |
---|
| 407 | <li class="bug">Fix poor management of unknown commands </li> |
---|
| 408 | |
---|
| 409 | <li class="bug">Suppress the export action for alias in setup.sh</li> |
---|
| 410 | |
---|
| 411 | <li class="bug">Fix a problem in TMPDIR management with |
---|
| 412 | multi directory level</li> |
---|
| 413 | |
---|
| 414 | <li class="bug">Fix a problem in cmt show packages</li> |
---|
| 415 | |
---|
| 416 | <li class="bug">Fix bad parsing of various cmt commands</li> |
---|
| 417 | |
---|
| 418 | <li class="bug">Fix an internal bug causing misfunction in |
---|
| 419 | the -import parameter of constituents.</li> |
---|
| 420 | |
---|
| 421 | <li class="bug">Fix fragment for action to improve argument transmission</li> |
---|
| 422 | |
---|
| 423 | <li class="bug">Fix pdb files for Visual about debug mode</li> |
---|
| 424 | |
---|
| 425 | </ul> |
---|
| 426 | |
---|
| 427 | </li> |
---|
| 428 | |
---|
| 429 | <li> |
---|
| 430 | <b>v1r18p20041201</b> |
---|
| 431 | |
---|
| 432 | <ul> |
---|
| 433 | |
---|
| 434 | <!-- |
---|
| 435 | <li class="new"></li> |
---|
| 436 | <li class="bug"></li> |
---|
| 437 | <li class="int"></li> |
---|
| 438 | --> |
---|
| 439 | |
---|
[2] | 440 | <li class="int">Suppress the completely unused makefile strategy</li> |
---|
| 441 | |
---|
| 442 | <li class="bug">Really apply the project specific setup |
---|
| 443 | strategy to control the generation of ROOT or CONFIG |
---|
| 444 | env. variables.</li> |
---|
| 445 | |
---|
| 446 | <li class="new">Change default build strategy to <tt>without_installarea</tt></li> |
---|
| 447 | |
---|
| 448 | <li class="new">${CMTROOT} is no longer an automatic part of |
---|
| 449 | the CMTPATH. Nor the current package automatically defines |
---|
| 450 | an entry in the CMTPATH search list. However a feature |
---|
| 451 | partly compensates this evolution: the current project |
---|
| 452 | (i.e. the current package area, where the developer stands) |
---|
| 453 | is autmatically detected when its project file exists |
---|
| 454 | (i.e. when its cmt/project.cmt file exists). For instance, |
---|
| 455 | this suppresses the need to set CMTPATH when working in one |
---|
| 456 | single project.</li> |
---|
| 457 | |
---|
| 458 | <li class="new">The general cmt command parsing mechanism |
---|
| 459 | has been revisited and now "actions" are considered as |
---|
| 460 | extended cmt commands and no longer need the "cmt do |
---|
| 461 | <action>" syntax. One can directly use "cmt |
---|
| 462 | <action>" when the action does not conflict with |
---|
| 463 | internal cmt commands.</li> |
---|
| 464 | |
---|
| 465 | <li class="new">Command line arguments are transmitted to |
---|
| 466 | "actions" now through the new standard "cmt_args" macro</li> |
---|
| 467 | |
---|
| 468 | <li class="bug">Really force the settings of all |
---|
| 469 | Env. variables before running internal cmmands through |
---|
| 470 | broadcast, run or do commands.</li> |
---|
| 471 | |
---|
| 472 | <li class="new">The "cmt run" command transmits all its |
---|
| 473 | arguments to the launched action</li> |
---|
| 474 | |
---|
| 475 | <li class="new">Revisit the production of dependency files, |
---|
| 476 | to consider the changes made to the configuration in general |
---|
| 477 | in addition to the usual source changes. This consists in |
---|
| 478 | generating one stamp file per source, touched when its |
---|
| 479 | contents change rather than when recomputing the |
---|
| 480 | dependencies.</li> |
---|
| 481 | |
---|
| 482 | <li class="bug">Better protections for CMTPATH entries</li> |
---|
| 483 | |
---|
| 484 | <li class="int">Major internal restructuring of the CMT |
---|
| 485 | package. Internal sources are now in ../source, ../src only |
---|
| 486 | contains publicly exported configuration files, fragments |
---|
| 487 | are in ../mgr/fragments. This is for constructing a really |
---|
| 488 | autonomous binary kit for CMT (eg for Fink) (without needing |
---|
| 489 | to export two kits)</li> |
---|
| 490 | |
---|
| 491 | <li class="bug">Now produce the last revision date of the |
---|
| 492 | CMT documentation. Insert the complete version tag rather |
---|
| 493 | than just the base version tag.</li> |
---|
| 494 | |
---|
| 495 | <li class="new">Suppress the systematic production of |
---|
| 496 | bundles on Darwin machines. This must now be done |
---|
| 497 | explicitly.</li> |
---|
| 498 | |
---|
| 499 | <li class="bug">The algorithm for commpressing paths with |
---|
| 500 | ../ patterns now takes into account the presence of ${xxx} |
---|
| 501 | expressions that cannot be reduced. It also better handle |
---|
| 502 | various patterns that used to produce failures.</li> |
---|
| 503 | |
---|
| 504 | <li class="bug">A global checking of the configuration is |
---|
| 505 | performed first when running Make</li> |
---|
| 506 | |
---|
| 507 | <li class="new">Incompatible major ids in the version |
---|
| 508 | numbers are now managed like the minor id, ie. the decision |
---|
| 509 | is taken in a similar way. The usual error message is |
---|
| 510 | displayed but this is no longer fatal, and a decision is |
---|
| 511 | taken</li> |
---|
| 512 | |
---|
| 513 | </ul> |
---|
| 514 | |
---|
| 515 | </li> |
---|
| 516 | |
---|
| 517 | <li> |
---|
| 518 | <b>v1r16p20040901</b> |
---|
| 519 | |
---|
| 520 | <ul> |
---|
| 521 | |
---|
| 522 | <!-- |
---|
| 523 | <li class="new"></li> |
---|
| 524 | <li class="bug"></li> |
---|
| 525 | <li class="int"></li> |
---|
| 526 | --> |
---|
| 527 | |
---|
| 528 | <li class="new">Introduce the support of SLC3 (Scientific |
---|
| 529 | Linux) platforms</li> |
---|
| 530 | |
---|
| 531 | <li class="new">Trigger the reconstruction of the dependency |
---|
| 532 | makefile fragment from a change in the |
---|
| 533 | <package>_setup.make, ie from any change in tags, uses |
---|
| 534 | or CMTPATHs</li> |
---|
| 535 | |
---|
| 536 | <li class="new"><tt>CMTBIN</tt> now follows a new convention |
---|
| 537 | on Unix `uname`-`uname -m` to differentiate among Linux |
---|
| 538 | platforms.</li> |
---|
| 539 | |
---|
| 540 | <li class="new">Introduce a new -strict option to the cmt |
---|
| 541 | expand model to support model files freely formatted. This |
---|
| 542 | implied securing the user defined model elements by the |
---|
| 543 | <tt>cmts</tt> or <tt>cmtv</tt> name space |
---|
| 544 | keywords. <tt>cmts:xxx</tt> indicates a scalar modelling |
---|
| 545 | element <tt>xxx</tt> meant to be expanded only |
---|
| 546 | once. <tt>cmtv:yyy</tt> indicates a vector modelling element |
---|
| 547 | <tt>yyy</tt> meant to be expanded once per item in the |
---|
| 548 | vector of values.</li> |
---|
| 549 | |
---|
| 550 | <li class="new">Better management of temporary file |
---|
| 551 | generation. Now support the standard TMPDIR environment |
---|
| 552 | variable to redirect temporary locations.</li> |
---|
| 553 | |
---|
| 554 | <li class="int">Apply the new GPL-like licence officially |
---|
| 555 | provided by CNRS-CEA-INRIA</li> |
---|
| 556 | |
---|
| 557 | <li class="int">Use stderr instead of stdout to display |
---|
| 558 | error and warning messages. Mainly to better expose messages in |
---|
| 559 | the source setup operations</li> |
---|
| 560 | |
---|
| 561 | <li class="bug">Protect against source files not found (avoid infinite loops in make)</li> |
---|
| 562 | |
---|
| 563 | <li class="bug">Better management of the build strategy on |
---|
| 564 | installation area to generate various automatic macros or |
---|
| 565 | sets (installarea_linkopts, PATH, LD_LIBRARY_PATH, |
---|
| 566 | etc...)</li> |
---|
| 567 | |
---|
| 568 | <li class="bug">Revisit the package scan algorithm to |
---|
| 569 | improve the detection of directory structure of packages as |
---|
| 570 | well as their version tags.</li> |
---|
| 571 | |
---|
| 572 | <li class="bug">Compress the path definitions (ie compress |
---|
| 573 | the ../xxx patterns) and use the compressed paths |
---|
| 574 | everywhere</li> |
---|
| 575 | |
---|
| 576 | </ul> |
---|
| 577 | |
---|
| 578 | </li> |
---|
| 579 | |
---|
| 580 | <li> |
---|
| 581 | <b>v1r16p20040701</b> |
---|
| 582 | |
---|
| 583 | <ul> |
---|
| 584 | |
---|
| 585 | <!-- |
---|
| 586 | <li class="new"></li> |
---|
| 587 | <li class="bug"></li> |
---|
| 588 | <li class="int"></li> |
---|
| 589 | --> |
---|
| 590 | |
---|
| 591 | <li class="bug">Better generation of .def files for DATA</li> |
---|
| 592 | |
---|
| 593 | <li class="bug">fix a bug that impacted on the order of |
---|
| 594 | compatible use requests with different wilcarded specifications</li> |
---|
| 595 | |
---|
| 596 | </ul> |
---|
| 597 | |
---|
| 598 | </li> |
---|
| 599 | |
---|
| 600 | <li> |
---|
| 601 | <b>v1r16p20040527</b> |
---|
| 602 | |
---|
| 603 | <ul> |
---|
| 604 | |
---|
| 605 | <!-- |
---|
| 606 | <li class="new"></li> |
---|
| 607 | <li class="bug"></li> |
---|
| 608 | <li class="int"></li> |
---|
| 609 | --> |
---|
| 610 | |
---|
| 611 | <li class="new">Generate the <tt>target_${CONSTITUENT}</tt> |
---|
| 612 | tag to trigger configuration control per target. This |
---|
| 613 | feature is only activated when the new <tt>-target_tag</tt> |
---|
| 614 | option is specified to a constituent. Specific tag makefiles |
---|
| 615 | are then generated for those targets. This tag is activated |
---|
| 616 | either when <tt>make <target></tt> or <tt>cmt do |
---|
| 617 | <action></tt> is run.</li> |
---|
| 618 | |
---|
| 619 | <li class="new">Add a section on package semantics in the documentation</li> |
---|
| 620 | |
---|
| 621 | <li class="new">The <tt>apply_tag</tt> keyword now accepts macro expansion for its argument.</li> |
---|
| 622 | |
---|
| 623 | <li class="new">Add the support for Enterprise Linux</li> |
---|
| 624 | |
---|
| 625 | <li class="new">Create automatic tags from |
---|
| 626 | <tt>cmt_hardware</tt> <tt>cmt_system_version</tt> and |
---|
| 627 | <tt>cmt_compiler_version</tt></li> |
---|
| 628 | |
---|
| 629 | <li class="new">Add a filtering script to keep 3 digits instead of 2</li> |
---|
| 630 | |
---|
| 631 | <li class="int">Start the implementation of a centralized log message facility</li> |
---|
| 632 | |
---|
| 633 | <li class="int">Implement a <tt>READONLY</tt> mode to |
---|
| 634 | Makefiles to generate all intermediate files in |
---|
| 635 | <tt>/tmp/CMT_*</tt> rather than in <tt>../cmt</tt></li> |
---|
| 636 | |
---|
| 637 | <li class="int">Associate a dedicated project with CMTHOME and CMTUSERCONTEXT to manage strategies</li> |
---|
| 638 | |
---|
| 639 | <li class="bug">Set the macro <tt>shlibsuffix</tt> for Win32</li> |
---|
| 640 | <li class="bug">Use /bin/pwd instead of the raw pwd in various CMT scripts for Unix</li> |
---|
| 641 | <li class="bug">Fix misunderstanding of of version specification of the form v1r2p (ie without a trailing number)</li> |
---|
| 642 | <li class="bug">Explicitly close the scope sections at the end of requirements files</li> |
---|
| 643 | |
---|
| 644 | </ul> |
---|
| 645 | |
---|
| 646 | </li> |
---|
| 647 | |
---|
| 648 | <li> |
---|
| 649 | <b>v1r16</b> |
---|
| 650 | |
---|
| 651 | <ul> |
---|
| 652 | |
---|
| 653 | <!-- |
---|
| 654 | <li class="new"></li> |
---|
| 655 | <li class="bug"></li> |
---|
| 656 | <li class="int"></li> |
---|
| 657 | --> |
---|
| 658 | |
---|
| 659 | <li class="new">Offer an [x]emacs mode for editing requirements files</li> |
---|
| 660 | |
---|
| 661 | <li class="new">Permit macro expressions in the <tt>tag</tt> statement</li> |
---|
| 662 | |
---|
| 663 | <li class="new">Possibility to specify additional |
---|
| 664 | <tt>mount_filters</tt> in <tt>.cmtrc</tt></li> |
---|
| 665 | |
---|
| 666 | <li class="new">Introduce new regexp-based remove operations |
---|
| 667 | for symbols <tt>macro_remove_regexp</tt>, |
---|
| 668 | <tt>set_remove_regexp</tt> and |
---|
| 669 | <tt>path_remove_regexp</tt></li> |
---|
| 670 | |
---|
| 671 | <li class="new">Add <tt>-n</tt> and <tt>-v</tt> options to |
---|
| 672 | <tt>cmt cvs</tt> commands to support simulation and verbose |
---|
| 673 | modes</li> |
---|
| 674 | |
---|
| 675 | <li class="new">Ensure that the <tt>constituents</tt> macro is always private</li> |
---|
| 676 | |
---|
| 677 | <li class="new">Introduce support for <i>projects</i> |
---|
| 678 | associated with package areas, i.e. one project per item in |
---|
| 679 | <tt>CMTPATH</tt>. Possibility to setup strategies per |
---|
| 680 | project. Project definitions stored in a new |
---|
| 681 | <tt>cmt/project.cmt</tt> top level file. New |
---|
| 682 | <tt><package>_project</tt> standard macro. And |
---|
| 683 | associated pattern templates.</li> |
---|
| 684 | |
---|
| 685 | <li class="new">Make <tt>CMTINSTALLAREA</tt> a macro instead of a set</li> |
---|
| 686 | |
---|
| 687 | <li class="new">Suppress dependency computation when the |
---|
| 688 | <tt>make QUICK=1</tt> option is used</li> |
---|
| 689 | |
---|
| 690 | <li class="new">New <i>action</i> concept to support |
---|
| 691 | simplified shell action definition. Action is an extension |
---|
| 692 | of the generic symbol mechanism (like macros), thus defining |
---|
| 693 | an action uses the same syntax as macros. Actions are |
---|
| 694 | triggered with <tt>make</tt> or <tt>cmt do</tt></li> |
---|
| 695 | |
---|
| 696 | <li class="new"><i>public</i> and <i>private</i> section can be ended by a |
---|
| 697 | new keyword <tt>end_public</tt> <tt>end_private</tt>. Ending |
---|
| 698 | keywords switch back to the previous scope active before the |
---|
| 699 | most recent opening keyword</li> |
---|
| 700 | |
---|
| 701 | <li class="new">Can use a pattern name as a plain CMT |
---|
| 702 | keyword. I.e. the <tt>apply_pattern</tt> keyword is optional |
---|
| 703 | except to resolve ambiguities</li> |
---|
| 704 | |
---|
| 705 | <li class="int">Generate part of the standard macros before |
---|
| 706 | reading the requirements file</li> |
---|
| 707 | |
---|
| 708 | <li class="int">Lots of internal optimisations checked with |
---|
| 709 | <tt>valgrind</tt> and <tt>gprof</tt></li> |
---|
| 710 | |
---|
| 711 | <li class="bug">Only set non empty environment variables</li> |
---|
| 712 | |
---|
| 713 | <li class="bug">Fix bad definition of <tt><PACKAGE>VERSION</tt></li> |
---|
| 714 | |
---|
| 715 | <li class="bug">Add dependency to all stamps file to trigger rebuild of shared libraries</li> |
---|
| 716 | |
---|
| 717 | <li class="bug">Add dependency to all requirements file to trigger rebuild of applications</li> |
---|
| 718 | |
---|
| 719 | <li class="bug">Suppress install area cleanup action from |
---|
| 720 | cmt config and cmt setup</li> |
---|
| 721 | |
---|
| 722 | <li class="bug">Improved syntax checking on constituents</li> |
---|
| 723 | |
---|
| 724 | <li class="bug">Fix construction of paths when symlinks |
---|
| 725 | exist along pwd</li> |
---|
| 726 | |
---|
| 727 | <li class="bug">Added various protections for bad pattern |
---|
| 728 | syntaxes</li> |
---|
| 729 | |
---|
| 730 | </ul> |
---|
| 731 | |
---|
| 732 | </li> |
---|
| 733 | <li> |
---|
| 734 | <b>v1r14p20031120</b> |
---|
| 735 | <ul> |
---|
| 736 | <li class="new">Add a new standard macro $(<group>_dependencies)to specify global dependencies for a group</li> |
---|
| 737 | <li class="new">Add support for bundles on Darwin platforms</li> |
---|
| 738 | <li class="bug">Consider symlinked paths in CMTPATH entries</li> |
---|
| 739 | <li class="bug">Always setup cmtpath patterns even if the current installation area is undefined</li> |
---|
| 740 | |
---|
| 741 | <li class="new">Provide a generic pacman manifest file for |
---|
| 742 | CMT. All instances of the "<version>" pattern need to be |
---|
| 743 | substituted by the effective version of CMT to make it a |
---|
| 744 | real pacman file as follows: |
---|
| 745 | <pre>sed -e 's#[<]version[>]#'`cmt -quiet version`'#g' $CMTROOT/mgr/CMT.pacman</pre> |
---|
| 746 | </li> |
---|
| 747 | |
---|
| 748 | </ul> |
---|
| 749 | </li> |
---|
| 750 | |
---|
| 751 | <li> |
---|
| 752 | <b>v1r14p20031027</b> |
---|
| 753 | <ul> |
---|
| 754 | <li class="bug">Fix a bug in the bootstrap mechanism to define CMTINSTALLAREA</li> |
---|
| 755 | </ul> |
---|
| 756 | </li> |
---|
| 757 | |
---|
| 758 | <li> |
---|
| 759 | <b>v1r14p20031022</b> |
---|
| 760 | <ul> |
---|
| 761 | <li class="new">Add the possibility to specify exclusion files when installing directories in Installation Area (on windows only)</li> |
---|
| 762 | <li class="bug">Fix a bug : CMTINSTALLAREA symbol has to be defined before all other symbols in set_standard_macros</li> |
---|
| 763 | <li class="bug">Few fixes on nmake flavour of install area mechanisms</li> |
---|
| 764 | <li class="new">Generate <package>_cmtpath and <package>_offset also for current package</li> |
---|
| 765 | <li class="bug">Fix warning messages that confuse csh when environment variables are not defined</li> |
---|
| 766 | </ul> |
---|
| 767 | </li> |
---|
| 768 | |
---|
| 769 | <li> |
---|
| 770 | <b>v1r14p20031014</b> |
---|
| 771 | <ul> |
---|
| 772 | <li class="bug">Fix a problem in broadcast operation for handling return status 2 (caused to unexpectedly break the loop in some cases)</li> |
---|
| 773 | <li class="bug">Force auto_imports to On when context is unspecified (internal)</li> |
---|
| 774 | <li class="bug">Stop trying to make use of PWD</li> |
---|
| 775 | <li class="bug">Fix a bug in internal incomplete expansion of macros</li> |
---|
| 776 | <li class="bug">Fix a bug in consistency checks of PWD vs CMTINSTALLAREA</li> |
---|
| 777 | <li class="new">Convert $(cmtpath) and $(offset) macros to $(package_cmtpath) and $(package_offset)</li> |
---|
| 778 | <li class="new">Add dependency list for constituent makefile similar to the constituent target (force the same build order)</li> |
---|
| 779 | <li class="bug">Fix a bug in use graph internal management</li> |
---|
| 780 | <li class="bug">Fix setup script calling mechanism in no_version style</li> |
---|
| 781 | <li class="new">Add a -k=<regexp> argument for selection patterns of constituent sources.</li> |
---|
| 782 | <li class="new">Support wildcarded suffixes (*.*) in constituent sources</li> |
---|
| 783 | <li class="new">Standardize the output format of show uses (make it reliable for user scripts)</li> |
---|
| 784 | </ul> |
---|
| 785 | </li> |
---|
| 786 | |
---|
| 787 | <li> |
---|
| 788 | <b>v1r14p20030811</b> |
---|
| 789 | <ul> |
---|
| 790 | <li class="bug">Trailing slashes on offset specification in use statement were causing troubles. Now they are properly handled.</li> |
---|
| 791 | <li class="new">The broadcast pattern as well as the standard macro <cmtpath> is now renamed <package_cmtpath> to avoid confusion with the CMTPATH variable on Windows.</li> |
---|
| 792 | <li class="int">Make use of ${PWD} when available to acquire the value for "cmt show pwd"</li> |
---|
| 793 | <li class="bug">Add or refresh tuning for CYGWIN and for LynxOS</li> |
---|
| 794 | <li class="bug">Work around a limitation of some old version of the C++ compiler on LynxOS</li> |
---|
| 795 | <li class="new">Improve the display of incompatible use specifications.</li> |
---|
| 796 | <li class="int">Dynamically create the CMTDownload.html web page to really reflect what is available when installing the CMT release on the primary CMT web site.</li> |
---|
| 797 | <li class="bug">Setup.bat scripts on DOS are now relocatable wrt heterogeneous file systems (AFS, DFS, etc...)</li> |
---|
| 798 | </ul> |
---|
| 799 | </li> |
---|
| 800 | |
---|
| 801 | <li> |
---|
| 802 | <b>v1r14p20030620</b> |
---|
| 803 | <ul> |
---|
| 804 | <li class="new">introduce a generic "Unix" tag for all Unix platforms. Both Linux, HP-UX, LynxOS, alpha, ... do validate Unix</li> |
---|
| 805 | <li class="new">hide the make_fragments declaration in private sections. This was not true previously. A make_fragment declaration installed in a private section will now be hidden to clients.</li> |
---|
| 806 | <li class="bug">convert ${} into $() syntax for tag makefiles on Windows. This actually reverts to a feature of an old CMT version which had disappeared. This was causing a problem since the ${} syntax is not understood by nmake</li> |
---|
| 807 | <li class="new">add a command "cmt show use_paths <target>" to display all possible paths to the target package. This is useful to understand how a given package is reached, for instance when it is desired to cut the use relationship and make it private somewhere in the graph.</li> |
---|
| 808 | <li class="new">add a command "cmt show cycles" to display circular dependencies in the use graph.</li> |
---|
| 809 | <li class="new">provide a binary RPM for CMT itself (only for redhat 7.2 distribution). It is downloadable from the usual Download page and provide a complete installation of CMT (including make fragments, binary, etc..). It is a relocatable RPM (install it using the --relocate option). (See the install WEB page for complete notice)</li> |
---|
| 810 | <li class="new">Add an extended script to retrieve information about Linux version (cmt_linux_version.sh). It supports Redhat, Debian, Suse. It is used to compute the cmt_system_version macro (contributions from Clark McGrew and Wim Lavrijsen)</li> |
---|
| 811 | <li class="bug">The setup scripts for Windows now use %TEMP% instead of %HOMEDRIVE%%HOMEPATH% to store temporary files (contributions from Pere Mato and Florence Ranjard)</li> |
---|
| 812 | <li class="new">Add the --public and --private global options for cmt commands, to control whether the use graph traverses or not the private sections: |
---|
| 813 | <pre> |
---|
| 814 | > cmt --public ... |
---|
| 815 | </pre> |
---|
| 816 | only sees public uses (default behavior for most commands but not for cmt broadcast and cmt show uses which traverse the private sub graphs) |
---|
| 817 | <pre> |
---|
| 818 | > cmt --private ... |
---|
| 819 | </pre> |
---|
| 820 | forces the traversal of private subgraphs. This is already the default behavior for cmt show uses and for cmt broadcast, but can now be applied to any CMT command.</li> |
---|
| 821 | <li class="bug">A global pattern specifying private sections did not really generate private definitions</li> |
---|
| 822 | </ul> |
---|
| 823 | </li> |
---|
| 824 | |
---|
| 825 | <!-- |
---|
| 826 | <li> |
---|
| 827 | <b></b> |
---|
| 828 | <ul> |
---|
| 829 | <li class=""></li> |
---|
| 830 | </ul> |
---|
| 831 | </li> |
---|
| 832 | --> |
---|
| 833 | |
---|
| 834 | </ul> |
---|
| 835 | |
---|
| 836 | |
---|
| 837 | <hr> |
---|
| 838 | <address><a href="mailto:arnault@lal.in2p3.fr">Christian Arnault</a></address> |
---|
| 839 | </body> |
---|
| 840 | </html> |
---|