Subversion Repositories DevTools

Rev

Rev 1042 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

#! /usr/bin/perl
########################################################################
# Copyright (C) 2011 Vix-ERG Limited, All rights reserved
#
# Module name   : flist2.pl
# Module type   :
# Compiler(s)   : Perl
# Environment(s):
#
# Description   : Generate a package list
#                 Format
#                   Time GMT( gmtTime ) Pname/Pver
#                 Where
#                   Time            - Time in seconds since the epoch of
#                                     the packages descpkg file
#                   gmtTime         - Same as Time, except in text form
#                   Pname           - Package Name
#                   Pver            - Package Version
#
# Usage:
#
#......................................................................#

require 5.008_002;
use strict;
use warnings;

my $dpkg = "./dpkg_archive";

opendir(DIR, $dpkg) || die "can't opendir $dpkg: $!";
my @dlist = readdir(DIR);
closedir DIR;

foreach my $pname ( sort @dlist )
{
    next if ( $pname eq '.' );
    next if ( $pname eq '..' );
    my $dir = $dpkg . '/'. $pname;
    next unless ( -d $dir );

    opendir(DIR, $dir )|| die "can't opendir $dir: $!";
    my @vlist = readdir(DIR);
    closedir DIR;

    foreach my $vname ( sort @vlist )
    {
        next if ( $vname eq '.' );
        next if ( $vname eq '..' );
        next if ( $vname =~ m~\.TMPDIR$~ );
        my $vdir = $dir . '/' . $vname;
        next unless ( -d $vdir );
        next unless ( -f "$vdir/descpkg" );
        my ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
            $atime,$mtime,$ctime,$blksize,$blocks) = stat(_);

        print "$mtime GMT(", scalar gmtime $mtime, ") ${pname}/${vname}\n";
    }
}