mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-26 11:44:17 +01:00
Add calcrom discord webhook to travis
This commit is contained in:
parent
f807eb1f2d
commit
46f9b83fe5
@ -26,3 +26,5 @@ matrix:
|
|||||||
script:
|
script:
|
||||||
- ./build_tools.sh
|
- ./build_tools.sh
|
||||||
- make -j2 compare
|
- make -j2 compare
|
||||||
|
after_success:
|
||||||
|
- .travis/calcrom/webhook.sh pokeemerald
|
||||||
|
37
.travis/calcrom/calcrom.pl
Executable file
37
.travis/calcrom/calcrom.pl
Executable file
@ -0,0 +1,37 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
(@ARGV == 1)
|
||||||
|
or die "ERROR: no map file specified.\n";
|
||||||
|
open(my $file, $ARGV[0])
|
||||||
|
or die "ERROR: could not open file '$ARGV[0]'.\n";
|
||||||
|
|
||||||
|
my $src = 0;
|
||||||
|
my $asm = 0;
|
||||||
|
while (my $line = <$file>)
|
||||||
|
{
|
||||||
|
if ($line =~ /^ \.(\w+)\s+0x[0-9a-f]+\s+(0x[0-9a-f]+) (\w+)\/.+\.o/)
|
||||||
|
{
|
||||||
|
my $section = $1;
|
||||||
|
my $size = hex($2);
|
||||||
|
my $dir = $3;
|
||||||
|
|
||||||
|
if ($section =~ /text/)
|
||||||
|
{
|
||||||
|
if ($dir eq 'src')
|
||||||
|
{
|
||||||
|
$src += $size;
|
||||||
|
}
|
||||||
|
elsif ($dir eq 'asm')
|
||||||
|
{
|
||||||
|
$asm += $size;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
my $total = $src + $asm;
|
||||||
|
my $srcPct = sprintf("%.4f", 100 * $src / $total);
|
||||||
|
my $asmPct = sprintf("%.4f", 100 * $asm / $total);
|
||||||
|
print "$total total bytes of code\n";
|
||||||
|
print "$src bytes of code in src ($srcPct%)\n";
|
||||||
|
print "$asm bytes of code in asm ($asmPct%)\n";
|
16
.travis/calcrom/webhook.sh
Executable file
16
.travis/calcrom/webhook.sh
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash -ex
|
||||||
|
|
||||||
|
# Only run this script if it's the master branch build.
|
||||||
|
if [[ "$TRAVIS_BRANCH" != "master" || "$TRAVIS_PULL_REQUEST" != "false" ]]; then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
build_name=$1
|
||||||
|
map_file=$build_name.map
|
||||||
|
if [ ! -f $map_file ]; then
|
||||||
|
echo "$map_file does not exist!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
output=$(perl $(dirname "$0")/calcrom.pl $build_name.map | sed -E ':a;N;$!ba;s/\r{0,1}\n/\\n/g')
|
||||||
|
curl -d "{\"username\": \"OK\", \"avatar_url\": \"https://i.imgur.com/38BQHdd.png\", \"content\":\"\`\`\`$build_name progress:\\n$output\`\`\`\"}" -H "Content-Type: application/json" -X POST https://discordapp.com/api/webhooks/340931107060973570/$DISCORD_WEBHOOK_KEY
|
Loading…
Reference in New Issue
Block a user