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|;