1%canon_reldir%_EXTRA_DIST = 2 3%canon_reldir%_CLEANFILES = 4%canon_reldir%_DISTCLEANFILES = 5%canon_reldir%_MAINTAINERCLEANFILES = 6 7%canon_reldir%_EXTRA_DIST += \ 8 %reldir%/NEWS.1 \ 9 %reldir%/NEWS.2 \ 10 %reldir%/NEWS.3 \ 11 %reldir%/NEWS.4 \ 12 %reldir%/NEWS.5 \ 13 %reldir%/PROJECTS \ 14 %reldir%/gdbinit 15 16%canon_reldir%_EXTRA_DIST += \ 17 %reldir%/OLD-ChangeLogs/ChangeLog \ 18 %reldir%/OLD-ChangeLogs/ChangeLog.1 \ 19 %reldir%/OLD-ChangeLogs/doc-ChangeLog \ 20 %reldir%/OLD-ChangeLogs/libcruft-ChangeLog \ 21 %reldir%/OLD-ChangeLogs/liboctave-ChangeLog \ 22 %reldir%/OLD-ChangeLogs/scripts-ChangeLog \ 23 %reldir%/OLD-ChangeLogs/src-ChangeLog \ 24 %reldir%/OLD-ChangeLogs/test-ChangeLog 25 26fallback_FONT_FILES = \ 27 %reldir%/fonts/FreeSans.otf \ 28 %reldir%/fonts/FreeSansBold.otf \ 29 %reldir%/fonts/FreeSansBoldOblique.otf \ 30 %reldir%/fonts/FreeSansOblique.otf 31 32if AMCOND_INSTALL_INTERNAL_FONT_FILES 33octfonts_DATA += \ 34 $(fallback_FONT_FILES) 35endif 36 37%canon_reldir%_EXTRA_DIST += \ 38 $(fallback_FONT_FILES) 39 40appdatadir = $(datadir)/metainfo 41 42APPDATA_XML_FILE := \ 43 %reldir%/icons/org.octave.Octave.appdata.xml 44 45appdata_DATA = $(APPDATA_XML_FILE) 46 47desktopdir = $(datadir)/applications 48 49desktop_DATA = \ 50 %reldir%/icons/org.octave.Octave.desktop 51 52icon_IMAGE_FILES = \ 53 %reldir%/icons/octave-logo.svg \ 54 %reldir%/icons/octave-sombrero.png 55 56icon_PNG_SIZES = \ 57 1024 \ 58 512 \ 59 256 \ 60 128 \ 61 64 \ 62 48 \ 63 32 \ 64 24 \ 65 22 \ 66 16 67 68BUILT_PNG_ICONS = $(patsubst %,%reldir%/icons/octave-logo-%.png,$(icon_PNG_SIZES)) 69 70WINDOWS_PNG_ICONS = $(filter %-16.png %-32.png %-48.png %-256.png,$(BUILT_PNG_ICONS)) 71 72BUILT_ICONS = \ 73 $(BUILT_PNG_ICONS) \ 74 %reldir%/icons/octave-logo.ico 75 76%canon_reldir%_EXTRA_DIST += \ 77 $(BUILT_ICONS) \ 78 $(icon_IMAGE_FILES) \ 79 %reldir%/icons/octave_branding_samples.svg \ 80 %reldir%/icons/org.octave.Octave.appdata.xml \ 81 %reldir%/icons/org.octave.Octave.desktop.in 82 83image_DATA += \ 84 $(icon_IMAGE_FILES) \ 85 %reldir%/icons/octave-logo.ico 86 87DIRSTAMP_FILES += \ 88 %reldir%/icons/$(octave_dirstamp) 89 90all-local: all-icons 91 92all-icons: %reldir%/icons/org.octave.Octave.desktop $(BUILT_ICONS) 93 94%reldir%/icons/org.octave.Octave.desktop: %reldir%/icons/org.octave.Octave.desktop.in | %reldir%/icons/$(octave_dirstamp) 95 $(AM_V_GEN)rm -f $@-t $@ && \ 96 $(SED) < $< > $@-t \ 97 -e "s|%OCTAVE_PREFIX%|${prefix}|" && \ 98 mv $@-t $@ 99 100$(BUILT_PNG_ICONS): %reldir%/icons/octave-logo.svg | %reldir%/icons/$(octave_dirstamp) 101 $(AM_V_GEN)rm -f $@-t $@ && \ 102 $(RSVG_CONVERT) -w $(lastword $(subst -, ,$(patsubst %.png,%,$@))) $< > $@-t && \ 103 mv $@-t $@ 104 105%reldir%/icons/octave-logo.ico: $(WINDOWS_PNG_ICONS) | %reldir%/icons/$(octave_dirstamp) 106 $(AM_V_GEN)rm -f $@-t $@ && \ 107 $(ICOTOOL) --create --raw $(WINDOWS_PNG_ICONS) > $@-t && \ 108 mv $@-t $@ 109 110## Check that the release date and version number are in 111## $(APPDATA_XML_FILE), but only for actual releases, which means 112## we skip the test if the minor version number is 0 or the patch 113## version number is not 0. 114 115appdata-dist-hook: 116 @test x"$(DIST_IGNORE_APPDATA_VERSION)" != x || \ 117 test $(OCTAVE_MINOR_VERSION) -eq 0 || \ 118 test $(OCTAVE_PATCH_VERSION) -ne 0 || \ 119 grep "<release *date=\"$(OCTAVE_RELEASE_DATE)\" *version=\"$(OCTAVE_VERSION)\"/>" $(srcdir)/$(APPDATA_XML_FILE) > /dev/null || \ 120 { echo; \ 121 echo "Packaging distribution requires the version number in the $(APPDATA_XML_FILE)."; \ 122 echo "Please update first or pass DIST_IGNORE_APPDATA_VERSION=1."; \ 123 echo "Cannot package distribution!"; \ 124 echo; exit 1; } 125.PHONY: appdata-dist-hook 126 127install-data-local: install-icons 128 129uninstall-local: uninstall-icons 130 131install-icons: 132 for f in $(BUILT_PNG_ICONS); do \ 133 size=`echo $$f | $(SED) -n -e "s/.*-\([0-9]\+\)\.png/\1/p"`; \ 134 if test -f $$f; then d=; else d="$(srcdir)/"; fi; \ 135 $(MKDIR_P) $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/apps; \ 136 $(INSTALL_DATA) "$$d$$f" $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/apps/octave.png; \ 137 done 138 $(MKDIR_P) $(DESTDIR)$(datadir)/icons/hicolor/scalable/apps 139 $(INSTALL_DATA) $(srcdir)/%reldir%/icons/octave-logo.svg $(DESTDIR)$(datadir)/icons/hicolor/scalable/apps/octave.svg 140 141uninstall-icons: 142 for f in $(BUILT_PNG_ICONS); do \ 143 size=`echo $$f | $(SED) -n -e "s/.*-\([0-9]\+\)\.png/\1/p"`; \ 144 rm -f $(DESTDIR)$(datadir)/icons/hicolor/$${size}x$${size}/apps/octave.png; \ 145 done 146 rm -f $(DESTDIR)$(datadir)/icons/hicolor/scalable/apps/octave.svg 147 148EXTRA_DIST += $(%canon_reldir%_EXTRA_DIST) 149 150%canon_reldir%_CLEANFILES += \ 151 %reldir%/icons/org.octave.Octave.desktop 152 153%canon_reldir%_MAINTAINERCLEANFILES += \ 154 $(BUILT_ICONS) 155 156CLEANFILES += $(%canon_reldir%_CLEANFILES) 157DISTCLEANFILES += $(%canon_reldir%_DISTCLEANFILES) 158MAINTAINERCLEANFILES += $(%canon_reldir%_MAINTAINERCLEANFILES) 159 160etc-clean: 161 rm -f $(%canon_reldir%_CLEANFILES) 162 163etc-distclean: etc-clean 164 rm -f $(%canon_reldir%_DISTCLEANFILES) 165 166etc-maintainer-clean: etc-distclean 167 rm -f $(%canon_reldir%_MAINTAINERCLEANFILES) 168