Currently ikiwiki uses cp(1) with GNU extensions in Makefile.PL for installing files, thus causing problems on FreeBSD which doesn't have a cp(1) with GNU extensions in the base system.

Here is a patch against ikiwiki-1.51 for using find(1) and install(1) instead of cp(1).

--- Makefile.PL.orig    Sun Apr 29 12:57:51 2007
+++ Makefile.PL Sun Apr 29 13:08:38 2007
@@ -47,8 +47,12 @@ extra_clean:

 extra_install:
    install -d $(DESTDIR)$(PREFIX)/share/ikiwiki
-   find basewiki templates \( -type f -or -type l \) ! -regex '.*\.svn.*' \
-       -exec cp --parents -aL {} $(DESTDIR)$(PREFIX)/share/ikiwiki \;
+   for dir in `find -L basewiki templates -type d ! -regex '.*\.svn.*'`; do \
+       install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
+       for file in `find -L $$dir -maxdepth 1 -type f`; do \
+           install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
+       done; \
+   done

    install -d $(DESTDIR)$(PREFIX)/share/man/man1
    install -m 644 ikiwiki.man $(DESTDIR)$(PREFIX)/share/man/man1/ikiwiki.1

Couldn't it just use install -D ? --Joey

No, apparently FreeBSD install does not support -D. See the FreeBSD install manpage. --JoshTriplett

Patch applied; done. --JoshTriplett

There are still/again "cp -a"s in the Makefile as of 3.00

It's a cp -a || install. Is that causing you a problem somehow? --Joey