* The great rewrite. Alien is now based on pure object oriented package

objects. These objects can read all relevant details about a package, and
     can generate packages based on that information. Thus, converting from one
     format to another becomes a simple matter of generating one of these
     objects, pointing it at a package, mutating it into the destination
     class, and telling it to write the new package out! A basic alien can now
     be written using these objects in one "line" of perl -- in fact, here is
     one:
       perl -MAlien::Package::Deb -MAlien::Package::Rpm -e '
       	       $p=Alien::Package::Rpm->new(filename => shift); $p->unpack;
   * Almost every line of code has been rewritten.
   * Package descriptions now include a note that they were converted with
     alien. There are other numerous changes to the converted packages, for
     instance, generated .deb's now have more info in their copyright file.
   * The template files were all moved inside the objects, which is actually
     cleaner and is certainly easier to deal with.
   * Usernames are now looked up the way POSIX intended.
   * alien.1 is now generated from POD docs.
   * Alien can now convert into multiple formats at once.
   * Alien now always cleans up after failed converts, Closes: #62331
   * Alien can now be used to just install a package with no conversion.
     Closes: #53441
   * Use a Makefile.PL because that seems to make sense, which means lots of
     the build system had to be changed.
This commit is contained in:
joey
2000-04-22 06:18:50 +00:00
parent 6b27184a23
commit 84a8367902
3 changed files with 5 additions and 5 deletions

View File

@@ -215,7 +215,7 @@ sub prep {
my $filelist; my $filelist;
foreach my $fn (@{$this->filelist}) { foreach my $fn (@{$this->filelist}) {
if ($fn =~ m:/$:) { if ($fn =~ m:/$:) {
# a directory. Skip entirely. $filelist.="%dir $fn\n";
} }
elsif (grep(m:^\Q$fn\E$:,@conffiles)) { # it's a conffile elsif (grep(m:^\Q$fn\E$:,@conffiles)) { # it's a conffile
$filelist.="%config $fn\n"; $filelist.="%config $fn\n";

View File

@@ -28,7 +28,7 @@ extra_install:
alien: alien:
perl -pe ' \ perl -pe ' \
$$_="\tmy \$$version_string=\"$(VER)\";" \ $$_="\tmy \$$version_string=\"$(VER)\";\n" \
if /VERSION_AUTOREPLACE/' alien.pl > alien if /VERSION_AUTOREPLACE/' alien.pl > alien
} }
} }
@@ -39,6 +39,6 @@ WriteMakefile(
# Pure evil. Hook into build and install targets # Pure evil. Hook into build and install targets
'depend' => {'all:' => 'extra_build', 'depend' => {'all:' => 'extra_build',
'install:' => 'extra_install', 'install:' => 'extra_install',
'pure_install:' => 'extra_install' 'pure_install:' => 'extra_install'},
'clean' => {FILES => 'alien.lsm alien.subst'}, 'clean' => {FILES => 'alien.lsm alien'},
); );

View File

@@ -371,7 +371,7 @@ foreach my $file (@ARGV) {
$package->patchfile($patchfile) $package->patchfile($patchfile)
} }
else { else {
$package->patchfile($package->getpatch(patchdirs()); $package->patchfile($package->getpatch(patchdirs()));
} }
} }