cec751e5c1368d1cfe9f2f026862c6ede29876a1
4 include rules
/programs.mk
5 include rules
/javascript.mk
7 include rules
/node-webkit.mk
8 include rules
/pngcrush.mk
12 VERSION
:= $(call git-describe
)
13 DISTROOT
:= $(DISTDIR
)/$(APPLICATION
)_
$(VERSION
)
14 node-webkit-version
:= 0.10.4
16 FIND_FILES
:= -type f
! -name
'.*'
17 FIND_JS
:= -type f
-name
'*.js'
19 SOURCES
:= $(shell cd src
&& find .
$(FIND_FILES
))
20 MY_SOURCES
:= $(shell cd src
&& find .
$(FIND_JS
) -not
-path
'./ext/*')
22 TEST_SOURCES
:= $(shell find
test/spec
$(FIND_JS
))
24 LINT_TARGETS
:= $(call jshint-stampify
,$(MY_SOURCES
))
25 TEST_TARGETS
:= $(call jstest-stampify
,$(TEST_SOURCES
))
27 JSHINTCONFIG
:= test/jshint.config
28 JSTEST_NODE_PATH
:= src
31 ICONSETS
:= $(shell find src
-type d
-name
'*.iconset')
32 ICONS
:= $(ICONSETS
:.iconset
=.icns
) $(ICONSETS
:.iconset
=.ico
)
34 IMAGEGZSRC
:= $(shell find src
-type f
-name
'*.xcf.gz')
35 IMAGESRC
:= $(shell find src
-type f
-name
'*.xcf')
36 IMAGES
:= $(IMAGEGZSRC
:.xcf.gz
=.png
) $(IMAGESRC
:.xcf
=.png
)
38 BUILT
:= $(ICONS
) $(IMAGES
)
40 HTTP_SERVER_PORT ?
= 8000
42 all: $(BUILT
) $(call pngcrush-stampify
,$(IMAGES
))
47 dist: $(addprefix $(DISTROOT
),-src.zip
-src.
tar.gz .appcache .nw
-osx-ia32.zip
-osx-x64.zip
-linux-ia32.
tar.gz
-linux-x64.
tar.gz
-win-ia32.zip
)
58 serve
: |
$(npmbindir
)/http-server
59 $(npmbindir
)/http-server
$(@D
) -p
$(HTTP_SERVER_PORT
) -c-1
68 $(RM
) $(node-webkit-archives
)
70 $(DISTROOT
)-src.zip
$(DISTROOT
)-src.
tar.gz
: | .git
72 $(call git-archive
,$@
,$(notdir $(DISTROOT
))/)
74 $(DISTROOT
).bare.zip
: | .git
78 cd src
&& $(GIT
) archive
$(call git-describe
) . |
tar -x
-C ..
/$@.tmp
79 $(MAKE
) $(BUILT
:src
/%=$@.tmp
/%)
80 $(RM
) $(IMAGESRC
:src
/%=$@.tmp
/%) $(IMAGEGZSRC
:src
/%=$@.tmp
/%)
81 cd
$@.tmp
&& $(ZIP
) ..
/$(@F
) -r .
84 %.appcache
: %.bare.zip tools
/generate-appcache
87 tools
/generate-appcache
$@.tmp
90 # Python's zipfile module generates zipfiles that node-webkit cannot
91 # read, so delegate to a real zip tool.
92 %.nw
: %.bare.zip tools
/generate-nw
95 tools
/generate-nw
$@.tmp
`echo $(*F) | sed -E 's/.+_[^0-9]+//'`
96 cd
$@.tmp
&& $(ZIP
) -r ..
/$(@F
) .
100 .PHONY
: all check distclean lint
test dist clean serve