Subversion Repositories DevTools

Rev

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

Rev 339 Rev 341
Line 6029... Line 6029...
6029
sub PackageFile
6029
sub PackageFile
6030
{
6030
{
6031
    my( $platforms, @elements ) = @_;
6031
    my( $platforms, @elements ) = @_;
6032
    my( $base, $dir, $full, $path, $dist, $strip, $exefile, $type );
6032
    my( $base, $dir, $full, $path, $dist, $strip, $exefile, $type );
6033
    my( $name, $basename, $len, $srcfile );
6033
    my( $name, $basename, $len, $srcfile );
6034
    my( $dir_tree, @dir_tree_exclude, @dir_tree_include);
6034
    my( $dir_tree, @dir_tree_exclude, @dir_tree_include, $strip_base );
6035
    my $recurse = 1;
6035
    my $recurse = 1;
6036
    my $full_path = 1;
-
 
6037
 
6036
 
6038
    Debug2( "PackageFile($platforms, @elements)" );
6037
    Debug2( "PackageFile($platforms, @elements)" );
6039
 
6038
 
6040
    return if ( !$ScmPackage );                 # Packaging enabled ?
6039
    return if ( !$ScmPackage );                 # Packaging enabled ?
6041
    return if ( ! ActivePlatform($platforms) );
6040
    return if ( ! ActivePlatform($platforms) );
Line 6045... Line 6044...
6045
    $dist = "ALL";                                  # Default set (ALL)
6044
    $dist = "ALL";                                  # Default set (ALL)
6046
    $base = $PackageInfo{'File'}{'PBase'};          # Base of target
6045
    $base = $PackageInfo{'File'}{'PBase'};          # Base of target
6047
    $dir = $base . $PackageInfo{'File'}{'Dir'};     # Installation path (default)
6046
    $dir = $base . $PackageInfo{'File'}{'Dir'};     # Installation path (default)
6048
    $full = 0;
6047
    $full = 0;
6049
    $strip = 0;
6048
    $strip = 0;
-
 
6049
    $strip_base = 0;
6050
    $exefile = 0;
6050
    $exefile = 0;
6051
 
6051
 
6052
    foreach ( @elements )
6052
    foreach ( @elements )
6053
    {
6053
    {
6054
        my $rv = __TargetDir($T_PKG|$T_MACH|$T_GBE|$T_FILE, $base, $_, \$dir, \$type);
6054
        my $rv = __TargetDir($T_PKG|$T_MACH|$T_GBE|$T_FILE, $base, $_, \$dir, \$type);
Line 6087... Line 6087...
6087
 
6087
 
6088
        } elsif ( /^--FilterIn=(.*)/ ) {
6088
        } elsif ( /^--FilterIn=(.*)/ ) {
6089
            push @dir_tree_include, $1;
6089
            push @dir_tree_include, $1;
6090
 
6090
 
6091
        } elsif ( /^--StripDir/ ) {
6091
        } elsif ( /^--StripDir/ ) {
6092
            $full_path = 0;
6092
            $strip_base = 1;
6093
 
6093
 
6094
        } elsif ( m/^--Recurse/ ) {
6094
        } elsif ( m/^--Recurse/ ) {
6095
            $recurse = 1;
6095
            $recurse = 1;
6096
 
6096
 
6097
        } elsif ( m/^--NoRecurse/ ) {
6097
        } elsif ( m/^--NoRecurse/ ) {
Line 6108... Line 6108...
6108
    #         Use JatsLocateFiles to do the hard work
6108
    #         Use JatsLocateFiles to do the hard work
6109
    if ( $dir_tree )
6109
    if ( $dir_tree )
6110
    {
6110
    {
6111
        my $search = JatsLocateFiles->new('FullPath' );
6111
        my $search = JatsLocateFiles->new('FullPath' );
6112
        $search->recurse($recurse);
6112
        $search->recurse($recurse);
6113
        $search->full_path($full_path);
-
 
6114
        $search->filter_in_re ( $_ ) foreach ( @dir_tree_include );
6113
        $search->filter_in_re ( $_ ) foreach ( @dir_tree_include );
6115
        $search->filter_out_re( $_ ) foreach ( @dir_tree_exclude );
6114
        $search->filter_out_re( $_ ) foreach ( @dir_tree_exclude );
6116
        @elements = $search->search ( $dir_tree );
6115
        @elements = $search->search ( $dir_tree );
-
 
6116
        $strip_base = length( $dir_tree ) if ( $strip_base );
6117
    }
6117
    }
6118
 
6118
 
6119
#.. Files
6119
#.. Files
6120
#
6120
#
6121
    foreach ( @elements )
6121
    foreach ( @elements )
Line 6165... Line 6165...
6165
            }
6165
            }
6166
 
6166
 
6167
            $name = $basename
6167
            $name = $basename
6168
                if ( $strip );
6168
                if ( $strip );
6169
 
6169
 
-
 
6170
            if ( $strip_base )
-
 
6171
            {
-
 
6172
                $name = substr $name, $strip_base;
-
 
6173
                $name =~ s~^/~~;
-
 
6174
            }
-
 
6175
 
6170
            $dir =~ s~//~/~g;
6176
            $dir =~ s~//~/~g;
6171
            $dir =~ s~/$~~;
6177
            $dir =~ s~/$~~;
6172
 
6178
 
6173
            #
6179
            #
6174
            #   Sanity test the source filename
6180
            #   Sanity test the source filename