Subversion Repositories DevTools

Rev

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

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