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.
This commit is contained in:
Lasse Collin 2014-04-25 17:53:42 +03:00
parent 56056571df
commit 1555a9c566
1 changed files with 9 additions and 1 deletions

View File

@ -59,7 +59,14 @@ endif
if COND_LZMADEC if COND_LZMADEC
bin_PROGRAMS += 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: install-data-hook:
cd $(DESTDIR)$(mandir)/man1 && \ cd $(DESTDIR)$(mandir)/man1 && \
target=`echo xzdec | sed '$(transform)'` && \ target=`echo xzdec | sed '$(transform)'` && \
@ -72,3 +79,4 @@ uninstall-hook:
link=`echo lzmadec | sed '$(transform)'` && \ link=`echo lzmadec | sed '$(transform)'` && \
rm -f $$link.1 rm -f $$link.1
endif endif
endif