icons: Fix uninstall.
[pspp] / src / ui / gui / icons / automake.mk
1 # PSPP - a program for statistical analysis.
2 # Copyright (C) 2017 Free Software Foundation, Inc.
3 #
4 # This program is free software: you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation, either version 3 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
16 #
17 EXTRA_DIST += $(icons) $(icon_srcs) src/ui/gui/icons/COPYING_CCBYSA3
18
19 include $(top_srcdir)/src/ui/gui/icons/manifest
20
21 themedir = $(DESTDIR)$(datadir)/icons/hicolor
22
23 sizes=16x16 22x22 24x24 32x32 48x48 96x96 256x256 scalable
24
25 install-ext-icons:
26         for context in apps mimetypes; do \
27                 for size in $(sizes); do \
28                 $(MKDIR_P) $(themedir)/$$size/$$context ; \
29                         if (cd $(top_srcdir)/src/ui/gui/icons/$$size/$$context && \
30                                 (test ! "`printf '%s %s %s' . .. *`" = '. .. *' || test -f '*')) 2> /dev/null ; then \
31                                 $(INSTALL_DATA) $(top_srcdir)/src/ui/gui/icons/$$size/$$context/* $(themedir)/$$size/$$context ; \
32                         fi ; \
33                 done ; \
34         done
35
36
37 uninstall-ext-icons:
38         for context in apps mimetypes; do \
39                 for size in $(sizes); do \
40                         if (cd $(top_srcdir)/src/ui/gui/icons/$$size/$$context && \
41                                 (test ! "`printf '%s %s %s' . .. *`" = '. .. *' || test -f '*')) 2> /dev/null ; then \
42                                   rm -rf $(themedir)/$$size/$$context/application-x-spss-* ; \
43                                   rm -rf $(themedir)/$$size/$$context/pspp* ; \
44                                   rm -rf $(themedir)/$$size/$$context/org.fsf.pspp*; \
45                         fi ; \
46                 done ; \
47         done
48
49 if host_is_w32
50 w32_icons=src/ui/gui/icons/pspp.ico \
51 src/ui/gui/icons/pspp-sav.ico \
52 src/ui/gui/icons/pspp-zsav.ico \
53 src/ui/gui/icons/pspp-por.ico \
54 src/ui/gui/icons/pspp-sps.ico
55 endif
56
57 install-icons:
58         for wicon in $(w32_icons); do \
59           $(MKDIR_P) $(DESTDIR)$(pkgdatadir)/icons/ ; \
60           $(INSTALL_DATA) $$wicon $(DESTDIR)$(pkgdatadir)/icons/ ; \
61         done
62         for context in actions categories ; do \
63           $(MKDIR_P) $(DESTDIR)$(pkgdatadir)/$$context; \
64           for size in $(sizes); do \
65                 if (cd $(top_srcdir)/src/ui/gui/icons/$$context/$$size && \
66                         (test ! "`printf '%s %s %s' . .. *`" = '. .. *' || test -f '*')) 2> /dev/null ; then \
67                         $(MKDIR_P) $(DESTDIR)$(pkgdatadir)/$$context/$$size ; \
68                         $(INSTALL_DATA) $(top_srcdir)/src/ui/gui/icons/$$context/$$size/* $(DESTDIR)$(pkgdatadir)/$$context/$$size ; \
69                 fi ; \
70           done ; \
71         done
72
73
74
75 uninstall-icons:
76         for context in actions categories ; do \
77           for size in $(sizes); do \
78                 if (cd $(top_srcdir)/src/ui/gui/icons/$$context/$$size && \
79                         (test ! "`printf '%s %s %s' . .. *`" = '. .. *' || test -f '*')) 2> /dev/null ; then \
80                         rm -rf $(DESTDIR)$(pkgdatadir)/$$context/$$size ; \
81                 fi ; \
82           done ; \
83         done
84         rm -f $(DESTDIR)$(pkgdatadir)/icons/pspp*.ico
85
86
87
88 INSTALL_DATA_HOOKS += install-icons install-ext-icons
89 UNINSTALL_DATA_HOOKS += uninstall-icons uninstall-ext-icons
90
91 if building_gui
92 nodist_src_ui_gui_psppire_DATA = src/ui/gui/icons/splash.png
93
94 src/ui/gui/icons/splash.png: $(top_srcdir)/src/ui/gui/icons/splash-t.png $(top_srcdir)/src/ui/gui/icons/splash-r.png Makefile
95         @$(MKDIR_P) src/ui/gui/icons
96         @case `echo $(VERSION) | $(SED) -e 's/[0-9][0-9]*\.[0-9]*\([0-9]\)\.[0-9][0-9]*/\1/'` in \
97           [13579]) cp $(top_srcdir)/src/ui/gui/icons/splash-t.png $@ ; \
98         ;;\
99           *) cp $(top_srcdir)/src/ui/gui/icons/splash-r.png $@ ; \
100         ;;\
101 esac
102
103 EXTRA_DIST += $(top_srcdir)/src/ui/gui/artwork/splash.svg $(icons) $(icon_srcs)
104
105 src/ui/gui/icons/pspp.ico: src/ui/gui/icons/16x16/apps/org.fsf.pspp.png src/ui/gui/icons/32x32/apps/org.fsf.pspp.png src/ui/gui/icons/48x48/apps/org.fsf.pspp.png src/ui/gui/icons/256x256/apps/org.fsf.pspp.png
106         $(MKDIR_P) ${@D}
107         convert $^ $@
108
109 src/ui/gui/icons/pspp-sav.ico: src/ui/gui/icons/16x16/mimetypes/application-x-spss-sav.png src/ui/gui/icons/32x32/mimetypes/application-x-spss-sav.png src/ui/gui/icons/48x48/mimetypes/application-x-spss-sav.png src/ui/gui/icons/256x256/mimetypes/application-x-spss-sav.png
110         $(MKDIR_P) ${@D}
111         convert $^ $@
112
113 src/ui/gui/icons/pspp-zsav.ico: src/ui/gui/icons/16x16/mimetypes/application-x-spss-zsav.png src/ui/gui/icons/32x32/mimetypes/application-x-spss-zsav.png src/ui/gui/icons/48x48/mimetypes/application-x-spss-zsav.png src/ui/gui/icons/256x256/mimetypes/application-x-spss-zsav.png
114         $(MKDIR_P) ${@D}
115         convert $^ $@
116
117 src/ui/gui/icons/pspp-por.ico: src/ui/gui/icons/16x16/mimetypes/application-x-spss-por.png src/ui/gui/icons/32x32/mimetypes/application-x-spss-por.png src/ui/gui/icons/48x48/mimetypes/application-x-spss-por.png src/ui/gui/icons/256x256/mimetypes/application-x-spss-por.png
118         $(MKDIR_P) ${@D}
119         convert $^ $@
120
121 src/ui/gui/icons/pspp-sps.ico: src/ui/gui/icons/16x16/mimetypes/application-x-spss-sps.png src/ui/gui/icons/32x32/mimetypes/application-x-spss-sps.png src/ui/gui/icons/48x48/mimetypes/application-x-spss-sps.png src/ui/gui/icons/256x256/mimetypes/application-x-spss-sps.png
122         $(MKDIR_P) ${@D}
123         convert $^ $@
124
125
126 endif
127