NULL = private_icons_themes = \ hicolor \ $(NULL) private_icons = \ hicolor_apps_16x16_im-aim.png \ hicolor_apps_16x16_im-ekiga.png \ hicolor_apps_16x16_im-facebook.png \ hicolor_apps_16x16_im-gizmo.png \ hicolor_apps_16x16_im-google-talk.png \ hicolor_apps_16x16_im-icq.png \ hicolor_apps_16x16_im-irc.png \ hicolor_apps_16x16_im-jabber.png \ hicolor_apps_16x16_im-msn.png \ hicolor_apps_16x16_im-silc.png \ hicolor_apps_16x16_im-sip.png \ hicolor_apps_16x16_im-local-xmpp.png \ hicolor_apps_16x16_im-gadugadu.png \ hicolor_apps_16x16_im-groupwise.png \ hicolor_apps_16x16_im-qq.png \ hicolor_apps_16x16_im-meanwhile.png \ hicolor_apps_16x16_im-mxit.png \ hicolor_apps_16x16_im-myspace.png \ hicolor_apps_16x16_im-sametime.png \ hicolor_apps_16x16_im-skype.png \ hicolor_apps_16x16_im-yahoo.png \ hicolor_apps_16x16_im-zephyr.png \ hicolor_apps_22x22_im-aim.png \ hicolor_apps_22x22_im-ekiga.png \ hicolor_apps_22x22_im-facebook.png \ hicolor_apps_22x22_im-gizmo.png \ hicolor_apps_22x22_im-google-talk.png \ hicolor_apps_22x22_im-icq.png \ hicolor_apps_22x22_im-irc.png \ hicolor_apps_22x22_im-jabber.png \ hicolor_apps_22x22_im-msn.png \ hicolor_apps_22x22_im-silc.png \ hicolor_apps_22x22_im-sip.png \ hicolor_apps_22x22_im-local-xmpp.png \ hicolor_apps_22x22_im-gadugadu.png \ hicolor_apps_22x22_im-groupwise.png \ hicolor_apps_22x22_im-qq.png \ hicolor_apps_22x22_im-meanwhile.png \ hicolor_apps_22x22_im-mxit.png \ hicolor_apps_22x22_im-myspace.png \ hicolor_apps_22x22_im-sametime.png \ hicolor_apps_22x22_im-skype.png \ hicolor_apps_22x22_im-yahoo.png \ hicolor_apps_22x22_im-zephyr.png \ hicolor_apps_24x24_im-aim.png \ hicolor_apps_24x24_im-ekiga.png \ hicolor_apps_24x24_im-gizmo.png \ hicolor_apps_24x24_im-google-talk.png \ hicolor_apps_24x24_im-icq.png \ hicolor_apps_24x24_im-irc.png \ hicolor_apps_24x24_im-jabber.png \ hicolor_apps_24x24_im-msn.png \ hicolor_apps_24x24_im-silc.png \ hicolor_apps_24x24_im-sip.png \ hicolor_apps_24x24_im-local-xmpp.png \ hicolor_apps_24x24_im-gadugadu.png \ hicolor_apps_24x24_im-groupwise.png \ hicolor_apps_24x24_im-qq.png \ hicolor_apps_24x24_im-meanwhile.png \ hicolor_apps_24x24_im-mxit.png \ hicolor_apps_24x24_im-myspace.png \ hicolor_apps_24x24_im-sametime.png \ hicolor_apps_24x24_im-yahoo.png \ hicolor_apps_24x24_im-zephyr.png \ hicolor_apps_32x32_im-aim.png \ hicolor_apps_32x32_im-ekiga.png \ hicolor_apps_32x32_im-gizmo.png \ hicolor_apps_32x32_im-google-talk.png \ hicolor_apps_32x32_im-icq.png \ hicolor_apps_32x32_im-irc.png \ hicolor_apps_32x32_im-jabber.png \ hicolor_apps_32x32_im-msn.png \ hicolor_apps_32x32_im-silc.png \ hicolor_apps_32x32_im-sip.png \ hicolor_apps_32x32_im-local-xmpp.png \ hicolor_apps_32x32_im-gadugadu.png \ hicolor_apps_32x32_im-groupwise.png \ hicolor_apps_32x32_im-qq.png \ hicolor_apps_32x32_im-meanwhile.png \ hicolor_apps_32x32_im-mxit.png \ hicolor_apps_32x32_im-myspace.png \ hicolor_apps_32x32_im-sametime.png \ hicolor_apps_32x32_im-yahoo.png \ hicolor_apps_32x32_im-zephyr.png \ hicolor_apps_48x48_im-aim.png \ hicolor_apps_48x48_im-ekiga.png \ hicolor_apps_48x48_im-facebook.png \ hicolor_apps_48x48_im-gizmo.png \ hicolor_apps_48x48_im-google-talk.png \ hicolor_apps_48x48_im-icq.png \ hicolor_apps_48x48_im-irc.png \ hicolor_apps_48x48_im-jabber.png \ hicolor_apps_48x48_im-msn.png \ hicolor_apps_48x48_im-silc.png \ hicolor_apps_48x48_im-sip.png \ hicolor_apps_48x48_im-local-xmpp.png \ hicolor_apps_48x48_im-gadugadu.png \ hicolor_apps_48x48_im-groupwise.png \ hicolor_apps_48x48_im-qq.png \ hicolor_apps_48x48_im-meanwhile.png \ hicolor_apps_48x48_im-mxit.png \ hicolor_apps_48x48_im-myspace.png \ hicolor_apps_48x48_im-sametime.png \ hicolor_apps_48x48_im-skype.png \ hicolor_apps_48x48_im-yahoo.png \ hicolor_apps_48x48_im-zephyr.png \ hicolor_apps_scalable_im-aim.svg \ hicolor_apps_scalable_im-ekiga.svg \ hicolor_apps_scalable_im-gizmo.svg \ hicolor_apps_scalable_im-google-talk.svg \ hicolor_apps_scalable_im-icq.svg \ hicolor_apps_scalable_im-irc.svg \ hicolor_apps_scalable_im-jabber.svg \ hicolor_apps_scalable_im-msn.svg \ hicolor_apps_scalable_im-silc.svg \ hicolor_apps_scalable_im-sip.svg \ hicolor_apps_scalable_im-local-xmpp.svg \ hicolor_apps_scalable_im-gadugadu.svg \ hicolor_apps_scalable_im-groupwise.svg \ hicolor_apps_scalable_im-qq.svg \ hicolor_apps_scalable_im-meanwhile.svg \ hicolor_apps_scalable_im-mxit.svg \ hicolor_apps_scalable_im-myspace.svg \ hicolor_apps_scalable_im-sametime.svg \ hicolor_apps_scalable_im-yahoo.svg \ hicolor_apps_scalable_im-zephyr.svg \ $(NULL) EXTRA_DIST = \ $(private_icons) \ local-xmpp.svg \ $(NULL) include $(srcdir)/utils.mk ############################################################################### gtk_update_icon_cache = gtk-update-icon-cache -f -t update-icon-cache: @-if test -z "$(DESTDIR)"; then \ echo "Updating Gtk icon cache."; \ for theme in $(private_icons_themes); do \ $(gtk_update_icon_cache) $(icondir)/$$theme; \ done; \ else \ echo "*** Icon cache not updated. After (un)install, run this:"; \ for theme in $(private_icons_themes); do \ echo "*** $(gtk_update_icon_cache) $(icondir)/$$theme"; \ done; \ fi install-icons: for icon in $(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 $(DESTDIR)$(icondir)/$$THEME/$$SIZE/$$CONTEXT; \ $(INSTALL_DATA) $(srcdir)/$$icon $(DESTDIR)$(icondir)/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \ done uninstall-icons: for icon in $(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`; \ rm -f $(DESTDIR)$(icondir)/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \ done install-data-local: $(MAKE) install-icons $(MAKE) update-icon-cache uninstall-local: $(MAKE) uninstall-icons $(MAKE) update-icon-cache # Local copy of the "installed" icon. This is used to be able to run tp-account-widgets # from source (see bgo #616159) local_icons_dir = local-copy # Generate the lists of destination paths private_icons_local_install_paths = $(foreach obj, $(private_icons), $(local_icons_dir)/$(subst _,/,$(call reorder,_,1 3 2 4,$(obj)))) # For each destination path we'll need to compute back the original icon # and create a rule that will ensure that the destination directory exists # and then copy the original file define icon_local_install_rule_template $(local_icons_dir)/$$(subst _,/,$$(call reorder,_,1 3 2 4,$1)): $1 $$(AM_V_GEN)mkdir -p $$(@D) $$(AM_V_GEN)cp $$^ $$@ endef # Instantiate the template above for each icon $(foreach icon,$(private_icons),$(eval $(call icon_local_install_rule_template,$(icon)))) install-icons-src: $(private_icons_local_install_paths) all: install-icons-src clean-local: -rm -rf $(local_icons_dir)