http://qs1969.pair.com?node_id=11114675


in reply to Re^2: $VERSION in module files
in thread $VERSION in module files

In Win32::Mechanize::NotepadPlusPlus, I added a rule in my Makefile.PL postamble, so that make populateversion will take the VERSION that the Makefile sees (which it grabs from the "primary" module in the dist, thanks to $mm_args{VERSION_FROM} ), and uses perl to do an in-place edit of the our $VERSION =... from the related modules.

# auto-populate the VERSION in the submodules from $(VERSION), which c +omes from main module populateversion :: lib/Win32/Mechanize/NotepadPlusPlus.pm $(NOECHO) $(ECHO) want to auto-populate VERSION in all sub-modules +: $(VERSION) $(PERL) -pi -e "s/^(\s*our\s+.VERSION\s*=).*?;.*?$$/\1 '$(VERSION) +'; # auto-populated from W::M::NPP/" lib/Win32/Mechanize/NotepadPlusP +lus/Notepad.pm lib/Win32/Mechanize/NotepadPlusPlus/Editor.pm

So I just have to change the version in one master location, and then make populateversion (or, since I have other rules that depend on that rule, run one of those other rules for doing other documentation updates) to get the version in sync across the modules.