Blame maketgz

Packit 514978
#!/usr/bin/env perl
Packit 514978
Packit 514978
$version = $ARGV[0];
Packit 514978
Packit 514978
if($version eq "") {
Packit 514978
    print "Enter version number!\n";
Packit 514978
    exit;
Packit 514978
}
Packit 514978
Packit 514978
if(!-f "ares.h") {
Packit 514978
    print "run this script in the ares source root dir\n";
Packit 514978
    exit;
Packit 514978
}
Packit 514978
Packit 514978
my ($major, $minor, $patch)=split(/\./, $version);
Packit 514978
Packit 514978
$major += 0;
Packit 514978
$minor += 0;
Packit 514978
$patch += 0;
Packit 514978
Packit 514978
open(VER, "
Packit 514978
    die "can't open ares_version.h";
Packit 514978
open(NEWV, ">ares_version.h.dist");
Packit 514978
while(<VER>) {
Packit 514978
    $_ =~ s/^\#define ARES_VERSION_MAJOR .*/\#define ARES_VERSION_MAJOR $major/;
Packit 514978
    $_ =~ s/^\#define ARES_VERSION_MINOR .*/\#define ARES_VERSION_MINOR $minor/;
Packit 514978
    $_ =~ s/^\#define ARES_VERSION_PATCH .*/\#define ARES_VERSION_PATCH $patch/;
Packit 514978
    $_ =~ s/^\#define ARES_VERSION_STR .*/\#define ARES_VERSION_STR \"$version\"/;
Packit 514978
Packit 514978
    print NEWV $_;
Packit 514978
}
Packit 514978
close(VER);
Packit 514978
close(NEWV);
Packit 514978
print "ares_version.h.dist created\n";
Packit 514978
Packit 514978
if(!-f "configure") {
Packit 514978
    print "running buildconf\n";
Packit 514978
    `./buildconf`;
Packit 514978
}
Packit 514978
print "adding $version in the configure.ac file\n";
Packit 514978
`sed -e 's/AC_INIT.*/AC_INIT([c-ares], [$version],/' < configure.ac > configure.ac.dist`;
Packit 514978
Packit 514978
# now make a new configure script with this
Packit 514978
print "makes a new configure script\n";
Packit 514978
`autoconf configure.ac.dist >configure`;
Packit 514978
Packit 514978
# now run this new configure to get a fine makefile
Packit 514978
print "running configure\n";
Packit 514978
`./configure`;
Packit 514978
Packit 514978
# generate HTML versions of man pages
Packit 514978
# Deactivated for now. It seems that man pages need some adjustments
Packit 514978
# relative to paragraph and/or line breaks for proper html formatting.
Packit 514978
# EXTRA_DIST will need $(HTMLPAGES) when this is fully activated.
Packit 514978
# print "running make html\n";
Packit 514978
# `make -s html`;
Packit 514978
Packit 514978
# generate PDF versions of man pages
Packit 514978
print "running make pdf\n";
Packit 514978
`make -s pdf`;
Packit 514978
Packit 514978
print "produce CHANGES\n";
Packit 514978
`git log --pretty=fuller --no-color --date=short --decorate=full -1000 | ./git2changes.pl > CHANGES.dist`;
Packit 514978
Packit 514978
# now make the actual tarball
Packit 514978
print "running make dist\n";
Packit 514978
`make dist VERSION=$version`;
Packit 514978
Packit 514978
# remove temporay sourced man pages
Packit 514978
`make -s clean-sourced-manpages`;
Packit 514978
Packit 514978
print "removing temporary configure.ac file\n";
Packit 514978
`rm configure.ac.dist`;
Packit 514978
print "removing temporary ares_version.h file\n";
Packit 514978
`rm ares_version.h.dist`;
Packit 514978
Packit 514978
print "NOTE: now tag this release!\n";