* Rename ikiwiki.pl so MakeMaker doesn't see it, and install it.
[ikiwiki] / Makefile.PL
1 #!/usr/bin/perl
2 use warnings;
3 use strict;
4 use ExtUtils::MakeMaker;
5
6 # Add a few more targets.
7 sub MY::postamble {
8 q{
9 all:: extra_build
10 clean:: extra_clean
11 install:: extra_install
12 pure_install:: extra_install
13
14 VER=$(shell perl -e '$$_=<>;print m/\((.*?)\)/'<debian/changelog)
15
16 PROBABLE_INST_LIB=$(shell \\
17         if [ "$(INSTALLDIRS)" = "perl" ]; then \\
18                 echo $(INSTALLPRIVLIB); \\
19         elif [ "$(INSTALLDIRS)" = "site" ]; then \\
20                 echo $(INSTALLSITELIB); \\
21         elif [ "$(INSTALLDIRS)" = "vendor" ]; then \\
22                 echo $(INSTALLVENDORLIB); \\
23         fi \\
24 )
25
26 extra_build:
27         ./ikiwiki.in doc html --templatedir=templates --underlaydir=basewiki \
28                 --wikiname="ikiwiki" --verbose --no-rcs \
29                 --exclude=/discussion --no-discussion \
30                 --plugin=brokenlinks --plugin=pagecount \
31                 --plugin=orphans --plugin=haiku --plugin=meta \
32                 --plugin=tag --plugin=polygen --plugin=pagestats \
33                 --plugin=fortune --plugin=aggregate --plugin=map \
34                 --plugin=template --plugin=toc --plugin=shortcut
35         ./mdwn2man ikiwiki 1 doc/usage.mdwn > ikiwiki.man
36         ./mdwn2man ikiwiki-mass-rebuild 8 doc/ikiwiki-mass-rebuild.mdwn > ikiwiki-mass-rebuild.man
37         ./pm_filter $(PREFIX) $(VER) $(PROBABLE_INST_LIB) < ikiwiki.in > ikiwiki.out
38                 
39 extra_clean:
40         rm -rf html doc/.ikiwiki
41         rm -f ikiwiki.man ikiwiki-mass-rebuild.man ikiwiki.out
42
43 extra_install:
44         install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/templates
45         $(CP) -a templates/* $(DESTDIR)$(PREFIX)/share/ikiwiki/templates
46
47         install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/basewiki
48         $(CP) -a basewiki/* $(DESTDIR)$(PREFIX)/share/ikiwiki/basewiki
49
50         install -d $(DESTDIR)$(PREFIX)/share/man/man1
51         install ikiwiki.man $(DESTDIR)$(PREFIX)/share/man/man1/ikiwiki.1
52         
53         install -d $(DESTDIR)$(PREFIX)/share/man/man8
54         install ikiwiki-mass-rebuild.man $(DESTDIR)$(PREFIX)/share/man/man8/ikiwiki-mass-rebuild.8
55         
56         install -d $(DESTDIR)$(PREFIX)/sbin
57         install ikiwiki-mass-rebuild $(DESTDIR)$(PREFIX)/sbin
58
59         install -d $(DESTDIR)$(PREFIX)/lib/w3m/cgi-bin
60         install ikiwiki-w3m.cgi $(DESTDIR)$(PREFIX)/lib/w3m/cgi-bin
61
62         install -d $(DESTDIR)$(PREFIX)/bin
63         install ikiwiki.out $(DESTDIR)$(PREFIX)/bin/ikiwiki
64 }
65 }
66
67 WriteMakefile(
68         NAME            => 'IkiWiki',
69         PREFIX          => "/usr/local",
70         PM_FILTER       => './pm_filter $(PREFIX) $(VER) $(PROBABLE_INST_LIB)',
71         MAN1PODS        => {},
72 );