Subversion Repositories DevTools

Rev

Rev 5709 | Rev 5744 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5709 Rev 5743
Line 6... Line 6...
6
# Module type   : Makefile system
6
# Module type   : Makefile system
7
# Compiler(s)   : n/a
7
# Compiler(s)   : n/a
8
# Environment(s): jats
8
# Environment(s): jats
9
#
9
#
10
# Description:
10
# Description:
11
#       Maintain a local cache of dpkg_Archive
11
#       Maintain a local cache of dpkg_archive
12
#
12
#
13
# Notes:
13
# Notes:
14
#       Stopped using the JATS "cp.exe" utility as there was a weird problem under
14
#       Stopped using the JATS "cp.exe" utility as there was a weird problem under
15
#       windows. The package orahops-ssw-install/1.0.1000.ssw could not be installed
15
#       windows. The package orahops-ssw-install/1.0.1000.ssw could not be installed
16
#       correctly. It appears that the 'cp' could not process the subdir pair
16
#       correctly. It appears that the 'cp' could not process the subdir pair
Line 29... Line 29...
29
use File::Copy;
29
use File::Copy;
30
 
30
 
31
use Getopt::Long;
31
use Getopt::Long;
32
use Pod::Usage;                             # required for help support
32
use Pod::Usage;                             # required for help support
33
 
33
 
34
my $VERSION = "1.4.0";
34
my $VERSION = "1.5.0";
35
 
35
 
36
 
36
 
37
#
37
#
38
#   Options
38
#   Options
39
#
39
#
Line 471... Line 471...
471
    my $item = $File::Find::name;
471
    my $item = $File::Find::name;
472
 
472
 
473
    #
473
    #
474
    #   Calculate the target directory name
474
    #   Calculate the target directory name
475
    #
475
    #
476
    my $target = $copyFind_dst . substr($item, $copyFind_src_len );
476
    my $tgt_path = substr($item, $copyFind_src_len );
-
 
477
    my $target = $copyFind_dst . $tgt_path;
-
 
478
 
-
 
479
    # Do not cache some parts of a package when being used by the build system
-
 
480
    #   /lcov ...
-
 
481
    #
-
 
482
    if ( $ENV{GBE_ABT})
-
 
483
    {
-
 
484
        if ($tgt_path =~ m~^/lcov(/|$)~)
-
 
485
        {
-
 
486
            Verbose("Prune directory: $tgt_path");
-
 
487
            $File::Find::prune = 1;
-
 
488
            return;
-
 
489
        }
-
 
490
    }
-
 
491
 
477
    if ( -d $item )
492
    if ( -d $item )
478
    {
493
    {
479
        #
494
        #
480
        #   Directories are handled differently
495
        #   Directories are handled differently
481
        #       - Directories are created with nice permissions
496
        #       - Directories are created with nice permissions
Line 786... Line 801...
786
 
801
 
787
If a package is located in the users local_dpkg_archive and we are doing a
802
If a package is located in the users local_dpkg_archive and we are doing a
788
simple cache update then the package will be deleted from the cache. This is
803
simple cache update then the package will be deleted from the cache. This is
789
done to speed use on slow remote links and ensure cache consistency.
804
done to speed use on slow remote links and ensure cache consistency.
790
 
805
 
-
 
806
=head2 Interaction with build system
-
 
807
 
-
 
808
If the cache operating is done withinthe context of the Build System (GBE_ABT is not zero), 
-
 
809
then some parts of the package will not be transferred. This is done to speed up the caching.
-
 
810
 
-
 
811
Directories that will not be cached:
-
 
812
 
-
 
813
=over 4
-
 
814
 
-
 
815
=item * 
-
 
816
 
-
 
817
lcov - A directory that contains code coverage information. This directory normally 
-
 
818
contains a large number of files, none of which are used by the build system. Over long 
-
 
819
links the trasnfer time of the 'lcov' directory can take hours.
-
 
820
 
-
 
821
=back
-
 
822
 
791
=head1 EXAMPLE
823
=head1 EXAMPLE
792
 
824
 
793
=head2 jats dpkg_cache -list
825
=head2 jats dpkg_cache -list
794
 
826
 
795
This will list the current contents of the cache.
827
This will list the current contents of the cache.