After some trouble, I managed to create a distribution tarball for my patched Redhat 8 system from smolder-0.01-src using bin/ smolder_makedist.

The problem I encountered was in
   src/libapreq-1.3.tar.gz - specifically in
   src/libapreq-1.3/Makefile.PL  (after unpacking the tarball)
the code in the BEGIN block was not finding the proper mod_perl installation.

I hacked the Makefile.PL, mainly by putting this in the BEGIN block (notice this is a hack it specifically mention my specific arch_lib - i686-linux:

+    use FindBin qw($Bin);
+    my $arch_lib = "$Bin/../../../lib/i686-linux";
+    use lib $arch_lib;
+    my $mod_perl = "$arch_lib/mod_perl.pm";
+    unless (eval {require $mod_perl}) {
+        die "Please install mod_perl: 1.25 < version < 1.99\n($@)";
+    }


Then, once I was able to create the dist tarball, I ran into another problem:

WHen I ran ./bin/smolder_install from within my unpacked distribution tarball, I got an error because Class::Trigger could not be found - it doesn't seem to be included in the package, although lib/Class/DBI.pm uses it. SO for the moment, I'm stuck.

-Matisse

######################################################################## #

Complete diff of how I hacked the Makefile.PL in src/ libapreq-1.3.tar.gz:

--- libapreq-1.3/Makefile.PL    2003-07-04 19:42:02.000000000 -0700
+++ libapreq-1.3.hacked/Makefile.PL 2006-03-04 15:50:28.000000000 -0800
@@ -1,7 +1,21 @@
use ExtUtils::MakeMaker;
use strict;
-use FindBin;
use 5.005;
+BEGIN {
+    use FindBin qw($Bin);
+    my $arch_lib = "$Bin/../../../lib/i686-linux";
+    use lib $arch_lib;
+    my $mod_perl = "$arch_lib/mod_perl.pm";
+    unless (eval {require $mod_perl}) {
+        die "Please install mod_perl: 1.25 < version < 1.99\n($@)";
+    }
+    if ($mod_perl::VERSION < 1.2402) {
+        die "Please upgrade mod_perl to 1.24_02 or greater";
+    }
+    elsif ($mod_perl::VERSION > 1.98) {
+        die "mod_perl 1.x ( < 1.99) is required";
+    }
+}
use File::Path qw(mkpath);
use lib qw(Apache-Test/lib);
@@ -18,17 +32,6 @@
     require Apache::TestMM;
     Apache::TestMM->import(qw(test clean));
}
-BEGIN {
-    unless (eval {require mod_perl}) {
-        die "Please install mod_perl: 1.25 < version < 1.99\n($@)";
-    }
-    if ($mod_perl::VERSION < 1.2402) {
-        die "Please upgrade mod_perl to 1.24_02 or greater";
-    }
-    elsif ($mod_perl::VERSION > 1.98) {
-        die "mod_perl 1.x ( < 1.99) is required";
-    }
-}
my $conf_data = join '', <DATA>;
$conf_data =~ s|(blib/arch)|$FindBin::Bin/$1|;




Reply via email to