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