summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2014-04-25 17:53:42 +0300
committerLasse Collin <lasse.collin@tukaani.org>2014-04-26 08:47:36 +0300
commit98d3368ef4bff0face78d6932f2156730c8cb658 (patch)
tree297bd2c8749ba415fabf5c71eafdfb62789f6f5c
parentba3b5dd082db2cb5973e877a74221d739c663fb4 (diff)
downloadxz-98d3368ef4bff0face78d6932f2156730c8cb658.tar.gz
Build: Fix the combination of --disable-xzdec --enable-lzmadec.
In this case "make install" could fail if the man page directory didn't already exist at the destination. If it did exist, a dangling symlink was created there. Now the link is omitted instead. This isn't the best fix but it's better than the old behavior.
-rw-r--r--src/xzdec/Makefile.am10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/xzdec/Makefile.am b/src/xzdec/Makefile.am
index 2348e4e..70746c0 100644
--- a/src/xzdec/Makefile.am
+++ b/src/xzdec/Makefile.am
@@ -59,7 +59,14 @@ endif
if COND_LZMADEC
bin_PROGRAMS += lzmadec
-# FIXME: If xzdec is disabled, this will create a dangling symlink.
+# Create the symlink lzmadec.1->xzdec.1 only if xzdec.1 was installed.
+# This is better than creating a dangling symlink, especially
+# because creating the link may fail due to the directory being missing.
+#
+# FIXME: The correct solution would be to install xzdec.1 as lzmadec.1
+# but I don't know what is the sane way to do it and since this is a bit
+# unusual situation anyway, it's not that important.
+if COND_XZDEC
install-data-hook:
cd $(DESTDIR)$(mandir)/man1 && \
target=`echo xzdec | sed '$(transform)'` && \
@@ -72,3 +79,4 @@ uninstall-hook:
link=`echo lzmadec | sed '$(transform)'` && \
rm -f $$link.1
endif
+endif