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. --JoshTriplettPatch 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