Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Make life easier for packagers with BUILDING_AS_PACKAGE
Also README.packaging and bundled/README.
- Loading branch information
Showing
5 changed files
with
73 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,23 @@ | |||
If you wish to package MakeMaker in a binary package, here's some tips. | |||
|
|||
tl;dr version: | |||
|
|||
1a) Set the BUILDING_AS_PACKAGE environment variable to a true value. | |||
OR | |||
1b) Set the $BUILDING_AS_PACKAGE variable in the Makefile.PL to true. | |||
2) Package normally, but watch out for dependency loops. | |||
|
|||
MakeMaker cannot have any dependencies, everything depends on it and | |||
that would be a dependency loop. It instead bundles pre-built copies | |||
of all its non-core dependencies in the bundled/ directory. It adds | |||
them to itself if they're not already installed. | |||
|
|||
This can confuse packagers, it makes it look like MakeMaker contains a | |||
lot more modules than it really does and causes conflicts. | |||
|
|||
You can tell MakeMaker not to use it's bundles and instead declare the | |||
dependencies normally. This is done either by setting the | |||
BUILDING_AS_PACKAGE environment variable to true or by patching the | |||
Makefile.PL and setting $BUILDING_AS_PACKAGE to true. On the down | |||
side, there will be dependency loops which your packaging system will | |||
have to resolve. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Original file line | Diff line number | Diff line change |
---|---|---|---|
@@ -0,0 +1,5 @@ | |||
This directory contains CPAN modules which ExtUtils-MakeMaker depends on. | |||
They are bundled with ExtUtils-MakeMaker to avoid dependency loops. | |||
|
|||
Vendor packages will want to disable this bundling. See README.packaging in the top | |||
level directory for details. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters