Fix install_desktop_files non-portability and add out-of-tree support.

Prepend $(srcdir)/ to the sources in install commands, and get rid of
the -T flag, as it's GNU coreutils install-specific; some versions of
install don't support -T at all, and FreeBSD's install has a -T flag
that takes an argument and has a completely different meaning.

Fixes bug 10292; fix came from

    http://marc.info/?l=openbsd-ports&m=140571104528980&w=2

Change-Id: I8e80d475a728a17848736be043f97d2b90a0be82
Reviewed-on: https://code.wireshark.org/review/3107
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This commit is contained in:
Fabian Raetz 2014-07-18 13:50:05 -07:00 committed by Guy Harris
parent e28a8ff5af
commit 4b720691c4
1 changed files with 10 additions and 5 deletions

View File

@ -1119,19 +1119,24 @@ patch-bzip2: distdir
# Yes, that violate's autofoo's principle of relocatability.
# What we (probably) should do is check `pkg-config --variable=prefix gtk+-2.0` to know where
# to install this stuff...
#
# Do not use the -T flag to the install command, as it's not portable.
# Some versions of install don't support a -T flag at all, and the
# FreeBSD install command has a -T flag that takes an argument and
# that has completely different semantics.
install_desktop_files:
mkdir -p $(DESTDIR)/usr/share/{mime/packages,applications}
install -m 644 -T wireshark-mime-package.xml $(DESTDIR)/usr/share/mime/packages/wireshark.xml
install -m 644 $(srcdir)/wireshark-mime-package.xml $(DESTDIR)/usr/share/mime/packages/wireshark.xml
if test x$(DESKTOP_FILE_INSTALL) != x ; then \
$(DESKTOP_FILE_INSTALL) --dir $(DESTDIR)/usr/share/applications wireshark.desktop; \
$(DESKTOP_FILE_INSTALL) --dir $(DESTDIR)/usr/share/applications $(srcdir)/wireshark.desktop; \
else \
install -m 644 -T wireshark.desktop $(DESTDIR)/usr/share/applications/wireshark.desktop; \
install -m 644 $(srcdir)/wireshark.desktop $(DESTDIR)/usr/share/applications/wireshark.desktop; \
fi
for size in 16 24 32 48 64 128 256; \
do \
mkdir -p $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/{apps,mimetypes} ; \
install -m 644 image/wsicon$${size}.png $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/apps/wireshark.png ; \
install -m 644 -T image/WiresharkDoc-$${size}.png $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/mimetypes/application-wireshark-doc.png ; \
install -m 644 $(srcdir)/image/wsicon$${size}.png $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/apps/wireshark.png ; \
install -m 644 $(srcdir)/image/WiresharkDoc-$${size}.png $(DESTDIR)/usr/share/icons/hicolor/$${size}x$${size}/mimetypes/application-wireshark-doc.png ; \
done
mkdir -p $(DESTDIR)/usr/share/icons/hicolor/scalable/apps
install -m 644 image/wsicon.svg $(DESTDIR)/usr/share/icons/hicolor/scalable/apps/wireshark.svg