Bugzilla::Install::Requirements - Functions and variables dealing with Bugzilla's perl-module requirements.
This module is used primarily by checksetup.pl to determine whether or not all of Bugzilla's prerequisites are installed.
(That is,
all the perl modules it requires.)
REQUIRED_MODULESAn arrayref of hashrefs that describes the perl modules required by Bugzilla. The hashes have three keys:
package - The name of the Perl package that you'd find on CPAN for this requirement.module - The name of a module that can be passed to the install command in CPAN.pm to install this module.version - The version of this module that we require,
or 0 if any version is acceptable.OPTIONAL_MODULESAn arrayref of hashrefs that describes the perl modules that add additional features to Bugzilla if installed.
Its hashes have all the fields of "REQUIRED_MODULES",
plus a feature item--an arrayref of strings that describe what features require this module.
FEATURE_FILESA hashref that describes what files should only be compiled if a certain feature is enabled.
The feature is the key,
and the values are arrayrefs of file names (which are passed to glob,
so shell patterns work).
check_requirementsThis checks what optional or required perl modules are installed,
like checksetup.pl does.
$output - true if you want the function to print out information about what it's doing,
and the versions of everything installed.A hashref containing these values:
pass - Whether or not we have all the mandatory requirements.missing - An arrayref containing any required modules that are not installed or that are not up-to-date.
Each item in the array is a hashref in the format of items from "REQUIRED_MODULES".optional - The same as missing,
but for optional modules.apache - The name of each optional Apache module that is missing.have_one_dbd - True if at least one DBD:: module is installed.any_missing - True if there are any missing Perl modules,
even optional modules.check_graphviz($output)Description: Checks if the graphviz binary specified in the webdotbase parameter is a valid binary,
or a valid URL.
Params: $output - $true if you want the function to print out information about what it's doing.
Returns: 1 if the check was successful,
0 otherwise.
have_vers($module,
$output) Description: Tells you whether or not you have the appropriate
version of the module requested. It also prints
out a message to the user explaining the check
and the result.
Params: C<$module> - A hashref, in the format of an item from
L</REQUIRED_MODULES>.
C<$output> - Set to true if you want this function to
print information to STDOUT about what it's
doing.
Returns: C<1> if you have the module installed and you have the
appropriate version. C<0> otherwise.
install_command($module) Description: Prints out the appropriate command to install the
module specified, depending on whether you're
on Windows or Linux.
Params: C<$module> - A hashref, in the format of an item from
L</REQUIRED_MODULES>.
Returns: nothing
map_files_to_featuresReturns a hashref where file names are the keys and the value is the feature that must be enabled in order to compile that file.