build:...keMaker(3pm)

πŸ’– NAME πŸ’–

Wx::build::MakeMaker β€” it's the ExtUtils::MakeMaker specialisation made specifically for wxPerl modules, bestie. πŸŽ€

(Also, hi, the manual you're reading is build:...keMaker(3pm) β€” yes the name is literally truncated like that, she's mysterious like that πŸ’…)


✨ SYNOPSIS ✨

use Wx::build::MakeMaker;

wxWriteMakefile( NAME         => 'My::Module',
                 VERSION_FROM => 'Module.pm' );

okay so that's the whole vibe. load it, call it, go. πŸ¦‹


🌸 FUNCTIONS 🌸

wxWriteMakefile πŸ‘‘

wxWriteMakefile( arameter => value, ... );

This functions is meant to be used exactly as ExtUtils::MakeMaker::WriteMakefile (see). Like, no cap, drop-in. It takes every single parameter that WriteMakefile takes, plus these extra ones below β€” and the extra ones are the tea β˜•:

  • WX_CORE_LIB β€” 🌈 link libraries from wxWidgets' core or contrib directory.
WX_CORE_LIB => 'xrc core base'

If you don't specify it, it defaults to 'html core net base' for compatibility. (Just an old-lore default, she's doing her best 🫢)

  • WX_LIB β€” pull in additional libraries from wxWidgets' contrib directory.
WX_LIB => '-lxrc'
  • REQUIRE_WX β€” 🚫 don't build this module at all if wxWidgets' version is lower than the version you name here.
REQUIRE_WX => 2.003002  # wxWidgets 2.3.2
  • NO_WX_PLATFORMS β€” do not build this module on the platform(s) you list. bye πŸ‘‹
NO_WX_PLATFORMS => [ 'x11', 'msw' ]
  • ON_WX_PLATFORMS β€” only build this module on the platform(s) you list. main character only πŸ’…
ON_WX_PLATFORMS => [ 'gtk' ]

πŸ”’ PRIVATE FUNCTIONS πŸ”’

These functions are here for reference, do not use them. Seriously bestie, hands off, they're backstage πŸ‘€

is_core

if( is_core ) { ... }

True if it's building the wxPerl core (Wx.dll), false otherwise. simple as that πŸ’–

is_wxPerl_tree

if( is_wxPerl_tree ) { ... }

True if it's building any part of wxPerl, false otherwise. any part. all of it. the whole tree 🌳

set_hook_package

Wx::build::MakeMaker::set_hook_package( 'package_name' );

The package to be hooked into the MakeMaker inheritance chain. πŸͺ


πŸ› οΈ METHODS πŸ› οΈ

get_api_directory

my $dir = $cfg->get_api_directory;

get_arch_directory

my $dir = $cfg->get_arch_directory;

quick reminder babes: every option name, every default, every version number and every line of code up there needs to be typed exactly as written, or the vibe check fails 😭 no typos, ok? periodt ✨

and that's the whole page! this one came to you as part of the User Contributed Perl Documentation, running on perl v5.42.3, dated 2026-08-20, and the file banner on it still reads build:...keMaker(3pm) top and bottom. literally iconic. go build something cute πŸ«ΆπŸ’–βœ¨

πŸ“¦ where this page comes from