RELEASE EXPERIMENT: more compression, .xz variant
authorPhil Pennock <pdp@exim.org>
Thu, 2 Feb 2017 20:38:14 +0000 (15:38 -0500)
committerPhil Pennock <pdp@exim.org>
Thu, 2 Feb 2017 20:38:14 +0000 (15:38 -0500)
Making this change natively in the release branch, not master branch, as
an experiment for the 4.89 release: make the .xz tarball variant too,
and work harder on compressing our files for distribution.

release-process/scripts/mk_exim_release

index f6cd33c7e69cee3c5284858563c86d65dd693273..95f9f905023672b0f99e36ed1f135880bdfe9664 100755 (executable)
@@ -375,6 +375,10 @@ sub create_tar_files {
             print "Creating: ${pkgs}/${dirname}.tar.lz\n" if ($verbose || $debug);
             system("$tar cf  ${pkgs}/${dirname}.tar.lz  --lzip  -C ${pkgdirs} ${dirname}")
         }
             print "Creating: ${pkgs}/${dirname}.tar.lz\n" if ($verbose || $debug);
             system("$tar cf  ${pkgs}/${dirname}.tar.lz  --lzip  -C ${pkgdirs} ${dirname}")
         }
+        if ($context->{compressors}{xz}) {
+            print "Creating: ${pkgs}/${dirname}.tar.xz\n" if ($verbose || $debug);
+            system("$tar cf  ${pkgs}/${dirname}.tar.xz  --xz    -C ${pkgdirs} ${dirname}")
+        }
     }
 }
 
     }
 }
 
@@ -394,6 +398,7 @@ MAIN: {
         compressors => {
                 gzip    => 1,
                 bzip2   => 1,
         compressors => {
                 gzip    => 1,
                 bzip2   => 1,
+                xz      => 1,
                 lzip    => 0,
         },
         build_docs   => 1,
                 lzip    => 0,
         },
         build_docs   => 1,
@@ -402,6 +407,13 @@ MAIN: {
     my $delete;
     my $cleanup = 1;
     ##$ENV{'PATH'} = '/opt/local/bin:' . $ENV{'PATH'};
     my $delete;
     my $cleanup = 1;
     ##$ENV{'PATH'} = '/opt/local/bin:' . $ENV{'PATH'};
+    # We are creating files for mass distribution, so work harder to make smaller files.
+    $ENV{'GZIP'} = '-9';
+    $ENV{'BZIP2'} = '-9';
+    # xz documents minimum file sizes for levels higher than -6 to be useful and each
+    # requires more RAM on the decompressing system.  Exim tarball currently 24MiB so
+    # using -8.
+    $ENV{'XZ_DEFAULTS'} = '-8';
 
     GetOptions(
         'directory=s'   => \$context->{directory},
 
     GetOptions(
         'directory=s'   => \$context->{directory},