1 # Copyright (C) 2016 all contributors <msgthr-public@80x24.org>
2 # License: GPL-2.0+ <https://www.gnu.org/licenses/gpl-2.0.txt>
8 RSYNC_DEST
:= 80x24.org
:/srv
/80x24
/msgthr
/
15 test_units
:= $(wildcard test/test_
*.rb
)
18 $(RUBY
) -w
-I
$(lib
) $@
-v
21 @
(for i in
$$(git ls-files
'*.rb'| grep
-v
'^setup\.rb$$'); \
22 do
$(RUBY
) -d
-W2
-c
$$i; done
) | grep
-v
'^Syntax OK$$' ||
:
26 pkggem
:= pkg
/$(pkg
)-$(VERSION
).gem
29 git ls-tree
-r HEAD | awk
'/^100644 / {print $$NF}' | xargs chmod
644
33 install-gem
: $(pkggem
)
34 gem
install --local
$(CURDIR
)/$<
36 $(pkggem
): .manifest NEWS
37 VERSION
=$(VERSION
) gem build
$(pkg
).gemspec
44 git ls-files | LC_ALL
=C
sort >$@
+
45 cmp
$@
+ $@ || mv
$@
+ $@
; rm -f
$@
+
50 $(OLDDOC
) prepare || echo
'See https://80x24.org/msgthr/NEWS' >$@
53 doc
:: .document .olddoc.yml
54 -find lib
-type f
-name
'*.rbc' -exec
rm -f
'{}' ';'
59 # this requires GNU coreutils variants
60 ifneq ($(RSYNC_DEST
),)
67 install -m644 README www
/README
68 install -m644 NEWS www
/NEWS
69 install -m644 NEWS.atom.xml www
/NEWS.atom.xml
70 for i in
$$(find www
-type f
! -regex
'^.*\.gz$$'); do \
71 gzip
--rsyncable
-9 < $$i > $$i.gz
; touch
-r
$$i $$i.gz
; done
72 $(RSYNC
) -av www
/ $(RSYNC_DEST
) \
73 --exclude index.html
* --exclude created.rid
*
74 git ls-files | xargs touch
77 .PHONY
: all test $(test_units
)
78 .PHONY
: check-warnings fix-perms