summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrédéric Buclin <LpSolit@gmail.com>2012-03-09 17:09:26 +0100
committerFrédéric Buclin <LpSolit@gmail.com>2012-03-09 17:09:26 +0100
commit823edaec39342c46147a60bd0a1038b392ad60fa (patch)
tree8691b16e13bab6adc05f7a7938cddf3ac8d1e838
parent8ab95f027cab383e5085cae4678d3163a0ccf824 (diff)
downloadbugzilla-823edaec39342c46147a60bd0a1038b392ad60fa.tar.gz
bugzilla-823edaec39342c46147a60bd0a1038b392ad60fa.tar.xz
Bug 679965: Offer Linux packagers an easy way to specify the location of the Bugzilla modules
r=dkl a=LpSolit
-rw-r--r--contrib/Bugzilla.pm48
1 files changed, 48 insertions, 0 deletions
diff --git a/contrib/Bugzilla.pm b/contrib/Bugzilla.pm
new file mode 100644
index 000000000..6bfc07e2a
--- /dev/null
+++ b/contrib/Bugzilla.pm
@@ -0,0 +1,48 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+package Bugzilla;
+
+use strict;
+
+#######################################################################
+# The goal of this tiny module is to let Bugzilla packagers of #
+# various Linux distributions easily specify the path to the Bugzilla #
+# modules without having to edit each *.cgi script manually to fix #
+# the | use lib qw(. lib) | line. #
+# #
+# If the real Bugzilla.pm module and the Bugzilla/ directory are in #
+# the same directory as *.cgi scripts (which is the default), then #
+# this module is useless and has no effect. #
+# If the real Bugzilla.pm module and other Bugzilla/*.pm modules are #
+# moved elsewhere, then the *.cgi scripts will call this module which #
+# will give them the location of the Bugzilla modules. #
+#######################################################################
+# #
+# IMPORTANT NOTE: This module must be in a place where Perl will find #
+# it by default, e.g. in /usr/lib/perl5/vendor_perl/5.x.y/. #
+# #
+#######################################################################
+# #
+# Specify the path to the real Bugzilla.pm file in BZ_ROOT_DIR. #
+# Some Linux distros may set it to '/usr/share/bugzilla/lib'. #
+# #
+# Specify the path to the Bugzilla lib/ directory in BZ_LIB_DIR. #
+# If your Linux distro doesn't use it, make it point to BZ_ROOT_DIR. #
+# #
+#######################################################################
+
+use constant BZ_ROOT_DIR => '/usr/share/bugzilla/lib';
+use constant BZ_LIB_DIR => BZ_ROOT_DIR . '/lib';
+
+#######################################################################
+# DO NOT EDIT THE CODE BELOW, UNLESS YOU KNOW WHAT YOU ARE DOING!! #
+#######################################################################
+
+use lib (BZ_ROOT_DIR, BZ_LIB_DIR);
+
+# Now load the real Bugzilla.pm file.
+BEGIN { my $bugzilla = BZ_ROOT_DIR . '/Bugzilla.pm'; require $bugzilla; }
+
+1;