diff options
Diffstat (limited to 'src/build')
-rwxr-xr-x | src/build/tools/hb-compare-levels | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/src/build/tools/hb-compare-levels b/src/build/tools/hb-compare-levels new file mode 100755 index 000000000..9df1e4b1c --- /dev/null +++ b/src/build/tools/hb-compare-levels @@ -0,0 +1,68 @@ +#!/usr/bin/perl +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/build/tools/hb-compare-levels $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2016 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + +use strict; +use Getopt::Long qw(:config pass_through); + +my $help = ""; +my %globals = (); +GetOptions("help" => \$help, + "base:s" => \$globals{base}, + "ref:s" => \$globals{ref}, + "pretty" => \$globals{pretty}); + +print "Missing base" if $globals{base} eq ""; +print "Missing reference" if $globals{ref} eq ""; + +if ($help || ($globals{base} eq "") || ($globals{ref} eq "")) +{ + print "hb-compare-levels:\n"; + print " Get differences between git references in a simple format.\n"; + print " Primarily used with hostboot releases.\n"; + print "\n"; + print " Syntax:\n"; + print " hb-compare-levels [options] --base <base-git-ref> --ref <git-ref> [optional:--pretty]\n"; + print "\n"; + print " Global options:\n"; + print " --help Display help on a specific tool.\n"; + print "\n"; + + exit; +} + +foreach my $arg (@ARGV) +{ + print "Unprocessed arg: $arg\n"; +} + +if ($globals{pretty}) +{ + system("git rev-list $globals{ref} ^$globals{base} | xargs -n1 git log -n1 --pretty=format:\'%Cred%h%Creset - %s %Cgreen(%cr) %C(bold blue)<%an>%Creset\' --abbrev-commit"); +} +else +{ + system("git rev-list $globals{ref} ^$globals{base} | xargs -n1 git log -n1 | cat"); +}
\ No newline at end of file |