3 # Copyright (C) 2010 Guillaume Cottenceau and MNC S.A.
5 # This file is part of sdbl4j, and is licensed under the Apache 2.0 license.
8 @ARGV > 0 or die "Usage: gen-db-access-classes.pl <dirname>+\n";
9 -d $_ or die "Parameter $_ not a directory\n" foreach @ARGV;
14 foreach my $dbxml_src (`find $_ -name "*.db.xml"`) {
16 my $dbxml_mtime = (stat($dbxml_src))[9];
17 (my $java_src = $dbxml_src) =~ s/\.db\.xml$/.java/;
18 my $java_mtime = (stat($java_src))[9];
19 my $generator_mtime = (stat("bin/db/gen-db-access-class.pl"))[9];
20 if (!defined($java_mtime) || $dbxml_mtime > $java_mtime || $generator_mtime > $java_mtime) {
21 push @to_generate, $dbxml_src;
27 my $basedir = `readlink -f "$0"`;
29 $basedir =~ s|/[^/]+$||;
32 print "Generating " . int(@to_generate) . " database access source files\n";
33 my $cmd = "$basedir/gen-db-access-class.pl @to_generate";
34 system($cmd) == 0 or die "Failed invoking $cmd: $!\n";