5418385336
The test suite was emitting a lot of ugly gettext warnings; setting LC_ALL didn't solve the problem for all locale setups (since ikiwiki remaps it to LANG, and ikiwiki didn't know about the C locale). People also seem generally annoyed by the messages when Locale::Gettext is not installed, and I suspect will be generally happier if it just silently doesn't localize. The optimisation came about when I noticed that the gettext sub was doing rather a lot of work each call just to see if localisation is needed. We can avoid that work by caching, and the best thing to cache is a version of the gettext sub that does exactly the right thing. This was slightly complicated by the locale setting, which might need to override the original locale (or lack thereof) after gettext has been called. So it needs to invalidate the cache in that case. It used to do it via a global variable, which I am happy to have also gotten rid of. |
||
---|---|---|
Bundle | ||
IkiWiki | ||
cpan | ||
debian | ||
doc | ||
plugins | ||
po | ||
t | ||
templates | ||
underlays | ||
.gitignore | ||
.perlcriticrc | ||
CHANGELOG | ||
IkiWiki.pm | ||
Makefile.PL | ||
NEWS | ||
README | ||
auto-blog.setup | ||
auto.setup | ||
docwiki.setup | ||
gitremotes | ||
ikiwiki-makerepo | ||
ikiwiki-mass-rebuild | ||
ikiwiki-transition | ||
ikiwiki-update-wikilist | ||
ikiwiki-w3m.cgi | ||
ikiwiki.in | ||
mdwn2man | ||
pm_filter | ||
wikilist |
README
Use ./Makefile.PL to generate a Makefile, "make" will build the documentation wiki and a man page, and "make install" will install ikiwiki. All other documentation is in the ikiwiki documentation wiki, which is also available online at <http://ikiwiki.info/> A few special variables you can set while using the Makefile: PROFILE=1 turns on profiling for the build of the doc wiki. (Uses Devel::Profile) NOTAINT=0 turns on the taint flag in the ikiwiki program. (Not recommended unless your perl is less buggy than mine -- see http://bugs.debian.org/411786) There are also other variables supported by MakeMaker, including PREFIX, INSTALL_BASE, and DESTDIR. See ExtUtils::MakeMaker(3). In particular, INSTALL_BASE is very useful if you want to install ikiwiki to some other location, as it configures it to see the perl libraries there. See `doc/tips/nearlyfreespeech.mdwn` for an example of using this to install ikiwiki and its dependencies in a home directory.