diff --git a/INSTALL b/INSTALL index 7ad16ac..e45c1c8 100644 --- a/INSTALL +++ b/INSTALL @@ -9,8 +9,8 @@ All rights reserved. RELEASE INFORMATION Project: Java API Compliance Checker (Java ACC) -Version: 1.4.0 -Date: 2015-01-10 +Version: 1.4.1 +Date: 2015-03-03 This file explains how to install and setup environment @@ -29,7 +29,7 @@ Content: 1. REQUIREMENTS FOR LINUX, FREEBSD and MAC OS X =============================================== - 1. JDK<=1.7 (javap, javac) - development files + 1. JDK<=1.8 (javap, javac) - development files 2. Perl 5 (5.8 or newer) @@ -37,7 +37,7 @@ Content: 2. REQUIREMENTS FOR MS WINDOWS ============================== - 1. JDK<=1.7 (javap, javac) + 1. JDK<=1.8 (javap, javac) 2. Active Perl 5 (5.8 or newer) diff --git a/japi-compliance-checker.pl b/japi-compliance-checker.pl index a369118..7c52c87 100755 --- a/japi-compliance-checker.pl +++ b/japi-compliance-checker.pl @@ -1,15 +1,15 @@ #!/usr/bin/perl ########################################################################### -# Java API Compliance Checker (Java ACC) 1.4.0 +# Java API Compliance Checker (Java ACC) 1.4.1 # A tool for checking backward compatibility of a Java library API # +# Written by Andrey Ponomarenko +# LinkedIn: http://www.linkedin.com/pub/andrey-ponomarenko/67/366/818 +# # Copyright (C) 2011 Institute for System Programming, RAS # Copyright (C) 2011-2014 ROSA Laboratory # Copyright (C) 2014-2015 Andrey Ponomarenko's ABI laboratory # -# Written by Andrey Ponomarenko -# LinkedIn: http://www.linkedin.com/pub/andrey-ponomarenko/67/366/818 -# # PLATFORMS # ========= # Linux, FreeBSD, Mac OS X, MS Windows @@ -17,11 +17,11 @@ # REQUIREMENTS # ============ # Linux, FreeBSD, Mac OS X -# - JDK<=1.7 (javap, javac) - development files +# - JDK<=1.8 (javap, javac) - development files # - Perl 5 (5.8 or newer) # # MS Windows -# - JDK<=1.7 (javap, javac) +# - JDK<=1.8 (javap, javac) # - Active Perl 5 (5.8 or newer) # # This program is free software: you can redistribute it and/or modify @@ -46,7 +46,7 @@ use Data::Dumper; use Config; -my $TOOL_VERSION = "1.4.0"; +my $TOOL_VERSION = "1.4.1"; my $API_DUMP_VERSION = "1.0"; my $API_DUMP_MAJOR = majorVersion($API_DUMP_VERSION); @@ -97,7 +97,7 @@ my $ShortUsage = "Java API Compliance Checker (Java ACC) $TOOL_VERSION A tool for checking backward compatibility of a Java library API -Copyright (C) 2014 ROSA Laboratory +Copyright (C) 2015 Andrey Ponomarenko's ABI laboratory License: GNU LGPL or GNU GPL Usage: $CmdName [options] @@ -6585,13 +6585,13 @@ ($$$) } # read the Signature - if($Content[$LineNum++]=~/Signature:\s*(.+)\Z/i) + if($Content[$LineNum++]=~/(Signature|descriptor):\s*(.+)\Z/i) { # create run-time unique name ( java/io/PrintStream.println (Ljava/lang/String;)V ) if($MethodAttr{"Constructor"}) { - $CurrentMethod = $CurrentClass.".\"\":".$1; + $CurrentMethod = $CurrentClass.".\"\":".$2; } else { - $CurrentMethod = $CurrentClass.".".$MethodAttr{"ShortName"}.":".$1; + $CurrentMethod = $CurrentClass.".".$MethodAttr{"ShortName"}.":".$2; } if(my $PackageName = get_SFormat($CurrentPackage)) { $CurrentMethod = $PackageName."/".$CurrentMethod; @@ -6640,9 +6640,9 @@ ($$$) } $TypeAttr{"Fields"}{$FName}{"Pos"} = $FieldPos++; # read the Signature - if($Content[$LineNum++]=~/Signature:\s*(.+)\Z/i) + if($Content[$LineNum++]=~/(Signature|descriptor):\s*(.+)\Z/i) { - my $FSignature = $1; + my $FSignature = $2; if(my $PackageName = get_SFormat($CurrentPackage)) { $TypeAttr{"Fields"}{$FName}{"Mangled"} = $PackageName."/".$CurrentClass.".".$FName.":".$FSignature; } @@ -7365,9 +7365,9 @@ () { if(my $Ver = `$JavaCmd -version 2>&1`) { - if($Ver=~/java version "(.+)\"/) + if($Ver=~/(java|openjdk) version "(.+)\"/) { - $JAVA_VERSION = $1; + $JAVA_VERSION = $2; printMsg("INFO", "using Java ".$JAVA_VERSION); } } @@ -7604,7 +7604,7 @@ () } if(defined $ShowVersion) { - printMsg("INFO", "Java API Compliance Checker (Java ACC) $TOOL_VERSION\nCopyright (C) 2014 ROSA Laboratory\nLicense: LGPL or GPL \nThis program is free software: you can redistribute it and/or modify it.\n\nWritten by Andrey Ponomarenko."); + printMsg("INFO", "Java API Compliance Checker (Java ACC) $TOOL_VERSION\nCopyright (C) 2015 Andrey Ponomarenko's ABI laboratory\nLicense: LGPL or GPL \nThis program is free software: you can redistribute it and/or modify it.\n\nWritten by Andrey Ponomarenko."); exit(0); } if(defined $DumpVersion)