Apache2::Build(3pm)

Apache2::Build3pm

Methods for locating and parsing bits of apache source code

Usage

 use Apache2::Build ();
 my $build = Apache2::Build->new;
 # rebuild mod_perl with build opts from the previous build
 % cd modperl-2.0
 % perl -MApache2::Build -e rebuild

Overview

This module provides methods for locating and parsing bits of Apache source code.

Since mod_perl remembers what build options were used to build it, you can use this knowledge to rebuild it using the same options. Simply chdir to the mod_perl source directory and run:

  % cd modperl-2.0
  % perl -MApache2::Build -e rebuild

If you want to rebuild not yet installed, but already built mod_perl, run from its root directory:

  % perl -Ilib -MApache2::Build -e rebuild

Methods

new

Create an object blessed into the Apache2::Build class.

 my $build = Apache2::Build->new;
dir

Top level directory where source files are located.

 my $dir = $build->dir;
 -d $dir or die "can't stat $dir $!\n";
find

Searches for apache source directories, return a list of those found.

Example:

 for my $dir ($build->find) {
    my $yn = prompt "Configure with $dir ?", "y";
    ...
 }
inc

Print include paths for MakeMaker's INC argument to "WriteMakefile".

Example:

 use ExtUtils::MakeMaker;
 use Apache2::Build ();
 WriteMakefile(
     'NAME'    => 'Apache2::Module',
     'VERSION' => '0.01',
     'INC'     => Apache2::Build->new->inc,
 );
module_magic_number

Return the MODULE_MAGIC_NUMBER defined in the apache source.

Example:

 my $mmn = $build->module_magic_number;
httpd_version

Return the server version.

Example:

 my $v = $build->httpd_version;
otherldflags

Return other ld flags for MakeMaker's dynamic_lib argument to "WriteMakefile". This might be needed on systems like AIX that need special flags to the linker to be able to reference mod_perl or httpd symbols.

Example:

 use ExtUtils::MakeMaker;
 use Apache2::Build ();
 WriteMakefile(
     'NAME'        => 'Apache2::Module',
     'VERSION'     => '0.01', 
     'INC'         => Apache2::Build->new->inc,
     'dynamic_lib' => {
         'OTHERLDFLAGS' => Apache2::Build->new->otherldflags,
     },
 );

Releases

10 releases since Debian 4.0 (Etch); the text changed 9 times.

  1. 4.0
  2. 5.0
  3. 6.0
  4. 7
  5. 8
  6. 9
  7. 10
  8. 11
  9. 12
  10. 13

Author

Doug MacEachern

From libapache2-mod-perl2 2.0.13-2+b2 in Debian 13 (Trixie). Parsed by carta from the page's man source.