|
Packit |
094780 |
If you wish to package MakeMaker in a binary package, here's some tips.
|
|
Packit |
094780 |
|
|
Packit |
094780 |
tl;dr version:
|
|
Packit |
094780 |
|
|
Packit |
094780 |
1a) Set the BUILDING_AS_PACKAGE environment variable to a true value.
|
|
Packit |
094780 |
OR
|
|
Packit |
094780 |
1b) Set the $BUILDING_AS_PACKAGE variable in the Makefile.PL to true.
|
|
Packit |
094780 |
2) Package normally, but watch out for dependency loops.
|
|
Packit |
094780 |
|
|
Packit |
094780 |
MakeMaker cannot have any dependencies, everything depends on it and
|
|
Packit |
094780 |
that would be a dependency loop. It instead bundles pre-built copies
|
|
Packit |
094780 |
of all its non-core dependencies in the bundled/ directory. It adds
|
|
Packit |
094780 |
them to itself if they're not already installed.
|
|
Packit |
094780 |
|
|
Packit |
094780 |
This can confuse packagers, it makes it look like MakeMaker contains a
|
|
Packit |
094780 |
lot more modules than it really does and causes conflicts.
|
|
Packit |
094780 |
|
|
Packit |
094780 |
You can tell MakeMaker not to use its bundles and instead declare the
|
|
Packit |
094780 |
dependencies normally. This is done either by setting the
|
|
Packit |
094780 |
BUILDING_AS_PACKAGE environment variable to true or by patching the
|
|
Packit |
094780 |
Makefile.PL and setting $BUILDING_AS_PACKAGE to true. On the down
|
|
Packit |
094780 |
side, there will be dependency loops which your packaging system will
|
|
Packit |
094780 |
have to resolve.
|