diff options
author | Jonny Lamb <jonnylamb@gnome.org> | 2010-12-02 14:17:19 +0000 |
---|---|---|
committer | Jonny Lamb <jonnylamb@gnome.org> | 2010-12-02 14:27:11 +0000 |
commit | bf598a9a60da363a7d18fcd1e2fbf951f50c041c (patch) | |
tree | c81035a99ba0a1ad8bcb33c678ecce993f931348 | |
parent | d694cee6b174911a303270d3cce4365b1aa759e5 (diff) |
icons: only install new icons if they've changedicons
Signed-off-by: Jonny Lamb <jonnylamb@gnome.org>
-rw-r--r-- | data/icons/Makefile.am | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/data/icons/Makefile.am b/data/icons/Makefile.am index f02abeb07..0d0ef6ca6 100644 --- a/data/icons/Makefile.am +++ b/data/icons/Makefile.am @@ -255,22 +255,18 @@ uninstall-local: uninstall-icons update-icon-cache # from source (see bgo #616159) local_icons_dir = $(top_builddir)/data/icons/local-copy -install-icons-src: $(public_icons) $(private_icons) - for icon in $(public_icons); do \ - THEME=`echo $$icon | cut -d_ -f1`; \ - CONTEXT=`echo $$icon | cut -d_ -f2`; \ - SIZE=`echo $$icon | cut -d_ -f3`; \ - ICONFILE=`echo $$icon | cut -d_ -f4`; \ - mkdir -p $(local_icons_dir)/icons/$$THEME/$$SIZE/$$CONTEXT; \ - $(INSTALL_DATA) $(srcdir)/$$icon $(local_icons_dir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \ - done; \ - for icon in $(private_icons); do \ +install-icons-src: + @for icon in $(public_icons) $(private_icons); do \ THEME=`echo $$icon | cut -d_ -f1`; \ CONTEXT=`echo $$icon | cut -d_ -f2`; \ SIZE=`echo $$icon | cut -d_ -f3`; \ ICONFILE=`echo $$icon | cut -d_ -f4`; \ - mkdir -p $(local_icons_dir)/icons/$$THEME/$$SIZE/$$CONTEXT; \ - $(INSTALL_DATA) $(srcdir)/$$icon $(local_icons_dir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \ + PRETTY_FILENAME=$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \ + FILENAME=$(local_icons_dir)/icons/$$PRETTY_FILENAME; \ + if ! cmp -s $$icon $(local_icons_dir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; then \ + mkdir -p $(local_icons_dir)/icons/$$THEME/$$SIZE/$$CONTEXT; \ + $(INSTALL_DATA) $(srcdir)/$$icon $$FILENAME; \ + fi; \ done all: install-icons-src |