comparison Makefile @ 0:bc5cc170163c

Initial revision
author Guido Berhoerster <guido+feed-preview@berhoerster.name>
date Wed, 03 Oct 2018 23:40:57 +0200
parents
children 5d7c13e998e9
comparison
equal deleted inserted replaced
-1:000000000000 0:bc5cc170163c
1 #
2 # Copyright (C) 2018 Guido Berhoerster <guido+feed-preview@berhoerster.name>
3 #
4 # Permission is hereby granted, free of charge, to any person obtaining
5 # a copy of this software and associated documentation files (the
6 # "Software"), to deal in the Software without restriction, including
7 # without limitation the rights to use, copy, modify, merge, publish,
8 # distribute, sublicense, and/or sell copies of the Software, and to
9 # permit persons to whom the Software is furnished to do so, subject to
10 # the following conditions:
11 #
12 # The above copyright notice and this permission notice shall be included
13 # in all copies or substantial portions of the Software.
14 #
15 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
18 # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
19 # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
20 # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
21 # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 #
23
24 NAME = feed-preview
25 VERSION = 1
26 EXT_NAME = $(subst -,_,$(NAME))-$(VERSION)
27
28 INKSCAPE := inkscape
29 INFOZIP := zip
30 SED := sed
31
32 BITMAP_ICONS = icons/feed-preview-48.png \
33 icons/feed-preview-96.png
34 DIST_FILES = manifest.json \
35 COPYING \
36 NEWS \
37 README \
38 $(wildcard _locales/*/messages.json) \
39 background.js \
40 content_scripts/feed-probe.js \
41 content_scripts/feed-preview.js \
42 icons/feed-preview.svg \
43 $(BITMAP_ICONS) \
44 popup/feed-selection.js \
45 popup/feed-selection.html \
46 web_resources/style/feed-preview.css \
47 web_resources/style/photon-colors.css \
48 web_resources/style/common.css \
49 web_resources/style/entry-content.css \
50 web_resources/feed-preview.xhtml \
51 web_resources/images/arrow.svg
52
53 .DEFAULT_TARGET = all
54
55 .PHONY: all extension clean clobber
56
57 all: extension
58
59 extension: $(EXT_NAME).zip
60
61 $(EXT_NAME).zip: $(DIST_FILES)
62 $(INFOZIP) $@ $^
63
64 define generate-icon-rule
65 $1: $(1:%-$(lastword $(subst -, ,$1))=%.svg)
66 size=$(lastword $(subst -, ,$(basename $1))); \
67 $(INKSCAPE) -w $$$${size} -h $$$${size} -e $$@ $$<
68 endef
69
70 $(foreach icon,$(BITMAP_ICONS),$(eval $(call generate-icon-rule,$(icon))))
71
72 manifest.json: manifest.json.in
73 $(SED) 's|@VERSION@|$(VERSION)|g' $< >$@
74
75 clean:
76 -rm -f $(BITMAP_ICONS) manifest.json
77
78 clobber: clean