The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#!/usr/bin/env perl

use strict;
use warnings;

use CPAN;
use Config;

chdir $Config{installsitelib};

run(qw(git init));
run(qw(git add .));
system(qw(git commit -m init));

CPAN::HandleConfig->require_myconfig_or_config;

my @edit;

foreach my $key ( qw(make_install_make_command mbuild_install_build_command) ) {
	no warnings 'once';
	my $value = $CPAN::Config->{$key};

	if ( $value !~ /git site-perl-commit/ ) {
		push @edit, $key => "git site-perl-commit $value";
	}
}

if ( @edit ) {
	CPAN::HandleConfig->edit(@edit);
	CPAN::HandleConfig->commit;
}

sub run {
	if ( my $exit = system(@_) != 0 ) {
		exit $exit;
	}
}