-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathMakefile.am
256 lines (209 loc) · 9.58 KB
/
Makefile.am
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
# $Id: Makefile.am 1575 2018-01-28 22:32:55Z dezperado $
# no-dependencies was due to problems with conditional sources
# nostdinc disables the standard -I. include which breaks a correct string.h include
AUTOMAKE_OPTIONS = nostdinc no-dependencies # dejagnu
SUBDIRS = src doc distros scripts
dist_doc_DATA=$(top_srcdir)/README $(top_srcdir)/README.FIRST $(top_srcdir)/TODO $(top_srcdir)/VERSION $(top_srcdir)/BUGS $(top_srcdir)/FAQ.TXT $(top_srcdir)/AUTHORS $(top_srcdir)/ChangeLog $(top_srcdir)/NEWS
# no INSTALL INSTALL.TXT is necessary in rules
EXTRA_DIST= COPYING \
Makefile.am configure.ac configure \
aclocal.m4 config.h.in \
autogen.sh \
$(top_srcdir)/media/image.jpg \
$(top_srcdir)/media/image.png \
$(top_srcdir)/media/fim.png \
$(top_srcdir)/media/numbers/0.gif \
$(top_srcdir)/media/numbers/1.gif \
$(top_srcdir)/media/numbers/2.gif \
$(top_srcdir)/media/numbers/3.gif \
$(top_srcdir)/media/numbers/4.gif \
$(top_srcdir)/media/numbers/5.gif \
$(top_srcdir)/media/numbers/6.gif \
$(top_srcdir)/media/numbers/7.gif \
$(top_srcdir)/media/numbers/8.gif \
$(top_srcdir)/media/numbers/9.gif \
$(top_srcdir)/media/multipage/sample.tex \
$(top_srcdir)/media/multipage/Makefile \
$(top_srcdir)/var/fonts/Lat15-Terminus16.psf \
depcomp missing install-sh
FIM_EXE=./src/fim
FIMGS_EXE=./src/fimgs
# mhmhmhm
# CLEANFILES = autom4te.cache
srcdir = src
# still unfinished
signed-tgzdist: dist
gpg -sbv -u 0xE0E669C8EF1258B8 $(distdir).tar.gz
ls -l $(distdir).tar.gz $(distdir).tar.gz.sig
# still unfinished
signed-dist: dist
make dist-bzip2 && gpg -sbv -u 0xE0E669C8EF1258B8 $(distdir).tar.bz2
ls -l $(distdir).tar.bz2 $(distdir).tar.bz2.sig
gpg -sbv -u 0xE0E669C8EF1258B8 $(distdir).tar.gz
ls -l $(distdir).tar.gz $(distdir).tar.gz.sig
#%.sig: %
# gpg -sbv -u 0xE0E669C8EF1258B8 $@ $<
# gpg -sbav -u 0xE0E669C8EF1258B8 $@ $<
FIMNORCOPTS=-N --no-etc-rc-file
# this rule is deprecated, too: testing should be performed with 'make tests' (FIXME)
sanity-check: all
@$(FIM_EXE) $(FIMNORCOPTS) -E $(top_srcdir)/scripts/tests/sanity.fim -t
# this is the official way of testing fim
tests: all
ulimit -c unlimited || true
ulimit -v 32000 || true
ulimit -t 1000 || true
$(FIM_EXE) $(FIMNORCOPTS) -V | grep upported.file.formats | grep gif
$(FIM_EXE) $(FIMNORCOPTS) -V | grep upported.file.formats | grep png
@top_srcdir=$(top_srcdir) $(SHELL) $(top_srcdir)/scripts/tests/version.sh
@top_srcdir=$(top_srcdir) $(SHELL) $(top_srcdir)/scripts/tests/font.sh
@$(FIM_EXE) $(FIMNORCOPTS) -o dumb -X $(top_srcdir)/media -c '_caption_over_image=3;display;quit;'
@$(FIM_EXE) $(FIMNORCOPTS) -o dumb -X -E $(top_srcdir)/scripts/example/oneline.fim -c quit
@$(FIM_EXE) $(FIMNORCOPTS) -o dumb -X -c 'quit 14' ; if test $$? == 14 ; then echo '[*] Error code return test PASSED' ; else echo 'Error code return test FAILED'; false ; fi
make ltests
ltests:
$(FIM_EXE) $(FIMNORCOPTS) -V | grep upported.file.formats | grep jpeg
if test $(abs_builddir) = $(abs_srcdir) ; then make -C src/testdir ; fi
FIMSCRIPTSDIR=`pwd`/scripts/maintenance/
# new target, still not working
tests-all: tests
cd src && which cppcheck && cppcheck *cpp *.h || true
$(SHELL) $(FIMSCRIPTSDIR)/configure-brute-check.sh
#news-dump:
# $(AWK) -- 'v=0;($$1 == "Version" && $$2=="'`cat VERSION`'"){while((input=getline) && $$1!="Version"){print}};' NEWS > f
# this rule is deprecated, too
test: all
@$(FIM_EXE) $(FIMNORCOPTS) $(top_srcdir)/media/* #~/M*s/*g
# this rule is deprecated, too
aatest: all
@$(FIM_EXE) $(FIMNORCOPTS) $(top_srcdir)/media/* -o aa #~/M*s/*g
# this rule is old and deprecated
#tgz: clean
# tar -czf ../fim.`date +%Y%m%d%H%M`.tgz ../fim/*
# ls -l ../fim*.tgz -v
# this rule is encouraged
report:
@cat VERSION
@echo '-'
@$(LEX) -V 2>&1
@echo '-'
@$(YACC) -V 2>&1
@echo '-'
@$(CC) -v 2>&1
@echo '-'
@echo 'now please report the bug with this information to the author via email' ;
# this rule is redundant
exec: test
# this rule is smart, isn't it ? I love it !
edit:
$(EDITOR) $(srcdir)/fim.cpp +':split $(srcdir)/fim.h' # Vim ! :)
.PHONY:
@true
# this rule is informative and for acting like a peacock
wc:
wc $(srcdir)/*.cpp $(srcdir)/*.h $(srcdir)/yacc.ypp $(srcdir)/lex.lex
@#wc $(FIM) # missing headers..
devhelp:
@echo -----------------------------------------------
@echo ' short Makefile dev help'
@echo -----------------------------------------------
@echo
@echo 'make uptrunk' will upload trunk tarballs to
@echo http://download.savannah.nongnu.org/releases/fbi-improved/
@echo
@make help
help:
@echo -----------------------------------------------
@echo ' short Makefile help'
@echo -----------------------------------------------
@echo
@echo 'Please read the documentation file before complaining!'
@echo
@echo 'The first documentation file you should read is README'
@echo
@echo 'If you are experiencing problems, please contact the code author.'
@echo
@echo 'His mail box resides as dezperado, then a dot, then autistici dot org.'
@echo
@echo 'You are encouraged attaching the output of `make report` in your bug reports.'
@echo 'Thanks for your collaboration.'
@echo
ai:
make site up -C var/
up: upload news
news: freshmeat mail-announce
dox: doc/fim.man doc/fimrc.man doc/fimgs.man
MANSUBST = sed -e 's,@sysconfdir\@,$(sysconfdir),g' -e 's,@docdir\@,$(docdir),g' -e 's,-,\\-,g'
doc/fim.man.in doc/fimrc.man.in doc/fimgs.man.in: $(FIM_EXE)
$(FIM_EXE) $(FIMNORCOPTS) --help=m > doc/fim.man.in
$(FIM_EXE) $(FIMNORCOPTS) --dump-reference-help=man > doc/fimrc.man.in
$(FIMGS_EXE) -m -- $(FIMNORCOPTS) > doc/fimgs.man.in
doc/fim.man doc/fimrc.man doc/fimgs.man: doc/fim.man.in doc/fimrc.man.in doc/fimgs.man.in
cat doc/fim.man.in |$(MANSUBST) > doc/fim.man
cat doc/fimrc.man.in |$(MANSUBST) > doc/fimrc.man
cat doc/fimgs.man.in |$(MANSUBST) > doc/fimgs.man
# fixme : missing integration with ChangeLog file
mail-announce:
@ figlet fim | mutt -s "fim-`cat VERSION` release" "[email protected]" -i -
log: changelog
# from trunk, we should call svn2cl .. to get the full fim changelog history
changelog:
svn2cl -i ..
release: upload freshmeat
upload: savannah
uptrunk:
read && scp $(distdir).tar.gz.sig $(distdir).tar.gz $(distdir).tar.bz2.sig $(distdir).tar.bz2 [email protected]:/releases/fbi-improved/
# echo -en "cd /releases/fbi-improved\nput $(distdir).tar.gz.sig\n put fim-${fim_cv_version}.tar.gz\n put fim-${fim_cv_version}.tar.bz2\n put fim-${fim_cv_version}.tar.bz2.sig" | sftp "[email protected]" -b
savannah_: signed-dist
grep trunk VERSION || echo do
lynx -dump dl.sv.gnu.org/releases/fbi-improved
savannah-lookup:
lynx -dump dl.sv.gnu.org/releases/fbi-improved
# fixme : missing integration with ChangeLog file and such information
freshmeat_old:
@ $(AWK) -- 'v=0;($$1 == "Version" && $$2=="'`cat VERSION`'"){while((input=getline) && $$1!="Version"){print}};' NEWS
@echo freshmeat-submit -v "fbi-`cat VERSION`" \
--project fbi-improved \
--license GPL \
--mailing-list-url $$(cat README | grep "^Mailing List :"|sed s/^.*\ :.//g) \
--home-page-url $$(cat README | grep "^Web Page "|sed s/^.*\ :.//g) \
--cvs-url $$(cat README | grep "^Repository"|sed s/^.*\ :.//g) \
--gzipped-tar-url $$(cat README | grep "^Releases "|sed s/^.*\ :.//g)/"fim-`cat VERSION`".tar.gz \
--mirror-site-url $$(cat README | grep "^Off.*rror : "|sed s/^.*\ :.//g) \
--changelog-url $$(cat README | grep "^ChangeLog "|sed s/^.*\ :.//g)
@ echo "are you sure ? (any key to abort, yes to continue)" && read yes && [[ "$${yes}" == "yes" ]] && \
$(AWK) -- 'v=0;($$1 == "Version" && $$2=="'`cat VERSION`'"){while((input=getline) && $$1!="Version"){print}};' NEWS | \
freshmeat-submit -v "fbi-`cat VERSION`" \
--project fbi-improved \
--license GPL \
--mailing-list-url $$(cat README | grep "^Mailing List :"|sed s/^.*\ :.//g) \
--home-page-url $$(cat README | grep "^Web Page "|sed s/^.*\ :.//g) \
--cvs-url $$(cat README | grep "^Repository"|sed s/^.*\ :.//g) \
--gzipped-tar-url $$(cat README | grep "^Releases "|sed s/^.*\ :.//g)/"fim-`cat VERSION`".tar.gz \
--mirror-site-url $$(cat README | grep "^Off.*rror : "|sed s/^.*\ :.//g) \
--changelog-url $$(cat README | grep "^ChangeLog "|sed s/^.*\ :.//g)
# --url-demo $$(cat README | grep "^Web Page "|sed s/^.*:.//g)
# --bzipped-tar-url $$(cat README | grep "^Web Page "|sed s/^.*:.//g)
freshmeat-submit:
@echo Project: fim
@echo Version: `cat VERSION`
@echo Release-Focus: Major feature enhancements
@echo Hide: N
@echo Home-Page-URL: $$(cat README | grep "^Web Page "|sed s/^.*\ :.//g)
@echo Mailing-List-URL: $$(cat README | grep "^Mailing List :"|sed s/^.*\ :.//g)
@echo Gzipped-Tar-URL: $$(cat README | grep "^Releases "|sed s/^.*\ :.//g)/"fim-`cat VERSION`".tar.gz
@echo Bzipped-Tar-URL: $$(cat README | grep "^Releases "|sed s/^.*\ :.//g)/"fim-`cat VERSION`".tar.bz2
@echo License: GPL
@echo Mirror-Site-URL: $$(cat README | grep "^Off.*rror : "|sed s/^.*\ :.//g)
@echo ChangeLog-URL: $$(cat README | grep "^ChangeLog "|sed s/^.*\ :.//g)
@echo CVS-URL: $$(cat README | grep "^Repository"|sed s/^.*\ :.//g)
@echo
@ $(AWK) -- 'v=0;($$1 == "Version" && $$2=="'`cat VERSION`'"){while((input=getline) && $$1!="Version"){print}};' NEWS
freshmeat:
@ echo "are you sure you want to freshmeat-submit ? (any key to abort, yes to continue)" && read yes && [[ "$${yes}" == "yes" ]] && \
make freshmeat-submit | grep -v '^make\[' | freshmeat-submit
commit: log
svn commit
# This awaits completion.
#rpm: dist
# rpmbuild -ta @PACKAGE@-@[email protected]