Skip to content
Browse files

parameterize FIND and SED

  • Loading branch information...
1 parent e22b18a commit 16dd9c4fc64b54887645612ce9e9503861ea2f5f @joeyh committed
Showing with 26 additions and 18 deletions.
  1. +22 −18 Makefile.PL
  2. +4 −0 README
View
40 Makefile.PL
@@ -13,6 +13,18 @@ pure_install:: extra_install
VER=$(shell perl -e '$$_=<>;print m/\((.*?)\)/'<debian/changelog)
+# Parameterized programs used by Makefile.
+FIND?=find
+SED?=sed
+
+# Additional configurable path variables.
+W3M_CGI_BIN?=$(PREFIX)/lib/w3m/cgi-bin
+
+tflag=$(shell if [ -n "$$NOTAINT" ] && [ "$$NOTAINT" != 1 ]; then printf -- "-T"; fi)
+extramodules=$(shell if [ "$$PROFILE" = 1 ]; then printf -- "-d:NYTProf"; fi)
+outprogs=ikiwiki.out ikiwiki-transition.out ikiwiki-calendar.out
+scripts=ikiwiki-update-wikilist ikiwiki-makerepo
+
PROBABLE_INST_LIB=$(shell \\
if [ "$(INSTALLDIRS)" = "perl" ]; then \\
echo $(INSTALLPRIVLIB); \\
@@ -23,14 +35,6 @@ PROBABLE_INST_LIB=$(shell \\
fi \\
)
-# Additional configurable path variables.
-W3M_CGI_BIN?=$(PREFIX)/lib/w3m/cgi-bin
-
-tflag=$(shell if [ -n "$$NOTAINT" ] && [ "$$NOTAINT" != 1 ]; then printf -- "-T"; fi)
-extramodules=$(shell if [ "$$PROFILE" = 1 ]; then printf -- "-d:NYTProf"; fi)
-outprogs=ikiwiki.out ikiwiki-transition.out ikiwiki-calendar.out
-scripts=ikiwiki-update-wikilist ikiwiki-makerepo
-
%.out: %.in
./pm_filter $(PREFIX) $(VER) $(PROBABLE_INST_LIB) < $< > $@
chmod +x $@
@@ -46,7 +50,7 @@ extra_build: $(outprogs) ikiwiki.setup docwiki
./mdwn2man ikiwiki-update-wikilist 1 doc/ikiwiki-update-wikilist.mdwn > ikiwiki-update-wikilist.man
./mdwn2man ikiwiki-calendar 1 doc/ikiwiki-calendar.mdwn > ikiwiki-calendar.man
$(MAKE) -C po
- sed -i.bkp "s/Version:.*/Version: $$(perl -e '$$_=<>;print m/\((.*?)\)/'<debian/changelog)/" ikiwiki.spec
+ $(SED) -i.bkp "s/Version:.*/Version: $$(perl -e '$$_=<>;print m/\((.*?)\)/'<debian/changelog)/" ikiwiki.spec
rm -f ikiwiki.spec.bkp
docwiki:
@@ -63,9 +67,9 @@ myclean: clean
underlay_install:
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki
- for dir in `cd underlays && find . -follow -type d ! -regex '.*\.svn.*'`; do \
+ for dir in `cd underlays && $(FIND) . -follow -type d ! -regex '.*\.svn.*'`; do \
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
- for file in `find underlays/$$dir -follow -maxdepth 1 -type f`; do \
+ for file in `$(FIND) underlays/$$dir -follow -maxdepth 1 -type f`; do \
cp -aL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir 2>/dev/null || \
install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
done; \
@@ -95,26 +99,26 @@ underlay_install:
extra_install: underlay_install
# Install example sites.
- for dir in `cd doc/examples; find . -type d ! -regex '.*\.svn.*'`; do \
+ for dir in `cd doc/examples; $(FIND) . -type d ! -regex '.*\.svn.*'`; do \
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/examples/$$dir; \
done
- for file in `cd doc/examples; find . -type f ! -regex '.*\.svn.*'`; do \
+ for file in `cd doc/examples; $(FIND) . -type f ! -regex '.*\.svn.*'`; do \
cp -aL doc/examples/$$file $(DESTDIR)$(PREFIX)/share/ikiwiki/examples/$$file 2>/dev/null || \
install -m 644 doc/examples/$$file $(DESTDIR)$(PREFIX)/share/ikiwiki/examples/$$file; \
done
- for dir in `find templates -follow -type d ! -regex '.*\.svn.*'`; do \
+ for dir in `$(FIND) templates -follow -type d ! -regex '.*\.svn.*'`; do \
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
- for file in `find $$dir -follow -maxdepth 1 -type f`; do \
+ for file in `$(FIND) $$dir -follow -maxdepth 1 -type f`; do \
install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$dir; \
done; \
done
install -d $(DESTDIR)$(PREFIX)/lib/ikiwiki/plugins
- for file in `find plugins -maxdepth 1 -type f ! -path plugins/.\* ! -name \*demo\* -name \*.py`; do \
+ for file in `$(FIND) plugins -maxdepth 1 -type f ! -path plugins/.\* ! -name \*demo\* -name \*.py`; do \
install -m 644 $$file $(DESTDIR)$(PREFIX)/lib/ikiwiki/plugins; \
done
- for file in `find plugins -maxdepth 1 -type f ! -path plugins/.\* ! -name \*demo\* ! -name \*.py ! -name \*.pyc`; do \
+ for file in `$(FIND) plugins -maxdepth 1 -type f ! -path plugins/.\* ! -name \*demo\* ! -name \*.py ! -name \*.pyc`; do \
install -m 755 $$file $(DESTDIR)$(PREFIX)/lib/ikiwiki/plugins; \
done
@@ -136,7 +140,7 @@ extra_install: underlay_install
install -d $(DESTDIR)$(PREFIX)/bin
for prog in $(outprogs) $(scripts); do \
- install $$prog $(DESTDIR)$(PREFIX)/bin/$$(echo $$prog | sed 's/\.out//'); \
+ install $$prog $(DESTDIR)$(PREFIX)/bin/$$(echo $$prog | $(SED) 's/\.out//'); \
done
$(MAKE) -C po install DESTDIR=$(DESTDIR) PREFIX=$(PREFIX)
View
4 README
@@ -14,6 +14,10 @@ A few special variables you can set while using the Makefile.PL:
unless your perl is less buggy than mine -- see
http://bugs.debian.org/411786)
+ MAKE, FIND, and SED can be used to specify where you have the GNU
+ versions of those tools installed, if the normal make, find, and sed
+ are not GNU.
+
There are also other variables supported by MakeMaker, including PREFIX,
INSTALL_BASE, and DESTDIR. See ExtUtils::MakeMaker(3).

0 comments on commit 16dd9c4

Please sign in to comment.
Something went wrong with that request. Please try again.