Subversion Repositories DevTools

Rev

Rev 1328 | Rev 1348 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
361 dpurdie 1
------------------------------------------------------------------------
1341 dpurdie 2
Version:  2.100.7000.cr                               Released:
1269 dpurdie 3
------------------------------------------------------------------------
4
Major changes:
1341 dpurdie 5
 
6
Minor changes:
7
    * Utility: svnsave_build
8
      Failure to change the author of the build is not an error.
9
      This allows for non-standard repositories being used during consolidation
10
 
11
------------------------------------------------------------------------
12
Version:  2.100.6000.cr                               Released: 30-Jul-12
13
------------------------------------------------------------------------
14
Major changes:
1328 dpurdie 15
    * Subversion Repository location
16
      The correct paths to the various SubVersion repositories is:
17
        GBE_SVN_URL_AUPERASVN01: https://auperasvn01.aupera.erggroup.com/svn
18
        GBE_SVN_URL_FRBESASVN01: http://frbesasvn01.frbesa.erggroup.com/svn
19
      Windows users may need to update there jats.bat file.
20
      These are Fully Qualified Domain Names.    
1269 dpurdie 21
 
22
Minor changes:
1328 dpurdie 23
    * Jats startup warning introduced in 2.100.5000.cr
24
      Now accepts both / and \ as path separators.
25
 
1269 dpurdie 26
    * Utility: svnrelease
27
      Modified the operation of the '-branch' to better mimic the ClearCase
28
      operation of the same command. If the specified branch exists, then it
29
      will be used, otherwise it will be created based on the specified tag.
30
 
1328 dpurdie 31
    * Utility: svnsave_build
32
      Modify the operation such that the 'author' of the saved build is set to
33
      that of the user that created the version that that build is based upon.
34
      This preserves the history of the build a lot better than tagging all
35
      builds as being done by 'buildadm'.
1269 dpurdie 36
 
37
    * Utility: ccdelete_view
38
      Allow the user to specify ClearCase viewtags or a viewstore path.
39
 
1328 dpurdie 40
    * Utility: sandbox
41
      Added options to control the packages processed. The user can specify
42
      a range of packages and exclude or include specific packages.
43
 
44
      Subcommand: populate
45
      Added -exclude=name[,name]+ to allow specific packages to be excluded
46
      Add -all option to force dependency testing of packages already in the
47
      sandbox.
48
 
1269 dpurdie 49
    * Subversion Support
50
      With an automated build environment the use of a default Subversion
51
      repository is not supported.
52
 
53
      Creating a workspace will display the files being extracted providing
54
      a progress indication.
55
 
56
    * Jats Online Documentation
57
      Migrated several items from the VIX Wiki to the FAQ section of the
58
      online documentation.
59
 
1328 dpurdie 60
    * Generated makefiles
61
      Improved tracing of package archive source in comments
62
 
1269 dpurdie 63
------------------------------------------------------------------------
403 dpurdie 64
Version:  2.100.5000.cr                               Released: 28-May-12
392 dpurdie 65
------------------------------------------------------------------------
66
Major changes:
67
 
68
Minor changes:
396 dpurdie 69
    * New Platform: WCENAUTIZX5
70
     "Nautiz eTicket Pro" built under VS2005
392 dpurdie 71
 
398 dpurdie 72
    * Jats startup will warn Windows Users if jats.bat does not
73
      link to the dynamically updated version of JATS. 
74
 
392 dpurdie 75
Internal:
76
    * Corrected error handling in Release Manager Database connection
77
      Worked on Windows, but not linux.
78
 
79
------------------------------------------------------------------------
387 dpurdie 80
Version:  2.100.4000.cr                               Released: 30-Apr-12
81
------------------------------------------------------------------------
82
Major changes:
83
 
84
Minor changes:
85
    * Jats makefile directive: MakeProject
86
      Improved support for packaging files with spaces and other make-unfriendly
87
      characters in their pathname.
88
 
89
------------------------------------------------------------------------
385 dpurdie 90
Version:  2.100.3000.cr                               Released: 20-Apr-12
91
------------------------------------------------------------------------
92
Major changes:
93
 
94
Minor changes:
95
    * Platform: VIXITP
96
      Minor enhancements
97
 
98
    * JATS wrappers
99
      Updated default paths to Subversion Servers
100
 
101
    * Subversion Support
392 dpurdie 102
      Added svn delete-branch
385 dpurdie 103
 
104
------------------------------------------------------------------------
383 dpurdie 105
Version:  2.100.2000.cr                               Released: 13-Apr-12
106
------------------------------------------------------------------------
107
Major changes:
108
 
109
Minor changes:
387 dpurdie 110
    * GCC Toolmaking
383 dpurdie 111
      Use JATS' internal dependency generator. This is much faster than the
112
      use of the gcc as previously implemented.
113
 
114
    * New Platform: VIXITP
387 dpurdie 115
      Specialized platform for the VIX 'ITP' product.
383 dpurdie 116
 
117
    * Subversion Support
118
      Documented the use of 'TIMESTAMP' in svn commands
119
      svnrelease. The -branch option supports the special name TIMESTAMP
120
 
121
 
122
------------------------------------------------------------------------
381 dpurdie 123
Version:  2.100.1000.cr                               Released: 28-Mar-12
124
------------------------------------------------------------------------
125
Major changes:
126
 
127
Minor changes:
128
    * Jats makefile directive: MakeLinuxDriver
129
      Added support for source files not in the same directory as the
130
      makefile.
131
 
132
    * Jats makefile directives: SharedLib and Lib
133
      Improved support for named source files with directory elements
134
 
135
------------------------------------------------------------------------
379 dpurdie 136
Version:  2.100.0000.cr                               Released: 23-Mar-12
137
------------------------------------------------------------------------
138
Major changes:
139
 
140
    * WIN32 Target (Visual Studio 6)
141
      This target will now consume headers/libraries from a VS6 directory.
142
      This has been provided to allow the use of Dinkumware_STL to be limited
143
      to this one compiler. Specifically we need to excluded the use of
144
      Dinkumware from VS2010 builds.
145
 
146
    * C# Toolchain
147
      Correctly detect missing .cs file in .resx /.cs file pair.
148
 
149
Minor changes:
150
    * Jats wrapper script
151
      New option: -logfile=name
152
 
153
    * Jats configuration
154
      jats.bat example (Windows)
155
      jats.sh example (Unix)
156
      Redefined location of the Perth Subversion server AUPERASVN01
157
 
158
    * Escrow build on solaris_x86
159
      Added workaround for strange issue on X86 based Solaris machines
160
      The GBE_MACHTYPE EnvVar would disappear during the build process
161
 
162
    * Utility ccrelease
163
      The -extractfiles option nolonger uses a dynamic view to perform the
164
      extraction. It uses the same process as normal view creation.
165
 
166
    * Utility: svn
167
      Improved package import processing.
168
      Allow Date, Author and Log to be added to the imported package
169
 
170
    * Jats Utility: gen_cots
171
      Added support for Subversion.
172
      Subversion is supported on Windows and Unix.
173
      ClearCase is supported on Windows.
174
 
175
    * Jats Utility: vcsdiff
176
      New Utility. Will diff two versions of a package. Supports
177
      mixed ClearCase and Subversion versions.
178
      Under windows it can invoke BeyondCompare
179
      Under Windows and Unix it can perform a MD5 check over both directories.
180
 
181
------------------------------------------------------------------------
377 dpurdie 182
Version:  2.99.2000.cr                               Released: 3-Feb-12
183
------------------------------------------------------------------------
184
Major changes:
185
 
186
Minor changes:
187
    * BuildVersion directive
188
      Updated Company Name, Copyright and Trademark strings to 'Vix IP Pty Ltd'
189
 
190
    * GCC Toolset
191
      Added support for filterering warning messages, via a warnings.gcc file
192
 
193
------------------------------------------------------------------------
375 dpurdie 194
Version:  2.99.1000.cr                               Released: 13-Jan-12
195
------------------------------------------------------------------------
196
Major changes:
197
 
198
Minor changes:
199
    * Command: jats clobber
200
      When building packages that use deploylib - remove the 'build/deploy'
201
      directory as a part of the clobber processing.
202
 
203
    * Jats wrapper. Environment Variable Cleanup (Windows Only)
204
      Force ALL EnvVars stored in the environment and passed to programs
205
      invoked by JATS to be converted to upper case.
206
 
207
      This solves problems associated with some programs that do not treat
208
      Windows EnvVars as case insensitive.
209
 
377 dpurdie 210
      A useful side effect of this change is that VS2010 running on
211
      64-bit Windows-7 will now locate the default installation of VS2010, as
212
      will many other toolsets.
375 dpurdie 213
 
214
    * jats svnlabel
215
      Report conflicting options: Label and Clone
216
 
217
      Correct the 'label' operation. The user is not allowed to provide
218
      path. The user must provide a simple label. JATS will determine the
219
      workspace and the correct branch/tag to place the label in.
220
 
221
    * Built Daemon support
222
      jats_svn_savebuild will now delete a WIP if its in the /tags/ directory.
223
      This allows WIPs to be tags or branches
224
 
225
------------------------------------------------------------------------
373 dpurdie 226
Version:  2.99.0000.cr                               Released: 06-Jan-12
227
------------------------------------------------------------------------
228
Major changes:
229
    * GCC Toolset
230
      Modified the creation and maintenance of debug information.
231
      New methodology is:
232
        Debug information is created for both production and debug builds
233
        Debug information is placed in a .dbg file, which is linked to the
234
        executable, or shared library. The .dbg file is packaged in the manner
235
        as the main binary.
236
 
237
      This methodology does not bloat the binary with debug information, while
238
      retaining debug information. The binary transferred to an embedded
239
      device does not contain debug information, yet the image used in the
240
      debugger can still access the debug information. This is the best of
241
      both worlds.
242
 
243
Minor changes:
244
    * HTML Documentation
245
      JatsWelcome.html - Extended references to BMS documentation.
246
 
247
Internal changes:
248
    * Generated makefiles
249
      Removed the make_usage target as it is inaccessible. It was replaced by
250
      jmake's 'help' command a long time back.
251
 
252
------------------------------------------------------------------------
371 dpurdie 253
Version:  2.98.4000.cr                               Released: 23-Dec-11
254
------------------------------------------------------------------------
255
Major changes:
256
    * Jats Sandbox
257
      Softlinks to packages within the sandbox are now relative to the root of
258
      the sandbox. This allows packages in the sandbox to be created under one
259
      machine architecture and consumed under another.
260
 
261
    * RIORDS Platform
262
      Generate output files with the package version embedded in the name
263
      This can be disabled with --NoVersion
264
 
265
      Package up the 'hex' file created when the .img file is processed.
266
 
267
 
268
Minor changes:
269
    * Processing makefile.pl
270
      Better handling of some shared library arguments for undeclared files
271
      Error detection of some arguments that start with white-space
272
 
273
------------------------------------------------------------------------
369 dpurdie 274
Version:  2.98.3000.cr                               Released: 14-Dec-11
275
------------------------------------------------------------------------
276
Major changes:
277
 
278
Minor changes:
279
    * New Platform and Toolchain
371 dpurdie 280
      Platform is RIORDS. This uses the MSP430 toolchain.
369 dpurdie 281
      Beta release of this toolchain
282
 
283
    * Jats Escrow. Escrow extraction
284
      Force views created to be done in the same manner as the build daemon.
285
      Under Clearcase, do not include the /main/0 rule.
286
 
287
    * Utility: ccrelease (jats release, jats extract)
288
      Correct use of /main/0 on Unix platforms to match Windows behavior.
289
      Only add /main/0 if the user has provided a path to a directory within
290
      a vob.
291
 
292
    * Various changes to remove warnings when used with perl 5.14.
293
      Note: Perl 5.14 is not recommended.
294
            Perl 5.8.8 is recommended.
295
 
296
    * Windows utilities
297
      Updated 7z to version 9.20.
298
 
299
    * Subversion Support
300
      Support for 1.7 error messages
301
      Extended the 'jats svn' utility. New subcommands:
302
        paths - Display Subversion tag to URL conversions
303
        tag   - Convert a path or URL to a Release Manager Tag
304
        url   - Convert Release Manager tag to URL
305
 
306
    * COBRA Toolset
307
      Suppress compiler warning on incompatible ABI
308
 
309
    * Create dpkg utility
310
      Allows packaging from a sandbox, but only of package versions 99.99.99
311
 
312
Internal changes:
313
    * Generated makefiles are now dependent on DPACKAGE files from dependant
314
      packages, if present.
315
 
316
------------------------------------------------------------------------
367 dpurdie 317
Version:  2.98.2000.cr                               Released: 15-Nov-11
318
------------------------------------------------------------------------
319
Major changes:
320
 
321
Minor changes:
322
    * Jats Utility:
323
      Added 'ccdelete_view'. This utility will delete a Clear Case view given a
324
      viewtag, even if the view has been deleted from disk.
325
 
326
    * Jats startup
327
      Jats will report an error if started in a directory that is inaccessible
328
      to the user. An error will also be report if jats is directed to change to
329
      in inaccessible directory.
330
 
331
    * Building an ANT project.
332
      Jats will warn if a buildfile does not have an associated depends file.
333
 
334
    * TOOLSET: GCC
335
      The 'options=args' now shows the operation of the dependency generation step.
336
 
337
    * TOOLSET: WINCE
338
      Better detection of missing SDK components.  
339
 
340
    * Subversion support
341
      Allow untrusted certificates in https connections.
342
      VisualSvnServer provides self signed certificates
343
 
344
Internal:
345
    * Makefile generation
346
        Removed the use of the .rul file. Now generated in place.
347
        Removed PLATFORM.mk dependencies. Work is done in jmake.
348
 
349
------------------------------------------------------------------------
365 dpurdie 350
Version:  2.98.1000.cr                               Released: 15-Sep-11
351
------------------------------------------------------------------------
352
Major changes:
353
 
354
Minor changes:
355
    * Utility: cclabel
356
      Handle VCS tags of the form CC::path::label and extract the vob name and
357
      the clearcase label.
358
 
359
    * Subversion support
360
      Report errors when required utilities cannot be found
361
      Delay reporting until utilities are required to allow the help system
362
      to operate.
363
 
364
------------------------------------------------------------------------
363 dpurdie 365
Version:  2.98.0000.cr                               Released: 09-Aug-11
366
------------------------------------------------------------------------
367
Major changes:
368
    * New toolset: ARM251
369
 
370
    * New target platform: ARM_I5100
371
      Uses the ARM251 toolset.
372
 
373
Minor changes:
374
    * HTML Help
375
      Correct display of subheadings in the Table of Contents under IE8
376
 
377
    * jats build -noforce
378
      The 'quick' test to force a re-build now takes the value of
379
      GBE_BUILDFILTER into account. If the value changes, then a rebuild will
380
      be forced.
381
 
382
      This affect the 'jats all' and associated 'sandbox' commands.
383
 
384
    * Utility: ccrelease (jats release, jats extract)
385
      Improved the ClearCase config spec used to create the view.
386
 
387
      If the command specifies a branching rule, then the view will not allow
388
      directories above the package base to be branched. This will prevent
389
      unintentional branching within the root of the VOB.
390
 
391
      If the command does not specify a branching rule, the view now allows
392
      files and folders to be 'added' within the view, within the package. This
393
      feature is suppressed when the tool is used by the AutoBuilder, or when
394
      the load path contains only the name of the VOB.
395
 
396
    * Utility: svnrelease
397
      Remove duplicate package-name words from the generated workspace name to
398
      provide a cleaner workspace name.
399
 
400
      Allow the workspace to be deleted in 'release' mode by changing out of the
401
      workspace directory before attempting the delete.
402
 
403
    * Utility: svn
404
      Added 'test' to verify that the subversion CLI utility has been
405
      installed and can be used.
406
 
407
    * Toolset: CSharp
408
      Utilize features of cmdfile to simplify the generated makefile
409
      Force the generated command file to have correct directory separation
410
      character.
411
 
412
    * Toolset: SunWorks
413
      Corrected usage of the -erroff directive
414
      The later SunWorks compilers are more strict about its usage.
415
      May affect 64 Solaris builds as the incorrect usage may have been
416
      masking an error.
417
 
418
    * Toolset: Delphi7
419
      Correct library building process that had been broken by previous
420
      enhancement.
421
 
422
    * Toolset: dafbr
423
      Internal option to simplify compiler testing
424
 
425
    * makefile.pl directive: GenerateFiles and RunTests
426
      Corrected operation of the '--PackageInfo' expansion
427
        - Return correct path to package
428
        - If no info is selected, then assume '--path'
429
 
430
    * build.pl directive: BuildPlatforms
431
      Added a '--Alias=Name[,Name]+' option. This allows the setting of
432
      a platform alias, when the platform is defined.
433
 
434
    * build.pl directive: BuildVersion
435
      Generate well formed VB6 definitions for packages that have dependent
436
      packages.
437
 
438
    * make command: show
439
      Improved the readability of the 'Alias Targets' list in the
440
      'jats make show' command.
441
 
442
    * Utility: create_dpkg
443
      When transferring files from a Windows file system to dpkg_archive
444
      ensure that the execute permission is set for all users.
445
 
446
      Allows 'GENERIC' packages to package up executables that will be
447
      executed on Unix machines.
448
 
449
------------------------------------------------------------------------
361 dpurdie 450
Version:  2.97.0000.cr                               Released: 24-Jun-11 
451
------------------------------------------------------------------------
452
Major changes:
453
    * HTML Help (Experimental)
454
      Generated documentation for the various JATS utilities
455
      It is based on the internal JATS documentation available on the command
456
      line.
457
 
458
      Use http://auperaunx26.aupera.erggroup.com/devl/core_devl2/HTML/index.html
459
 
460
Minor changes:
461
    * PackageFile directive
462
      Allow packaging of files with a comma in the name.
463
      Used by some COTS packages.
464
 
465
    * Windows utilities used by jats
466
      stdmux and rpccpp: provide production versions that do not use debug
467
      libraries as these are not present for all users.
468
 
469
    * Jats utility: dstatus
470
      Shows the user friendly host name rather then the internal machine name.
471
      This change is in line with the changes to Release Manager
472
 
473
    * Utility: svnrelease
474
      Better deletion of workspaces referenced with non-standard URLs
475
      Corrected problem with -branch=name option
476
 
477
    * Utility: svnrelease and ccrelease
478
      Better deletion of workingspace directory.
479
      Attempt to correct for directory permission problems.
480
 
481
    * Updated definition of GBE_SVN_URL_FRBESASVN01 to use
482
      the server by name, rather than IP address: 'frbesasvn01'
483
 
484
    * Added EnvVar GBE_VCS to control the default Version Control System
485
      employed by the 'jats release' and 'jats extract' commands.
486
 
487
      Usable values are: 'cc' and 'svn'.
488
      The default value is 'cc', providing backward compatability to existing
489
      developers.
490
 
491
 
492
------------------------------------------------------------------------
359 dpurdie 493
Version:  2.96.4000.cr                               Released: 06-May-11
494
------------------------------------------------------------------------
495
Major changes:
496
 
497
Minor changes:
498
    * WIN32 Toolset
499
      Remove .exp and .lib files that may be created when building a program.
500
      These files may be generated when using code to create a DLL is used
501
      to create an EXE.
502
 
503
    * Utility: upddep
504
      Handle packages with version strings like: 1.6.0,REV=2006.11.29.05.03
505
      The '=' was causing issues.
506
 
507
    * Utility: sandbox
508
      New sub command - populate. Beta Release of this command
509
      This sub command can be used to populate a sandbox with a specific package
510
      and (optionally) its dependents, that (optionally) are not available
511
      in a package archive.
512
 
513
      Sub command: create
514
      New option '-exact'. This will create a sandbox in which the package
515
      version numbers are significant. This is useful when recreating a specific
516
      package version.
517
 
518
      Command specific help
519
      Each sub command now has its own help.
520
      ie: 'jats sandbox populate -help' will provide help on the populate
521
      command.
522
 
523
    * BuildVersion directive
524
      Will create well formed Windows Resource files when the Packages Build
525
      Number is greater than 7.
526
 
527
Internal:
528
    * Removed jats_save_build.pl
529
      No longer used by the build tool.
530
 
361 dpurdie 531
------------------------------------------------------------------------
357 dpurdie 532
Version:  2.96.3000.cr                               Released: 14-Mar-11
533
------------------------------------------------------------------------
534
Major changes:
535
 
536
Minor changes:
537
    * Minor tweaks for WCEIPA280 support
538
 
539
    * Build tool support: jats_vcssave_build
540
      Deprecated unused options.
541
 
361 dpurdie 542
------------------------------------------------------------------------
355 dpurdie 543
Version:  2.96.2000.cr                               Released: 10-Mar-11
544
------------------------------------------------------------------------
545
Major changes:
546
 
547
Minor changes:
548
    * New WinCE platform: WCEIPA280
549
      Uses VS2005 and the IPA280 SDK from Ingenico
550
 
361 dpurdie 551
------------------------------------------------------------------------
353 dpurdie 552
Version:  2.96.1000.cr                               Released: 09-Mar-11
553
------------------------------------------------------------------------
554
Major changes:
555
 
556
Minor changes:
557
    * EnvVars
558
      Support for GBE_SVN_URL_xxx to support multiple SubVersion repositories
559
      at multiple locations.
560
 
561
    * Build tool support: jats_vcssave_build
562
      New option -isawip to allow deprecation of -wiplabel option in
563
      a future release.
564
 
361 dpurdie 565
------------------------------------------------------------------------
351 dpurdie 566
Version:  2.96.0000.cr                               Released: 01-Mar-11
567
------------------------------------------------------------------------
568
Major changes:
569
    * CSHARP2010 target
570
      Force all C# compilations to be targeted at a 32-bit platform.
571
 
572
Minor changes:
573
    * jats escrow utility
574
      Uses VcsTag and jats_vcsrelease to be version control system agnostic.
575
 
361 dpurdie 576
------------------------------------------------------------------------
349 dpurdie 577
Version:  2.95.1000.cr                               Released: 14-Feb-11
578
------------------------------------------------------------------------
579
Patch changes:
580
    * Built Tool Interface Changes
581
        Rename jats_vcs_save_build.pl to jats_vcssave_build.pl
582
        Rename jats_release.pl to  jats_vcsrelease.pl
583
      to create a consistent naming convention for the buildtool
584
      interface to Version Control System aware tools.    
585
 
361 dpurdie 586
------------------------------------------------------------------------
347 dpurdie 587
Version:  2.95.0000.cr                               Released: 11-Jan-11
588
------------------------------------------------------------------------
589
Major changes:
590
    * Initial (experimental) support for VS2010, both for C# and C/C++
591
    Introduces two new platforms:
592
        CSHARP2010 (.NET 4.0)
593
        VS2010
594
 
595
Minor changes:
596
    * jats_rewrite - used only by the build daemons
597
      Better handling of 'cots' packages.
598
 
599
    * jats upddep utility
600
      Add -keep option to retain the config data extracted from the
601
      Release Manager data base for diagnistic use.
602
 
603
    * Added Linux profile scripts to build installers
604
      Added TEMPLATES/INSTALL to the packaged version of JATS
605
      Support for Linux under
606
        RHEL4
607
        Ubuntu 10.04
608
 
609
Internal:
610
    * System(--Shell) escaping - improved.
611
      Only escape spaces if there are multiple arguments.
612
 
613
------------------------------------------------------------------------
345 dpurdie 614
Version:  2.94.0000.cr                               Released: 16-Dec-10
227 dpurdie 615
------------------------------------------------------------------------
345 dpurdie 616
Major changes:
617
 
618
Minor changes:
619
    * New target platform - PHP
620
      This target is only available on a Windows Platform. It is used to limit
621
      the processing of PHP artifacts by the ZendGaurd.
622
 
623
    * Utility: cache_dpkg
624
      Used internally to cache packages to a local archive.
625
      When an error is encountered in the transfer the utility will now
347 dpurdie 626
      correctly delete the package that it was transferring. Previously it
345 dpurdie 627
      could leave a partially transferred package.
628
 
629
    * Utility: create_dpkg [DEVI-063950 ]
630
      Creates build.<MachineName> marker files as well as built.<MachType>.
631
      Partial work for DEVI-063950
632
 
633
    * makefile.pl directives
634
      Corrects and extended the operation of the platform-specifier.
635
      All non-platform options must be true, while the platform names are
636
      treated as before - any of them may be true. See MASS-00166 for full
637
      details.
638
 
639
Internal:
640
    * System(--Shell) operations will escape spaces in the argument
641
      Allows the use c:\Program Files\... in path elements.
642
 
643
------------------------------------------------------------------------
343 dpurdie 644
Version:  2.93.0000.cr                               Released: 03-Dec-10
645
------------------------------------------------------------------------
646
Major changes:
647
 
648
Minor changes:
649
    * Jats Sandbox operation
650
      Don't remove .RUL files in sandbox testing of the build files
651
 
652
    * Jats MakeProject directive
653
      Added --TargetDebug= and --TargetProd=  to allow the default target
654
      of the project builds to be specified.
655
 
656
      Can be used in all targets that use a Visual Studio project or solution
657
      to build a package.
658
 
659
    * MergeLibrary directive
660
      New sub-option --InterfacePlain
661
      This will allow the use of 3rd party libraries that do not have a P or D
662
      suffix in the library name.
663
 
664
    * GenerateFiles directive
665
      Use of --Var(ObjDir) will cause the Object directory to a prequisite
666
      of the command. Similar for BinDir and LibDir.
667
 
668
    * BuildPlatform
669
      New option: --NoToolSet
670
      Supresses the check for the existance of the underlying toolset.
671
      Ensures that the user does not attempt to use the underlying toolset.
672
 
673
      To be used in packages that generate installers, where there is
674
      no compilation phase, but the package search mechanism may still
675
      need toolset specific information.
676
 
677
      Normally used in conjunction with --OnlyProd.
678
 
679
      eg: BuildPlatforms ( 'WIN32,--OnlyProd,--NoToolSet' );
680
 
681
Internal:
682
    * Jats EnvVars, ccrelease and svnrelease
683
      Factored out the default value of GBE_VIEWBASE and associated
684
      processing into jats.pl
685
 
686
      Expect GBE_VIEWBASE to be site specific. Defaults are suitable for
687
      a ClearCase site.
688
 
689
------------------------------------------------------------------------
341 dpurdie 690
Version:  2.92.0000.cr                               Released: 08-Nov-10
691
------------------------------------------------------------------------
692
Major changes:
693
 
694
Minor changes:
695
    * DEVI-059977: 64-bit Solaris libraries try to link against 32-bit libs
696
      The 64-bit Solaris build will no longer attempt to consume 32-bit
697
      libraries or header files.
698
 
699
    * New tool update_release
700
      Extracts current package version list from Deployment Manager SBom(s)
701
      and copy resultant packages to release specific directory.
702
 
703
      Use 'jats man update_release' for full details
704
 
705
    * New tool ccmerge_build
706
      Merge an autobuilt build.pl file back to the parent branch
707
      and leave the resultant file checked out.
708
 
709
      Use 'jats man ccmerge_build' for full details
710
 
711
    * Jats Sandbox command
712
      Improved operation of 'sandbox all' and packages that use
713
      BuildPkgArchive.
714
 
715
    * GCC and SUNWORKS tools
716
      Allow shlib dependency generation to be displayed in verbose mode
717
 
718
Internal:
719
    * Work for subversion support
720
 
721
    * Build
722
      Use Perl 'File' operations instead of system function to delete
723
      directories. Is faster under Windows.
724
 
725
------------------------------------------------------------------------
339 dpurdie 726
Version:  2.91.0000.cr                               Released: 15-Sep-10
727
------------------------------------------------------------------------
728
Major changes:
729
    * SharedLib directives for Solaris and GCC targets
730
      Added support to control the 'soname' embedded within the shared
731
      library. Refer the MASS-00166 for full details. Use with care.
732
 
733
------------------------------------------------------------------------
337 dpurdie 734
Version:  2.90.0000.cr                               Released: 14-Sep-10
735
------------------------------------------------------------------------
736
Major changes:
737
    * New platform - 'COBRA'.
738
      Support for the ARM926EJS based hardware.
739
      This is a Linux based target.
740
      Requires a new compiler to be installed into build machines
741
 
742
Minor changes:
743
    * Jats sandbox command
744
      Basic support for the 'cache' command.
745
      Allows external dependent packages to be cached for disconnected
746
      development.
747
 
748
------------------------------------------------------------------------
335 dpurdie 749
Version:  2.89.0000.cr                               Released: 13-Sep-10
750
------------------------------------------------------------------------
751
Major changes:
752
    * [DEVI-062103]
753
      Many (11) toolsets - all that generate linker dependency
754
      files for creating shared libraries or programs.
755
        Solaris, Gcc, WIN32, Wince, MOS, Verix, Keil, AVR_IAR,
756
        CSHARP, MCR, Pharlap.
757
 
758
      Better, simpler, and in some cases correct, generation
759
      of dependency files used in linking. Also generate separate
760
      files for Production and Debug builds.
761
 
762
Minor changes:
763
    * Jats sandbox command
764
      The 'info' subcommand will highlight external packages that cannot be
765
      found in any of the the package archives.
766
 
767
    * Jats release -extract
768
      The ClearCase view that is created will have a comment tag added that
769
      describes:
770
        - the directory in which the user created the view
771
        - the date of creation
772
 
773
    * PackageFile directive
774
      Now supports --NoRecurse and --Recurse in conjunction with --DirTree
775
 
776
Internal:
777
    * PackageFile, PackageHdr and InstallHdr directives
778
      Removed --Abs option - its not supported
779
      Fixed --Full option.
780
 
781
------------------------------------------------------------------------
782
Version:  2.88.0000.cr                               Released: 26-Jul-10
783
------------------------------------------------------------------------
784
Major changes:
785
 
786
Minor changes:
787
    * Dependency Generation Tool - mkdepend
788
      Correct a problem encountered when the name of an included file
789
      matches the name of a subdirectory within the include search path
790
      resulting in multiple builds.
791
 
792
    * SOLARIS and LINUX toolsets
793
      Corrected problem in dependency tracking of shared libraries
794
      Dependency between shared librares was not being used at all.
795
 
796
      Only affected Solaris and Linux builds
797
 
798
      Still an issue that affect all platforms that build shared libaries.
799
      Dependency tracking does not work correctly for both debug and
800
      production builds. It will work for the first one done.
801
 
802
------------------------------------------------------------------------
331 dpurdie 803
Version:  2.87.0000.cr                               Released: 13-Jul-10
804
------------------------------------------------------------------------
805
Major changes:
806
 
807
Minor changes:
808
    * Jats label command
809
      New option '-entireview' to be used by the build daemon
810
      Not recommended for general use.
811
      Will locate the root of the current view and label all files and
812
      directories within the current view.
813
 
814
      Removed the double check of labeled files introduced in
815
      version 2.80.3000.cr as the problem has been found and corrected
816
      elsewhere.
817
 
818
    * Jats save_build
819
      Use a better set of options of 'cleartool find' to speed up
820
      the determination of a branch.
821
 
822
      Use the -entireview option of the jats label utility to speed
823
      up labeling by the build daemons.
824
 
825
    * Jats build
826
      Better handling of sandboxed packages.
827
        Indicates that the dependency is from a sandbox
828
        No overwrite warnings when reinstalling a package
829
 
830
    * Borland6 toolset
831
      Changed the default value of where Borland6 is installed
832
      to match the documented install location of:
833
        c:\BCB6\CBuilder6
834
 
835
    * Jats build
836
      Added -noforce option to only generate build files if they
837
      are out of date. It will only recreate makefiles if needed.
838
      This is a very quick operation.
839
 
840
      The default operation is '-force'. This will populate the
841
      interface directory and generate makefiles.
842
 
843
    * Jats all [Experimental. Feed back welcome]
844
      Uses the '-noforce' form of the build command such that build
845
      files are only recreated if need be.
846
 
847
      The 'all' command will do what is needed in order to rebuild
848
      the package. It will do a build, if need be, and then
849
      make the package.
850
 
851
    * Jats sandbox
852
      The 'all' command will perform a '-noforce' build followed by a make.
853
 
854
      The 'build' command will perform a build followed by a make. This will
855
      be a complete build of all component packages.
856
 
857
      The 'jats sandbox all' command can be used to rebuild all
858
      components in an efficient manner. If the build files have changed,
859
      then the makefiles will be regenerated, other wise only the make phase
860
      is performed.
861
 
862
Internal:
863
    * build.pl
864
      Cleanup the start-up processing of build.pl and buildlib.pl            
865
 
866
 
867
------------------------------------------------------------------------
329 dpurdie 868
Version:  2.86.2000.cr                               Released: 21-May-10
869
------------------------------------------------------------------------
870
Major changes:
871
 
872
Minor changes:
873
    * RunTest directive
874
      Corrected problems with the --Var(xxxx) option when used in conjunction
875
      with the --abspath option.
876
 
877
    * Jats label command
878
      Removed redundant 'cleartool describe' operations to speed up the process.
879
 
880
------------------------------------------------------------------------
327 dpurdie 881
Version:  2.86.1000.cr                               Released: 11-May-10
882
------------------------------------------------------------------------
883
Major changes:
884
    * New compiler support
885
      Support for the Keil Arm V4.03a compiler
886
      This is enabled via:
887
        build.pl: BuildPlatforms ( 'H400,--Version=4.03a' );
888
 
889
Minor changes:
890
 
891
Internal changes:
892
 
893
------------------------------------------------------------------------
325 dpurdie 894
Version:  2.86.0000.cr                               Released: 30-Apr-10
895
------------------------------------------------------------------------
896
Major changes:
897
 
898
Minor changes:
899
    * jats label command - Renaming a label
900
      Address issue when renaming a label when the current ClearCase view is
901
      based on the label. All operation after the rename must specify the VOB
902
      name as ClearCase may no longer be able to determine the VOB.
903
 
904
    * Better handling of .lnk files used within sandboxes and local package
905
      archives. Now strip all trailing white space correctly
906
 
907
    * Jats Sandbox stop files
908
      Added 'stop.<GBE_MACHTYPE>' stop files to better support multi
909
      platform builds.
910
 
911
    * Makefile rebuild test correctly locates interface directory in
912
      cases where the source directory is above the build file in the
913
      directory tree.
914
 
915
    * New command: jats man
916
      Produces full help on a specified item.
917
 
918
Internal changes:
919
    * jats upddep
920
      Delete temp .cfg file created during the process.
921
 
922
    * Jats makefiles: Platform directive
923
      Initial release of ++Machtype, ++Project and ++Defined
924
      Not yet in use.
925
 
926
------------------------------------------------------------------------
323 dpurdie 927
Version:  2.85.0000.cr                               Released: 17-Mar-10
928
------------------------------------------------------------------------
929
Major changes:
930
    * New Utility: upddep - Update Dependencies
931
      This utility will update the dependencies in a build.pl file to be
932
      consistent with those of a given Release Manager Release. This simplifies
933
      the operation of maintain build files during development.
934
 
935
      It will create an 'auto.pl' file, which JATS uses in preference to a
936
      build.pl file. DO NOT check this file in.
937
 
938
      See:  'jats upddep -help'         - For brief help
939
            'jats upddep -man'          - For full manual
940
 
941
      Examples:
942
            jats upddep -show
943
            jats upddep -show=vtk
944
            jats upddep -rtag=6684
945
 
946
    * MicroTec Compiler toolset
947
      When creating a ShardLibrary (THX) report missing libraries before
948
      compiling the objects that go into the THX.
949
 
950
      This ensures that the error messages the describe the missing library
951
      can be seen and are not masked by the building of the objects.
952
 
953
Minor changes:
954
 
955
Internal changes:
956
    * Utility: jats_rewrite
957
      Modifications to interwork with the upddep utility.
958
 
959
------------------------------------------------------------------------
321 dpurdie 960
Version:  2.84.0000.cr                               Released: 16-Feb-10
961
------------------------------------------------------------------------
962
Major changes:
963
    * Makefile directive helper function: If
964
      Used within another directive to enable or disable arguments passed to the
965
      outer directive. The first argument is a 'platform' specifier - as in
966
      all Jats Make directives. If making for the specified platform, then the
967
      remainder of the arguments are inserted into the directives argument
968
      stream.
969
 
970
      Example:
971
 
972
      SharedLib ( '*', 'mySharedLib', @OBJS
973
                     , If ('WIN32',   '-llibrary1', '-llibrary2' )
974
                     , If ('SOLARIS', '-llibrary3' )
975
                     );
976
Minor changes:
977
    * Makefile directive: InstallLibs
978
      Correctly installs, as libraries, files that are specified with a 'Src'
979
      directive. This is consistent with the operation of the PackageLibs
980
      directive.
981
 
982
    * GCC Toolkit
983
      Changes to the shared library dependency processing to bring it inline
984
      with other toolers. Will terminate after determining that some
985
      libraries cannot be found. This will ensure that the error message is at
986
      the point of termination.
987
 
988
    * Jats save_build utility
989
      Corrected problem in unreserving a reserved checkout of a build.pl file
990
      under windows.
991
 
992
    * Jats sandbox
993
      ClearCase views created with in the sandbox are created with a tag that
994
      is named after the sandbox. This allows multiple instances of a view
995
      in different sandboxes.
996
 
997
    * Jats release
998
      Display cleartool error messages when view creation fails.    
999
 
1000
------------------------------------------------------------------------
319 dpurdie 1001
Version:  2.83.1000.cr                               Released: 04-Feb-10
1002
------------------------------------------------------------------------
1003
Major changes:
1004
 
1005
Minor changes:
1006
    * jats options
321 dpurdie 1007
      Added -locatedir=name
1008
      Will scan from CWD to the root of the file system looking for the named
319 dpurdie 1009
      directory.
1010
 
1011
    * jats label utility
1012
      Improved handling of the -file and -dir options
1013
      These options will now label the directory elements within the paths
1014
      specified by these options, when used in conjunction with the -up option.
1015
      This simplified the process of labeling complex directory structures.
1016
 
1017
      Added -admin, to allow creation of global labels
1018
 
1019
------------------------------------------------------------------------
317 dpurdie 1020
Version:  2.83.0000.cr                               Released: 20-Jan-10
315 dpurdie 1021
------------------------------------------------------------------------
1022
Major changes:
317 dpurdie 1023
 
1024
Minor changes:
1025
    * WinCe Toolsets
1026
      New CompileOptions operations:
321 dpurdie 1027
        Exceptions              - Enable exception handling
317 dpurdie 1028
        noExceptions            - Disable
1029
      Default is to retain backward compatibility. It is mixed.
1030
      Example:
1031
        CompileOptions ('*', 'Exceptions' );
1032
 
1033
    * Solaris targets
1034
      Full support for a target called SOLARIS8_SPARC32
1035
      It is identical to SOLARIS in a 'sparc' build machine, but it is only
1036
      available on a 'sparc' build machine. Can be used to limit builds to one
1037
      machine type.
1038
 
1039
------------------------------------------------------------------------
1040
Version:  2.82.0000.cr                               Released: 18-Jan-10
1041
------------------------------------------------------------------------
1042
Major changes:
315 dpurdie 1043
    * New Build Platform: VB6
1044
      Jats has been enhanced to support the building of VB6 .vbg and .vbp
1045
      project files.
1046
 
1047
    * Build Directive BuildVersion.
1048
      This has been extended to allow the creation of Version Information in a
1049
      form that can be consumed by Visual Basic using '--Style=VB'
1050
 
1051
Minor changes:
1052
    * Added more internal documentation
1053
      Use jats help to see available documentation
1054
 
1055
    * Jats label -info command [DEVI-059929]
1056
      Fixed problem that prevent this command running on Unix systems.
1057
 
1058
    * Jats save_build utility
1059
      Corrected problem in unreserving a reserved checkout of a build.pl file
1060
      under windows.
1061
 
1062
    * Solaris 10, 64 Bit Sparc Builds
1063
      All compiles are done in a position independent manner (-KPIC)
1064
      This solved issues where static libraries are linked into shared
1065
      libraries.
1066
 
1067
    * Solaris builds
1068
      Program and Shared library dependency checking is now done before
1069
      the program/library objects are built. Thus errors associated with missing
1070
      dependencies occur before objects are built and the user can see the cause
1071
      of the build failure.
1072
 
1073
 
1074
Internal changes:
1075
    * Moved 'jats vars' functionality into a separate program
1076
      Moved associated documentation into the jats_vars tool
1077
 
1078
    * Moved some other internal documentation into InstallationNotes and
1079
      PkgArchive topics.
1080
 
1081
------------------------------------------------------------------------
313 dpurdie 1082
Version:  2.81.0000.cr                               Released: 12-Jan-10
1083
------------------------------------------------------------------------
1084
Major changes:
1085
    * Solaris Builds for 64 bit targets
1086
      Changes to fully support the SOLARIS10_X86 and SOLARIS10_SPARC64
1087
      targets. These are using a different version of the compiler than the
1088
      existing 32-bit builds.
1089
 
1090
      64-Bit Solaris10 builds are performed with Sun Studio 12.1
1091
      32-Bit Solaris10 builds are performed with Sun Studio 11
1092
 
1093
Minor changes:
1094
    * jats label -exclude=nnn
1095
      Corrected problem with the -exclude option introduced in 2.80.3000.cr
1096
 
1097
    * Package searching
1098
      The BuildpkgArchive and LinkPkgArchive directives will search
1099
      both dpkg_archive and deploy_archive paths for packages.
1100
 
1101
      Allows JATS to be used to process deployable packages.
1102
 
1103
    * jats help
1104
      Modified the operation of the 'jats help' command.
1105
      This command now provides a gateway to the jats help system.
1106
 
1107
      Information provided by the previous 'jats help' can be achieved
1108
      with one of:
1109
        jats -h
1110
        jats help jats
1111
 
1112
Internal:
1113
    * cmdfile utility
1114
      Added macros:
1115
        @(sep,x,text)               - Reformat text with specified file sep
1116
        @(env,VarName)              - Extract text from an EnvVar
1117
 
1118
      Corrected
1119
        @(vsep,ident)               - Set path seperator (: or ;)
1120
        @(vhost,ident)              - Modify @(vlib) operation
1121
 
1122
      Extended
1123
        @(vpath)                    - Added optional 'sep' argument.
1124
        @(vlib)                     - Added optional 'sep' argument.
1125
        @(vlint)                    - Added optional 'sep' argument.
1126
        @(vglob)                    - Added optional 'sep' argument.
1127
 
1128
------------------------------------------------------------------------
311 dpurdie 1129
Version:  2.80.4000.cr                               Released: 17-Dec-09
1130
------------------------------------------------------------------------
1131
Major changes:
1132
 
1133
Minor changes:
1134
 
1135
Internal changes
1136
    * Created a Pseudo package to describe the interface directory
1137
      This simplifies the various scanning algorithms within JATS
1138
      Useful side effects include:
1139
 
1140
        JATS plugins will be sourced from the interface directory if included
1141
        with a BuildPkgArchive. This will simplify debugging.
1142
 
1143
        [DEVI-059682] QtBase can be consumed via a BuildPkgArchive directive,
1144
        simplifying the process of packaging additional fonts.
1145
 
1146
        [DEVI-059685] Simplify implementation of --FromPackage options in other
1147
        tools, which obviates the need for QtBase to be consumed via a
1148
        BuildPkgArchive
1149
 
313 dpurdie 1150
    * Perl Modules
1151
      Included the most recent version of the Pod module within the JATS
1152
      release. This will:
1153
        * Ensure consistent cross platform behaviour
1154
        * Corrects issues within earlier releases of the Pod module - some
1155
          reported by ERG.
1156
        * Provide a basis for a better help system within JATS.
1157
 
311 dpurdie 1158
------------------------------------------------------------------------
309 dpurdie 1159
Version:  2.80.3000.cr                               Released: 01-Dec-09
1160
------------------------------------------------------------------------
1161
Major changes:
1162
 
1163
Minor changes:
1164
    * BuildTool utility: jats_save_build
1165
      Returns non-zero error code on labeling errors.
1166
      Deletes label on labeling errors.
1167
      Removed backward compatibility options as they are no longer used.
1168
 
1169
    * Jats label utility
1170
      Changes to assist in tracking down clearcase labeling errors
1171
 
1172
      Once labels have been applied a check is done to ensure that
1173
      the labels have been placed. The check is to attempt to find
1174
      new files and folders to label - there should be none.
1175
 
1176
    * Jats core
1177
      Improved the auto location of the base directory of the build to allow
1178
      for ant-based packages. Allows the jats 'create_dpkg' command to be
1179
      used to package ant based builds.
1180
 
1181
------------------------------------------------------------------------
307 dpurdie 1182
Version:  2.80.2000.cr                               Released: 12-Nov-09
305 dpurdie 1183
------------------------------------------------------------------------
1184
Major changes:
1185
 
1186
Minor changes:
307 dpurdie 1187
    * CSHARP toolset
1188
      Creation of unit tests was broken by 2.80.0000.cr
1189
      This is now fixed.
1190
 
309 dpurdie 1191
      The cmdfile utility creates paths with file path separators as discovered
307 dpurdie 1192
      in the PATH EnvVar. Now that PATH is nice it means that the use of cmdfile
309 dpurdie 1193
      to create shell scripts resulted in scripts with unsuitable separators.
307 dpurdie 1194
 
1195
    * WCEPSION_500_VS2005
1196
      Extended the list of nodefaultlibs to include secchk.lib and ccrtrtti.lib
1197
 
1198
------------------------------------------------------------------------
1199
Version:  2.80.1000.cr                               Released: 12-Nov-09
1200
------------------------------------------------------------------------
1201
Major changes:
1202
 
1203
Minor changes:
305 dpurdie 1204
    * Generating makefiles
1205
      Ensure that the 'BuildMake' directive is the last one in the build.pl file
307 dpurdie 1206
      Directives after this will not be processed correctly and now generate
305 dpurdie 1207
      an error.
1208
 
1209
    * WCEPSION_500_VS2005
307 dpurdie 1210
      Suppress use of -debug:cv when building libraries.
305 dpurdie 1211
 
1212
    * Build directive: BuildSrcArchive
307 dpurdie 1213
      Highly specialized directive.
305 dpurdie 1214
      Refer the JATS Manual.
1215
 
1216
------------------------------------------------------------------------
303 dpurdie 1217
Version:  2.80.0000.cr                               Released: 04-Nov-09
1218
------------------------------------------------------------------------
1219
Major changes:
1220
    * New target: WCEPSION_500_VS2005
1221
      A build of the Psion CE 5.0 under VS2005
1222
      This target has been added to the WINCE target.
1223
 
1224
      WCEPSION_500_VS2005 build cannot consume build artifacts from the
1225
      WCEPSION_500. The two are separate.
1226
 
1227
    * Support for building WinCE targets under VS2005
1228
      Currently only the WCEPSION_500_VS2005 is fully supported
1229
      Support includes
1230
        * Building of executables and DLLs via jats directives
1231
        * Building of components via VS2005 'solution' files
1232
 
1233
Minor changes:
1234
    * Build file processing
1235
      Better detection of bad platform names under Windows
1236
      Note: All platform names should be in uppercase.
1237
 
1238
    * MOS builds
1239
      If a 'product' name not known to JATS is used and a board base address
1240
      is specified then no warnings are generated indicating an unknown 'product'
1241
 
1242
    * MOS builds
1243
      New 'known' product: PICP
1244
      Identical to the TP5 in all but name.
1245
 
1246
    * GenerateFiles directive
1247
        Better handling of '\' when passing arguments to a command line
1248
        under windows.
1249
 
1250
        .
1251
 
1252
    * Verbose builds now show command files
1253
      Currently only supported for WIN32 and WINCE builds.
1254
 
1255
      The use of 'OPTIONS=args' will cause the linker command file to be dumped
1256
      to the output stream.
1257
 
1258
      This facility will be retrofitted to other platform targets in the future.
1259
 
1260
    * Windows Shell
1261
      The shell provided with JATS for use under Windows has been modified so
1262
      that the COMSPEC and PATH variables are correctly formatted with '\'
1263
 
1264
      Addresses issues when invoking Windows tools and programs from within JATS.
1265
 
1266
    * H8S toolset
1267
      Ensure the the EnvVar CYGWIN is not set.
1268
 
1269
      If 'binmode' is set then the gcc compiler used by the H8S toolset cannot
1270
      handle macros that use line continuation.
1271
 
1272
Internal changes
1273
    * WinCe builds
1274
      Changed name of internal file 'toolset/vcwce' to better represent the
1275
      content of the file.
1276
 
1277
      Many internal changes to better support VS2005 and EVC
1278
 
1279
      Macros to encode and decode paths with embedded spaces.
1280
      Currently only used in WIN32 and WINCE toolsets.
1281
 
1282
------------------------------------------------------------------------
301 dpurdie 1283
Version:  2.79.6000.cr                               Released: 18-Sep-09
1284
------------------------------------------------------------------------
1285
Minor changes:
1286
    * PackageFile directive with spaces in names.
1287
      Corrected problem.
1288
 
1289
------------------------------------------------------------------------
299 dpurdie 1290
Version:  2.79.5000.cr                               Released: 14-Sep-09
1291
------------------------------------------------------------------------
1292
Major changes:
1293
 
1294
Minor changes:
1295
    * DPACKAGE file created on multiple machines [DEVI-054973]
1296
      DPACKAGE files are now machine specific.
1297
      Changes are transparent to users.
1298
 
1299
    * Creating static libraries without any object files is treated
1300
      as an error. The Microtec tools sets will create a 'pop-up' if
1301
      this occurs.
1302
 
1303
    * The LinkSandbox directive is not allowed when GBE_ABT is set.
1304
      This directive is highly discouraged in development: Use a jats 'sandbox'
1305
      Moreover it is not reproducible and thus not supported within the
1306
      automated build framework.
1307
 
1308
    * jats sandbox command
1309
      Added support to delete the sandbox metadata. This undoes the
1310
      'create' command.
1311
 
1312
    * jats command aliases. Added
1313
        jats extractfiles to be jats release -extractfiles
1314
        jats extract      to be jats release -extract
1315
 
1316
------------------------------------------------------------------------
297 dpurdie 1317
Version:  2.79.4000.cr                               Released: 29-Jul-09
1318
------------------------------------------------------------------------
1319
Major changes:
1320
    * Jats Command line and -java option
1321
      This version will place the specified java's 'bin' directory into
1322
      the PATH. Thus the commands:
1323
            jats -java=1.6 eprog java -version
1324
            jats -java=1.6 ant build
1325
      will work as expected
1326
 
1327
Minor changes:
1328
    * VS2008 Toolset
1329
      Picking up incorrect config details
1330
      May result in a warning message.
1331
 
1332
    * gen_cots utility
1333
      New option to allow use without ClearCase dependencies.
1334
      Its simply creates a buildable package image.
1335
 
1336
    * DELPHI7 toolset
1337
      Correct the definition of the Debug option '-$D+'
1338
      In debug mode, add $DELPHI/lib/debug to the search paths
1339
 
1340
------------------------------------------------------------------------
295 dpurdie 1341
Version:  2.79.3000.cr                               Released: 01-Jul-09
1342
------------------------------------------------------------------------
1343
Major changes:
1344
Minor changes:
1345
    * Escrow Utility
1346
      Add header to generated HTML describing the source of the data
1347
 
1348
    * IAR Compiler
1349
      Fixed test for loader file
1350
 
1351
    * GCC Toolset
1352
      Fixed DLL Version Number
1353
 
1354
    * DELPHI7 Toolset
1355
      Minor correction discovered during use.
1356
      Existing tools to create a .lib from .dll had serious path length issues
1357
      Extended the compiler search paths
1358
 
1359
    * Deployment utilities (old)
1360
      Correct SQL statement to work without any Schema assumptions
1361
 
1362
------------------------------------------------------------------------
293 dpurdie 1363
Version:  2.79.2000.cr                               Released: 11-Jun-09
1364
------------------------------------------------------------------------
1365
Major changes:
1366
Minor changes:
1367
    * Minor bug fix to address issues introduced in previous release
1368
      Affects SOLARIS and MOS builds
1369
 
1370
------------------------------------------------------------------------
291 dpurdie 1371
Version:  2.79.1000.cr                               Released: 10-Jun-09
1372
------------------------------------------------------------------------
1373
Major changes:
1374
Minor changes:
1375
    * Initial Support for Visual Studio 2008
1376
      New platforms: CSHARP2008 and VS2008
1377
 
1378
    * WIN32 Toolset
1379
      Corrected the -machine option passed to the Windows linker
1380
      Now passes -machine:X86 instead of -machine:IX86
1381
 
1382
------------------------------------------------------------------------
289 dpurdie 1383
Version:  2.79.0000.cr                               Released: 10-Jun-09
1384
------------------------------------------------------------------------
1385
Major changes:
1386
    * New Platform: DELPHI7
1387
      Support the creation of Units,Libraries, Packages and Programs using
1388
      Borlands Delphi Version 7.
1389
 
1390
      See Jats Reference Manual for complete details and Delphi specific options
1391
      to the Prog and SharedLib directives.
1392
 
1393
      This toolset has a number of limitations:
1394
        1) It can build either Debug or Production, but not both, in a single
1395
           makefile.pl. This is caused by the Delphi limitation that library
1396
           names cannot be changed.
1397
 
1398
        2) The generation of dependencies between the source and the generated
1399
           artifacts is very simplistic.
1400
 
1401
      Units are generated with the 'Lib' directive. The name of the Unit and the
1402
      name of the source are linked. The source should not be provided.
1403
        ie: Lib ('*', 'MyUnit' );
1404
      Will create a unit called MyUnit.dcu from the source file 'MyUnit.pas'
1405
 
1406
      Packages are generated with the SharedLib directive starting with a .dpk
1407
      file.
1408
        ie: SharedLib  ( '*', 'MyPackage' );
1409
      will create a package called MyPackage.bpl/dcp from the source file
1410
      MyPackage.dpk.
1411
 
1412
      Libraries are generated with the SharedLib directive starting with a .dpr
1413
      file.
1414
        ie: SharedLib  ( '*', 'MyDll' );
1415
      will create a package called MyDll.dll/lib from the source file
1416
      MyDll.dpr.
1417
 
1418
      Programs are generated with the Prog directive starting with a .dpr
1419
      file.
1420
        ie: Prog  ( '*', 'MyProg' );
1421
      will create a package called MyProg.exe from the source file
1422
      MyProg.dpr.
1423
 
1424
Minor changes:
1425
    * New EnvVar: DELPHI7
1426
      Required only if Borland Delphi 7 has not being installed in the
1427
      standard location or if the Windows Short Name is not
1428
      c:\PROGRA~1\Borland\Delphi7
1429
 
1430
    * BuildVersion directive
1431
      Added a 'Style' of 'Delphi' to allow the generation of version information
1432
      in a Delphi Unit.
1433
 
1434
      Modified the operation of the "C" style generation.
1435
      If the name of the file is provided via '--File', then the generated files
1436
      will be 'known' to JATS and can be consumed from any makefile. JATS will
1437
      'know' the location of the files.
1438
 
1439
    * Sanity test on the names of libraries and programs
1440
      Some characters are not allowed: ie: '/' as this is a mistake.
1441
 
1442
Internal Changes:
1443
    * ToolsetSHLD functions
1444
      Pass in the shared library version string as an argument
1445
      Means that the core of JATS can manage this information in a manner
1446
      that is decoupled from the toolsets.
1447
 
1448
    * Reworked the mechanism used to hold data about libraries, shared libraries
1449
      merged libraries and programs. Created a class to manipulate build targets
1450
      and to maintain information about the contents of the targets.
1451
 
1452
------------------------------------------------------------------------
287 dpurdie 1453
Version:  2.78.4000.cr                               Released: 30-Apr-09
1454
------------------------------------------------------------------------
1455
Major changes:
1456
    * Correctly generate dependencies for C++ only builds
1457
      Many tools sets ( gcc and others) would not generate makefile dependency
1458
      information for purely C++ builds.
1459
 
289 dpurdie 1460
    * Jats.bat and Jats.sh now provide a default Read Only username/password
1461
      for Release Manager and Deployment Manager.
287 dpurdie 1462
 
289 dpurdie 1463
      NOTE: Windows users will need to update their JATS.BAT file in order
1464
            to pick up changed passwords for Release Manager and Deployment
1465
            Manager
287 dpurdie 1466
 
1467
Minor changes:
1468
    * The jats option '-noexportvars' deletes selected JATS EnvVars from the
1469
      environment. This only affects the build daemons.
1470
 
1471
    * updatenodespec utility
1472
      Correct the SQL statements to work with ReadOnly access to the Deployment
1473
      Manager database.
1474
 
1475
------------------------------------------------------------------------
285 dpurdie 1476
Version:  2.78.3000.cr                               Released: 30-Mar-09
1477
------------------------------------------------------------------------
1478
Major changes:
1479
 
1480
Minor changes:
1481
    * Creation of DPACKAGE file [DEVI-054973]
1482
      Better support for packages that build on multiple platforms
1483
      Not completly fixed, but much better than before.
1484
 
1485
    * Escrow tool
1486
      Remove warning created during normal operation
1487
 
1488
    * Minor code cleanup as suggested by code analysis tools
1489
 
1490
------------------------------------------------------------------------
283 dpurdie 1491
Version:  2.78.2000.cr                               Released: 05-Mar-09
1492
------------------------------------------------------------------------
1493
Major changes:
1494
    * New Platform: H400
1495
      Supported by the KIELARMV3 toolset.
1496
      Refer to the Jats Reference Manual for toolset specific options
1497
 
1498
Minor changes:
1499
    * MergeLibrary directive
1500
      Allow a library that has been created in the same makefile.pl as the
1501
      directive to be located, without the need to 'install' it first.
1502
 
1503
 
1504
------------------------------------------------------------------------
281 dpurdie 1505
Version:  2.78.1000.cr                               Released: 26-Feb-09
1506
------------------------------------------------------------------------
1507
Major changes:
1508
 
1509
Minor changes:
1510
    * New command: jats make show
1511
      Will display the platfroms, alias definitions and the makefile paths
1512
      used in the build.
1513
 
1514
    * Escrow command
1515
      Now supports extraction based on a single package and version
1516
 
1517
    * Build File Rewrite Utility
1518
      Added a '-validate' option to allow the build daemons to validate the
1519
      build files against the Release Manager information.
1520
 
1521
      Improved error reporting to make it clear that the problem is a mis-match
1522
      between Release Manager and the package's build files.
1523
 
1524
------------------------------------------------------------------------
279 dpurdie 1525
Version:  2.78.0000.cr                               Released: 18-Feb-09
277 dpurdie 1526
------------------------------------------------------------------------
1527
Major changes:
279 dpurdie 1528
    * GBE_BUILDFILTER configuration has been simplified
277 dpurdie 1529
 
279 dpurdie 1530
      JATS will automatically filter out target platforms that cannot be built
1531
      on the users machine. ie: It will not try to build Solaris targets on a
1532
      Windows machine. Thus, under the new scheme a Windows GBE_BUILDFILTER need
281 dpurdie 1533
      not contain '!SOLARIS'
279 dpurdie 1534
 
1535
      This greatly simplifies the creation of GBE_BUILDFILTER as it does not
1536
      need to be configured to exclude targets that cannot by built.
1537
 
1538
      Existing GBE_BUILDFILTER definitions are backward compatible.
1539
 
1540
    * Jats utility : gen_cots
1541
      Requires the user to specify a target VOB with the -vob option
1542
        Ensures the user is aware of the target VOB
1543
 
1544
      Now creates temporary directory within the users TEMP directory.
1545
        Addresses problems where the user's CWD is within the package being
1546
        processed.
1547
 
1548
      Removed the '-delete' option
1549
        Always delete the temp work directory if it exists.    
1550
 
277 dpurdie 1551
Minor changes:
279 dpurdie 1552
    * Sandbox command
1553
      Added build, make, clean, clobber commands
1554
 
1555
      Sandbox packages may contain a file called 'stop', to exclude the
1556
      target from consideration in the build set.
1557
 
1558
    * MCR Toolset
1559
      This toolset only supports 16 compiler search paths. An descriptive error
1560
      has been added to detect and report on this error.
1561
 
1562
    * WIN32 and PHARLAP toolsets
1563
      The --Resource=xxx option specifies a comma separated list of files.
1564
      Spaces are now allowed either side of the comma.
1565
        ie: "--Resource=file1.h, File2.h"
1566
 
1567
    * Jats run_test command
1568
      Removed a non-fatal warning message that was being generated when the
1569
      tests we run on a Window machine.
1570
 
1571
    * descpkg file
1572
      Now contains HOSTNAME of the build machine
1573
      Not (yet) aggregated when packages are merged
1574
 
1575
   * built.<machine> tag files created by create_dpkg
1576
     Now contains build trace information
1577
        Date-Time, Machine, User, ABT config
1578
 
1579
   * jats abt command simplified usage
1580
     This command now appends the current directory as a library path to ANT if
1581
     it contains 'jar' files.
1582
 
1583
     Uses ANT 1.6 as the default version of ANT
1584
 
1585
     Both changes will simplify the use of this command within the escrow
1586
     environment. ie: 'jats abt -buildfile=build1.xml'
1587
 
1588
   * BuildVersion directive
1589
     Form:
1590
        BuildVersion ('--Style=C');
1591
     now works as expected.
1592
     Slightly better error detection on the directives arguments.
1593
 
1594
Internal Changes:
1595
 
1596
    * Error reporting mechanism
1597
      Improved the error reporting mechanism. Allowed a function to
1598
      create modify the error reporting parameters in such a manner that the
1599
      original values are restored at the end of a function.
1600
 
1601
 
1602
------------------------------------------------------------------------
1603
Version:  2.77.8000.cr                               Released: 18-Dec-08
1604
------------------------------------------------------------------------
1605
Major changes:
1606
 
1607
Minor changes:
277 dpurdie 1608
  * Jats Wrapper
1609
    Added -NoExportVars option to allow use of JATS to startup build daemons
1610
    without fixing the version of JATS that is used by the processes the daemon
1611
    then starts.
1612
 
1613
    Limit searches for local and sandbox archives to the '/home' directory
1614
    so that the Unix auto mounter does not report errors.
1615
 
1616
  * Jats makefiles. Platform Specifier
1617
    The Platform Specifier has been extended to support a '--MachType=name'
1618
    non-platform option.
1619
 
279 dpurdie 1620
    This may be used to limit Java builds to a 'win32' machine if required.
277 dpurdie 1621
 
1622
------------------------------------------------------------------------
275 dpurdie 1623
Version:  2.77.7000.cr                               Released: 17-Dec-08
1624
------------------------------------------------------------------------
1625
Major changes:
1626
 
1627
Minor changes:
1628
    * MugFile support
1629
      Added facilities to allow named files to be added the the Thx Fileset
1630
      Added options to facilitate the creation of sets of THX files
1631
      Refer to MASS-00099 for complete details.
1632
 
1633
    * Jats Utility: dstatus
1634
      Limit display width of the build machine named to 20 characters
1635
 
1636
    * Jats sandbox command (experimental)
1637
        A files called 'stop' within the root directory of the component
1638
        packages will prevent the utility from processing that subdirectory.
1639
 
1640
        Extended command sets to allow the command 'all', 'build' and 'make'
1641
        to be processed as commands to be invoked in all sandbox components
1642
 
1643
    * Jats Make: New EnvVars
1644
        GBE_MAKE_TYPE               - P or D
1645
        GBE_MAKE_TARGET             - Target platform
1646
        GBE_MAKE_CMD                - Current make target
1647
        GBE_MAKE_CFG                - Internal config
1648
 
1649
    * Jats generated scripts: set_<platform>.sh
1650
      The generated scripts preserve any spaces in the argument list passed
1651
      to the invoked application.
1652
 
1653
Internal Changes:
1654
    * JatsCopy Package
1655
      CopyFile operation can copy an array of files
1656
      CopyDir now supports MatchDirs
1657
 
1658
    * JatsMakeConfig Package
1659
      Added class to read in the parsed makefile.pl data for the current
1660
      build target.
1661
 
1662
    * Jmake - Jats Makefile Supervisor
1663
      Export GBE_MAKE_* EnvVars to directly export the current makefile
1664
      environment. 
1665
 
1666
 
1667
------------------------------------------------------------------------
273 dpurdie 1668
Version:  2.77.6000.cr                               Released: 11-Dec-08
1669
------------------------------------------------------------------------
1670
Major changes:
1671
 
1672
Minor changes:
1673
    * Jats command: sandbox
1674
      Support subcommands "clean" and "clobber"
1675
      These traverse the sandbox in the reverse direction so that the clean
1676
      up operations work correctly.
1677
 
1678
    * Makefile generation
1679
      Removed warning on the use of --OnlyProd and --OnlyDebug
1680
 
1681
    * JatsCopy Package
1682
      Minor enhancements to this internal package
1683
        CopyFile operation returns path to target file
1684
        CopyDir can, if asked, returns an array of files copied
1685
        Wildcard correctly supports the [0-9] construct
1686
 
1687
Internal Changes:
1688
    * Environment
1689
      Export EnvVar GBE_HOSTMACH
1690
      This is the same as GBE_MACHTYPE, but it is not modified by legacy
1691
      makefiles. Available for sanity testing.
1692
 
1693
    * Remove unused references to the File::Find package in Perl scripts
1694
 
1695
    * Jats building Jats now uses the JatsCopy package to perform the many
1696
      copy operations in the build.
1697
 
1698
 
1699
------------------------------------------------------------------------
271 dpurdie 1700
Version:  2.77.5000.cr                               Released: 24-Nov-08 
267 dpurdie 1701
------------------------------------------------------------------------
1702
Major changes:
1703
 
1704
Minor changes:
271 dpurdie 1705
    * Added LMOS_PPC_603E to the LMOS target
269 dpurdie 1706
 
271 dpurdie 1707
    * Jats Utility: dstatus
1708
      Improved handling of closed and archived releases
1709
      Displays include activity time information
269 dpurdie 1710
 
271 dpurdie 1711
Internal Changes
1712
    * jats.pl
1713
      Removed unused function
1714
 
1715
    * makeif.pl
1716
      Added significant documentation
1717
      Provided access to some of the functions via and API
1718
      Renamed to MakeIf.pm
1719
      Moved location to the LIB directory.
1720
 
1721
    * MakeEntry.pm
1722
      Added support for the use of in-memory files
1723
      Allows the output to be 'printed' to a memory variable rather then a file
1724
 
1725
    * ReadBuildConfig.pm
1726
      Added routines to access package information in a manner that is
1727
      independent of the underlying data.
1728
 
1729
    * makelib.pl2
1730
      Added mechanism to allow toolsets to register for notification
1731
      of specific source files present in the build.
1732
 
1733
      Improved readability of the generated makefiles.
1734
      Added informationas to the source of included files
1735
 
1736
      Added docuementation to previously undocumented functions
1737
 
1738
      Corrected usage of the MakeIf package.
1739
      Use it as a package.
1740
 
1741
    * Win32 binary tools
1742
      Added 7z.exe - command line utility to process various compressed
1743
      file formats. Can be used to perform tar-like operations underlying
1744
      windows.
1745
 
1746
    * JatsSvnCore.pm
1747
      Made use of a new binary utility ('stdmux') to multiplex stdout and
1748
      stderr into one data stream that can be handled by perl one allow
1749
      platforms.
1750
 
1751
 
269 dpurdie 1752
------------------------------------------------------------------------
271 dpurdie 1753
Version:  2.77.4000.cr                               Released: 11-Nov-08
269 dpurdie 1754
------------------------------------------------------------------------
1755
Major changes:
1756
 
1757
Minor changes:
271 dpurdie 1758
    Jats utility 'release' [DEVI-051370 ]
1759
    The utility will place a tag file in the root of the package
1760
    as specified by the '-path' option. This will be used by the build tool
1761
    tool re-locate the root of the package and thus allow the correct generation
1762
    of the ClearCase related metrics.
1763
 
1764
    Generation of Resource Files for WIN32 builds
1765
    Corrected version identifier
1766
 
1767
 
1768
------------------------------------------------------------------------
1769
Version:  2.77.3000.cr                               Released: 28-Oct-08
1770
------------------------------------------------------------------------
1771
Major changes:
1772
 
1773
Minor changes:
267 dpurdie 1774
    * Jats option '-locate' correctly locates ANT build files [DEVI-052423]
1775
 
1776
    * Allow Deployable packages to be built on some, but not all, of the
1777
      build machines and correctly package the descpkg file. [DEVI-052422]
1778
 
1779
    * JATS CompileOptions directive  [DEVI-052426]
1780
      New options:
1781
        no_define_source_file
1782
        define_source_file              (Default)
1783
 
1784
      The 'no_define_source_file' will suppress the compile definition __SOURCE__
1785
      Currently only implemented for WIN32 and WINCE toolsets.
1786
 
1787
      The __SOURCE__ definition renders pre-compiled headers useless.
1788
      This option has not be enabled by default to ensure backward
1789
      compatibility.
1790
 
1791
    * Jats directives: MakeProject
1792
      Now supports the following new options:
1793
            --InstallProgDebug=list
1794
            --InstallProgProd=list
1795
            --InstallProg=list
1796
 
1797
      These allows files that are created by the project builder to be
1798
      installed locally to be consumed by such packaging directives as
1799
      GenerateCab.
1800
 
1801
    * Jats directives: AddLDFlags and AddASFlags
1802
      Now supports the --Debug and --Prod options like the other AddFlags
1803
      directives.
1804
 
1805
    * Jats builder directive: BuildVersion
1806
      New options that can be used when generating a WinRC style version
1807
      information:
1808
            --Definitions                   - Create definitions only
1809
            --Comment=text
1810
            --Description=text
1811
            --Product=name
1812
 
1813
Internal Changes:
1814
    * These utility 'gen_winrc' now uses module used by the BuildVersion
1815
      directive to created the resource file.
1816
 
1817
      The BuildVersion.pm module has been modified to allows it to be used in
1818
      a standalone manner by gen_winrc.pl.
1819
 
1820
------------------------------------------------------------------------
265 dpurdie 1821
Version:  2.77.2000.cr                               Released: 26-Sep-08
261 dpurdie 1822
------------------------------------------------------------------------
1823
Major changes:
263 dpurdie 1824
 
1825
Minor changes:
265 dpurdie 1826
    * Jats utility jats_save_build.pl
1827
      Fix problem when used in new mode.
1828
      These label is now applied from the root of the VOB and not from
1829
      the location of the builder file.
1830
 
1831
------------------------------------------------------------------------
1832
Version:  2.77.1000.cr                               Released: 18-Sep-08
1833
------------------------------------------------------------------------
1834
Major changes:
1835
 
1836
Minor changes:
263 dpurdie 1837
    * New JATS Platform : PHARLAP [DEVI-051359]
1838
      Added support for PharLap 10.1
1839
      Requires that both PharLap 10.1 and Visual Studio 6 be installed
1840
      Full details in the JATS manual.
1841
 
1842
    * Windows utilities  [DEVI-051360]
1843
      Added rpccpp to assist in the creation of rcpgen based modules under
1844
      windows.
1845
 
1846
    * MOS68K and MOSCF toolsets
1847
      Made used of rpccpp. These platforms can now support the creation
1848
      of XDR based modules.
1849
 
1850
    * Jats GenerateFiles directive
1851
      New option '--PreDelete' will delete all generated files before
1852
      the generator process is run. This may be used in cases where the
1853
      generator process does not operate if the output files already exist,
1854
      such as the rpcgen utility.
1855
 
1856
    * Jats MakeAnt directive
1857
      Correct problem where unit_tests could not be run.
1858
      Automated unit_tests tests could be run.
1859
 
1860
    * Buildtool utility: jats_rewrite
1861
      Added -noconfig option to allow the creation of auto.xml files
1862
      in escrow.
1863
 
1864
    * create_dpkg utility
1865
      Merged files that exist in the target archive are now compared
1866
      against the local file. A difference is considered to be an error.
1867
 
1868
Internal Changes:
1869
    * Resolved issues with JatsEnv modules that make it difficult to include
1870
      the modules in other modules. This is now a package
1871
 
1872
    * JatsSystem Module
1873
      Resolved issues when 'shell' is used to invoke a 'system' command.
1874
      Now quote the command string being passed to the shell.
1875
 
1876
      Resolved issues with JatsCmd
1877
      Now takes an array of arguments.
1878
 
1879
      Added JatsTool to be more efficient where a known JATS tool is being
1880
      invoked. This is faster assist it does not invoked three unneeded
1881
      programs.
1882
 
1883
    * Renamed jats_cbuilder tool to jats_ccrelease.
1884
      Changes is not visible to the users, assist they go through the 'jats'
1885
      wrapper. Internally the changes is in preparation to alternate version
1886
      control systems.
1887
 
1888
 
1889
------------------------------------------------------------------------
1890
Version:  2.77.0000.cr                                Released: 1-Sep-08
1891
------------------------------------------------------------------------
1892
Major changes:
261 dpurdie 1893
    * Perl Version. Must be at least version 5.8.2
1894
      This is the first version that supports Windows 2003 server.
1895
 
1896
      After discovering that several operations are not fully function under
1897
      Perl 5.6.1 the minimum version of Active State Perl that is required has
1898
      been increased.
1899
 
1900
      A suitable windows installer can be found at:
1901
        \\auperaunx26\devl\releases\3rdParty-Products\ActivePerl\5.8.8.819\
1902
                                    ActivePerl-5.8.8.819-MSWin32-x86-267479.msi
1903
 
1904
    * Jats Build Targets
1905
      New target and toolset: VERIX
1906
 
1907
    * Jats utility: jats_save_build
1908
      Extended to allow all ClearCase specific operations to be removed
1909
      from the Build Daemons.
1910
 
1911
      This utility is only used by "Release Planner" and the "Build Daemons".
1912
 
1913
      Suggested new usage:
1914
        jats etool jats_save_build
1915
                        -pname=xxxx
1916
                        -pversion=yyyy
1917
                        -infofile=path_name
1918
                        -locatepkg=zzzz     (Optional)
1919
                        -infile=aaaa        (Optional)
1920
                        -outfile=bbbb       (Optional)
1921
                        -wiplabel=ccccc     (Optional)
1922
 
1923
Minor changes:
1924
    * JATS make: Merge Library Operation [DEVI-049475]
1925
      Fixed such that Library Merge operations don't delete other build
1926
      artifacts.
1927
 
1928
    * JATS make: New option expert=0|1
1929
      Runtime processing of 'expert' mode to allow dependencies between the
1930
      object files and the makefile to be ignored.
1931
 
1932
      Previous this operation could only be invoked at 'build' time. Now the
1933
      default state will be set at build time and it can be overridden at 'make'
1934
      time.
1935
 
1936
    * JATS utility: CCdiff
1937
      Corrected operation of the option "-new=dir=."
1938
 
1939
    * Nunit support in CSHARP
1940
      Improved support for different version of Nunit
1941
      Allow the DLLs that are required by nunit to be specified 
1942
      within the package.
1943
 
1944
    * Jats utility: dstatus
1945
      Suppresses archived releases.
1946
      Shows release state
1947
 
1948
    * Build file directive: BuildPkgArchive
1949
      Extended list of supported directories to include 'wsdl'.
1950
 
1951
Internal Changes:
1952
    * JATS make: Detection of makefile dependencies
1953
      Isolated the detection process to one point.
1954
      Previously was being done at two places
1955
        - Within jmake - jats makefile supervisor
1956
        - Within the generated makefile. This is still present but
1957
          is suppressed if jmake is used to invoke the makefile.
1958
 
1959
    * JATS make: Command line
1960
      Removed the use of the un used "VERBOSE=1" operation
1961
      Improved use of "options=args|allargs"
1962
 
1963
      It didn't work on all platforms.
1964
      Is better does with "options=args" or "options=allargs"
1965
 
1966
    * JATS command line
1967
      Improved operation of the -help,-man, -verbose and -debug options
1968
      to allow:
1969
        + Direct level specification (-verbose=3)
1970
        + Better use of Perl Option Parsing Utilities
1971
        + Consistent use of option parsing
1972
 
1973
    * JATS makefile generation
1974
      Simplifies creation of internal rules
1975
      Improved readability of the generation process
1976
      Improved readability of the generated makefile
1977
      Removed dead code
1978
      Improved the creation of Progs
1979
 
1980
    * JATS error reporting
1981
      Added a Fatal call to allow utilities to report infrastructure
1982
      problems.
1983
 
1984
      Corrected problem in the use of GBE_[tag]_VERBOSE and GBE_[tag]_DEBUG
1985
      environment variables where the 'tag' contains a space.
1986
 
1987
    * Assorted Perl files
1988
      Minor corrected after running Perl Syntax check over JATS files.
1989
 
1990
    * Made the use of IFLAGS uniform for all JATS toolsets
1991
      Removed the need, and use of IFLAGS3; simplifying the generated
1992
      makefiles
1993
 
1994
    * Corrected tagging  of files generated by the various toolsets
1995
      Many files where incorrectly tagged and were not being cleaned up.
1996
 
1997
    * FileUtils package.
1998
      Added functions to create and append text to small text files.
1999
      Provides consistent error messages and simplifies creation of small files.
2000
      Used functions within JATS.
2001
 
2002
 
2003
------------------------------------------------------------------------
259 dpurdie 2004
Version:  2.76.2000.cr                               Released: 23-Jul-08
257 dpurdie 2005
------------------------------------------------------------------------
259 dpurdie 2006
Minor changes:
2007
    * New Platform and Toolset : ACEX
2008
      Provides support for the Fairchild ACEx assebmler
2009
 
2010
------------------------------------------------------------------------
2011
Version:  2.76.1000.cr                               Released: 10-Jul-08
2012
------------------------------------------------------------------------
257 dpurdie 2013
Major changes:
2014
 
2015
    * Jats make: Package and Install directives [DEVI-049299]
2016
      Convert relative pathnames to absolute pathnames before passing
2017
      to copy command. This makes the most of Windows limited path length
2018
      as implemented by many Windows utilities.
2019
 
2020
Minor changes:
2021
    * JATS makefile generation: Provide case-corrected pathnames for
2022
      library and include files in dpkg_archive.
2023
 
2024
      Needed to support badly formed legacy packages when used with
2025
      some windows tools.
2026
 
259 dpurdie 2027
------------------------------------------------------------------------
255 dpurdie 2028
Version:  2.76.0000.cr                               Released: 24-Jun-08
2029
------------------------------------------------------------------------
2030
Major changes:
2031
    * Support for Microsoft Visual Studio 2005 [DEVI-049017]
2032
      The product must be installed in its default location.
2033
 
2034
      New platforms:
2035
        CSHARP2005
2036
         Uses C# Framework Version 2.0.50727
2037
         Support extends to allow:
2038
            1) Building of Csharp source using standard JATS
2039
            2) Build Visual Studio solutions
2040
         Can consume files from CSHARP and WIN32 components.
2041
 
2042
        VS2005
2043
         Support extends to allow:
2044
            1) Building of C and C++ source using standard JATS
2045
            2) Build Visual Studio solutions
2046
         Can consume files from VS2003 and WIN32 components.
2047
 
2048
      The existing WIN32 and CSHARP platforms can also utilize VS2005
2049
      through a version selector:
2050
        WIN32 Toolset   - "MS.NET2005"
2051
        CSHARP Toolset  - "MS.NET2005"
2052
 
2053
    * Version of Make for Win32 builds
2054
      The version of Make has been upgraded to 3.81 to provide access
2055
      to macros to simplify support for the MS VS2005.
2056
 
2057
    * CSHARP and WIN32 platforms
2058
      The LIB path uses to locate libraries and DLLs has been altered to:
2059
        - Contain absolute paths. Relative paths did not work under all
2060
          conditions when building projects and solutions.
2061
        - Contain valid paths. JATS generated paths that do not physically exist
2062
          will be removed from the search path. This removes warning messages
2063
          under VS2005.
2064
 
2065
Minor changes:
2066
    * New Jats utility: dstatus
2067
      Display Build Daemon Status. A text based utility.
2068
      Use 'jats dstatus -man' for full details.
2069
 
2070
    * PPC_603E Toolset
2071
      Changed the definition of HOST_CPU to be correct for the linux
2072
      architecture that uses the value - powerpc.
2073
 
2074
      Extended LinuxDrivers directive to allow for powerpc.
2075
 
2076
      Updated the MakeLinuxDriver directive to use EXTRA_CFLAGS as CFLAGS
2077
      has been removed. This change is backwardly compatible.
2078
 
2079
    * Modified all utilities to avoid a Perl-10 warning message [DEVI-049018]
2080
      Improved usage of the 'require' statement used to check for
2081
      a minimal value of perl.
2082
 
2083
      Removed excessive require statements.
2084
 
2085
    * JATS internal utilities - xmake
2086
      Source for Make 3.81 is now controlled
2087
      Include JATS specific files for
2088
        1) Windows
2089
        2) Linux
2090
 
2091
      JATS now includes binaries for make.
2092
      This will ensure that the version of make being used will be known for all
2093
      machines. Gnu make does not need to be installed for the various build
2094
      machines.
2095
 
2096
    * JATS internal utility sh.exe (windows)
2097
      Extended internal debugging via EnvVar SHDEBUGEXEC
2098
 
2099
    * JATS Environment
2100
      Allow Jats Environment variables that are used to specify a directory
2101
      to be set to either '-' or 'none'. The associated path will set to empty.
2102
 
2103
      This can be used to override defaults that may be inserted by the JATS
2104
      wrapper scripts.
2105
 
2106
    * JATS utility: sandbox (Experimental)
2107
      Correct problem with location of build files.
2108
      Spell check help and code.
2109
 
2110
------------------------------------------------------------------------
253 dpurdie 2111
Version:  2.75.3000.cr                               Released: 06-Jun-08
251 dpurdie 2112
------------------------------------------------------------------------
2113
Major changes:
2114
 
2115
Minor changes:
253 dpurdie 2116
    * Jats utility: release [DEVI-047291]
2117
      A race condition within clearcase will cause a view to fail during
2118
      creation. This is detected and the command will be retried a number
2119
      of times.
2120
 
2121
------------------------------------------------------------------------
2122
Version:  2.75.2000.cr                               Released: 27-May-08
2123
------------------------------------------------------------------------
2124
Major changes:
2125
 
2126
Minor changes:
251 dpurdie 2127
    * PPC_603E Toolset
2128
      Changed the definition of HOST_CPU to be non-numeric
2129
 
2130
    * GCC Toolset
2131
      Correct the operation of the assembler interface to 'gas' such that
2132
      options are passed correctly.
2133
 
2134
    * Jats utility: CCdiff [DEVI-048127] [DEVI-048439]
2135
      Sped up the label-label comparison.
2136
      Restored speed to that of observed before the label-view comparison
2137
      was added.
2138
 
2139
      Restored ability to perform a one-sided comparison. This is used when
2140
      reviewing a new package.
2141
 
2142
    * Makefile creation: BuildVersion directive
2143
      Better handling of the generated files such that they are
2144
      automatically included in the source file list.
2145
 
253 dpurdie 2146
    * Toolset updates
2147
      Thyron and gnu_mpt. From An Tran.
2148
 
251 dpurdie 2149
------------------------------------------------------------------------
249 dpurdie 2150
Version:  2.75.1000.cr                               Released: 14-May-08
229 dpurdie 2151
------------------------------------------------------------------------
2152
Major changes:
249 dpurdie 2153
 
2154
Minor changes:
2155
    * PackageFile directive [DEVI-048037][DEVI-047541]
2156
      Now supports the packaging of files with ( or ) in the name
2157
 
2158
------------------------------------------------------------------------
2159
Version:  2.75.0000.cr                               Released: 07-May-08
2160
------------------------------------------------------------------------
2161
Major changes:
247 dpurdie 2162
  * New toolset and platform
2163
    Added support for the PPC_603E platform.
2164
    This uses the powerpc-603e-linux-gnu compiler
2165
    The DEVLINUX and LMOS_DEVLINUX targets have been extended to include
2166
    this platform.
2167
 
2168
Minor changes:
2169
  * Jats utility: CCdiff
2170
    Extended operation to allow one side of the comparison to be a directory
2171
    within a static view. This allows comparison between a label and current
2172
    work.
2173
 
2174
  * Jats utility: release
2175
    Added checking of correct package name and version when files are
2176
    published to dpkg_archive.
2177
 
249 dpurdie 2178
  * Jats utility: jats_rewrite [DEVI-034837]
247 dpurdie 2179
    Extended operation to allow the special properties to be transferred from
2180
    Release Manager to the build tool to the target build. Currently only
2181
    supported for ANT builds.
2182
 
2183
    New 'known' ANT properties are:
2184
        releasemanager.releasename
2185
        releasemanager.projectname
2186
 
2187
    The configuration file, used by this utility, has been extended to support
2188
    tagged data item of the form
2189
 
2190
        releasemanager.releasename = value
2191
        releasemanager.projectname = value
2192
 
2193
  * Mug File Generation
2194
    Added --NoMugFiles option to suppress the creation of Mug Files
2195
    This allows THX files to be collected for possible deployment.
2196
 
2197
    When this option is enabled, the user does not need to specify the
2198
    Device ID, Name or Tier Number, nor are the external tools packages
2199
    required.
2200
 
2201
  * Makefile creation: BuildVersion directive
2202
    Modified the operation of the BuildVersion directive such that the
2203
    location of the files that are generated will be known to the Jats
2204
    makefiles. In this manner the user doesn't not need to know the location of
2205
    the files in order to use them.
2206
 
2207
    The file will need to be declared with a 'Src' directive, but JATS will
2208
    locate the file.
2209
 
2210
    This options does not occur for the 'C' version files. This is intentional
2211
    to ensure backward compatibility.
2212
 
2213
    The operation does occur for version files of Style:
2214
        * CSharp
2215
        * Properties
2216
        * WinRC
2217
 
2218
  * JATS directive: CompileOptions
2219
    Correct operation of options that make use of assigned values.
2220
    The case of the value is now preserved.
2221
    Value is correctly assigned.
2222
 
2223
------------------------------------------------------------------------
2224
Version:  2.74.0000.cr                               Released: 29-Apr-08
2225
------------------------------------------------------------------------
2226
Major changes:
245 dpurdie 2227
  * M16C toolset. Used by the MPR platform to build MCRFirmware [DEVI-047555]
2228
    Corrected the version number embedded in the generated THX file.
2229
 
2230
    Major and minor numbers greater than 9 were incorrectly represented
2231
    Added a test to ensure that the major and minor numbers are in the range
2232
    of 0 to 99 inclusive.
2233
 
2234
  * Auto-build when multiple build.pl files are labelled [DEVI-047461]
2235
    Modified JATS to allow support for the automated building of packages that
2236
    contain multiple, labeled, build files.
2237
 
2238
    Added a '-locatepkg=pkg' option to the Jats wrapper script. This allows the
2239
    user to specify the package to be selected from those that can be found.
2240
    This will be integrated into the build tool.
2241
 
2242
    Modified the operation of the 'jats release' command to use the
2243
    infrastructure provided by the above feature. Testing a release uses the
2244
    additional information to ensure that the created package name and version are
2245
    correct.
2246
 
2247
    Modified the operation of the (experimental) 'jats sandbox command to use
2248
    the infrastructure provided by the above feature.
2249
 
2250
Minor changes:
2251
  * Solaris Toolset [DEVI-047398]
2252
    The toolset no longer requires that the user have the compiler and the
247 dpurdie 2253
    'ar' utility in their path. It will be controlled by the toolset.
245 dpurdie 2254
 
2255
    This should improve build reproducibility.
2256
    This will simplify new user setup.
2257
 
2258
  * All Unix Toolsets
2259
    Corrected the operation of the 'options=showenv' so that it works
2260
    on unix systems
2261
 
2262
  * JATS release utility  [DEVI-047356]
2263
    Fixed problem where utility would issue a 'Broken Pipe' message
2264
    on some Solaris Machines.
2265
 
2266
  * JATS -version=<version>
2267
    Fixed operation on machines that do not have a GBE_DPKG_CACHE such that
2268
    JATS does not attempt to cache the alternate version.
2269
 
2270
------------------------------------------------------------------------
2271
Version:  2.73.4000.cr                               Released: 10-Apr-08
2272
------------------------------------------------------------------------
2273
Major changes:
243 dpurdie 2274
    * New platform: WCEPSION_500_emu [DEVI-047234]
245 dpurdie 2275
      Creates binaries for the WCEPSION_500 emulator
243 dpurdie 2276
      Added this platform to the default 'WINCE' alias.
2277
 
2278
Minor changes:
2279
    * JATS escrow utility [DEVI-047232]
2280
      Handle package names that have spaces and brackets
2281
 
2282
    * JATS release utility [DEVI-047232]
2283
      Handle view names that have spaces and brackets
2284
 
2285
    * Removed detection of unknown platforms
2286
      Does not work with LMOS
2287
 
2288
    * Readme.txt file
2289
      Added a brief description on the core_devl directory structure.
2290
 
2291
    * Misc Cleanup
2292
      Removed version-1 test that is not applicable to the current jats
2293
      Move PostInstall script into the BUILD directory.
2294
 
2295
------------------------------------------------------------------------
2296
Version:  2.73.3000.cr                               Released: 07-Apr-08
2297
------------------------------------------------------------------------
2298
Major changes:
241 dpurdie 2299
  * MOS68K Toolset (Not MOS68KRM)
2300
    Force compiler option -nOj
2301
    The default compiler option (-Oj) has been seen to cause problems with some
2302
    code. Problem reported/analysed by rparker and thunter.
237 dpurdie 2303
 
241 dpurdie 2304
  * MOS68K Toolset (Not MOS68KRM)
2305
    Correct problem in disabling Global Optimization that was introduced in
2306
    version 2.73.1000
2307
 
237 dpurdie 2308
Minor changes:
241 dpurdie 2309
  * JATS makefiles
2310
    Correct problem where a Production/Debug only build would create OBJ
2311
    directories for both production and debug, and not clean them up.
2312
 
2313
  * JATS builds
2314
    Allow ANT builds to be run in verbose mode to facilitate debugging
2315
    The command "make all options=args" will run the ANT builds in 'verbose'
2316
    mode.
2317
 
2318
  * JATS makefiles
2319
    Extended the 'selector' used in all makefile directives - as the first
2320
    argument. Added two non-platform related options:
2321
        --Project=xxxx      True if the package suffix matches
2322
        --Defined=yyy       True if yyy is declared with a SetValue or
2323
                            SetList directive.
2324
 
2325
    ie: AddSrcDir ('--Project=sls' , 'sls' );
2326
        AddSrcDir ('!--Project=sls', 'default');
2327
 
2328
  * JATS makefiles. MakeProject directive
2329
    New packaging options to package up programs to be used as JATS plug-ins
2330
        --PackageTool=xxxx
2331
        --PackageToolProd=xxx
2332
        --PackageToolDebug=xxx
2333
 
2334
  * JATS buildfile processing
2335
    Generate a warning for build platforms that are unknown to JATS
2336
    These may be the result of a user typo or an incompatible version
2337
    of JATS.
2338
 
2339
  * JATS save_build utility
2340
    Correctly handle autobuild branches that contain multiple checkouts, one of
2341
    which may be reserved.
2342
 
2343
  * JATS gen_cots utility
2344
    Correctly labels directories up to the VOB root.
2345
    Displays the correct 'Source Path' in the Release Manager Information.
2346
    Ignores the 'administration_view' as this is read-only
2347
 
2348
  * JATS sandbox (experimental)
2349
    Ensure the AutoBuildTool does not use any sandbox
2350
 
2351
  * JATS release (cbuilder) utility
2352
    Handle paths that have a trailing path separators.
2353
 
2354
  * JATS Makefile generation. Packaging directives
2355
    Packaging directives that use the --Dir option have been modified
2356
    such that the direction cannot use a a relative path.
2357
 
2358
    * Escrow tool
2359
      Creates a simple HTML file that details all the packages with a short
2360
      description.
2361
 
2362
------------------------------------------------------------------------
2363
Version: 2.73.2000.cr                                Released: 06-Mar-08
2364
------------------------------------------------------------------------
2365
Major changes:
2366
 
2367
Minor changes:
239 dpurdie 2368
    * Corrected operation of GBE_PLATFORM, when building a GENERIC package.
2369
      A GENERIC package can now be built independently of the value
2370
      of GBE_PLATFORM.
2371
 
2372
    * MOS Toolset
2373
      If only building for a production target, then don't generate an error
2374
      if there is no debug data and code addresses specified.
2375
 
2376
      Use to build platform independent MOS Releases. Cannot have debug, but
2377
      can have production (PIC) components.
2378
 
2379
    * Utility command: jats abt
2380
      Parse and use -buildfile=xxx option
2381
 
2382
    * Utility command: jats extract -extractfiles
2383
      The extractfiles option will now duplicate empty directories
2384
 
2385
    * Building ANT projects under JATS
2386
      Ensure that the PATH is correctly setup so that ANT can locate
2387
      utilities within the JAVA directory - for both Solaris and Windows.
2388
      Previously only worked on Windows
2389
 
2390
------------------------------------------------------------------------
2391
Version: 2.73.1000.cr                                Released: 21-Feb-08
2392
------------------------------------------------------------------------
2393
Major changes:
2394
 
2395
Minor changes:
237 dpurdie 2396
    * Jats Label Utility
2397
      Correct use of '-norecurse' operation.
2398
 
2399
    * Jats command line under Unix
2400
      Corrected problem when command line quoted arguments with a space are
241 dpurdie 2401
      passed in. ie: -xxx="aaa bbb ccc"
237 dpurdie 2402
 
2403
    * Escrow tool
2404
      Added totals to all the tables created in the HTML report
2405
 
2406
    * Platform MOS68KRM
2407
      Rome builds. Modified compiler options to match the existing build system
2408
 
2409
------------------------------------------------------------------------
239 dpurdie 2410
Version: 2.73.0000.cr                                Released: 20-Feb-08
237 dpurdie 2411
------------------------------------------------------------------------
2412
Major changes:
235 dpurdie 2413
    * New Toolset: BORLAND
2414
      The toolset uses the Borland C++ Builder 6 to build Borland Project
2415
      files via the MakeProject directive.
231 dpurdie 2416
 
235 dpurdie 2417
      In this release there is no support for native compilation and linking.
2418
 
2419
      Details are provided in MASS-00166 JATS Reference Manual
2420
 
231 dpurdie 2421
Minor changes:
235 dpurdie 2422
    * Extract/Release utility.
2423
      Handle Source Path option with spaces by creating a config spec
2424
      that can handle spaces
2425
 
2426
    * MOS Compiler
2427
      The TMP directory used by the assembler will be created before the
2428
      assembler is invoked. This will ensure that the directory exists.
2429
 
2430
    * Utility: create_dpkg
2431
      Uses the first 'descpkg' file found. Allows packages that have embedded
2432
      descpkg files to be copied.
2433
 
2434
    * AVR_IAR Toolset
2435
      Added support for AT90SC144144CT - by David Payne.
2436
 
2437
    * JATS ANT command
2438
      Better selection of the ant build file
2439
 
2440
    * Build directive: BuildVersion
2441
      Extended the WinRc version file to allow the name of an icon to be
2442
      embedded in the .RC file.
2443
 
2444
------------------------------------------------------------------------
2445
Version: 2.72.2000.cr                                Released: 06-Feb-08
2446
------------------------------------------------------------------------
2447
Major changes:
2448
 
2449
Minor changes:
233 dpurdie 2450
    * Building JATS. Installer will set a+x in dpkg_archive
2451
 
2452
    * JATS rewrite. Remove the need  for the 'name=' attribute in the
2453
      <project> field.
2454
 
2455
    * CCdiff utility
2456
      Now ignores blank lines when generating a file difference report.
2457
 
2458
    * Escrow utility
2459
      Quote 'path' in the generated extraction commands
2460
      Allow escrow to be based on a single Release Manager package
2461
 
2462
    * Minor Perl-10 tweaks  
2463
 
2464
------------------------------------------------------------------------
2465
Version: 2.72.2000.cr                                Released: 24-Jan-08
2466
------------------------------------------------------------------------
2467
Major changes:
2468
 
2469
Minor changes:
231 dpurdie 2470
    * Jats Tool: CCbc2 [DEVI-044908]
2471
      Locates BeyondCompare through the Windows Registry. This allows
2472
      BeyondCompare to be installed in places other then the default location.
2473
 
2474
    * Jats test runtime helper scripts set_PLATFORM.bat
2475
      Windows. Batch file modified so that it doesn't exit the shell.
2476
 
2477
    * Jats wrapper
2478
      If JATS attempts to cache itself and an error is reported by the caching
2479
      utility, then Jats would fail without reporting an error message.
2480
 
2481
------------------------------------------------------------------------
2482
Version: 2.72.00000.cr                                Released: 11-Jan-08
2483
------------------------------------------------------------------------
2484
Major changes:
229 dpurdie 2485
    * Jats Release Mechanism
2486
      Jats can now release itself. This is not the same a building all of its
2487
      internal components, but it does mean that a new version of JATS can be
2488
      released using the 'standard' mechanism.
2489
 
2490
      Jats releases will be tracked in Release Manager.
2491
 
2492
      A side effect of this is that the labelling scheme will change to align
2493
      itself with Release Manager. ie: <package_name>_<package_version>.
2494
 
2495
    * Running Jats
2496
      Running Jats from within a ClearCase view is being deprecated.
2497
      Jats should be run from a package present in dpkg_archive.
2498
      This may affect some windows developers.
2499
 
2500
      This release of JATS can be run from ClearCase, but generates a warning.
2501
      Future versions will generate an error.
2502
 
2503
      Refer to MASS-00164 Installing and Using JATS.
2504
 
2505
Minor changes:
2506
    * Perl Version Check
2507
      Jats will generate a warning if the version of Perl in use is newer
2508
      than the version used in test. Newer versions are not always backward
2509
      compatible. Currently JATS has been extensively tested with 5.8.8.
2510
 
2511
    * Build Directive: BuildVersion
2512
      This directive has been extended to allow the creation of a 'properties'
2513
      file. This file may be used to pass version information into a an ANT
2514
      build.
2515
 
2516
    * Jats Internals
2517
      Minor fix to interwork with Perl version 5.10.
2518
      Perl 5.10 has not been extensively tested - yet.
2519
 
2520
    * Jats Tool: CCbc2
2521
      Added utility to use BeyondCompare (BC2) to compare files in two
2522
      packages defined as ClearCase labels. The utility creates two dynamic views
2523
      and starts BeyondCompare. The views are destroyed at the end of the
2524
      process.
2525
 
2526
      Requires BeyondCompare to be installed in its default location.
2527
      Only works under Windows.
2528
 
2529
      Use jats CCbc2 -help (or -man) for further details.
2530
 
2531
    * Jats test runtime helper scripts set_PLATFORM.sh
2532
      Marked as executable, so that users can run them directly
2533
 
2534
    * Jats test runtime helper scripts set_PLATFORM.bat
2535
      Uses SETLOCAL / ENDLOCAL to prevent environment variables being exported
2536
      into the parent space. This mimics the behaviour of Unix.
2537
 
2538
    * Jats eprog
2539
      Consistent cross-platform handling of programs found in the current
2540
      directory.
2541
 
2542
    * jats tool jats_metrics
2543
      A new utility that will be used by the Automated Build System to collect
2544
      build metrics.
2545
 
2546
------------------------------------------------------------------------
227 dpurdie 2547
Version: 2.71.6.cr                                Released: 18-Dec-07
2548
------------------------------------------------------------------------
2549
Major changes:
2550
 
2551
Minor changes:
2552
    * Jats Tool: create_dpkg
2553
      Added options to allow the utility to sanity test the package name and
2554
      version of the package being created. This is intended to be used by the
2555
      automated build system. New options are:
2556
        -pname=Package_Name
2557
        -pversion=Package_Version
2558
 
2559
      Added option to allow the source package form to be tested, without
2560
      transferring the package. New options are:
2561
        -test
2562
 
2563
    * Jats Tool: CCdiff
2564
      -output=filename now works. Previously only -out=filename worked.
2565
      -vob=name does not generate internal message under unix
2566
 
2567
    * JATS Environment variables GBE_BUILDFILTER and GBE_PLATFORM can be either
2568
      a space separated or a comma separated list.
2569
 
2570
    * Solaris Toolset
2571
      Disable the use of purify, purecov and quantify when building shared
2572
      libraries. Shared libraries are not supported by these tools. Executable
2573
      programs are still supported.
2574
 
2575
------------------------------------------------------------------------
2576
Version: 2.71.5.cr                                Released: 07-Dec-07
2577
------------------------------------------------------------------------
2578
Major changes:
2579
 
2580
Minor changes:
2581
    * WINCE toolsets
2582
      Added a run-time test for the presence of the required toolset
2583
      This will report an error if the required WINCE toolset has not been
2584
      installed. This is better than obscure message generated by the compilers
2585
      when header files cannot be found.
2586
 
2587
    * GenerateFiles directive
2588
      If the generating tool can only be found in the users path, don't make
2589
      it a prequisite under Windows. There are problems with spaces in pathnames
2590
      that are difficult to solve.
2591
 
2592
    * MakePerlModule directive
2593
      Extended the directive syntax to allow command line options to be passed
2594
      to the the module builder.
2595
 
2596
    * Jats Tool: label
2597
      Add the ability to label specific sub-directories (-dirs=name[,name]+)
2598
      Allow the -up option to be used in conjunction with the  -files=xxx and
2599
      -dirs=xxx options.
2600
 
2601
    * Jats Tool: release
2602
      Corrected a problem when multiple ant builds where located within the
2603
      build view. Now all ants builds will be perform.
2604
 
2605
      Expanded the operation of the '-build=name' option such that it can be
2606
      used to limit ANT builds by specifying the name of the depends.xml file.
2607
 
2608
    * Jats Tool: CCdiff
2609
      Added utility to provide difference reports in a format suitable to be
2610
      uploaded to CodeStriker.
2611
 
2612
      Use jats CCdiff -help (or -man) for further details.
2613
 
2614
 
2615
------------------------------------------------------------------------
2616
Version: 2.71.4.cr                                Released: 30-Nov-07
2617
------------------------------------------------------------------------
2618
Major changes:
2619
    * New Platform : MOS68KRM
2620
      Building MOS for the 68K processor for Rome
2621
      Requires the Microtec 4.5R compiler
2622
      Similar to MOS68K, but has different optimization and definitions
2623
 
2624
Minor changes:
2625
    * label utility
2626
      Better handling of filenames with embedded spaces.
2627
 
2628
    * make package and install operations
2629
      Improved the error detection and reported that may occur during a file
2630
      transfer.
2631
 
2632
    * make clean up
2633
      Improved the cleanup of generated files.
2634
 
2635
    * Jats Tool: jats_transform_file
2636
      Tool that can be used within makefiles and test harnesses to perform
2637
      minor file transformations such as:
2638
        Copy, with optional rename
2639
        Force Dos or Unix style line endings
2640
        Perform simple TAG replacement
2641
 
2642
      Use 'jats jats_transform_file -help' for details
2643
 
2644
    * jats release utility
2645
      Added the -extractfiles option to extract files without leaving a view
2646
      in place.
2647
 
2648
    * escrow utility
2649
      Added -extract option to assist in creating images of all files in
2650
      the escrow, with a log file to summarize success/failure of the extraction.
2651
 
2652
------------------------------------------------------------------------
2653
Version: 2.71.3.cr                                Released: 16-Nov-07
2654
------------------------------------------------------------------------
2655
Major changes:
2656
 
2657
Minor changes:
2658
    * Makefile generation
2659
      Corrected a problem in the detection of a generated target
2660
      Some JAVA builds were not correctly detecting the need to run the
2661
      generate phase early.
2662
 
2663
------------------------------------------------------------------------
2664
Version: 2.71.2.cr                                Released: 09-Nov-07
2665
------------------------------------------------------------------------
2666
Major changes:
2667
 
2668
Minor changes:
2669
    * GBE_PLATFORM operation
2670
      Restored operation of GBE_PLATFORM. This feature is not encouraged.
2671
 
2672
    * Makefile generation
2673
      Added a sanity check to generate a warning if a file is packaged, or
2674
      installed, from more than one makefile.pl
2675
 
2676
    * Utilities gen_msproject, gen_dirlist and gen_metrics
2677
      Modified to use generic interface to the makefile data
2678
 
2679
    * AutoBuilder support tool 'save_build'
2680
      Check for users having placed locks on the build file and the autobuild
2681
      branch. The locks will be removed.
2682
 
2683
    * jats_rewrite utility
2684
      Better handling of DOS line ending under Unix
2685
 
2686
    * jats escrow utility
2687
      Can now create a simple escrow build, and information, on a Release.
2688
      Still handles an escrow based on an SBOM.
2689
 
2690
      Can be used to create an HTML report on unbuildable packages and
2691
      inconsistent packages.
2692
 
2693
    * jats make help
2694
      Corrected the list of target platforms to only show those that are
2695
      available within the current build.
2696
 
2697
    * jats makefiles
2698
      Modified the behaviour of jats when multiple instances of the
2699
      MakefileGenerate() directive are found.
2700
 
2701
      If the MakefileGenerate() directive is found in the 'common' makefile.
2702
      pl, then it will be ignored.
2703
 
2704
    * gcc toolset
2705
      SharedLibries.
2706
        The --Def=name option supports two types of def file
2707
        The 'old' form is used if the name of the Def file ends in .def
2708
 
2709
        The 'old' form is created by the existing versions of mod_if.pl
2710
        The 'new' form is created by tne new versions (daf_tools 25.1.5000.cr)
2711
        of mod_if - if the name of the file does not end in .def.
2712
 
2713
      SharedLibraries and Prog (Experimental)
2714
        New options:
2715
            --MultiScan
2716
            --NoMultiScan ( default)
2717
            MultiScan will scan the libraries until no more undefined references
2718
            can be satisfied. This may simplify linking of complex programs.
2719
 
2720
 
2721
------------------------------------------------------------------------
2722
Version: 2.71.1.cr                                Released: 16-Oct-07
2723
------------------------------------------------------------------------
2724
Major changes:
2725
 
2726
Minor changes:
2727
    PackageLib directive
2728
    The construct "PackageLib( '*', @SHLIBS, @LIBS );" now works as expected.
2729
    Packaging multiple libraries and shared libraries works as expected.
2730
    Packaging multiple shared libraries works as expected.
2731
 
2732
    MakefileGenerate directive
2733
    This directive should only be called once. JATS will now generate a warning,
2734
    and not produce an erroneous, if the directive is invoked more than once.
2735
 
2736
    Multiple Parent detection
2737
    A makefile.pl that is invoked from more than one other makefile.pl, or the
2738
    build.pl, is counted as having multiple parents. This condition is
2739
    normally treated as an error. When run by the Auto Built Tool, this
2740
    condition will be treated as a warning.
2741
 
2742
    Solaris Toolset
2743
    Added option '--WithMisalign' to the SharedLib directive.
2744
    When used in conjunction with the 'misalign' CompleOption this option will
2745
    cause a machine specific object file (misalign.o) to be included in the
2746
    link.
2747
 
2748
    Programs that are created with 'misalign' will automatically include the
2749
    misalign.o object file. The fact that shared libraries do not may be an
2750
    indication that this is a bad thing to do.
2751
 
2752
    Make and generation of subdirectories
2753
    Fixed an issue which caused created directories to have a bad timestamp.
2754
    This could result in multiple attempts to generate the source dependency
2755
    file.
2756
 
2757
------------------------------------------------------------------------
2758
Version: 2.71.0.cr                                Released: 10-Oct-07
2759
------------------------------------------------------------------------
2760
Major changes:
2761
    Makefile generation and make recursion
2762
    Extensive changes to the makefiles that are generated by JATS and method by
2763
    which JATS recuses through subdirectories during a build.
2764
 
2765
    Summary of changes:
2766
        - Removed the use of 'make' to perform recursion over subdirectories
2767
          and platforms. This has been replaced by a JATS program  that performs
2768
          the same task - only a great deal faster and with a greater scope for
2769
          flexibility.
2770
 
2771
          The user interface remains identical: jats make ....
2772
 
2773
        - Replaced the generated 'Makefile' with 'Makefile.gbe'. This is a text
2774
          file that provides sufficient information to allow JATS to locate the
2775
          interface directory and associated build information.
2776
 
2777
        - Significant speed up in determining the need to rebuild a makefile.
2778
          On a large package this has been reduced from 30+ seconds to less
2779
          than one second.
2780
 
2781
        - Significant speed up of large recursive builds through intelligent
2782
          building of the 'make_init' target. This is only processed once for
2783
          each platform type. Previously it was processed in each and every
2784
          makefile. This make target is used, internally, to perform sanity
2785
          testing of the compiler environment and to display the name of the
2786
          toolset. It is an expensive operation.
2787
 
2788
        - Intelligent speed up of large recursive through better mechanism
2789
          for creating required directories. These are now created on the fly,
2790
          rather than via a slow recursive pass though all makefiles.
2791
 
2792
        - Better makefile rebuilding
2793
          Makefiles can be rebuilt on the fly. The previous system was prone to
2794
          detecting that makefiles needs to be re-built, but then not re-
2795
          building them.
2796
 
2797
        - Detection of build file changes
2798
          The make process will detect that the build file has been modified
2799
          and that the component has not been rebuilt. This is a warning. It
2800
          does not prevent the 'make' operation.
2801
 
2802
        - Quieter make output
2803
          The 'Nothing to be done' message has been disabled.
2804
 
2805
 
2806
Minor changes:
2807
    MakeAnt Directive
2808
    Allows ANT_HOME to be a path with spaces. ie: c:\Program Files\apache-ant-1.6.5
2809
 
2810
    JATS command "debug" and "prod"
2811
    These now handle make arguments and options correctly. Thus the command:
2812
        jats prod WIN32 OPTIONS=args
2813
    Will correctly do a production build for WIN32 with command execution
2814
    display. Before, the system would attempt to process prod_OPTIONS=args.
2815
 
2816
    CSHARP toolset
2817
    Correctly detect missing compiler directories
2818
 
2819
------------------------------------------------------------------------
2820
Version: 2.70.2.cr                                Released: 27-Sep-07
2821
------------------------------------------------------------------------
2822
Major changes:
2823
 
2824
Minor changes:
2825
    Java target. Resolve problem of multiple project builds when multiple files
2826
    are generated.
2827
 
2828
    MakeAnt
2829
    If the Ant build fails JATS will terminate.
2830
    Previously JATS would continue until another error forced its termination.
2831
    This is done through a better startup of ANT using the
2832
    org.apache.tools.ant.launch.Launcher directly.
2833
 
2834
    MCR platform
2835
    Create '.mod' files from the generated THX files.
2836
    This is a MOS binary and can be download to the MCR devices.
2837
 
2838
------------------------------------------------------------------------
2839
Version: 2.70.1.cr                                Released: 20-Sep-07
2840
------------------------------------------------------------------------
2841
Major changes:
2842
 
2843
Minor changes:
2844
    MakeAnt directive extended
2845
    New option: --PackageBase
2846
        This will pass the path to all packages specified with LinkPkgArchive
2847
        directives to the build.xml file. Without the option the path will
2848
        address a 'jar' directory within the package.
2849
 
2850
    New passed parameter: PACKAGEDIR
2851
        This is the path to the output package that is being created by JATS
2852
        Allows the ant build script to place artifacts directly into the
2853
        package image being created.
2854
 
2855
------------------------------------------------------------------------
2856
Version: 2.70.0.cr                                Released: 13-Sep-07
2857
------------------------------------------------------------------------
2858
Major changes:
2859
    * Linux compiler
2860
      Changed the linux compiler used to build Embedded Linux platforms
2861
            DEVLINUX
2862
                LINUX_EMU
2863
                LINUX_ETX
2864
                ARM9TDMI
2865
 
2866
            LMOS
2867
                LMOS_LINUX_EMU
2868
                LMOS_LINUX_ETX
2869
                LMOS_ARM9TDMI
2870
 
2871
 
2872
    This is a non-backwardly compatibly release.
2873
 
2874
    Do not migrate to this version of JATS if you are building against
2875
    existing packages, until the underlying packages have been rebuilt.
2876
 
2877
    Packages created with the previous version of the compiler should not be
2878
    mixed with packages created with the version in this release.
2879
    Packages will be rebuilt with the new compiler as soon as possible.
2880
 
2881
    The new compiler will need to be installed on users VM's
2882
    The compiler package is dpkg_archive/linux_gnu_tools/1.1.0000.cots
2883
    The binary is:crosstool-gcc-4.1.1-glibc-2.5.tar.bz2
2884
    This should be extacted, as root, into / with the (one line) command
2885
         tar -xjf /net/auperaunx26/export/devl/dpkg_archive/linux_gnu_tools/1.1.0000.cots/
2886
                    crosstool-gcc-4.1.1-glibc-2.5.tar.bz2 -C/
2887
 
2888
Minor changes:
2889
    * Skipped 2.69 due to nature of major change
2890
 
2891
 
2892
------------------------------------------------------------------------
2893
Version: JATS_2.68.3                                Released: 28-Aug-07
2894
------------------------------------------------------------------------
2895
Major changes:
2896
 
2897
Minor changes:
2898
    * WIN32 CompileOptions to control use of precompiled headers
2899
      Added a WIN32 specific compiler option to control the pre compiled
2900
      headers.
2901
 
2902
        CompileOptions ('WIN32', 'PreCompileHdrs' );        (default)
2903
        CompileOptions ('WIN32', 'NoPreCompileHdrs' );
2904
 
2905
 
2906
------------------------------------------------------------------------
2907
Version: JATS_2.68.2                                Released: 28-Aug-07
2908
------------------------------------------------------------------------
2909
Major changes:
2910
 
2911
Minor changes:
2912
    * Reverted changes made in JATS_2.68.1 to the library search path
2913
      Although the search order is broken, we will need to live with it.
2914
 
2915
      Addressed the search order of /usr/lib under Solaris by adding a new
2916
      AddLibDir option (--System) to add system paths. These will be searched
2917
      last.
2918
 
2919
      For the record, the search order for header files and libraries is:
2920
 
2921
        1) As specified with AddIncDir/AddLibDir in the local makefile.pl
2922
           or within any such directive with the --Local option
2923
 
2924
        2) Within the components 'local' directories. These are populated with
2925
           InstallHdr and InstallLib directives.
2926
 
2927
        3) Within the 'interface' directory as populated by BuildPkgArchive
2928
 
2929
        4) As specified with AddIncDir/AddLibDir in the 'global' makefile.pl
2930
           or within any such directive with the --Global option
2931
 
2932
        5) Within packages specified by a LinkPkgArchive directive
2933
 
2934
 
2935
        6) As specified with AddIncDir/AddLibDir in any makefile.pl
2936
           with the --System option
2937
 
2938
    * LMOS target platform
2939
      Includes LINUX_ETX
2940
 
2941
------------------------------------------------------------------------
2942
Version: JATS_2.68.1                                Released: 24-Aug-07
2943
------------------------------------------------------------------------
2944
Major changes:
2945
 
2946
Minor changes:
2947
    * Solaris Toolset
2948
      Corrected library search order, such that /usr/lib is search after the
2949
      dependent packages.
2950
 
2951
    * RunTest operation
2952
      Added the current directory '.' to the PATH used when the test is run.
2953
 
2954
    * Csharp toolkit
2955
      .dtd files are treated as resource files too
2956
 
2957
------------------------------------------------------------------------
2958
Version: JATS_2.68.0                                Released: 20-Aug-07
2959
------------------------------------------------------------------------
2960
Major changes:
2961
    * Trap use of uncontrolled versions of 'ant' and the Java Compiler (javac)
2962
 
2963
      It was discovered that a few old makefile.pl's where invoking ant and
2964
      javac directly in order to build small Java components. This was
2965
      normally being done in the guise of the WIN32 target. These packages
2966
      were making assumptions about the version of Java on the users search
2967
      path.
2968
 
2969
      JATS can invoke ANT and build Java based components using the MakeAnt
2970
      directive and the JAVA platform. This method is controlled and
2971
      reproducible.
2972
 
2973
      This release provides changes such that these packages will not build.
2974
      This is better than building incorrectly.
2975
 
2976
      There are several aspects to the change
2977
        1) JATS provides binaries (ant and javac) with an error message. If
2978
           the user invoked ant/javac in a manner that involves searching the
2979
           PATH then these will be used and report an error.
2980
 
2981
       2) A special command (jats abt) can be used to start up the Auto Build
2982
          Tool in a manner that does not alter the PATH seen by the utilities.
2983
          Moreover it does not alter the JAVA_HOME seen by the build. This is
2984
          controlled separately.
2985
 
2986
Minor changes:
2987
    * Sanitize the PATH environment variable
2988
        Ensure the JATS bin directory is the first directory searched
2989
        Remove duplicates
2990
        Place non-existent components at the end of the PATH
2991
 
2992
------------------------------------------------------------------------
2993
Version: JATS_2.67.1                                Released: 17-Aug-07
2994
------------------------------------------------------------------------
2995
Major changes:
2996
 
2997
Minor changes:
2998
    * Makefile sanity test
2999
      Added a test to ensure that makefiles created on a machine of one type are
3000
      not then run on a machine of a different type.
3001
 
3002
      This will prevent files created on solaris-sparc being used on a solaris-
3003
      x86 machine.
3004
 
3005
    * Correct bug in RunTest
3006
      RunTest now extends the PATH to include the local bin directory
3007
 
3008
------------------------------------------------------------------------
3009
Version: JATS_2.67.0                                Released: 13-Aug-07
3010
------------------------------------------------------------------------
3011
Major changes:
3012
    * RunTest directive
3013
      Added support for running tests within the NUNIT test framework for the
3014
      CSHARP target. In the process a generalized mechanism for accessing
3015
      toolset specific test frameworks has been added.
3016
 
3017
      Changes to the directive to support a FrameWork.
3018
        The use of a test FrameWork is signaled with the option
3019
        --FrameWork=<name> If this is present then the raw name of the program
3020
        under test will be passed to the framework. program.
3021
 
3022
        If a FrameWork is in use, then JATS will invoke the specified framework
3023
        builder within the current toolset.
3024
 
3025
      When a framework is in place JATS will pass arguments of the form:
3026
        '--Tag=Text' to the FrameWork. Other options are processed as normal.
3027
 
3028
      With in the Nunit FrameWork the program under test will be a DLL Nunit
3029
      will only operate on a DLL. The DLL must have been created by the makefile
3030
      containing the RunTest directive.
3031
 
3032
      The Nunit Framework supports the following options:
3033
        --Uses=<Name>[,SubOption]+
3034
 
3035
        This option specifies other DLLs that are used by the TestDLL. They will
3036
        be copied in to the test directory, and may be sourced from an external
3037
        package or the components 'local' lib directory.
3038
 
3039
        SubOptions available to The --Uses directive are:
3040
            --NonJats       This is not a JATS built library. It will not have a
3041
                            P or D suffix.
3042
            --Jats          (Default) This is a JATS built library. JATS will
3043
                            select the correct library type for this build.
3044
 
3045
Minor changes:
3046
    * New Cache cleanup mechanism
3047
      When a package is consumed from the 'cache' a flag is updated within
3048
      the cache. The cache aging routines use this file in preference to
3049
      the descpkg file, thus it will prevent the aging of packages that are
3050
      frequently used. The aging policy can be made more aggressive.
3051
 
3052
    * Save Build Utility
3053
      This utility is used by the Auto Build System to save the 'build.pl' file
3054
      used in a ripple build.
3055
 
3056
      The utility has been enhanced to detect  a reserved checkout of the
3057
      build.pl. The checkout will be changed to unreserved - if possible.
3058
 
3059
    * Release Utility
3060
      The 'jats release' command will now unlock any labels that it locked
3061
      when an error is encountered.
3062
 
3063
      This simplifies the 'release' process as the developers label will be
3064
      unlocked if a build error occurs.
3065
 
3066
    * Jats caching local copy of itself
3067
      Fixed a bug which resulted in an "Use of individualized value" message
3068
      being displayed a large number of times during the file transfer process.
3069
 
3070
    * Minor extension to allow plug-in directives to perform a processing step
3071
      before the makefiles are created.
3072
 
3073
    * TestProg directive
3074
      TestProg's are now built in exactly the same manner as Progs
3075
 
3076
    * Correct problem introduced in 2.66.1 with packaging of files with
3077
      a 'space' or '$' in the file name.
3078
 
3079
------------------------------------------------------------------------
3080
Version: JATS_2.66.1                                Released: 20-Jul-07
3081
------------------------------------------------------------------------
3082
Major changes:
3083
    * New build target
3084
            LINUX_ETX           - Support for Linux on an ETX board
3085
            LMOS_LINUX_ETX      - Support for LMOS on the LINUX_ETX target
3086
 
3087
      These targets have also been added to the following pseudo targets.
3088
            DEVLINUX
3089
            LMOS_DEVLINUX
3090
 
3091
    * Internal utility dpkg_cache [Windows]
3092
      Modified to remove use of system utilities to perform the the file
3093
      transfer, after having problems the 'cp.exe' provided by JATS.
3094
 
3095
Minor changes:
3096
    * Added utility class to provide directory searching
3097
      To be used in JATS and JATS support tools
3098
 
3099
    * tweaks to the C# toolset
3100
      Correct problem with filename that start with "n" as in .\not_nice.cs
3101
 
3102
      Create resource files with Fully Qualified Names derived from the .resx
3103
      and .cs files.
3104
 
3105
      Handle Strong Key Names and creates wrappers to provide do the right
3106
      thing.
3107
 
3108
    * Microtec ColdFire compiler
3109
      Further attempts to get the compiler to place all of its temp files in a
3110
      local directory. The compiler uses a large number of EnVars to control
3111
      were it places temp files.
3112
 
3113
      Underlying problem is random compiler failures on big builds. Suspected
3114
      interaction with other builds.
3115
 
3116
    * Release utility command
3117
      Added a -tag=name option to allow the Auto Build Tools to create
3118
      multiple instances of a static view. The tag is used to provide a unique
3119
      component in the clearcase tag name.
3120
 
3121
------------------------------------------------------------------------
3122
Version: JATS_2.66.0                                Released: 27-Jun-07
3123
------------------------------------------------------------------------
3124
Major changes:
3125
  * Support for building CSHARP code
3126
    Natively build C# within JATS using the Microsoft command line programs
3127
 
3128
    Supports the handling of .resx files
3129
 
3130
    Supports the creation of windows programs, console programs and shared
3131
    libraries
3132
 
3133
Minor changes:
3134
  * Unit Tests
3135
    Allow test scripts to be PERL - with a .pl extension
3136
    These will be correctly initiated under WIndows and Unix
3137
 
3138
    Correct warning messsage that is generated if a "CopyIn" file is also listed
3139
    as a Script.
3140
 
3141
 
3142
------------------------------------------------------------------------
3143
Version: JATS_2.65.3                                Released: 11-Jun-07
3144
------------------------------------------------------------------------
3145
Major changes:
3146
 
3147
Minor changes:
3148
  * WINCE Support
3149
    Added WCEPA962_500 support. The WINCE target now includes this target.
3150
    Complete list of WINCE targets is:
3151
        WCEIT3000
3152
        WCEPA961
3153
        WCEPA962
3154
        WCEPA962_500
3155
        WCEPCM7220
3156
        WCEPSION_500
3157
        WCEPSPC_arm
3158
        WCEPSPC_emu
3159
        WCEX86A420
3160
        WCEX86A500
3161
        WCEX86A500_SOM4455
3162
 
3163
 
3164
------------------------------------------------------------------------
3165
Version: JATS_2.65.2                                Released: 06-Jun-07
3166
------------------------------------------------------------------------
3167
Major changes:
3168
 
3169
Minor changes:
3170
  * WINCE Support
3171
    Added WCEPSION_500 support. The WINCE target now includes this target.
3172
 
3173
  * Removed the following targets
3174
        TP5600
3175
        TP5600_ARM9TDMI
3176
        TP5600_EMU
3177
        LMOS_TP5600_ARM9TDMI
3178
        LMOS_TP5600_EMU
3179
 
3180
  * Deployment
3181
    Simplify access to build information during deployment
3182
 
3183
  * build.pl
3184
    Better error check on a packages version number.
3185
 
3186
    The --forcebuildpkg has been extended to copy files on a Unix system, rather
3187
    than to use symlinks. This simplifies remote builds.
3188
 
3189
  * Tool: gen_msprojects
3190
    Has been extended to create either a Debug build (default), or a Production
3191
    build.
3192
 
3193
        Eg: jats etool gen_msprojects -prod
3194
 
3195
  * Tool: escrow
3196
     New features
3197
     Given an rtag_id, report determine packages that are in the 'release' but
3198
     are not in the SBOM.
3199
 
3200
     Prune "patch" package versions.
3201
 
3202
     Specify packages to be ignored.
3203
 
3204
 
3205
------------------------------------------------------------------------
3206
Version: JATS_2.65.1                                Released: 30-May-07
3207
------------------------------------------------------------------------
3208
Major changes:
3209
  * Provided a mechanism by which JATS makefile.pl directives can be extended
3210
    through modules provided by external packages. This will be used to reduce
3211
    the dependancy on JATS of various packaging processes.
3212
 
3213
  * GenerateFiles
3214
    Added the options:
3215
        --UnknownPreq           - Will force the recipe to be run every time
3216
                                  the generated files are required. May be used
3217
                                  when the dependancies are too complex to
3218
                                  describe. ie: Entire directory tree.
3219
 
3220
        --AutoGenerate          - Will not force the recipe to be run during the
3221
                                  'generate' phase, unless the recipe generates
3222
                                  source files. Allows recipes to be run very
3223
                                  late. ie: when the dependent files are actually
3224
                                  required.
3225
 
3226
 
3227
Minor changes:
3228
  * GenerateFile directive
3229
    Added --Var(BuildRoot)
3230
 
3231
  * GCC Toolset
3232
    Creating Shared Libaries with a 'Def' file. The library is now dependent
3233
    on the Def file, such that changes to the Def file will cause the library to
3234
    be rebuilt.
3235
 
3236
  * MakeAnt and MakeProject directives
3237
    Preserve the order in which projects are built.
3238
 
3239
------------------------------------------------------------------------
3240
Version: JATS_2.65.0                                Released: 16-May-07
3241
------------------------------------------------------------------------
3242
Major changes:
3243
 *  Access to Release Manager and Deployment Manager databases
3244
    The database location, user and password have been made configurable via
3245
    environment variables.
3246
 
3247
    Reason: The Release Manager and Deployment Manager databases are being
3248
            moved.
3249
 
3250
    This will affect users that:
3251
        1) Use tools that access RM or DM
3252
           Some tools that build deployable packages
3253
 
3254
        2) Use the ABT system
3255
           The buildadm user, and the ABT scripts will be modified to provide
3256
           the required configuration
3257
 
3258
    If you need to use tools that access RM or DM, outside of the ABT scripts on
3259
    the build machine then you will need to add the following environment
3260
    definitions to your .profile_bash, or jats.bat.
3261
    Windows
3262
        set GBE_RM_LOCATION=jdbc:oracle:thin:@auperaora03:1521:RELEASEM
3263
        set GBE_RM_USERNAME=RELEASE_MANAGER
3264
        set GBE_RM_PASSWORD=RELEASE_MANAGER
3265
        set GBE_RM_URL=http://erg:8002/ManagerSuite/Release_Manager
3266
        set GBE_DM_LOCATION=%GBE_DM_LOCATION%
3267
        set GBE_DM_USERNAME=DEPLOYMENT_MANAGER
3268
        set GBE_DM_PASSWORD=DEPLOYMENT_MANAGER
3269
        set GBE_DM_URL=http://erg:8002/ManagerSuite/Deployment_Manager
3270
    Note: GBE_RM_LOCATION will change in the near future.
3271
 
3272
 
3273
  * New build platforms
3274
        ARM9TDMI            - To replace TP5600_ARM9TDMI
3275
        LINUX_EMU           - To replace TP5600_EMU
3276
 
3277
        LMOS_ARM9TDMI       - To replace LMOS_TP5600_ARM9TDMI
3278
        LMOS_LINUX_EMU      - To replace LMOS_TP5600_EMU
3279
 
3280
        DEVLINUX            - To replace TP5600
3281
        LMOS_DEVLINUX       - To replace LMOS_TP5600
3282
        LMOS                - New platform that expands to known LMOS targets:
3283
                              LMOS_ARM9TDMI, LMOS_LINUX_EMU, LMOS_WIN32
3284
 
3285
    Many of these targets are designed to replace the badly named platforms
3286
    of TP5600_ARM9TDMI and TP5600_EMU. These will be removed in a future
3287
    release.
3288
 
3289
    The GBE_BUILDFILTER for linux boxes may need to be changed to
3290
         LINUX_I386 ARM9TDMI LINUX_EMU LMOS_ARM9TDMI LMOS_LINUX_EMU
3291
 
3292
    The TP5600* targets should be removed to make it obvious that these packages
3293
    need to be converted.
3294
 
3295
  * Building Linux Device Drivers
3296
    The hard-coded path to the Kernel Headers has been removed.
3297
    Linux Drivers must be built with a suitable package to provide
3298
    the kernel headers. This allows multiple versions of the linux kernel to be
3299
    used for different targets platforms.
3300
 
3301
  * Sandbox support
3302
    Embryonic support for building multiple packages in a common sandbox
3303
    Will remain undocumented until fully implemented.
3304
 
3305
    New command: jats sandbox ...
3306
 
3307
Minor changes:
3308
 
3309
 
3310
------------------------------------------------------------------------
3311
Version: JATS_2.64.1                                Released: 03-May-07
3312
------------------------------------------------------------------------
3313
Major changes:
3314
  * MakeAnt directive
3315
    Added options to allow the and project to unit tests.
3316
 
3317
    New options
3318
        --AutoTest=<target>            # Run as Automated unit test
3319
        --UnitTest=<target>            # Run as Unit test
3320
 
3321
    This will invoke the ant build file, with the specified target, during the
3322
    run_unit_tests phase.
3323
 
3324
  * Sandbox support
3325
    Embryonic support for building multiple packages in a common sandbox
3326
    Will remain undocumented until fully implemented
3327
 
3328
Minor changes:
3329
  * jats build
3330
    Use platform configuration information to prune platforms from the list of
3331
    platforms that will be 'built'.
3332
 
3333
    This simplies the construction of a GBE_BUILDFILTER
3334
 
3335
    This information is not available for all supported platforms, but is
3336
    available for psuedo platforms that transform into machine specific
3337
    platforms. These include SOLARIS, LINUX, TP5600 and LMOS_TP5600
3338
 
3339
  * AVR_IAR Toolset
3340
    Clean up 9 files that may be created by the USB license dongle.
3341
 
3342
  * JATS.BAT
3343
    Example file now provides a default GBE_DPKG definition that assumes that
3344
    the "V" drive is mapped to \\auperaunx26\devl. This allows access to both
3345
    the dpkg_acrhive and the deploy_archive with the one mapping.
3346
 
3347
  * jats label
3348
    Correct problem when locking a label in a specified VOB
3349
 
3350
------------------------------------------------------------------------
3351
Version: JATS_2.64.0                                Released: 16-Apr-07
3352
------------------------------------------------------------------------
3353
Major changes:
3354
  * New build platform:
3355
        LMOS_TP5600
3356
        LMOS_TP5600_ARM9TDMI
3357
        LMOS_TP5600_EMU
3358
 
3359
    LMOS_TP5600 is a tag that will be expanded to the entire family of LMOS_TP5600
3360
    supported targets. A common alias of LMOS_T5600 will be created to
3361
    describe the group of platforms.
3362
 
3363
    LMOS_TP5600_ARM9TDMI and LMOS_TP5600_EMU
3364
    These are LMOS based targets. The 'lmos' package must be used in order to
3365
    build these targets.
3366
 
3367
    The LMOS_TP5600_ARM9TDMI can use components from the TP5600_ARM9TDMI,
3368
    where no LMOS_TP5600_ARM9TDMI components are provided.
3369
 
3370
    The LMOS_TP5600_EMU can use components from the TP5600_EMU,
3371
    where no LMOS_TP5600_EMU components are provided.
3372
 
3373
  * New build platform: WINCE
3374
    This is a tag that will be expanded to all the known WINCE targets.
3375
    Use of this platform will simplify the creation of components for
3376
    consumption on all WINCE machines.
3377
 
3378
    The current list of WINCE targets is:
3379
            WCEIT3000
3380
            WCEPA961
3381
            WCEPA962
3382
            WCEPCM7220
3383
            WCEPSION_420
3384
            WCEPSPC_arm
3385
            WCEPSPC_emu
3386
            WCEX86A420
3387
            WCEX86A500
3388
            WCEX86A500_SOM4455
3389
 
3390
    The WINCE targets actually built will be affected by GBE_BUILDFILTER.
3391
 
3392
 *  JATS makefile.pl
3393
    The package descriptor file, 'descpkg', will be packaged in all makefiles
3394
    that contain packaging directives.
3395
 
3396
    There is now no need to explicitly package the 'descpkg' file, except in
3397
    very unusual configurations.
3398
 
3399
Minor changes:
3400
  * Directive: PackageFile
3401
    Generate a warning if the source file name does not confirm to good naming
3402
    conventions. The filename must not start with a '-' and must not contain
3403
    an '='.
3404
 
3405
    Normally the result of an error in the directive. ie: "-Subdir=etc", instead
3406
    of "--Subdir=etc".
3407
 
3408
  * JATS Internal utility: cmdfile
3409
    Updated Linux and Solaris targets with a version of the cmdfile that
3410
    provides a better error message for libraries that cannot be found.
3411
 
3412
    This version will display the library search path with one item per line,
3413
    rather than all items on one, very long, line.
3414
 
3415
------------------------------------------------------------------------
3416
Version: JATS_2.63.0                                Released: 5-Apr-07
3417
------------------------------------------------------------------------
3418
Major changes:
3419
 
3420
  * JATS release command
3421
    Modified the configuration spec generated when a branching rule is
3422
    specified. The change will ensure that directories are not branched.
3423
 
3424
    Rules are:
3425
        Modify a file:      File will branch
3426
        Adding a file:      Containing directory will not branch
3427
                            File will be placed on a branch
3428
        Add a directory:    Containing directory will not branch
3429
                            New directory will branch
3430
 
3431
Minor changes:
3432
  * JATS release command
3433
    Added -noprefex option to allow the creation of a view directory without the
3434
    user name being prefixed to it. This is useful in creating an escrow view.
3435
 
3436
  * JATS label command
3437
    Detect and report parent directories that are checkedout when a label
3438
    is applied. Previously these had gone unreported.
3439
 
3440
  * JATS make
3441
    Undo previous change to preserve symbolic links while Packaging and
3442
    Installing files. A problem was encountered when a file from a package
3443
    was re-packaged.
3444
 
3445
  * JATS escrow
3446
    Added a tool to generate information for creating an escrow drop.
3447
    Use jats escrow -help for details
3448
 
3449
  * makefile.pl directive: MakeAnt
3450
    This directive will create parameters to specify the location of external java
3451
    packages that have been referenced via a LinkPkgArchive directive.
3452
 
3453
    This allows the build.xml to contruct a CLASSPATH to access JAR files in
3454
    packages, without the overhead of copying the entire package into the
3455
    interface directory.
3456
 
3457
  * build.pl directive: BuildPkgArchive
3458
    Modified the processing of 'jar' directories.
3459
    Directories of the form 'jar.<target>' will be transferred into the 'jar'
3460
    directory as seen by the package.
3461
 
3462
    Intended use: Deployment of oraclient for Solaris 10
3463
 
3464
  * JAVA 6
3465
    JATS now supports all versions of Java through the use of JAVA_HOME_X_Y
3466
    environment variables. Where X andY specify the version of JAVA.
3467
 
3468
    The jats.bat and jats.sh example files only provide indication of 1.4, 1.5
3469
    and 1.6 support, but all versions are now supported.
3470
 
3471
    The "jats vars -v" command will display all JAVA_HOME environment variables
3472
 
3473
  * Jats command: vars
3474
    Extended to show a "*" for EnvVars that do not address a valid directory
3475
    These indicate potential problems.
3476
 
3477
------------------------------------------------------------------------
3478
Version: JATS_2.62.4                                Released: 20-Mar-07
3479
------------------------------------------------------------------------
3480
Major changes:
3481
  * JATS create_dpkg + packageing shared libraries (Unix)
3482
    When a shared library is created a simple symbolic link to the versioned
3483
    libarry is also created.
3484
 
3485
    Previous versions of JATS would replace the symbolic link with a physical
3486
    copy of the file. The effect of this is that when the shared libaries is
3487
    'Installed', 'Packaged' and transferred into dpkg_archive there are two
3488
    files, instead of one file and one link to the file (in the same directory)
3489
    The Solaris shared libraries can be quite large, due to the debug
3490
    information contained within the file.
3491
 
3492
    This version of JATS will preserve symbolic links when 'Installing',
3493
    'Packaging' and transferring to dpkg_archive.
3494
 
3495
    The advantage of this will be significant reduction in disk space used
3496
    within the build environment and dpkg_archive.
3497
 
3498
  * Building Perl Modules
3499
    Modified the process to prevent the module builder attempting to modify the
3500
    documentation on the build machine.
3501
 
3502
    Integrated the 'jats clean' operation.
3503
 
3504
Minor changes:
3505
  * jats create_dpkg
3506
    Added an option to create a built.generic file
3507
    This is only used by the Automated Built Tools.
3508
 
3509
------------------------------------------------------------------------
3510
Version: JATS_2.62.3                                Released: 28-Feb-07
3511
------------------------------------------------------------------------
3512
Major changes:
3513
  * JATS JAVA build target
3514
    The default behaviour of the JAVA build target has changed such that the
3515
    default version of JAVA used will be 1.4.
3516
 
3517
    Previous behaviour was to use whichever version was specified by the EnvVar
3518
    JAVA_HOME. This was not controlled, thus the build was not controlled.
3519
    Problems occur when using the new AutoBuildTool as it uses Java 1.5 and this
3520
    is then picked up as the default version.
3521
 
3522
    If a version, other than 1.4, is required then specify it within the
3523
    build.pl file.
3524
 
3525
Minor changes:
3526
  * jats release
3527
    Ensure that the 'cleartool' command can be found in the users PATH
3528
    Issue an error if it cannot be found.
3529
    This error indicates bad DevEnv setup
3530
 
3531
    Added facility to create a view based on a config_spec, instead of a label.
3532
    Such a view cannot be used to create a release. It is intended to simplify
3533
    the creation of simple static views. The name of view is, by default,
3534
    based on the name of the config spec. Use the -view=name option to change
3535
    the name of the view.
3536
 
3537
  * GenerateFiles directive
3538
    Added new --Vars() to allow packaging of JATS plugin tools.
3539
 
3540
  * MOS Toolset
3541
    When using MOS fast intermodule calls the optimizer will preload commonly
3542
    used memory addresses into a register BEFORE the GDP has been correctly set
3543
    up. Use the following option to suppress this optimization
3544
 
3545
    Added: CompileOptions ('*', 'NoGlobalOptimization' );
3546
 
3547
 
3548
------------------------------------------------------------------------
3549
Version: JATS_2.62.2                                Released: 15-Feb-07
3550
------------------------------------------------------------------------
3551
Major changes:
3552
 
3553
Minor changes:
3554
  * JATS environment
3555
    Ensure that the true path of the Perl executable is present in the PATH
3556
    environment variable. This allows build tool access to various perl utilities
3557
    that are located in the Perl bin directory.
3558
 
3559
    Resolves issues in locating utilities such as pod2html
3560
 
3561
  * Use of GENERIC platforms
3562
    Report an error if a GENERIC platform is mixed with any other platform
3563
    specifier. GENERIC is used for packages that build on all machines because
3564
    they do not use a compiler or linker. They simply contains files that need
3565
    to be packaged.
3566
 
3567
  * Generated makefiles
3568
    Solaris and Linux: Ensure that LD_LIBRARY_PATH is exported if it is used.
3569
 
3570
  * Generating MOS THX files
3571
    Added option --BinaryImage to the SharedLib directive used to create MOS THX
3572
    files. This option will create a binary image (.bin) instead of a .thx file.
3573
    This is being used in the creation of BR Applets.
3574
 
3575
        SharedLib   ( 'MOS', "xxx", @OBJS, "--Rel=xxx.rel", "--BinaryImage" );
3576
 
3577
  * JATS release
3578
    Correct the operation of the -path option under Unix
3579
 
3580
  * JATS extract
3581
    New JATS command. This is the same as 'jats release -extract'
3582
 
3583
  * JATS Toolset
3584
    Added support for the WinCe PSION (WCEPSION_420)
3585
    This is a armv4i device using 4.20 of the WCE SDK    
3586
 
3587
 
3588
------------------------------------------------------------------------
3589
Version: JATS_2.62.1                                Released: 18-Jan-07
3590
------------------------------------------------------------------------
3591
Major changes:
3592
 
3593
Minor changes:
3594
  * jats label
3595
    Added a -vob=name option
3596
    This allwos the label utility to create, lock, unlock, rename and delete
3597
    labels without the user actually being located within the VOB. This option
3598
    cannot be used in conjunction with operations that place labels on files.
3599
    It can only be used for operations that manipulate the label.
3600
 
3601
    Added a -user=name option
3602
    This extends the operation of the -mine operation to change ownership of the
3603
    label to the named user.
3604
 
3605
  * jats release
3606
    Displays the path to the view and the build file in a user friendly manner
3607
    Under Windows it uses \, unless running under cygwin.
3608
 
3609
  * JATS build.pl
3610
    BuildProduct supports the --Uses=xxxx construct on a per-target basis.
3611
    ie:
3612
        BuildProduct ('TP5', 'LMOS_TP5600_EMU', 'LMOS_TP5600_ARM9TDMI,--Uses=TP5600_ARM9TDMI');
3613
 
3614
 
3615
------------------------------------------------------------------------
3616
Version: JATS_2.62.0                                Released: 22-Dec-06
3617
------------------------------------------------------------------------
3618
Major changes:
3619
  * GenerateFiles and RunTest directives
3620
    These directives have been extended to allow a large number of makefile
3621
    values to be added to the command lines,without resorting to knowledge of
3622
    the makefile internals. ie:
3623
        --Var(BuildName)
3624
    will be expanded to (hen building MyPackage)
3625
        -BuildName=MyPackage
3626
 
3627
    The complete list of Variables is provided in the JATS manual.
3628
 
3629
  * GenerateFiles
3630
    Added a --Clean option to allow tools to be invoked in the 'clean' phase
3631
    This allows external scripts to cleanup.
3632
 
3633
  * BuildPlatforms
3634
    Restored operation of the --Uses option
3635
 
3636
Minor changes:
3637
  * GCC Toolset
3638
    Exports path to compiler. Used by scripts to build packages
3639
 
3640
Internal changes:
3641
  * GenerateFiles
3642
    Maintains the arguments in an array for simpler processing.
3643
 
3644
    --Shell is now processed by the 'make' shell rather then invoking an
3645
    external shell. It will be the same shell, just easier to setup.
3646
 
3647
 
3648
------------------------------------------------------------------------
3649
Version: JATS_2.61.3                                Released: 14-Dec-06
3650
------------------------------------------------------------------------
3651
Major changes:
3652
  * Caching JATS
3653
    Added a mechanism whereby JATS can cache a copy of itself on the users local
3654
    drive. This is applicable to windows.
3655
 
3656
    This mechanism will allow a user to address JATS via the soft-links in
3657
    dpkg_archive and pick up the current version of JATS without the penalty of
3658
    then using JATS across a slow(network) link.
3659
 
3660
    The EnvVar GBE_CACHE_JATS controls the operation of this feature.
3661
    Set GBE_CACHE_JATS to one to enable the operation, but it will only be
3662
    effective if JATS is being run from GBE_DPKG in the first place.
3663
 
3664
    Use: Build Machines and Windows Users
3665
 
3666
Minor changes:
3667
  * Build directive: BuildAlias with --Target option
3668
    Corrected a problem when the target name is a expanded platform name (ie:
3669
    TP5600) that prevent correct expansion.
3670
 
3671
  * jats build
3672
    If the user has not configured a cache, then do not attempt to cache
3673
    packages. This will remove an annoying warning message for each package
3674
    processed by the build.
3675
 
3676
  * jats build
3677
    Modified the error messages generated when JATS fails to create the
3678
    makefiles. The previous system would report failures while creating
3679
    makefiles and, at the end of the process, it would generate a large error
3680
    message to indicate the failure. This large message diverted the users
3681
    from reading the other error messages resulting in confusion.
3682
 
3683
  * PackageFile, PackageLib, PackageProg and PackageHdr
3684
    Detect and report as an error use of the --Dir=<Path> option where the
3685
    Path is not specified.
3686
 
3687
    Most instances of this error will be where the option has been mis-used in
3688
    conjunction with a package.pl file, or during transition from using a
3689
    package.pl file. That change is detects errors where the user has specified
3690
        --Dir=$Pinc
3691
    but $Pinc is not defined.
3692
 
3693
  * Purify and Purecov under Windows
3694
    Changes to correct the operation of Rational's tools when used on the
3695
    Windows platform.
3696
 
3697
        - OPTIONS=purecov
3698
            Forces the link operations to generate the relocation table required
3699
            by 'purecov.
3700
 
3701
            Does not attempt to use purecov in the compiler tool chain
3702
            This is required under Solaris, but not Windows
3703
 
3704
        - OPTIONS=purify
3705
            Does not attempt to use purecov in the compiler tool chain
3706
            This is required under Solaris, but not Windows.
3707
            Under WIndows this option does nothing.
3708
 
3709
 
3710
------------------------------------------------------------------------
3711
Version: JATS_2.61.2                                Released: 27-Nov-06
3712
------------------------------------------------------------------------
3713
Major changes:
3714
  * makefile.pl directive Platform
3715
    This directive has been expanded to allow for the negation operation
3716
    Example:
3717
        Platform ('!MOSCF');
3718
            Process makefile for all targets other than MOSCF
3719
            This is the same as Platform ('*', '!MOSCF');
3720
 
3721
    Excluded platform will be processed after included platforms have
3722
    been determined.
3723
 
3724
Minor changes:
3725
  * Added the ScanList directive.
3726
    This directive allows a list of files within an external package to be
3727
    located at build-time.
3728
 
3729
  * Unix based systems
3730
    If the EnvVar LD_LIBRARY_PATH was undefined, then a warning would be
3731
    generated by make under some conditions. The warning has been removed.
3732
 
3733
  * MakeLinuxDriver
3734
    Added a --Define=text option to allow "defines" to be passed to the
3735
    driver being built.
3736
 
3737
 
3738
------------------------------------------------------------------------
3739
Version: JATS_2.61.1                                Released: 20-Nov-06
3740
------------------------------------------------------------------------
3741
Major changes:
3742
 
3743
 
3744
Minor changes:
3745
  * jats_rewrite tool
3746
    Handle the BuildPreviousVersion() directive.
3747
    This directive is only used within deployment scripts.
3748
 
3749
  * Internal package: RmPkgInfo
3750
    Extract modified date when extracting package information
3751
 
3752
    Added the function getDependenciesHash() to provide a hash of all the
3753
    dependancy information within a package.
3754
 
3755
    Added NO_WARN option to the classes 'new' method to supress warning
3756
    messages.
3757
 
3758
------------------------------------------------------------------------
3759
Version: JATS_2.61.0                                Released: 13-Nov-06
3760
------------------------------------------------------------------------
3761
Major changes:
3762
  * makefile.pl directives
3763
    Added directive: MakePerlModule to build and package CPAN style Perl Modules.
3764
 
3765
    Added directive: MakeLinuxDriver to build and Linux Device Driver.
3766
 
3767
    GenerateFiles.
3768
        Added option: --NoGenerate to indicate that the directive does
3769
                      not generate any tangible results. The command will
3770
                      be run on every invocation.
3771
 
3772
 
3773
Minor changes:
3774
  * Added the jats version command
3775
    Will only print out the current version of JATS
3776
 
3777
  * GCC Toolset (Used to build Linux)
3778
  Added options to allow the generation of statically linked programs.
3779
  There are two mechanism:
3780
 
3781
  Globally within the makefile.pl, or if applied in the common makefile.pl
3782
  the option can apply to all programs being built.
3783
 
3784
  CompileOptions ( 'platform', 'StaticProgs' );     - Generate static programs
3785
  CompileOptions ( 'platform', 'No_StaticProgs' );  - Default
3786
 
3787
  Within the Prog directive, the following options will override the global
3788
  default.
3789
    --Static    - Create a statically linked program
3790
    --Shared    - Create a dynamically linked program
3791
 
3792
------------------------------------------------------------------------
3793
Version: JATS_2.60.0                                Released: 03-Nov-06
3794
------------------------------------------------------------------------
3795
Major changes:
3796
  * SunWorks Toolset
3797
    Better determination of the location of the SunWorks compiler and library
3798
    Does not use an environment variable to locate compiler libraries
3799
    It is based on machine type.
3800
    Uses the absolute path to the compiler  and does not use the user's PATH
3801
 
3802
    Corrects a problem on the Solaris10 installs.
3803
 
3804
Minor changes:
3805
  * Perl DBI interface
3806
    Removed the message showing database connection
3807
 
3808
  * JATS internal library
3809
    Better handling of badly formed version numbers
3810
 
3811
------------------------------------------------------------------------
3812
Version: JATS_2.59.0                                Released: 30-Oct-06
3813
------------------------------------------------------------------------
3814
Major changes:
3815
  * GCC Toolset
3816
    Altered the mechanism used to determine cross compilation
3817
    Extended the cross compilers that can be handled by the toolset
3818
    Removed the use of `uname`.
3819
 
3820
  * Added platforms
3821
    TP5600                  ( Expands to TP5600_ARM9TDMI and TP5600_EMU )
3822
    TP5600_ARM9TDMI
3823
    TP5600_EMU
3824
 
3825
Minor changes:
3826
  * descpkg file reader
3827
    Allow handcrafted JAVA based packages that use tabs instead of spaces as a
3828
    field separator.
3829
 
3830
  * JATS eprog command
3831
    Can now start java programs encapsulated within JAR files
3832
 
3833
  * Microtec Coldfire compiler
3834
    Force the compiler to create temp files within the interface directory.
3835
    This is an attempt to solve a infrequent problem seen when multiple builds
3836
    are being performed. The 68k compiler already had a similar fix to address a
3837
    similar, but more pronounced, issue.
3838
 
3839
  * Atmel toolset (DEVI-031788)
3840
    New Products: AT90SC7272C and AT90SC3232CS
3841
        The AT90SC3232CS is identical to the existing AT3232
3842
        The AT90SC7272C replaces the (as yet unused) AT72722
3843
 
3844
    Note: Products of AT3232 and AT90SC3232CS cannot be mixed.
3845
          AT3232 is provided for backward compatibility.
3846
 
3847
------------------------------------------------------------------------
3848
Version: JATS_2.58.0                                Released: 16-Oct-06
3849
------------------------------------------------------------------------
3850
Major changes:  Directive: RunTests
3851
  * The --CopyIn option will always copy in the specified files
3852
 
3853
  * GCC Toolset (Shared Library Generation)
3854
    Added option --Def=file_name to the shared library definitions
3855
 
3856
    When compiling Shared Library objects the -fPIC flag has been added.
3857
 
3858
 
3859
Minor changes:
3860
  * JATS wrapper script
3861
    Added a sanity test to ensure that the JATS machine specific BIN directories
3862
    have been setup. When JATS is installed the PostInstall script must be run
3863
    to setup links to system programs.
3864
 
3865
------------------------------------------------------------------------
3866
Version: JATS_2.57.1                                Released: 15-Sep-06
3867
------------------------------------------------------------------------
3868
Major changes:
3869
 
3870
Minor changes:
3871
  * AT3232 toolset
3872
    Added a --Type=PayLoadType field to the Prog directive for this target
3873
    when creating .sxml files
3874
 
3875
  * Test Tool
3876
    Added: jats_lib_scan.pl
3877
    Use jats jats_lib_scan -man for detailed help
3878
 
3879
 
3880
------------------------------------------------------------------------
3881
Version: JATS_2.57.0                                Released: 12-Sep-06
3882
------------------------------------------------------------------------
3883
Major changes:
3884
  * SOLARIS toolset: CompileOptions
3885
    Added CompileOptions
3886
        misalign            - Only allowed on sparc platforms
3887
        no_misalign         - Default
3888
 
3889
        multithread         - Default
3890
        no_multithread      - Disable multithread compilation and linking
3891
 
3892
  * SOLARIS toolset: CompileOptions
3893
    Implemented the common CompileOptions
3894
 
3895
        prod_no_optimise
3896
        prod_no_debuginfo
3897
        prod_optimise
3898
        prod_debuginfo
3899
 
3900
        debug_no_optimise
3901
        debug_no_debuginfo
3902
        debug_optimise
3903
        debug_debuginfo
3904
 
3905
  * SOLARIS target: New Aliases
3906
    Provided new ALIAS based in the underlying architecture
3907
    Theses are:
3908
        SOLARIS_SPARC
3909
        SOLARIS_AMD
3910
    These may be used to limit operations to only flavor of SOLARIS. eg: The
3911
    utility 'rtc_patch_area' is only usable on sparc machines.
3912
 
3913
Minor changes:
3914
  * AT3232 toolset
3915
    Create .sxml files in conjunction with .s19 files
3916
 
3917
  * Jats build
3918
    Altered the programs help mechanism to use perl POD.
3919
    Extended the builtin help text.
3920
 
3921
------------------------------------------------------------------------
3922
Version: JATS_2.56.3                                Released: 04-Sep-06
3923
------------------------------------------------------------------------
3924
Major changes:
3925
 
3926
Minor changes:
3927
  * Utility InstallPkg as used by BuildPkgArchive()
3928
    Better dection of directories that have been processed to reduce warning
3929
    messages
3930
 
3931
  * PackageFile and PackageProg directives
3932
    The --Machine and --Tool options have been modified to allow the JATS tools
3933
    to be created in a directory that is related to GBE_MACHTYPE on which the
3934
    tool is created, rather then the target platform type.
3935
 
3936
------------------------------------------------------------------------
3937
Version: JATS_2.56.2                                Released: 28-Aug-06 
3938
------------------------------------------------------------------------
3939
Major changes:
3940
 
3941
Minor changes:
3942
  * WIN32 and WINCE toolsets
3943
    SharedLib operation. Added an option to allow the creation of a 'stub'
3944
    library without creating the body of the library:
3945
        eg: SharedLib ( 'WIN', 'MyStub' , '--Def=windef.def','--MutualDll','--Stubonly' );
3946
 
3947
 
3948
  * MOS toolsets
3949
    SharedLib operation. Added an option to allow the creation of a 'stub'
3950
    library without creating the body of the library:
3951
        eg: SharedLib ( 'MOS', 'MyStub' , '--Rel=lib.rel' , '--Implib=lib_stub','--Stubonly' );
3952
 
3953
  * JATS BIN directories
3954
    Added the program 'gmake' as a soft link.
3955
    gmake is required by some COTS packages that are being built from source
3956
    using autoconf.
3957
 
3958
  * Generate directive
3959
    The shared library search path is extended to allow the tools to locate
3960
    all shared libraies (.dll/.so) in packages and the local area.
3961
 
3962
    Simplifies the use of Xerces during the build process.
3963
 
3964
 
3965
------------------------------------------------------------------------
3966
Version: JATS_2.56.1                                Released: 23-Aug-06
3967
------------------------------------------------------------------------
3968
Major changes:
3969
  * Support for SOLARIS10_X86 and SOLARIS10_X64
3970
    Initial release.
3971
 
3972
Minor changes:
3973
 
3974
 
3975
------------------------------------------------------------------------
3976
Version: JATS_2.56.0                                Released: 18-Aug-06
3977
------------------------------------------------------------------------
3978
Major changes:
3979
  * Support for SOLARIS10_sparc32 and SOLARIS10_sparc64
3980
    Initial release.
3981
 
3982
  * Packaging directives
3983
    Added option --OsCommon to allow files and header files to be packed into
3984
    a directory known to all platforms being built for a common OS.
3985
 
3986
    Currently this is only supported to target platforms based on
3987
        SOLARIS
3988
        WIN32
3989
 
3990
  * Removal of support for badly formed packages
3991
    As of this release libraries that exist in the <packagename>/lib directory
3992
    will not be available to JATS. These libraries are in the incorrect
3993
    directory. They MUST be in a directory that indicates the intended purpose
3994
    of the library. A .so library cannot be used on all machines ( linux,
3995
    solaris-sparc, solaris-amd ... ).
3996
 
3997
  * Build Platform target name expansion facility
3998
    The build targets of SOLARIS and LINUX are seen as expandable names. They
3999
    will be expanded to suitable targets - depending on the host machine .
4000
 
4001
 
4002
Minor changes:
4003
  * Utility: JATS LABEL
4004
    Ensure that the 'cleartool' utility can be found in the users path.
4005
    Generate a suitable error message if it cannot be found.
4006
 
4007
  * Utility: JATS RELEASE
4008
    Added a -root=dirname to allow the user to place the created view at a given
4009
    location
4010
 
4011
    Added GBE_VIEWBASE to provide a globally configured mechanism for
4012
    controlling the view location. Performs the same job as -root=xxxx
4013
 
4014
  * Utility genrc
4015
    Added the company name to the copyright string
4016
 
4017
  * Utility: jats_save_build
4018
    Added option: -new
4019
    This option forces the saved file only a new branch.
4020
    The option can be used to save a build.pl file onto a new project-specific
4021
    branch. Useful when branching an entire release.
4022
 
4023
  * Utility: jats_rewrite
4024
    Added options to allow project suffixes to be replaced.
4025
    Use: Convert a .syd project to a .bej project.
4026
 
4027
 * Deprecated features: package.pl and tree.dir
4028
   These two build features are being deprecated. They are not suitable for
4029
   migration to other SOLARIS based platforms.
4030
 
4031
   The Package directives provide sufficient power to replace the package.pl
4032
   features - in a uniform manner.
4033
 
4034
 
4035
Internal Changes:
4036
  * Major rework of the JATS BuildPlatform, BuildAlias an BuildProducts
4037
    directives, together with the mechanism used to describe the platform builds.
4038
 
4039
    Introduced a CFG/<PLATFORM>.CFG file to provide:
4040
        1) Platform information available at build time
4041
        2) Dynamic platform names
4042
 
4043
  * Major rework of the 'SOLARIS' platform
4044
    The SOLARIS platform will generate one or more targets, depending on the
4045
    machine on which the platform is invoked.
4046
 
4047
    Consolidated a number of SOLARIS specific kludges and converted them into
4048
    configurable items. These kludges are really on applicable to the
4049
    SOLARIS8_SPARC32 platform. New SOLARIS builds will be well formed.
4050
 
4051
  * BuildPkgArchive operation
4052
    Formalized a number of kludges in operation of the SOLARIS8 under sparc32
4053
    platform. These are configured early in the build process and are no longer
4054
    needed.
4055
 
4056
    A side effect of this work is that files from external packages may be
4057
    located in 'SOLARIS', 'SOLARIS_sparc' or 'sparc' directories. The change
4058
    should be transparent as the consumer tools should be able to handle
4059
    files from all of these.
4060
 
4061
------------------------------------------------------------------------
4062
Version: JATS_2.55.1                                Released: 17-Aug-06
4063
------------------------------------------------------------------------
4064
Major changes:
4065
 
4066
Minor changes:
4067
  * WinCE toolset
4068
    Added support for the adv_som_4455_wlan
4069
 
4070
------------------------------------------------------------------------
4071
Version: JATS_2.55.0                                Released: 3-Aug-06
4072
------------------------------------------------------------------------
4073
Major changes:
4074
  * Jats wrapper: Specify version of JATS to be used
4075
    Added a -version=xxxx option to force JATS to use a specific version of
4076
    JATS. The same operation can be achieved by setting GBE_JATS_VERSION.
4077
 
4078
    The required version MUST be found in one of the known archives.
4079
 
4080
    JATS will attempt to cache the version of JATS to assist in speeding up
4081
    the operations.
4082
 
4083
    The version option MUST be the first option.
4084
 
4085
    The version option MUST be followed by a '--' option.
4086
    This prevents JATS parsing other options and recursion issues.
4087
 
4088
    Example:    jats -version=2.54.3.cr -- build
4089
 
4090
  * Migrated the "jats install" functionality out of the jats wrapper script
4091
    and into the create_dpkg utility. This is transparent to the user.
4092
 
4093
  * Utility: create_dpkg
4094
    Added a '-quiet' option to allow use within scripts
4095
    Extended the built-in help
4096
    Added useful error messages
4097
    Migrate code to a common error reporting mechanism
4098
 
4099
  * WinCE toolset
4100
    Added support for the WCEPA962 target.
4101
 
4102
  * M16 toolset as used in building MCRFirmware
4103
    Added a --MotOnly option to the Prog directives. MOT files 
4104
    are used in the creation of bootstraps.
4105
 
4106
Minor changes:
4107
  * JATS wrapper script
4108
    Added a -ABT=xxx option to allow the Auto Build Tool to be invoked from
4109
    the command line.
4110
 
4111
  * Utility: jats_rewrite
4112
    Modified so that it will display changes. These will then be present in the
4113
    ABT log so that a developer can see which packages have been rippled.    
4114
 
4115
Internal Changes:
4116
  * Common Error Reporting
4117
    Will use environment variables to control DEBUG and VERBOSE levels
4118
    for individual users. A module reporting with a name of XXXX will use EnvVars
4119
    of GBE_XXXX_VERBOSE and GBE_XXXX_DEBUG to control the debug and VERBOSE
4120
    level.
4121
 
4122
    Force flushing after a "Question" is asked to ensure that the prompt is
4123
    displayed.
4124
 
4125
    Enable autoflush for both STDOUT and STDERR.
4126
 
4127
  * Added JatsSystem module
4128
    Common code for accessing system commands        
4129
------------------------------------------------------------------------
4130
Version: JATS_2.54.3                                Released: 17-Jul-06
4131
------------------------------------------------------------------------
4132
Major changes:
4133
 
4134
Minor changes:
4135
  * BR Compiler toolset
4136
    Add the include file search path to the link command line. Allows
4137
    .def files to include other files.
4138
 
4139
  * IAR toolset
4140
    Added AT7272 support
4141
 
4142
  * Tool: jats_manifest
4143
    Added links to a suitable md5sum program on target platforms
4144
 
4145
------------------------------------------------------------------------
4146
Version: JATS_2.54.2                                Released: 12-Jul-06
4147
------------------------------------------------------------------------
4148
Major changes:
4149
 
4150
Minor changes:
4151
  * BR Compiler toolset
4152
    Corrected a problem in flagging that the non-version-1 compiler was in
4153
    use.
4154
 
4155
 
4156
------------------------------------------------------------------------
4157
Version: JATS_2.54.1                                Released: 29-Jun-06
4158
------------------------------------------------------------------------
4159
Major changes:
4160
 
4161
Minor changes:
4162
  * Mictotec toolset
4163
    Assembler files. Define DEBUG in debug builds and NDEBUG in production
4164
    builds.
4165
 
4166
  * JATS Core
4167
    Added GBE_ABT. This is used by the Auto Build Tool to indicate that an
4168
    auto build is in progress. It may be used by various tools to modify their
4169
    behaviour.
4170
 
4171
------------------------------------------------------------------------
4172
Version: JATS_2.54.0                                Released: 22-Jun-06
4173
------------------------------------------------------------------------
4174
Major changes:
4175
  * Removal of non-core deployment functionality from JATS.
4176
    Deployment package will be affected.
4177
 
4178
    The build.pl file of deployment package will need to import deployment
4179
    support with a BuildPkgArchive directive. ie:
4180
 
4181
        BuildPkgArchive ( 'deployfiles', '1.0.0.cr' );
4182
 
4183
    This version of deployfiles contains the same functionality as that provided
4184
    by the previous version of JATS. Version 2 of this package will be the start
4185
    of a deployment system that will provide support for building InstallShield
4186
    packages.
4187
 
4188
 * Deployment support utilities must be run under JATS
4189
   The environment required for the deployment support utilities is complex
4190
   and is provided by the JATS wrapper script.
4191
 
4192
   This is a change in usage. Instead of running the program 'updatenodespec'
4193
   the user will need to run 'jats updatenodespec'
4194
 
4195
Minor changes:
4196
  * SubDir directive
4197
    Added a sanity test to detect the case when a 'SubDir' directive specifies
4198
    a directory from two different makefiles.
4199
 
4200
  * Tools: Dependancy generator mkdepend
4201
    If an include file was referenced by a symbolic name, then the generated
4202
    dependancy information would be wrong for all but the first occurrence
4203
    of the file usage.
4204
 
4205
  * New utility: jats_manifest
4206
    Used by the build system to generate and validate source files.
4207
    Beta Release: Windows only at the moment
4208
 
4209
  * Unit tests under SOLARIS_sparc
4210
    The LD_LIBRARY_PATH has been modified to correctly pick up libraries
4211
    generated within the build and have been installed locally.
4212
 
4213
  * Default behaviour of JATS the wrapper script
4214
    This has been changed. Previous unknown commands were passed to make.
4215
    In this release unknown comamnds will be treated a 'etool' commands and 
4216
    will execute a JATS extended command.
4217
 
4218
 
4219
Internal Changes:
4220
  * Code refactor
4221
    Created JatsEnv to encapsulate functionality that was multiply defined.
4222
 
4223
  * Deployment utilities
4224
    The Perl module Ignorelist.pm and the .ccignore file
4225
    Changed the mechanism by which this module locates a .ccignore file.
4226
    The .ccignore file has been moved to the same directory as the module and
4227
    the module can locate the file.
4228
 
4229
    Previously the module required an environment variable in order to locate
4230
    the file, which was in a fixed location anyway.
4231
 
4232
  * JATS core
4233
    Removed the use of the environment variable PERLINC.
4234
 
4235
    Better parsing of descpkg files.
4236
 
4237
  * JATS core debugging: JatsError.pm
4238
    Allow control over the debug and verbose messages of specific programs
4239
    through the use of environment variables.
4240
 
4241
    A program reporting errors as "name" can be controlled via environment
4242
    variables GBE_name_VERBOSE and GBE_name_DEBUG.
4243
 
4244
  * BuildPkgArchive operation
4245
    Modified the subdirectories transferred with this directive to include:
4246
        deployfiles     - as used by the deployment system
4247
        tools/scripts   - as used by perl based extensions
4248
 
4249
  * Make environment
4250
    Extended the PERL5LIB path seen by perl programs executed under make to
4251
    include 'tools/script' directories that contain Perl Modules.
4252
 
4253
 
4254
------------------------------------------------------------------------
4255
Version: JATS_2.53.2                                Released: 13-Jun-06
4256
------------------------------------------------------------------------
4257
Major changes:
4258
  * Deployment. GetMassInstId.rul (From George Christidis)
4259
    Added support for SILENT_MODE
4260
 
4261
 
4262
------------------------------------------------------------------------
4263
Version: JATS_2.53.1                                Released: Not release
4264
------------------------------------------------------------------------
4265
 
4266
Not Released.
4267
This label waas used as a place keeper. This version was not used as a basis
4268
for JATS_2.53.2. Its much closer to JATS_2.54.0.
4269
 
4270
 
4271
------------------------------------------------------------------------
4272
Version: JATS_2.53.0                                Released: 11-Apr-06
4273
------------------------------------------------------------------------
4274
Major changes:
4275
  * Deployment Scripts: Release Manager Database Access
4276
    The mechanism for communicating with the Release Manager Database has been
4277
    radically replaced.
4278
 
4279
    A test tool has been added to prove connectivity to Release Manager.
4280
    Usage:
4281
        jats etool test_rmconnection
4282
 
4283
    The pervious scripts used DBI::ODBC to communicate with the Oracle
4284
    Database that contains Release Manager. There were a number of problems with
4285
    this solution:
4286
         - Required the installation of two Perl Modules
4287
         - Required the installation of an Oracle client
4288
         - Required the use of an ODBC bridge machine when used on Solaris
4289
         - Support for Perl within Oracle appears to be on the decline
4290
 
4291
    The solutions uses a Java application and Java's jdbc. The oracle:thin
4292
    client is used as this does not require any installation or configuration in
4293
    order to work.
4294
 
4295
    JATS overrides Perl's DBI package with a package of the same name, but
4296
    reduced functionality.
4297
 
4298
 
4299
Minor changes:
4300
  * makefile.pl directive: SetValue
4301
    Added a '--' option to disable and enable parsing of options.
4302
    This allows a value with leading '--' to be set.
4303
 
4304
  * makefile.pl directive: SetList
4305
    Added this directive to formalise the creation and processing of lists
4306
    within the makefiles.
4307
        Options:
4308
            --NoWarn                    Disable name clash warnings
4309
            --Project=xxxx[,xxxx]+      Add to list in selected projects
4310
            --Unique                    Add only if not already present
4311
            --Clear                     Clear list, before adding new items
4312
            --Append                    Append items to list (default)
4313
            --                          Disable/Enable option parsing
4314
        Useage:
4315
 
4316
    SetList ('*', 'LibList', 'lib1', 'lib2', '--Project=syd');
4317
    SharedLib ('*', 'MyDLL', @OBJS, @LibList );
4318
 
4319
  * Makefile.pl directive: RunTest
4320
    Corrected the option of the --CopyIn=file option where the specified file
4321
    is not in the current directory.
4322
 
4323
  * Jats Command: ant'
4324
    This command has been extended to make use of the -buildfile=xxxx option
4325
    to allow multiple buildfiles to be differentiated.
4326
 
4327
    eg: jats -buildfile=MyPackage ant
4328
 
4329
  * TOOLSET: DAFBR Compiler support
4330
    Modified the toolset to support an optimisation feature of the next
4331
    generation of the daf_br_compiler. These will be enabled if the major version
4332
    of the package containing the compiler is greater the "1". ie: 2.0.0.cr
4333
 
4334
  * Interface helper files: set_XXXX.bat/.sh
4335
    Added provision to process user command arguments.
4336
    Thus
4337
 
4338
        set_WIN32.bat prog
4339
 
4340
    will set the WIN32 environment and run the command: prog
4341
 
4342
 
4343
------------------------------------------------------------------------
4344
Version: JATS_2.52.2                                Released: 30-Mar-06
4345
------------------------------------------------------------------------
4346
Major changes:
4347
 
4348
Minor changes:
4349
  * Addressed issue with BUILDNAME, an internal variable.
4350
    Due to the use of these 'raw' values in user build.pl's they need to be
4351
    maintained. Previously the values may or may not have had a project
4352
    extension. It was bad. Now:
4353
        $(BUILDNAME) contains two or three space seperated fields - always
4354
 
4355
  * m16c Toolset - MCRFirmware
4356
    Force the generation of .thx and payload files when the .bin files are
4357
    created. Previously this only occured in the packaging phase.
4358
 
4359
Internal changes:
4360
  * JATS toolsets
4361
    Added a feature to allow a toolset to flag additional files that get created
4362
    as a part of a "Prog". This allows a "Prog" definition to generate a
4363
    number of files, some which may be packaged.
4364
 
4365
    Previously such files where only generated during the packaging phase. Now
4366
    they will be generated during the make_prog phase - with the other programs.
4367
 
4368
------------------------------------------------------------------------
4369
Version: JATS_2.52.1                                Released: 29-Mar-06
4370
------------------------------------------------------------------------
4371
Major changes:
4372
  * Jats command: etool
4373
    Extended to allow execution of deployment tools. This allows the deployment
4374
    tools to use the JATS core perl modules.
4375
 
4376
  * Address issues with the use of BUILDVER and ScmBuildVer
4377
    Due to the use of these 'raw' values in user makefile.pl's they need to be
4378
    maintained. Previously the values may or may not have had a projectt
4379
    extension. It was bad. Now:
4380
        $(BUILDVERSION) contains the project extension - always
4381
        $ScmBuildVersion does not contain a project extension - always
4382
 
4383
Minor changes:
4384
 
4385
 
4386
------------------------------------------------------------------------
4387
Version: JATS_2.52.0                                Released: 27-Mar-06
4388
------------------------------------------------------------------------
4389
Major changes:
4390
  * JATS environment variables
4391
    Added GBE_DPKG_STORE
4392
        Optionally addresses a dpkg_archive store. This is intended to allow
4393
        read only access to a remote repository. The GBE_DPKG_STORE will be
4394
        searched after GBE_DPKG. It will be searched last. JATS, be default,
4395
        will not publish packages in this repository.
4396
 
4397
        Uses: Seed repository for a complete build
4398
              Remote repository
4399
 
4400
    Added GBE_DPLY
4401
        Optionally addresses a Deployment Archive. This is only used in the
4402
        placement of deployment packages. This value may be project specific.
4403
 
4404
  * MOS_MRI toolset
4405
    Changes the mechanism used to link against the compiler RTL.
4406
    Previously the RTL was included multiple times in the link order. This
4407
    created problem with daf_dsi as the function 'time()' was being satisfied by
4408
    the RTL before being satisfied by the user libraries.
4409
 
4410
    The compiler RTL is now treated as a library of last resort. It will be
4411
    processed once and it will be processed last.
4412
 
4413
 
4414
Minor changes:
4415
  * JATS utility: build
4416
  * JATS utility: cache_dpkg
4417
    Extended the package search algorithm to locate a package within
4418
    GBE_DPKG_STORE. This archive will be searched last.
4419
 
4420
  * JATS utility: gen_cots
4421
    Ensure label is not locked
4422
    Add option to allow user to specify source directory other than a package
4423
    that already exists in dpkg_archive.
4424
 
4425
  * JATS directive: PackageFile
4426
    Now supports --Prod and --Debug options to limit the packaging process
4427
    to a specific type of build.
4428
 
4429
  * JATS directive: GenerateFiles and RunTests
4430
    Added a --PackageInfo() replacement tag to allow package version information
4431
    to be extracted and passed to generator programs.
4432
        ie: --PackageInfo(sysbasetypes,syd,--fullversion)
4433
 
4434
    Extended the --PackageBase() replacement tag to work with packages such as
4435
    sysbasetypes, where there is a .cr and a .syd type.
4436
        ie: --PackageBase(sysbasetypes,syd)
4437
 
4438
  * JATS utility: release
4439
    Under windows, ensure that the directory C:\Clearcase exists. There have
4440
    been installations of Clearcase where this is directory does not exist.
4441
 
4442
  * JATS utility: label
4443
    Added option: "-comment=Text" to allow a comment to be added to a label,
4444
    when it is being created.
4445
 
4446
Internal Changes
4447
  * JATS utility: create_dpkg
4448
    Refactored code to use JATS DescPkg class.
4449
 
4450
    Added options to allow packaging to the various archives. This is of no use
4451
    to the normal developer, but will be used within the complete build system.
4452
 
4453
  * Factored out the parsing of the BuildName directive
4454
    This process was being done in 3 locations - and there were getting
4455
    different results.
4456
 
4457
  * ToolsetRequire directive
4458
    This has been extended to allow JATS to locate Toolset extensions within
4459
    packages. They should be placed within the tool/scripts directory
4460
 
4461
------------------------------------------------------------------------
4462
Version: JATS_2.51.0                                Released: 15-Mar-06
4463
------------------------------------------------------------------------
4464
Major changes:
4465
 
4466
  * MCR toolset
4467
    Generate CD payload files in conjunction with the .BIN files
4468
 
4469
------------------------------------------------------------------------
4470
Version: JATS_2.50.0                                Released: 15-Feb-06
4471
------------------------------------------------------------------------
4472
Major changes:
4473
  * WIN32 utilities
4474
    Replaced a number of the Windows utilities ( cp, rm, mv ...)
4475
    with versions from the GNUWin32 project.
4476
 
4477
    The 'cp' previously used could not recursively copy large directories
4478
    under Windows Server 2003, when both the source and destination are on the
4479
    same drive. ( dpkg_cache of ace ).
4480
 
4481
Minor changes:
4482
  * BuildVersion
4483
    The definition of VERSION_BUILD within the generated version-defs.h file
4484
    will have leading zeros removed, thus allowing it to be used within a 'C'
4485
    program without the number being interpreted as an octal constant.
4486
 
4487
    The string form (VERSION_BUILD_STR) will retain the zeros.
4488
 
4489
  * Unix Builds
4490
    Corrected several issues encountered when specifying the name of a static
4491
    library or a shared library.
4492
 
4493
    JATS will prepend 'lib' to the user specified library name. Problems occurred
4494
    when the user specified a library name that started with 'lib'. Now, on Unix
4495
    systems, JATS will only prepend 'lib' if the library name does not already
4496
    start with 'lib'.
4497
 
4498
  * BuildPkgArchive
4499
    Since 2.45.0 JATS will only transfer files for the BuildPkgArchive, if
4500
    they have not already been transferred. Added a test for the source
4501
    package being updated and then forceing the copy to be repeated.
4502
 
4503
------------------------------------------------------------------------
4504
Version: JATS_2.49.0                                Released: 10-Feb-06
4505
------------------------------------------------------------------------
4506
Major changes:
4507
  * MOS_MRI toolset
4508
    Corrected a problem with the dependencies between a .REL file and the target
4509
    THX file. If the .REL files was modified the output THX file did not get
4510
    regenerated. This was only a problem in cases where the .REL file was
4511
    being manually maintained.
4512
 
4513
 
4514
Minor changes:
4515
  * MakeAnt directive
4516
    Introduced a check to ensure that this directive is only used with a toolset
4517
    that can handle an 'ant' build file. Currently only the JAVA toolset
4518
    supports ANT builds.
4519
 
4520
  * BuildPkgArchive directive
4521
    Correct problem in the caching of BuildPkgArchive packages in the case where
4522
    there is no GBE_DPKG_LOCAL on the machine.
4523
 
4524
  * Label utility
4525
    Added a 'files=filename,filename' option to allow only specified
4526
    files to be labeled.
4527
 
4528
  * Build. Parsing descpkg files
4529
    Corrected problem in which Java Manifest files were not parsed correctly
4530
    on Solaris.
4531
 
4532
  * Generated makefiles
4533
    Fix a bug with the CompilerOptions that allowed a '0' definition to be set to
4534
    nothing.
4535
 
4536
  * MOS Toolset
4537
    Added 'CompileOptions' of CcSupervisor.
4538
    This will set a MOS internal definition suitable for building specialised
4539
    modules.
4540
 
4541
  * Utility: gen_cots
4542
    This utility will create a JATS buildable package froma dpkg_archive entry
4543
    and then check it in under clearcase.
4544
 
4545
    JATS etool gen_cots -man will provide only help.
4546
 
4547
  * Utilty cache_dpkg
4548
    Detect and repair incomplete copy operations.
4549
 
4550
------------------------------------------------------------------------
4551
Version: JATS_2.48.0                                Released: 24-Jan-06
4552
------------------------------------------------------------------------
4553
Major changes:
4554
  None
4555
 
4556
Minor changes:
4557
  * DEVI addressed
4558
    DEVI-022055 JATS builds DLLs with wrong copyright symbol in version resource
4559
    DEVI-022054 JATS puts "ERG Group test" in Product Name of Windows resource
4560
 
4561
  * Utility: release (cbuild)
4562
    Added an option to create a view configured to work with a branching
4563
    rule. A single branch can be named with the -branch option. eg:
4564
 
4565
        jats release -extract 'label' -branch SITS_LEGACY_BRANCH
4566
 
4567
    will create a view based on the named label, but suitable for creating
4568
    a patch for Sydney Legacy work.
4569
 
4570
  * RunTest directive
4571
    The 'PATH' that the test uses is extended to allow access to programs that have
4572
    been installed with a InstallProg directive. This allows a test script to
4573
    test a program that is generated elsewhere within the package.
4574
 
4575
  * PackageFile, Option --DirTree
4576
    Support for filenames that contain a "$" or a ' ' within the
4577
    --DirTree option. Implemented to allow entire JAVA class trees to be
4578
    packaged under JATS
4579
 
4580
    Note: In general the use of a $ and space within a filename is not
4581
          supported within JATS.
4582
 
4583
  * Jats utility wrapper
4584
    Added an eprog option. The allows any program to be run within the
4585
    sanitized environment provided by JATS.
4586
 
4587
    The specified program may be in the current directory or the user's
4588
    PATH. If the program is a perl script then it will be run with the
4589
    JATS perl interpreter, otherwise it will be processed by the system.
4590
 
4591
    Eg: jats eprog myscript arg1 arg2
4592
    Eg: jats ant
4593
 
4594
  * Jats utility wrapper
4595
    Added an 'ant' command. ( "jats ant" )
4596
 
4597
    This will run an ERG ANT build by scanning the current directory for a file
4598
    called <ProjectName>depends.xml and then looking the a file called
4599
    <ProjectName>.xml. Jats will then create 'auto.xml' based on the
4600
    <ProjectName>depends.xml file and use ant to invoke the
4601
    <ProjectName>.xml file.
4602
 
4603
    If the ERG build files cannot be found then ant is simply run and it will
4604
    expect a build.pl file.
4605
 
4606
  * Jats utility wrapper
4607
    Force the environment variable PERL5INC to be unset.
4608
 
4609
  * Jats utility: create_dpkg
4610
    Simplify handling of ANT based projects. Look for the package within
4611
    the build/pkg subdirectory, in the JANTS style.
4612
 
4613
  * Utility: gen_winrc (DEVI-022054)
4614
    Added a "'-product=text'" option to allow the product name to be specified.
4615
 
4616
  * Build files
4617
    Handle the java generated descpkg files. These are a Manifest format with
4618
    ERG extensions.
4619
 
4620
------------------------------------------------------------------------
4621
Version: JATS_2.47.0                                Released: 20-Dec-05
4622
------------------------------------------------------------------------
4623
Major changes:
4624
  * BuildVersion directive in build.pl
4625
    Correct a problem in the generation of version.c
4626
    The function GetModuleInfo() would return a string with a trailing
4627
    space when the 'array' mode was selected.
4628
 
4629
    This may cause module validation to fail.
4630
 
4631
Minor changes:
4632
  * None
4633
 
4634
------------------------------------------------------------------------
4635
Version: JATS_2.46.0                                Released: 08-Dec-05
4636
------------------------------------------------------------------------
4637
Major changes:
4638
  * BuildProduct and BuildPlatforms directives
4639
    Added option --Uses=NAME
4640
    ie:
4641
        BuildProduct    ( 'OBFTP,--Uses=TP5',    'MOSCF' );
4642
 
4643
    This will create a OBFTP_MOSCF platform that will 'use' TP5
4644
    headers and libraries if none are specifically provided for the
4645
    OBFTP. It is the users responsibily to ensure that the two build
4646
    environments are compatible.
4647
 
4648
 
4649
Minor changes:
4650
  * BuildName option
4651
    Modifications to allow the creation of COTS packages with buildnames
4652
    that do not confirm to the ERG naming scheme (--RelaxedVersion).
4653
 
4654
  * jats.bat
4655
    Ensure that GBE_BIN is not defined
4656
    It will be set by the jats.pl to a fully qualified path.
4657
 
4658
------------------------------------------------------------------------
4659
Version: JATS_2.45.0                                Released: 29-Nov-05
4660
------------------------------------------------------------------------
4661
Major changes:
4662
  * BuildPkgArchive directive
4663
    The operation of the BuildPkgArchive directive has been modified
4664
    so that a package will only be installed once. This significantly
4665
    speeds up multiple 'build' operations.
4666
 
4667
    If the package is being extracted from the 'local archive', then
4668
    this mechanism is suppressed as packages in the local archive are
4669
    considered as under development and are subject to change.
4670
 
4671
    If package cache is being refreshed, then the package will be
4672
    installed a second time. Thus it is possible to force the package to
4673
    be transferred into the 'interface' directory.
4674
 
4675
    A BuildTags directory is used to track packages that have been
4676
    transferred.
4677
 
4678
  * Internal changes to factor common code into a group of packages.
4679
    See notes below.
4680
 
4681
  * WIN32 toolset
4682
    Allow the Microsoft preprocessor directive #import to operate
4683
    correctly.
4684
 
4685
    Export the complete library search path into the build environment
4686
    for all Microsoft command, not just the linker and library commands.
4687
 
4688
  * BuildVersion
4689
    Modifications to allow the generation of version files for C#
4690
    The mechanism has been extended to allow version information for
4691
    other langauges as needed.
4692
 
4693
 
4694
Minor changes:
4695
  * Utility: gen_winrc.pl
4696
    Will extracted build number from the patch number, if present.
4697
    This information will be available to be placed into the generation
4698
    version strings.
4699
 
4700
  * GenerateFiles directive
4701
    Fixed a problem detecting programs that were not in the local
4702
    package or an imported package.
4703
 
4704
  * Toolsets: MOS_MRI
4705
    Generate an error if required tools are not found.
4706
    Previously this condition would generate a warning.
4707
 
4708
  * BuildPkgArchive and LinkPkgArchive directives
4709
    Ensure that packages are only included once. The previous check
4710
    was half-hearted and could allow multiple packages of the same
4711
    version to be included. This could result in badly formed
4712
    makefiles and strange error messages.
4713
 
4714
Internal Changes
4715
  * Started to factor out internal packages and place them into a common
4716
    directory. This will allow common error handling thoughout the suite
4717
    of utilities.
4718
 
4719
    Modified all utilities to utilize the common error reporting
4720
    functions.
4721
 
4722
------------------------------------------------------------------------
4723
Version: JATS_2.44.0                                Released: 18-Nov-05
4724
------------------------------------------------------------------------
4725
Major changes:
4726
  * Generated makefiles
4727
    Modified the windows shell to remove the use of the EXTENDED_LINE
4728
    cache. This did not work. Modified the extend.lst file to ensure
4729
    that sed did not process its arguments.
4730
 
4731
    This has been done to address a problem seen within test scripts
4732
    within unit tests that use wildcard expansion. The windows shell was
4733
    incorrectly processing:
4734
        sed '-es~.*WIN32~~'
4735
    The '.*' construct was being seen as a wildcard and the shell was
4736
    then putting the argument into a command file - it was totally
4737
    confused.
4738
 
4739
    NOTE: Attempted to remove use of EXTENDED_LINE, but this caused a
4740
    breakage with the DOS based gcc compiler( ie:H8S and others).
4741
    The construct
4742
        -D__SOURCE__=\"name\"
4743
    was corrupted somewhere. If the command is put in a command file,
4744
    then it works.
4745
 
4746
  * MakeAnt directive
4747
    Added option: --GeneratedFile=PathOfFile
4748
 
4749
    This option has the following effects
4750
        1) Marks the file a source file. It is then known to JATS and
4751
           can be used installed and manipulated.
4752
 
4753
        2) Schedules the processing of the ANT build to be done
4754
           early - in the generated files phase.
4755
 
4756
    Intended use. The creation of packages with a JNI. The Java
4757
    component needs to generate a header file early.
4758
 
4759
 
4760
Minor changes:
4761
  * JATS post-installation script
4762
    Flag deployment tools and libraries as executable.
4763
 
4764
  * Detection of extension type is case insensitive for non-unix
4765
    systems. Thus *.h and *.H files will considered header files in
4766
    windows.
4767
 
4768
  * Build.pl rewrite tool
4769
    Handle all variants of BuildName
4770
 
4771
  * Jats wrapper script
4772
    Generate an error if the JATS configuration variables are not usable
4773
        1) Contain spaces
4774
        2) Start with a // - Remote drives must be mapped
4775
 
4776
  * Toolset
4777
    Added a 'LINUX' platform.
4778
 
4779
  * JAVA toolset
4780
    Ensure the that build file passed via MakeAnt contains the following
4781
    directive:
4782
 
4783
        includeAntRuntime="off"'
4784
 
4785
    This MUST be used to ensure that ANT's classpath is not passed to
4786
    the java compiler thus ensuring that the compiler does not use ANT's
4787
    version of any JAR files that have not been specified by the user.
4788
 
4789
  * GCC Toolset
4790
    Use -Map name to create map files as needed for GCC under Debian
4791
 
4792
  * Makefile generation
4793
    When packages are used by name to resolve package location JATS
4794
    has been modified to use the package name specified by the user.
4795
    Previously JATS would use the package name found within the
4796
    descpkg file. In cases where the descpkg file was badly formed the
4797
    package could not be used.
4798
 
4799
  * Unit Tests
4800
    The following environment variables are set:
4801
 
4802
        GBE_TYPE    - The type of build. Debug or production. This
4803
                      will be set to either a 'P' or 'D'
4804
 
4805
        GBE_HOST    - The host machine we are running on.
4806
                      This will be set to 'WIN' or Unix'
4807
 
4808
    These variable should assist in the production of test scripts.
4809
 
4810
  * New makefile.pl directive: SetValue
4811
 
4812
 
4813
------------------------------------------------------------------------
4814
Version: JATS_2.43.0                                Released: 01-Nov-05
4815
------------------------------------------------------------------------
4816
Major changes:
4817
  * New Platform : "MCR" using the Mitsubishi m16c compiler.
4818
 
4819
    Special features of this toolset.
4820
    1) A .THX source file will be converted to an obtect file
4821
       This allows processing of fonts within a THX file to be
4822
       incorporated within the target image.
4823
 
4824
    2) Prog directive extensions:
4825
       --Set=Name=Value
4826
                The 'Name' is set to 'Value' at link time.
4827
                This allows the location of program segments to be set
4828
 
4829
       --Ref=name
4830
                The name of a Release file. If provided, it will be used
4831
                to provide information that will be placed within the
4832
                THX header. The version number will be ignored. It
4833
                will be taken from the build version number.
4834
 
4835
Minor changes:
4836
  * MOS Toolset
4837
    Create the VisionClick files when the THX file is created.
4838
    Previously the files were created when the THX was installed or
4839
    packaged.
4840
 
4841
  * Src directive
4842
    No generates a warning if no source files are located within the
4843
    directive. This is normally the result of a missing platform
4844
    specifier.
4845
 
4846
  * WIN32 runtime support
4847
    Added the following 'Unix' style utilities to assist in testing.
4848
        1) od       - dump files in octal and other formats
4849
        2) cmp      - compare two files byte by byte
4850
 
4851
Internal:
4852
    Added an extension to allow the target toolset to handle the "Prog"
4853
    dependancy generation if required. This allow complex program
4854
    generation mechanisms to be handled by the toolset.
4855
 
4856
------------------------------------------------------------------------
4857
Version: JATS_2.42.0                                Released: 19-Oct-05
4858
------------------------------------------------------------------------
4859
Major changes:
4860
    * BuildAlias directive
4861
      Added options.
4862
        --Define        - Does not create implicit platforms
4863
        --Target        - Redeclares the alais as the list of all
4864
                          platforms that are based on a given target or
4865
                          targets.
4866
      Eg:
4867
        BuildAlias      ( 'LMOS,--Target', 'LMOS_WIN32', 'LMOS_linux_armv4' );
4868
        BuildProduct    ( 'GAK',    'LMOS', 'MOS68K', 'MOSCF' );
4869
        BuildProduct    ( 'PCP',    'LMOS', 'MOS68K' );
4870
 
4871
      Will export an alias of LMOS that can be used within makefile.pl's
4872
      that will be the list of all platforms that have a target of
4873
      'LMOS_WIN32' or 'LMOS_linux_armv4'.
4874
 
4875
      Note the dual use of LMOS within the example. This is intentional.
4876
      The LMOS alias is used within the BuildProduct to simplify the
4877
      specification of all the LMOS targets.
4878
 
4879
 
4880
Minor changes:
4881
  * Label utility
4882
    Will generate a warning message if it labels more than one
4883
    build.pl file
4884
 
4885
  * Package directives. PackageFile.
4886
    Corrected a problem with wildcard expansion in which a --FilterIn
4887
    needed to be specified in order for the --FilterOut to operate.
4888
    Now all files in the tree are considered 'in' unless modified by the
4889
    --FilterIn option.
4890
 
4891
  * jats release (cbuilder) utility
4892
    Correct use of the -prodOnly and -debugOnly flags.
4893
    The full name was not accepted; -debug and -prod was.
4894
 
4895
  * Location of descpkg file
4896
    All makefile.pl's now know where the package descpkg file was
4897
    created. This simplifies the process og packaging this file as it
4898
    can be done within any makefile.pl.
4899
 
4900
------------------------------------------------------------------------
4901
Version: JATS_2.41.0                                Released: 27-Sep-05
4902
------------------------------------------------------------------------
4903
Major changes:
4904
  * RunTest directive
4905
    Extended the options and operation of RunTest
4906
    Additional options
4907
      --CopyIn=file
4908
        This will copy the specified file into the BIN directory before
4909
        the test is run. The file will be marked as executable. This
4910
        allows scripts and configuration files to be transferred into
4911
        the test area.
4912
 
4913
    Additional operations
4914
    The arguments passed to the script/program allow a number of
4915
    transformations, similar to GenerateFiles. Transforms
4916
      --File(xxxx[,flags])          - xxxx is a known file
4917
      --Local(xxxx[,flags])         - xxxx is a file that has been Installed
4918
      --PackageBase(xxxx[,flags])   - xxxx is a Package
4919
    Allows flags:
4920
      --dir         - directory part of the pathname
4921
      --file        - file part of the pathname
4922
      --abspath     - as an absolute path
4923
      --absdrive    - as an absolute path with drive letter (Windows)
4924
 
4925
    Files and directories are prerequisites of the test. Their
4926
    existence is tested.
4927
 
4928
  * Packaging Directives
4929
    Added a --Derived option to support the packaging of derived targets
4930
    such as LMOS.
4931
 
4932
        PackageHdr ('*', 'file1.h', '--Derived=LMOS');
4933
 
4934
    Will place file1.h into .../include/LMOS_WIN32
4935
 
4936
        PackageHdr ('*', 'file1.h', '--Derived=LMOS,sys');
4937
 
4938
    Will place file1.h into .../include/LMOS_WIN32/sys
4939
 
4940
  * JAVA 1.4 and 1.5
4941
    Added support to the JATS JAVA platform to allow the user to specify
4942
    the version of Java to be used to build a package.
4943
 
4944
        BuildPlatforms  ( 'JAVA,--Version=1.5' );
4945
 
4946
    The default will use the default machine version of JAVA.
4947
    This may not be sutable for all packages.
4948
 
4949
    Non-default versions of JAVA require that an environment variable be
4950
    set to the root of the JDK directory. These are:
4951
 
4952
      JAVA_HOME_1_4
4953
      JAVA_HOME_1_5
4954
 
4955
Minor changes:
4956
  * Script directive
4957
    Scripts may be copied into the BIN directory for use by a test.
4958
    These scripts are now always marked as executable.
4959
 
4960
  * JATS environment
4961
    Ensure that all programs run under JATS in Windows have an uppercase
4962
    COMSPEC envvar. Windows appears to define a mixed case one. Fixed in
4963
    the JATS wrapper script.
4964
 
4965
  * Label utility
4966
    Added -[no]checkout to control the labeling of checked out files.
4967
    There are three modes of operation:
4968
        1) -nocheckout      Checked out files are not labeled
4969
        2) -checkout        Only checked out files are labeled
4970
        3) Neither          All files are labeled.
4971
 
4972
 
4973
------------------------------------------------------------------------
4974
Version: JATS_2.40.0                                Released: 15-Sep-05
4975
------------------------------------------------------------------------
4976
Major changes:
4977
 
4978
Minor changes:
4979
  * label utility
4980
    Added -smartlabel option to unlock and lock the label - if it was locked.
4981
    This options retains the locked state of a label.
4982
 
4983
  * AVR_IAR toolset
4984
    Extended the 'Prog' directive to allow a Program Loader to be
4985
    added to a program as it is created. The option is:
4986
      --ProgLoader=name
4987
 
4988
  * Package directives. PackageFile
4989
    Added support for packaging of directory trees.
4990
    Options to do this are:
4991
        --TreeDir=name
4992
        --FilterOut=regexp
4993
        --FilterIn=regexp
4994
        --StripDir
4995
 
4996
    Only a single directory can be specified.
4997
    Multiple filters are allowed.
4998
    The directories must be within the current directory. It is not
4999
    possible to search outside the subdirectory tree below the makefile.
5000
 
5001
    The filters allow elements within the directory to be selected.
5002
    The filters are regular expressions. Examples:
5003
 
5004
      '--FilterIn=\.h$'         - Select all files ending with .h
5005
      '--FilterOut=MyHeader.h'  - Except this one
5006
 
5007
    The --StripDir option will remove the TreeDir directory from the
5008
    files. This allows the top level directory to be stripped off.
5009
 
5010
 
5011
------------------------------------------------------------------------
5012
Version: JATS_2.39.0                                Released: 14-Sep-05
5013
------------------------------------------------------------------------
5014
Major changes:
5015
    * Make commands
5016
      Consolidated the parsing of the OPTIONS arguments.
5017
 
5018
      The filter and nofilter options are globally applied to all tools
5019
      sets. ie: jats make debug OPTIONS=nofilter
5020
 
5021
    * Label utility
5022
      Generate a warning when attempting to label a symbolic link.
5023
      Links are very hard to maintain in a reproducible manner.
5024
 
5025
Minor changes:
5026
    * Toolsets
5027
      Replaced the use of c:\WINDOWS and c:\Program Files with suitable
5028
      variables and overrides.
5029
 
5030
      The make_init target is always run.
5031
      This facility had been lost. The target was being used to provide
5032
      compiler sanity testing, but had was not being reliably run.
5033
 
5034
    * Deployment
5035
      Suppress testing of compiler existence when used in conjunction
5036
      with deployment operations.
5037
 
5038
    * Release utility
5039
      Add options to build only the debug or the production versions.
5040
      The default is to build both. Note: User option may be further
5041
      restricted by options within the build.
5042
 
5043
    * PackageLib, InstallLib and MergeLib directives in makefile.pl
5044
      The use of @LIBS and @MLIBS in unix systems was causing a
5045
      problem as these variables already had a 'lib' prepended to the
5046
      list of libraries. These directives would add another 'lib' to the
5047
      list of libraries under unix causing a mismatch.
5048
 
5049
      Corrected by stripping liblib from the names within these
5050
      directives.
5051
 
5052
    * MakeProject directive
5053
      If the project build fails the log file was not being displayed
5054
      because 'make' stops when a command fails.
5055
 
5056
      The MakeProject operations have been modified to ensure that the
5057
      log file is always displayed. The exit code of the build command
5058
      is preserved.
5059
 
5060
    * Auto build utility jats-rewrite.pl
5061
      Modified to support the rewrite of Java 'using' and 'project'
5062
      statements.
5063
 
5064
    * Mugfile generation
5065
      Added a --ThxDir=xxxx option to allow the THX and load files to
5066
      be placed in the target package.
5067
 
5068
 
5069
------------------------------------------------------------------------
5070
Version: JATS_2.38.0                                Released: 01-Sep-05
5071
------------------------------------------------------------------------
5072
Major changes:
5073
    * BuildVersion directive
5074
      The 'defs' mode has been extended to create a file with a build
5075
      number as well as a patch number.
5076
 
5077
      The patch number is decoded into a patch number and a build
5078
      number.
5079
 
5080
Minor changes:
5081
    * AddFlags directives
5082
      Added a --NoWarn option that will suppress the warning of
5083
      duplicate flags being added.
5084
 
5085
    * GBE_CORE environment variable (Windows)
5086
      Ensure that GBE_CORE has a driver letter. This allows use of JATS
5087
      loaded into the same dynamic view as the user code.
5088
 
5089
    * Mug File Generation
5090
      Added support to allow load files to include other load files.
5091
 
5092
   * 'cbuild' or 'release' command
5093
     Added a -latestroot=xxxx option. This is a work around for the
5094
     problem where the root level directory in the VOB has not been
5095
     labeled. After using this switch add the label to the root
5096
     directory.
5097
 
5098
     The need to use this this switch indicates that the view is NOT
5099
     reproducible.
5100
 
5101
------------------------------------------------------------------------
5102
Version: JATS_2.37.0                                Released: 22-Aug-05
5103
------------------------------------------------------------------------
5104
Major changes:
5105
    * jats.bat and jats.sh
5106
      Changes to include GBE_DPKG and GBE_DPKG_CACHE.
5107
      Most importantly GBE_DPKG must be a single directory. It is no
5108
      longer a list of directories.
5109
 
5110
      Removal of the setup of Microsoft Visual Studio 6. This is now
5111
      done within the toolset.
5112
 
5113
      *** Update your jats.bat to follow the format in this release
5114
 
5115
    * JATS environment variables
5116
      Redefined variable
5117
        GBE_DPKG        - Now the MASTER dpkg_archive
5118
                          Previously was a list that included the
5119
                          dpkg_archive cache.
5120
 
5121
      New variable
5122
        GBE_DPKG_CACHE  - Optional directory for a local cache of
5123
                          the main dpkg_archive.
5124
 
5125
 
5126
Minor changes:
5127
    * Utility: gen_packagelist
5128
      Enhanced (thanks Ross) to allow PATH information for various
5129
      target platforms to be extracted.
5130
 
5131
      Better support for Product families. This is only an issue
5132
      for WIN32 derived families due to the generation of a list of
5133
      libraries. The list now observes Product hierarchy.
5134
 
5135
    * Utility: release (cbuilder)
5136
      Added -noruntests option too suppress the running of unit tests
5137
      Units tests will still be run by default.
5138
 
5139
      Tighten the config specification used to build the sandbox. It has
5140
      no LATEST rules. All directories and files MUST be labeled.
5141
 
5142
    * Utility: jats_rewrite
5143
      Support ANT based XML files
5144
 
5145
    * Utility: create_dpkg
5146
      Support ANT flavor Manifest dependancy files and pkg directory
5147
      structure.
5148
 
5149
    * makefile.pl's
5150
      GenerateFiles directive. Added a --Prog specifier to allow tools
5151
      to be generated within the same script. Example:
5152
 
5153
            Prog('*', 'Myprog', @OBJS );
5154
            GenerateFiles ('*', "--Prog=MyProg",
5155
                                '--Prereq(infile)',
5156
                                '--GeneratedCommon(outfile)' );
5157
 
5158
      RunTest directive. Added a --Auto option to flags tests that can
5159
      be run within the Build Systems Auto Build environment. These
5160
      tests will be run with the 'run_unit_tests' target. All tests will
5161
      be run with the 'run_tests' targets. Only tests that confirm to
5162
      the ERG "Unit Test Automation" guidelines should be marked as
5163
      -- Auto.
5164
 
5165
    * Added a new make target: run_unit_tests
5166
      This will be used by the build tool to run non-interactive
5167
      unit tests within an automated framework.
5168
 
5169
    * Make run_test and run_unit_test operation
5170
      The search path for DLL's or Shared Libraries is extended to
5171
      include all Shared Libraries in the build package list as well
5172
      as the local and interface directory. This allows tests to
5173
      locate required Shared Libraries at runtime.
5174
 
5175
    * WIN32 targets built using Visual Studio 6
5176
      The path to the compiler is setup within JATS. It is no longer
5177
      imported from the users environment as the environment is
5178
      indeterminate when multiple versions of Visual Studio are
5179
      installed on the machine.
5180
 
5181
    * WINCE Targets
5182
      The name of the SDK is case sensitive.
5183
      The POCKET PC 2003 was incorrect
5184
 
5185
 
5186
 
5187
------------------------------------------------------------------------
5188
Version: JATS_2.36.0                                Released: 03-Aug-05
5189
------------------------------------------------------------------------
5190
Major changes:
5191
    * WIN32 platforms
5192
      When building Microsoft project files the PATH environment
5193
      variable is extended to include the DLL path of imported packages
5194
      and installed packages.
5195
 
5196
    * Building DLL or EXE with the --NoPDB option will disable the
5197
      generation of debug information so that the  linker does not
5198
      create CV style debug information in the target.
5199
 
5200
    * UNIX Platforms (SOLARIS and LINUX)
5201
      Modification to allow BuildProduct and BuildPkgArchive to
5202
      interwork. Previously BuildPkgArchive packages were placed into
5203
      the 'interface/lib/SOLARIS' subdirectory and this was not being
5204
      searched when looking for libraries.
5205
 
5206
Minor changes:
5207
    * GenerateFiles directive
5208
      New sub-options to filename generation commands
5209
        --abspath       - provide the named file with an absolute path
5210
        --absdrive      - provide the named file with an absolute path
5211
                          and drive letter
5212
 
5213
    * Src directive
5214
      Modified the --FromPackage' option to allow searching of the root
5215
      directory of a package.
5216
 
5217
            Src('*', 'etc/data.ini', '--FromPackage' );
5218
 
5219
      Also prevent warnings on duplicate files if the package is
5220
      imported with a BuildPkgArchive directive. The file was being
5221
      found in the package and the interface directory.
5222
 
5223
    * jats_rewrite utility
5224
      Process depend.xml files for auto builder
5225
 
5226
 
5227
------------------------------------------------------------------------
5228
Version: JATS_2.35.0                                Released: 28-Jul-05
5229
------------------------------------------------------------------------
5230
Major changes:
5231
    * SunWorks production builds
5232
      Corrected the flag used to select the level of compiler
5233
      optimisation. The current flag generates an error of:
5234
            cc: Warning: option -2 passed to ld
5235
      The flag has been changed from -O2 to -xO2 inline with the
5236
      compiler documentation.
5237
 
5238
    * MOS Toolset
5239
      Implement a workaround for a bug in VisionClick's convert program
5240
      in which the tool would not generate a valid .bdx file.
5241
 
5242
      The solution was to create the .bdx and .ab file in two steps.
5243
 
5244
Minor changes:
5245
    * Correct the case of 4 toolset files. The files were created under
5246
      windows, which has a habit of capitalizing filenames.
5247
      This should not affect current users.
5248
 
5249
    * Mugfile generation
5250
      Extended the --Package option to allow subdirectories to be
5251
      specified.
5252
        "--Package=MyPackage,--Subdir=thx/moscf,thx"  
5253
 
5254
------------------------------------------------------------------------
5255
Version: JATS_2.34.0                                Released: 22-Jul-05 
5256
------------------------------------------------------------------------
5257
Major changes:
5258
    MOS Toolset
5259
    Modified the optimizations options used to generate 'Production'
5260
    code. A problem with -Ob optimization has been identified.
5261
 
5262
Minor changes:
5263
    * Jats wrapper script
5264
      Windows: Ensure that cmd.exe is in the users PATH. Without cmd.exe
5265
      scripts will not work properly as the PERL 'system' command assumes
5266
      that cmd.exe is in the users PATH.
5267
 
5268
    * LinkPkgArchive and BuildPkgArchive
5269
      Processing soft links. Generate a warnings if a package soft
5270
      link and a real package are found in the same directory. The link
5271
      may be suspect.
5272
 
5273
    * GenerateFiles directive
5274
      Added a --PackageBase(xxx) argument that will be replaced with
5275
      the pathname to the specified package.  
5276
 
5277
------------------------------------------------------------------------
5278
Version: JATS_2.33.0                                Released: 18-Jul-05
5279
------------------------------------------------------------------------
5280
Major changes:
5281
    * Added a JAVA platform to better support the processing of ANT
5282
      build.xml files.
5283
 
5284
Minor changes:
5285
    * WIN32 toolset.
5286
      Delete V7 specific temp files when compiling with V7 compiler
5287
 
5288
    * MakeAnt
5289
      Pass an absolute path to the 'interface' directory to allow the
5290
      build.xml file to be a directory other than the current directory
5291
 
5292
      Allow the ANT_HOME path to contain spaces: c:\Program Files\Ant
5293
 
5294
    * gen_winrc - A utility to generate Windows RC files with version
5295
      information. Allow 3 or 4 fields in the version number. If only
5296
      3 fields are provided, then the fourth field is set to 0.
5297
 
5298
    * MakeAnt directive
5299
      Now supports --Debug and --Prod options to limit the building of
5300
      ANT files. The MakeAnt directive is only going to work in
5301
      conjunction with the JAVA target
5302
 
5303
      Recommended usage:
5304
      MakeAnt('JAVA',"build.xml","--Jar=java.build/test.jar",'--Prod');
5305
 
5306
Internal Changes
5307
      The MakeAnt directive is now treated like a MakeProject directive.
5308
 
5309
 
5310
------------------------------------------------------------------------
5311
Version: JATS_2.32.0                                Released: 13-Jul-05
5312
------------------------------------------------------------------------
5313
Major changes:
5314
    * Initial release of WINCE and WIN32 V7 based project builds
5315
      The DSW, VCW and SLN files can be built via JATS and selected
5316
      files packaged into the release.
5317
 
5318
      Refer to the 'MakeProject' directive in
5319
            MASS-00166 JATS Reference Manual
5320
            http://auperaws396/mass/Wiki.jsp?
5321
                                page=UsingJATSToBuildMicrosoftProjects
5322
 
5323
    * Added support for Visual Studio 2003.
5324
      The recommended platform is:
5325
        BuildProduct    ( 'VS2003', 'WIN32,--Version=MS.NET2003' );
5326
 
5327
    * Initial release of support for building Ant files.
5328
      JATS can build small Java sub-components using Ant. This is not
5329
      a replacement for JANTS it is intended for mixed C++ and Java
5330
      components.
5331
 
5332
      Refer to the 'MakeAnt' directive in
5333
            MASS-00166 JATS Reference Manual
5334
            http://auperaws396/mass/Wiki.jsp?
5335
                                page=UsingJATSToBuildSmallJavaComponents
5336
 
5337
Minor changes:
5338
    * Support for Windows DLLs
5339
      When building a WIN32 target the file interface/set_WIN32.bat is
5340
      created. This file extends the Windows PATH to allow DLLs used
5341
      by the package to be accessed.
5342
 
5343
      The file may be "called" from a wrapper batch file to start the
5344
      application or visual studio.
5345
 
5346
    * The descpkg file created by JATS contains a JATS version number
5347
      and the JATS Core path.
5348
 
5349
    * AddIncDir, AddSrcDir and AddLibDir directives
5350
      Now generate an error if there is only one argument to the
5351
      directive or if no directories where specified.
5352
 
5353
    * MOS Toolset
5354
      Add support for the TPT device
5355
      Correct error message for unsupported devices.
5356
 
5357
    * Correct problem with in creating absolute path names to allow
5358
      DOS driver letters to be handled correctly.
5359
 
5360
    * Added --ExcludeLib(xxx,yyy) processing to allow specified
5361
      libraries to be excluded from a list of libraries processed by
5362
      when creating libraries, shared libraries and programs.
5363
 
5364
      Used in conjunction with --Using(aaaa) to correct errors.
5365
 
5366
Internal Changes
5367
    * JATS release process validates the JATS version number contained
5368
      in jats.pl
5369
 
5370
------------------------------------------------------------------------
5371
Version: JATS_2.31.0                                Released: 28-Jun-05
5372
------------------------------------------------------------------------
5373
Major changes:
5374
    * JATS wrapper script
5375
      Allow multiple alternative build files: auto.pl and build_test.pl
5376
 
5377
    * Initial support for the building of WINCE based projects
5378
 
5379
    * Formal release of the toosl to generate Mug Files
5380
 
5381
Minor changes:
5382
    * Deployment support
5383
      Allow a --PatchNum to be specified in the BuildName
5384
      This is then used to invoke a deploypatch.pl file
5385
 
5386
    * 'build'
5387
      Added --ForceBuildPkg switch to the 'jats build' command to
5388
      force LinkPkgArchive directives to be interpreted as
5389
      BuildPkgArchive. This option is useful for the creation of
5390
      sandboxes for use within IDEs as the package files are placed
5391
      in a known directory structure within the sandbox.
5392
 
5393
    * WINCE and WIN32 Toolset
5394
      Options for Program and Shared Library construction
5395
            --Entry=xxxx            - Alternate entry point
5396
            --NoAddLibs             - Do not add default libraries to
5397
                                      the link phase.
5398
 
5399
    * BuildPkgArchive
5400
      Handle symlink directories at the top level of the package tree
5401
      Previously these were ignored.
5402
      Minor code cleanup
5403
 
5404
    * "cbuild" or "release" utility
5405
      Add a "-path=xxxx" option to provide sanity testing of the Release
5406
      Manager "Source Path" field.
5407
 
5408
    * SOLARIS targets
5409
      Modified the TARGET name generated with building a Product Family
5410
      based on SOLARIS. It is treated in the same manner as a Platform
5411
      of SOLARIS and creates a targets of SOLARIS_sparc
5412
 
5413
    * MugFile generation
5414
      Allows a 'load.cmd' file to be used to list the THX files to be
5415
      included in the final package.
5416
 
5417
    * Corrected a problem with the processing of platform selection
5418
      arguments used within all directives within a makefile.pl.
5419
      Multiple platforms should be specified as:
5420
            Src( 'PLAT1,PLAT2,PLAT3', .... );
5421
      with only a comma between the platforms: No whitespace
5422
      If whitespace did exist then the makefile.pl would not do what
5423
      was expected - and it would not warn the user. The simplest
5424
      solution was to allow whitespace either side of the comma.        
5425
 
5426
    * GenerateFiles directive within makefile.pl
5427
      Allow 3 different bracket styles for the arguments to allow for
5428
      embedded  brackets. Now allow
5429
            --Option=(some_text)
5430
            --Option=[some_text]
5431
            --Option={some_text}
5432
 
5433
Internal Changes
5434
    * Derive the names of the package and install directories from a
5435
      single data structure rather then being hardcoded throughout the
5436
      code.
5437
 
5438
------------------------------------------------------------------------
5439
Version: JATS_2.30.0                                Released: 01-Jun-05
5440
------------------------------------------------------------------------
5441
Major changes:
5442
    * JATS wrapper script
5443
      Changed the command line parsing. Now use GetOpts.
5444
 
5445
      Modified "all" command It no longer performs an "install"
5446
      The "install" process is not needed. the build places a shortcut
5447
      to the package into the local_dpkg_archive. This can be used by
5448
      other components.
5449
 
5450
      Removed "bmake" command. The "all" command is the now that same.
5451
 
5452
    * JATS
5453
      Created a class to write JATS configuration files.
5454
      Changes to the code to use this new class.
5455
 
5456
    * Build operations
5457
      Perform one level of package version checking. Generate warnings
5458
      if required packages are built against different versions of
5459
      packages.
5460
 
5461
    * Make operations
5462
      Added a new target - "deploy". This interfaces to the deployment
5463
      scripts. This is still a work interfaces progress.
5464
 
5465
Minor changes:
5466
    * Added environment variables to assist in the running of the
5467
      deployment builds.
5468
        PERL5LIB        - Extended based on GBE_CORE
5469
        DEPLOYLIB_DIR   - Calculate based on GBE_CORE
5470
 
5471
      Extended the "jats vars" display
5472
 
5473
    * build.pl
5474
        Corrected BuildAlias() operation. Defined options are correctly
5475
        processed. Allows
5476
            BuildAlias('WIN', 'WIN32,--OnlyProduction');
5477
        to define a platform called WIN32 that only builds for
5478
        production.
5479
 
5480
    * MOS toolset
5481
      Added a '--Acon' options to SharedLib to allow the creation of
5482
      Acon modules. These required special linking.
5483
 
5484
    * create_dpkg utility
5485
      Adds a files to the published package to indicate which type of
5486
      machine the package was published from. This will be used in a
5487
      multi-machine build environment to assist in determining the
5488
      progress of the build.
5489
 
5490
    * New utility - jats_save_build.pl
5491
      This is specific to the auto build system. It will be used to
5492
      capture the modified build files back into the version control
5493
      system.
5494
 
5495
------------------------------------------------------------------------
5496
Version: JATS_2.29.0                                Released: 25-May-05
5497
------------------------------------------------------------------------
5498
Major changes:
5499
    * WIN32 and WINCE toolsets
5500
      Modified the way that PDB files are created.
5501
      The files are now created using absolute pathnames when compiling
5502
      The name of the PDB files embedded in created DLLs is now correct.
5503
      The PDB files created when compiling objects for DLLs are now not
5504
      named after the DLLs - this was causing the linker toolsets crash.
5505
 
5506
    * WCEX86A500 target
5507
      Corrected problem creating DLLs.
5508
 
5509
    * MOS Toolsets
5510
      Modified the mechanism by which absolute filenames are passed to
5511
      the compiler.
5512
 
5513
    * RunTest directive
5514
      This directive will ensure that the named test is either a script
5515
      or a TestProg. If the test to be run is a TestProg then a
5516
      suitable suffix will be added to the named test.
5517
 
5518
Minor changes:
5519
    * JATS BUILD
5520
      Generate an error if the setting of GBE_BUILDFILTER or
5521
      GBE_PLATFORM prevents any targets being made at all. This should
5522
      highlight bad settings.
5523
 
5524
    * Publish the JATS toolsets extension pathnames to simplify the
5525
      access to extensions.
5526
 
5527
------------------------------------------------------------------------
5528
Version: JATS_2.28.0                                Released: 18-May-05
5529
------------------------------------------------------------------------
5530
Major changes:
5531
    * WIN32 and WINCE toolsets
5532
      Enable dependancy file generation of C++ files
5533
 
5534
    * label utility ( SOLARIS )
5535
      Fix bug with the escaping of '(' and ')' in cleartool commands
5536
      under unix.
5537
 
5538
Minor changes:
5539
    * label utility
5540
      Added options to:
5541
        o Delete a label
5542
        o Prevent recursion while labeling
5543
        o Control labeling of files missing from a static view
5544
 
5545
    * WIN32 and WINCE toolsets
5546
      Correct problem with the packaging of PDB files. Packaging of the
5547
      PDB files can be controlled with the -Extras= options to the
5548
      Package directives.
5549
 
5550
    * Added GBE_UNIX to the JATS_2 controlled environment. Set by
5551
      jats.pl to be used by utilities to determine the underlying
5552
      system.
5553
 
5554
------------------------------------------------------------------------
5555
Version: JATS_2.27.0                                Released: 10-May-05
5556
------------------------------------------------------------------------
5557
Major changes:
5558
    * MOS Toolset
5559
      The generation of multiple THX's in the one makefile.pl now works
5560
      There was a subtle "closure" problem in the toolset.
5561
 
5562
    * WIN32 Toolset
5563
      Added CompileOption of AddLibs (default) and NoAddLibs
5564
      toolset suppress the addition of thread libraries toolset the link
5565
      list.
5566
 
5567
    * Put a version number in the "interface" information toolset
5568
      allow JATS to generate an error when the "interface" changes.
5569
 
5570
      This version is manually maintained and prone to error.
5571
 
5572
    * GenerateFiles directive one Unix systems was incorrectly
5573
      invoking "sh.exe" instead of "sh"
5574
 
5575
 
5576
Minor changes:
5577
    * SOLARIS_SPARC platform (GCC toolset)
5578
      The process of creating a Shared Libraries creates a soft link
5579
      to the the "GBEBIN" directory. This directory was not listed as
5580
      a prerequisite and was not being created. This problem has been
5581
      corrected.
5582
 
5583
    * JATS will detect an "auto.pl" file and use it as an alternate
5584
      build.pl file. Previously this file was named build.use.pl.
5585
 
5586
    * Correct problem when .PDB files are installed from a merged
5587
      library created from libraries that have been 'installed'
5588
      JATS would create a circular dependancy.
5589
 
5590
------------------------------------------------------------------------
5591
Version: JATS_2.26.0                                Released: 03-May-05
5592
------------------------------------------------------------------------
5593
Major changes:
5594
    * WIN32 Toolset
5595
      Correct a problem linking in required / correct libraries for
5596
      use with multithreaded modes.
5597
 
5598
    * Complete the support for Global build options of --OnlyDebug and
5599
      --OnlyProd.
5600
 
5601
      These options can now be provided in the "Platform" directive
5602
      within the makefile.pl.
5603
 
5604
Minor changes:
5605
    * Platform directive within makefile.pl
5606
      These use of the "*" platform specifier has been modified such
5607
      that options provided within the directive will be added to all
5608
      platforms.
5609
 
5610
      eg:   Platform ('*', '--OnlyProduction' );
5611
 
5612
------------------------------------------------------------------------
5613
Version: JATS_2.25.0                                Released: 29-Apr-05
5614
------------------------------------------------------------------------
5615
Major changes:
5616
    * Correct problem in handling the SOLARIS_SPARC platform.
5617
      The SOLARIS platform is a bit of a kludge for backward
5618
      compatibility. JATS was not differentiating between SOLARIS and
5619
      SOLARIS_SPARC correctly.
5620
 
5621
    * Preliminary Support
5622
      Global build options of --OnlyDebug and --OnlyProd, which are
5623
      mutually exclusive. These may between specified in the build.pl
5624
      file as build arguments in any of the three standard mechanism.
5625
 
5626
        BuildPlatforms ( 'SOLARIS', '--OnlyDebug' );
5627
        BuildProduct   ( 'GAK', 'MOS68K,--OnlyProduction' );
5628
        BuildArgument  ( 'WIN', '--OnlyProduction' );
5629
 
5630
      These options limit processing to either Production or Debug
5631
      building. The default build will build both.
5632
 
5633
Minor changes:
5634
    * Extended the search path that JATS will use attempting to locate
5635
      a build.pl file. JATS will now look in ., build and build/jats
5636
      directories in the current directory and 3 directories up.
5637
 
5638
    * WCEX86A420 toolset
5639
      Added suitable libflags entry. Prevents the warning:
5640
        warning: undefined variable `WCE_LIBFLAGS'
5641
 
5642
 
5643
------------------------------------------------------------------------
5644
Version: JATS_2.24.0                                Released: 21-Apr-05
5645
------------------------------------------------------------------------
5646
Major changes:
5647
    * PackageLib and PackageProg directives now have a --Extra=xxx[,xxx]
5648
      option. Where xxx can be one or more of: none stub map lint debug
5649
      or all.
5650
 
5651
      This option may be used to limit the files that are packaged with
5652
      the library or program.
5653
 
5654
      Eg: PackageLib ('MOS', 'MyThx', '--Extra=none' );
5655
 
5656
      Will only package the .thx file. It will not package the stub
5657
      library or any debug files.
5658
 
5659
    * GenerateFiles
5660
      All processed arguments now support two options.
5661
 
5662
          ie: --Prerequisite(xxxx,--dir)
5663
              directory in which the prereq file is found
5664
 
5665
          ie: --Prerequisite(xxxx,--file)
5666
              The filename of the prereq file
5667
 
5668
    * LinkPkgArchive and BuildPkgArchive will cause the build to fail if
5669
      the required package is not available. A "--package" option, to
5670
      the build command, will prevent this behaviour.
5671
 
5672
 
5673
Minor changes:
5674
    * create_dpkg utility
5675
      Touch descpkg files when packages are merged. This will allow
5676
      utilities that use the timestamp of this file to determine that
5677
      the package has been altered.
5678
 
5679
------------------------------------------------------------------------
5680
Version: JATS_2.23.0                                Released: 14-Apr-05
5681
------------------------------------------------------------------------
5682
Major changes:
5683
    * New toolset: WCEX86A420
5684
      This is a WINCE target
5685
      This uses the ADVANTEC_X86_CE42 SDK
5686
 
5687
    * New toolset
5688
      mpt for the mpt500 platfomr
5689
 
5690
    * Modified toolset
5691
      THYRON - updates from An An Tran
5692
 
5693
    * Modified toolset
5694
      MRI68K. Now supports the Microtec 5.1 68k compiler
5695
 
5696
Minor changes:
5697
    * "cbuild" or "release" command now has a -merge option to allow
5698
      builds from different machines to be merged into dpkg_archive.
5699
 
5700
      The default operation is to replace the package indpkg_archive.
5701
 
5702
    * Simplify the use of GBE_BUILDFILTER
5703
      GBE_BUILDFILTER should be used to limit the creation of makefiles
5704
      to those that are supported by the underlying hardware.
5705
 
5706
      The change allows the construct
5707
        GBE_BUILDFILTER=SOLARIS --TARGET=SOLARIS
5708
      to be replaced by the simpler
5709
        GBE_BUILDFILTER=SOLARIS
5710
 
5711
      The default operation is to allow or disallow all TARGETS of the
5712
      specified name.    
5713
 
5714
 
5715
------------------------------------------------------------------------
5716
Version: JATS_2.22.0                                Released: 13-Apr-05
5717
------------------------------------------------------------------------
5718
Major changes:
5719
    * Dependancy generator
5720
      Extend the number of header files that can be included
5721
      to allow for 4096 included files.
5722
 
5723
------------------------------------------------------------------------
5724
Version: JATS_2.21.0                                Released: 12-Apr-05
5725
------------------------------------------------------------------------
5726
Major changes:
5727
    * Dependancy generator
5728
      Extend the number of header files that can be included
5729
 
5730
------------------------------------------------------------------------
5731
Version: JATS_2.20.0                                Released: 12-Apr-05
5732
------------------------------------------------------------------------
5733
Major changes:
5734
    * The "package.pl" file.
5735
      Setting $Pbase to "." is now supported and will result in the
5736
      package name being taken from the build name
5737
 
5738
      It is an error to set Pbase to a value other than "." or the
5739
      package Build Name.
5740
 
5741
Minor changes:
5742
    * create_dpkg utility
5743
      The -m ( merge) option will not replace a file if it already exists
5744
 
5745
------------------------------------------------------------------------
5746
Version: JATS_2.19.0                                Released: 08-Apr-05
5747
------------------------------------------------------------------------
5748
Major changes:
5749
 
5750
Minor changes:
5751
    * Dependancy generator
5752
      Correct two common situations
5753
        1) // Style comments. The following line was ignored
5754
        2) Allow preprocessor directives to be indents. This is not
5755
           ansi, but is often done.
5756
 
5757
    * GCC toolset
5758
      Corrected operation of the C++ compiler. The object file was not
5759
      being created in the correct place.
5760
 
5761
    * jats "label"
5762
      The -auto -clone options allow a label to be created if its not
5763
      present. Previously this would label all files in the VOB.
5764
 
5765
 
5766
------------------------------------------------------------------------
5767
Version: JATS_2.18.0                                Released: 06-Apr-05
5768
------------------------------------------------------------------------
5769
Major changes:
5770
 
5771
Minor changes:
5772
    * BuildPkgArchive. The transfer of the "pkg" subdirectory has been
5773
      modified. Directories of the form pkg/pkg.$(GBE_MACHTYPE) will
5774
      be transferred to the "pkg" directory.
5775
 
5776
      If there are no directores of the form "pkg.xxxxx" then the entire
5777
      pkg directory will be transferred.
5778
 
5779
    * Transfer to dpkg_acrhive
5780
      Corrected a problem in which a file with the same name as the
5781
      package was not being transferred.
5782
 
5783
------------------------------------------------------------------------
5784
Version: JATS_2.17.0                                Released: 06-Apr-05
5785
------------------------------------------------------------------------
5786
Major changes:
5787
    * Support for solaris_i386
5788
      The JATS toolset has been modified to provide the required
5789
      binaries for this target.
5790
 
5791
      The platform SOLARIS_I386 has been created to build on this target
5792
      with the GCC compiler.
5793
 
5794
      The JATS startup shell has been modified to allow specfic values
5795
      to be imported from the environment. Under Unix such values may
5796
      need to be specified in the /etc/profile file.
5797
 
5798
Minor changes:
5799
    * The InstallHdr, InstallLib, InstallJar and InstallProd directives
5800
      will now generate a warning if a "local" directory has not been specified
5801
      with a "BuildInterface" directive in the build.pl file.
5802
 
5803
    * cbuild ( release) utility
5804
      Fxied a problem locating VOBs under Solaris
5805
 
5806
------------------------------------------------------------------------
5807
Version: JATS_2.16.0                                Released: 04-Apr-05
5808
------------------------------------------------------------------------
5809
Major changes:
5810
    * The InstallHdr, InstallLib, InstallJar and InstallProd directives
5811
      will generate an error if a "local" directory has not been specified
5812
      with a "BuildInterface" directive in the build.pl file.
5813
 
5814
      The "local" directory should be specified to JATS so that it can
5815
      remove the directory tree with the "clobber" command.
5816
 
5817
    * jats_rewrite.pl utility
5818
      Allow BuildName and LinkPkgArchive directives to contains comments
5819
      with either " or ' characters.
5820
 
5821
    * BuildSubDir - in build.pl
5822
      It is now an error if the specified subdirectory does not exist
5823
      and  does not contain the file "makefile.pl".
5824
 
5825
    * SubDir - in makefile.pl
5826
      It is now an error if the specified subdirectory does not exist
5827
      and  does not contain the file "makefile.pl".
5828
 
5829
    * Jats wrapper
5830
      Added a "-locate" option to force JATS to locate the build.pl file
5831
      and then change to the containing directory before execution
5832
      further commands.
5833
 
5834
Minor changes:
5835
    * WinCe and Win32 toolsets
5836
      Corrected a problem in the generation of .dep files used in the
5837
      creation of Shared Libraries. There was a miss-match between the
5838
      name of the .dep file and its content.
5839
 
5840
------------------------------------------------------------------------
5841
Version: JATS_2.15.0                                Released: 22-Mar-05
5842
------------------------------------------------------------------------
5843
Major changes:
5844
    * WIN32 and WinCE Toolset. New CompileOptions
5845
        NoPDB   - Disable the generation of PDBs
5846
        PDB     - Enable the generation of PDBs (default).
5847
 
5848
      These options operation affect all components within the
5849
      makefile.pl. If the directive is used within the common makefile.pl
5850
      then they will affect all components within the build.
5851
 
5852
      Note: It is not possible to create a merged library in which some
5853
            of the component libraries have PDB's and some do not.
5854
 
5855
Minor changes:
5856
 
5857
------------------------------------------------------------------------
5858
Version: JATS_2.14.0                                Released: 18-Mar-05
5859
------------------------------------------------------------------------
5860
Major changes:
5861
    * The MergeLibrary directive, under WIN32 and WinCe, will publish the
5862
      PDB files associated with the library files being merged.
5863
 
5864
Minor changes:
5865
    * gen_winrc tool can add an icon to a program.
5866
      The utility supports -icon=filename.ico
5867
 
5868
    * The JATS wrapper script command "prod" to build and package the
5869
      production parts. This is similar to the "dev" command.
5870
 
5871
------------------------------------------------------------------------
5872
Version: JATS_2.13.0                                Released: 18-Mar-05
5873
------------------------------------------------------------------------
5874
Major changes:
5875
    * Modified the order in which the makefiles passes operate. Merged
5876
      the make_shlib and the install_shlib into one phase. The
5877
      implication of this is that Shared Libraries that are created can
5878
      "installed" so that other shared libraries can link against them.
5879
      The order in which the makefile.pl's are processed is important as
5880
      this is the order in which the libraries will be created and
5881
      installed.
5882
 
5883
      This solution does not handle mutual shared libraries: two shared
5884
      libraries that depend on each other.
5885
 
5886
      This is an issue only in Solaris and Linux systems that do not
5887
      generate separate stub libraries to link against.
5888
 
5889
Minor changes:
5890
    * WIN32 and WinCE Toolsets
5891
      Building up resources. The RC compiler can now locate resource files
5892
      in the "local" and "interface" directory.
5893
 
5894
    * The version.c, version.h and descpkg files will be created in the
5895
      first directory named with a BuildDir directive, unless a
5896
      "src" directory is encountered. This mimics the operation
5897
      of the older JATS, without the need for a "src" directory.
5898
 
5899
------------------------------------------------------------------------
5900
Version: JATS_2.12.0                                Released: 18-Mar-05
5901
------------------------------------------------------------------------
5902
Major changes:
5903
 
5904
Minor changes:
5905
    * Added a --Depend=xxx[,yyy]+ option to the Src directive
5906
      Not needed for C and C++ files, but may be used in conjunction
5907
      with assembler files to indicate that the file includes another
5908
      file.
5909
 
5910
    * Fixed problem with the local_dpkg_archive consistency test when
5911
      a soft link is used to redirect to the package.
5912
 
5913
    * Win32 and WinCE toolsets
5914
      Added a compiler option to enable Run Time Type Information.
5915
            CompileOptions ('WIN32', 'RTTI' );
5916
 
5917
      Add an option to Shared Library creation to allow the generation of
5918
      a Resource Only DLL. Option is "--ResourceOnly"
5919
 
5920
      Add an option to allow Resources to be built into Static Libraries
5921
      in the same manner at Shared Libraries.
5922
 
5923
    * WinCE toolsets
5924
      Mutual DLL support corrected. Library path is used to resolve
5925
      compiler specific libraries.
5926
 
5927
    * SOLARIS toolset
5928
      Prevent the compiler displaying its command line. This is in line
5929
      with the other tools sets. The commands can be seen with
5930
      OPTIONS=args and this may be set in the users environment.
5931
 
5932
      Modified the cleanup process to delete the links to shared
5933
      libraries. Only files, and not links to files, where being
5934
      cleaned up.
5935
 
5936
    * Microtec tools set (MOS)
5937
      Dependancy generation can display commands with OPTIONS=args
5938
 
5939
    * jats_rewriter.pl
5940
      Allow BuildName and LinkPkgArchive directives to contains arguments
5941
      with either " or ' characters.
5942
 
5943
 
5944
------------------------------------------------------------------------
5945
Version: JATS_2.11.0                                Released: 15-Mar-05
5946
------------------------------------------------------------------------
5947
Major changes:
5948
    * BuildPkgArchive operation
5949
      The entire "include" directory is copied into the interface area
5950
      The installer was trying to be too smart and only copy platform
5951
      specific files,but was missing out many needed subdirectories
5952
 
5953
      Reduce the warnings generated. These were an artifact of the process
5954
      of picking up all the strange variations of the directory structures.
5955
 
5956
    * Cleaned up the handling of object files that were generated by the
5957
      user.
5958
 
5959
    * MOS Microtec Toolset
5960
      Always present an absolute filename to the compiler
5961
      Display a shortened filename to allow the user to track progress
5962
 
5963
      This will remove error messages about the path being too long
5964
      for the   -Gf option.
5965
 
5966
Minor changes:
5967
    * SOLARIS Toolset
5968
      Remove duplicate -KPIC flags on the command line
5969
 
5970
    * Win32 and WinCE Toolset
5971
      Source files are either compiled by the C compiler as C files or
5972
      the C++ compiler as C++ files. The option to allow the compiler to
5973
      figure out what sort of file it is has been removed.
5974
 
5975
------------------------------------------------------------------------
5976
Version: JATS_2.10.0                                Released: 11-Mar-05
5977
------------------------------------------------------------------------
5978
Major changes:
5979
    * Extended BuildName to accept the form
5980
            BuildName ('package_name', 'nn.nn.nn.xxx' );
5981
 
5982
    * MOS68K and MOSCF toolset.
5983
      Extended the --board option to allow the user to define code and
5984
      data addresses for the board.
5985
 
5986
            BuildProduct( 'TP5', 'MOSCF','--board=01234H,05678H' );
5987
 
5988
      Will set the code,data address for the debugable image
5989
 
5990
    * Extended the PackageXxxxx options
5991
      1) Allow --Platform=xxx,yyy
5992
         Where xxx is a directory prefix and yyy is suffix to the
5993
         "platform" name.  Only useful within the context of the
5994
         PackageFile
5995
 
5996
      2) The operation of --Platform=xxx when used by the PackageFile
5997
         directive now treats the xxx directory as a prefix to the
5998
         platform name. Other Package directives still treat it as a
5999
         suffix. In practice this is the logical use.
6000
 
6001
    * Allow InstallLib and PackageLib to install a file that has been
6002
      discovered with a "Src" directive. This allows generated files
6003
      to be installed and packaged.
6004
 
6005
Minor changes:
6006
 
6007
    * cache_dpkg utility
6008
      If a package is found in the local_dpkg_archive then the cache
6009
      entry will be deleted and the master archive will not be accessed.
6010
 
6011
    * label utility
6012
      New option -auto to create and label
6013
 
6014
    * Build WIN32 and WinCe Mutual DLLs with all the object files
6015
      This allows the generated import library to contain C++ names
6016
 
6017
    * The BuildDirTree directive now supports an empty first argument
6018
      This allows a NULL tree.dir file, while still creating the root
6019
      directory. ie:
6020
 
6021
            BuildDirTree    ( '', 'pkg' );
6022
 
6023
    * Fixed DEVIM 00019520
6024
      The problem was that /bin/pwd could return a different path to
6025
      the Cwd:getpwd() function. Solution: Use one mechanism throughout.
6026
 
6027
 
6028
------------------------------------------------------------------------
6029
Version: JATS_2.9.0                                 Released: 28-Feb-05
6030
------------------------------------------------------------------------
6031
Major changes:
6032
    * First release for Back Office and Front Office use.
6033
 
6034
    * Added the jats tool  jats_rewrite.pl to rewrite build.pl files.
6035
      To be used by the nightly build process.
6036
 
6037
    * Work around a problem in the Microtec 68K compiler.
6038
      The compiler uses temp files. If the temp file name that the
6039
      compiler uses already exists, then the compiler will not delete
6040
      the file. Instead it appends information to the existing file.
6041
 
6042
      The workaround is to create the temp files within the build's
6043
      interface directory and to remove all temp files before each
6044
      compilation.
6045
 
6046
      This bug does not affect the Mictotec CF compiler.
6047
 
6048
Minor changes:
6049
    * The "jats clobber" command will remove version definition file, if
6050
      one is being produced.
6051
 
6052
    * Using JATS within a Visual Studio project. The "rebuild all"
6053
      option now translates to the JATS unbuild command to do a better
6054
      job of cleaning the workspace.
6055
 
6056
    * Added GetPackageRoot() directive to support the packaging of MOS
6057
 
6058
    * Generate error message for misuse of the SubDir directive
6059
 
6060
    * Modified BuildName to allow an '-' in the name.
6061
      This provides backward compatibility with existing packages.
6062
 
6063
------------------------------------------------------------------------
6064
Version: JATS_2.8.0                                 Released: 17-Feb-05
6065
------------------------------------------------------------------------
6066
Major changes:
6067
    * Added some new WINCE based targets. These require WINCE SDKs to be
6068
      installed in order for the compilers to work.
6069
 
6070
    * New PLATFORMS are WCEIT3000, WCEPA961 and WCEPCM7220
6071
 
6072
    * All invocations of xmake specify the name of the makefile
6073
      This allow GNUMakefiles and the Jats makefiles to exist in the
6074
      same directory
6075
 
6076
    * Overcome a limitation of the Microtec compiler in which the flag
6077
      _DEBUG is defined enev in production builds - contrary to the
6078
      documenattion.
6079
 
6080
Minor changes:
6081
    * Process of descpkg files allows for both Unix and DOS line endings
6082
      Under Unix JATS would report that the package names don't match
6083
 
6084
    * Corrected a problem with BuildPkgArchive in which file names with
6085
      spaces could not be soft linked. Only affects Unix systems.
6086
 
6087
    * Added a -rename to the "jats label" utility.
6088
      Ensure that the user specified label exists in the VOB
6089
 
6090
    * Correct problem with "make clean" that resulted in a verbose display
6091
      when the verbose option had not been selected
6092
 
6093
    * Correct a problem with "make unbuild". Changes in the build files
6094
      would prevent the execution of the command. This command should
6095
      be exempt from this test.
6096
 
6097
    * Correct a problem with "make clean" in the WIN32 and WINCE
6098
      platforms where the .exp files were not deleted.
6099
 
6100
    * The "JATS clobber" command now invokes "make clobber" and "build
6101
      clobber". The result is as clean a clean as it can be.
6102
 
6103
      Note: Jats "clean" does not remove a lot of files. These can be
6104
      removed with "unbuild" and "unpackage". This is what "clobber"
6105
      does.
6106
 
6107
    * The operation of "build clobber" has been cleaned up. It will
6108
      not try to invoke make if the makefiles have already been removed.
6109
 
6110
 
6111
------------------------------------------------------------------------
6112
Version: JATS_2.7.0                                 Released: 09-Feb-05
6113
------------------------------------------------------------------------
6114
Major changes:
6115
    * First release with support for the DAFBR compiler
6116
 
6117
    * Extended MergeLibrary. Added per-file options of:
6118
        --Interface         - Pull lib from Interface directory
6119
        --Local             - Pull lib from Local directory (default)
6120
        --SubDir=pathname   - Pull lib from a subdirectory
6121
                              Note: xxxx,pathname still works
6122
 
6123
    * Added "jats label" to provide a number of useful labeling
6124
      operations.
6125
 
6126
    * Added extensive help to JATS. JATS -man.
6127
 
6128
    * Added this manual ChangeLog file
6129
 
6130
Minor changes
6131
    * Added an 'ebin' command to jats to allow the JATS binary tools to
6132
      be run in a controlled environment from the command line.
6133
 
6134
    * Prune the list of library paths passed through to the various
6135
      toolsets. If a directory does not have any files in it then the
6136
      directory is not added to the library path.
6137
 
6138
      Thus if a library is located in xxxx/lib/WIN32 then JATS will
6139
      not add the xxxx/lib to the path.
6140
 
6141
    * cbuilder will now look in all VOBs for the user specified label.
6142
      The program has a list of "known" labels which it will search
6143
      first in an attempt to speed up the process.
6144
 
6145
    * The AddFlags directive will issue a warning if the flags does not
6146
      begin with a -D or a -U. The user should not be using compiler
6147
      specific flags.
6148
 
6149
    * The use of linker flags will issue a warning.
6150
 
6151
    * Process the common makefile.pl after the toolset has been
6152
      determined. This allows the toolset to extend the CompileOptions
6153
      such they are available to the common makefile.pl.
6154
 
6155
    * Added the WIN32 CompileOptions "jats_v1" to force JATS to specify
6156
      a number of compile time definitions used by earlier versions of
6157
      JATS.
6158
 
6159
    * Fixed bug in the --Debug option to the PackageProg directives that
6160
      caused both the production and debug versions to be packaged.
6161
 
6162
    * The gen_msproject utility now creates simpler names for the MS
6163
      projects that it creates. The name no longer contains the full
6164
      pathname, thus making them shorter and readable.
6165
 
6166
    * The ShowDlls utility now handles absolute and relative paths to
6167
      the initial DLL or EXE.
6168
 
6169
    * Correct problem in which the use of Generate/Rule directives may
6170
      fail since prerequisite subdirectories were not being created
6171
      since the "generate" phase was not being run.
6172
 
6173
      Added messages to prompt the user to remove Generate, Generated
6174
      and Rule directives. Use the GenerateFiles directive
6175
 
6176
    * JATS.BAT file will exclude LINUX builds by default.
6177
 
6178
    * The make NODEPEND=1 processing now does not recurse at all.
6179
      Previously each subdirectory was visited - only to do nothing.
6180
 
6181
    * Correct a problem in creating stub libraries for MOS targets if
6182
      the stub library object was not listed with the SharedLib's
6183
      objects.
6184
 
6185
    * Correct a problem with the MS Studio support. The invoked make
6186
      command is XXX_all_debug. There was a problem with this command in
6187
      that it did not do any dependancy checking and would not always
6188
      build defendants.