summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2012-04-11 18:37:14 +0100
committerRichard W.M. Jones <rjones@redhat.com>2012-04-11 18:46:41 +0100
commit3e164f15b77230b0961048893d03ec588fc8ab0e (patch)
tree191f6bbe9fa0df1ebc25694e3ea2e66f195aa3e9
parentc1fb89e7fcaa806e913bf15ba2b4602583bd2f23 (diff)
downloadlibguestfs-3e164f15b77230b0961048893d03ec588fc8ab0e.tar.gz
libguestfs-3e164f15b77230b0961048893d03ec588fc8ab0e.tar.xz
libguestfs-3e164f15b77230b0961048893d03ec588fc8ab0e.zip
po-docs: Allow parallel builds in po-docs directory.
The first time the directory is checked out from git, there are no *.pod files. In a parallel build, the first thread notices this and runs the 'make -C .. update-po' rule, but the other threads also try to run at the same time and fail.
-rw-r--r--.gitignore1
-rw-r--r--po-docs/ja/Makefile.am11
-rw-r--r--po-docs/uk/Makefile.am11
3 files changed, 17 insertions, 6 deletions
diff --git a/.gitignore b/.gitignore
index a31c6ceb..4a5c47dc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -295,6 +295,7 @@ pod2htm?.tmp
/po-docs/*/*.pl
/po-docs/po4a.conf
/po-docs/*/*.pod
+/po-docs/*/stamp-update-po
/podwrapper.sh
/po/en@boldquot.header
/po/en@quot.header
diff --git a/po-docs/ja/Makefile.am b/po-docs/ja/Makefile.am
index 3f5b89e0..5a1c7e43 100644
--- a/po-docs/ja/Makefile.am
+++ b/po-docs/ja/Makefile.am
@@ -21,7 +21,7 @@
LINGUA = $(shell basename -- `pwd`)
-CLEANFILES = *.1 *.3
+CLEANFILES = *.1 *.3 stamp-update-po
MANPAGES = \
guestfs.3 \
@@ -45,12 +45,14 @@ MANPAGES = \
virt-sparsify.1 \
virt-sysprep.1
+podfiles := $(shell for f in `cat ../podfiles`; do basename $$f; done)
+
# Ship the POD files and the translated manpages in the tarball. This
# just simplifies building from the tarball, at a small cost in extra
# size.
EXTRA_DIST = \
$(MANPAGES) \
- $(shell for f in `cat ../podfiles`; do basename $$f; done)
+ $(podfiles)
all-local: $(MANPAGES)
@@ -86,8 +88,11 @@ virt-sysprep.1: virt-sysprep.pod sysprep-extra-options.pod sysprep-operations.po
# Ensure that the first time we build from git, since guestfs.pod
# hasn't been built yet, build it.
-guestfs.pod:
+$(podfiles): stamp-update-po
+
+stamp-update-po:
if [ ! -f guestfs.pod ]; then make -C .. update-po; fi
+ touch $@
# XXX Can automake do this properly?
install-data-hook:
diff --git a/po-docs/uk/Makefile.am b/po-docs/uk/Makefile.am
index 3f5b89e0..5a1c7e43 100644
--- a/po-docs/uk/Makefile.am
+++ b/po-docs/uk/Makefile.am
@@ -21,7 +21,7 @@
LINGUA = $(shell basename -- `pwd`)
-CLEANFILES = *.1 *.3
+CLEANFILES = *.1 *.3 stamp-update-po
MANPAGES = \
guestfs.3 \
@@ -45,12 +45,14 @@ MANPAGES = \
virt-sparsify.1 \
virt-sysprep.1
+podfiles := $(shell for f in `cat ../podfiles`; do basename $$f; done)
+
# Ship the POD files and the translated manpages in the tarball. This
# just simplifies building from the tarball, at a small cost in extra
# size.
EXTRA_DIST = \
$(MANPAGES) \
- $(shell for f in `cat ../podfiles`; do basename $$f; done)
+ $(podfiles)
all-local: $(MANPAGES)
@@ -86,8 +88,11 @@ virt-sysprep.1: virt-sysprep.pod sysprep-extra-options.pod sysprep-operations.po
# Ensure that the first time we build from git, since guestfs.pod
# hasn't been built yet, build it.
-guestfs.pod:
+$(podfiles): stamp-update-po
+
+stamp-update-po:
if [ ! -f guestfs.pod ]; then make -C .. update-po; fi
+ touch $@
# XXX Can automake do this properly?
install-data-hook: