Makefile 10.2 KB
Newer Older
Felipe Cerqueira's avatar
Felipe Cerqueira committed
1 2 3 4 5 6
#############################################################################
##  v      #                   The Coq Proof Assistant                     ##
## <O___,, #                INRIA - CNRS - LIX - LRI - PPS                 ##
##   \VV/  #                                                               ##
##    //   #  Makefile automagically generated by coq_makefile V8.4pl4     ##
#############################################################################
Felipe Cerqueira's avatar
Felipe Cerqueira committed
7

Felipe Cerqueira's avatar
Felipe Cerqueira committed
8 9 10 11 12 13
# WARNING
#
# This Makefile has been automagically generated
# Edit at your own risks !
#
# END OF WARNING
Felipe Cerqueira's avatar
Felipe Cerqueira committed
14

Felipe Cerqueira's avatar
Felipe Cerqueira committed
15 16
#
# This Makefile was generated by the command line :
Felipe Cerqueira's avatar
Felipe Cerqueira committed
17
# coq_makefile -R . rt ./util/fixedpoint.v ./util/ssromega.v ./util/bigcat.v ./util/nat.v ./util/notation.v ./util/list.v ./util/powerset.v ./util/all.v ./util/sorting.v ./util/tactics.v ./util/bigord.v ./util/exists.v ./util/induction.v ./util/sum.v ./util/divround.v ./util/counting.v ./implementation/basic/bertogna_edf_example.v ./implementation/basic/task.v ./implementation/basic/schedule.v ./implementation/basic/job.v ./implementation/basic/arrival_sequence.v ./implementation/jitter/bertogna_edf_example.v ./implementation/jitter/task.v ./implementation/jitter/schedule.v ./implementation/jitter/job.v ./implementation/jitter/arrival_sequence.v ./analysis/basic/bertogna_fp_theory.v ./analysis/basic/interference_bound_edf.v ./analysis/basic/interference_bound_fp.v ./analysis/basic/interference_bound.v ./analysis/basic/bertogna_edf_comp.v ./analysis/basic/bertogna_fp_comp.v ./analysis/basic/bertogna_edf_theory.v ./analysis/basic/workload_bound.v ./analysis/parallel/bertogna_fp_theory.v ./analysis/parallel/interference_bound_edf.v ./analysis/parallel/interference_bound_fp.v ./analysis/parallel/interference_bound.v ./analysis/parallel/bertogna_edf_comp.v ./analysis/parallel/bertogna_fp_comp.v ./analysis/parallel/bertogna_edf_theory.v ./analysis/parallel/workload_bound.v ./analysis/jitter/bertogna_fp_theory.v ./analysis/jitter/interference_bound_edf.v ./analysis/jitter/interference_bound_fp.v ./analysis/jitter/interference_bound.v ./analysis/jitter/bertogna_edf_comp.v ./analysis/jitter/bertogna_fp_comp.v ./analysis/jitter/bertogna_edf_theory.v ./analysis/jitter/workload_bound.v ./model/basic/time.v ./model/basic/schedulability.v ./model/basic/task.v ./model/basic/task_arrival.v ./model/basic/platform.v ./model/basic/schedule.v ./model/basic/priority.v ./model/basic/interference_edf.v ./model/basic/interference.v ./model/basic/workload.v ./model/basic/job.v ./model/basic/arrival_sequence.v ./model/basic/response_time.v ./model/basic/platform_fp.v ./model/jitter/time.v ./model/jitter/schedulability.v ./model/jitter/task.v ./model/jitter/task_arrival.v ./model/jitter/platform.v ./model/jitter/schedule.v ./model/jitter/priority.v ./model/jitter/interference_edf.v ./model/jitter/interference.v ./model/jitter/workload.v ./model/jitter/job.v ./model/jitter/arrival_sequence.v ./model/jitter/response_time.v ./model/jitter/platform_fp.v -o Makefile 
Felipe Cerqueira's avatar
Felipe Cerqueira committed
18
#
Felipe Cerqueira's avatar
Felipe Cerqueira committed
19

Felipe Cerqueira's avatar
Felipe Cerqueira committed
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
.DEFAULT_GOAL := all

# 
# This Makefile may take arguments passed as environment variables:
# COQBIN to specify the directory where Coq binaries resides;
# ZDEBUG/COQDEBUG to specify debug flags for ocamlc&ocamlopt/coqc;
# DSTROOT to specify a prefix to install path.

# Here is a hack to make $(eval $(shell works:
define donewline


endef
includecmdwithout@ = $(eval $(subst @,$(donewline),$(shell { $(1) | tr -d '\r' | tr '\n' '@'; })))
$(call includecmdwithout@,$(COQBIN)coqtop -config)

##########################
#                        #
# Libraries definitions. #
#                        #
##########################

42 43
COQLIBS?= -R . rt
COQDOCLIBS?=-R . rt
Felipe Cerqueira's avatar
Felipe Cerqueira committed
44 45 46 47 48 49 50 51 52 53 54

##########################
#                        #
# Variables definitions. #
#                        #
##########################


OPT?=
COQDEP?=$(COQBIN)coqdep -c
COQFLAGS?=-q $(OPT) $(COQLIBS) $(OTHERFLAGS) $(COQ_XML)
55
COQCHKFLAGS?=-silent -o
Felipe Cerqueira's avatar
Felipe Cerqueira committed
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
COQDOCFLAGS?=-interpolate -utf8
COQC?=$(COQBIN)coqc
GALLINA?=$(COQBIN)gallina
COQDOC?=$(COQBIN)coqdoc
COQCHK?=$(COQBIN)coqchk

##################
#                #
# Install Paths. #
#                #
##################

ifdef USERINSTALL
XDG_DATA_HOME?=$(HOME)/.local/share
COQLIBINSTALL=$(XDG_DATA_HOME)/coq
COQDOCINSTALL=$(XDG_DATA_HOME)/doc/coq
else
COQLIBINSTALL=${COQLIB}user-contrib
COQDOCINSTALL=${DOCDIR}user-contrib
endif

######################
#                    #
# Files dispatching. #
#                    #
######################

Felipe Cerqueira's avatar
Felipe Cerqueira committed
83 84 85 86 87 88 89 90 91 92 93 94 95 96
VFILES:=util/fixedpoint.v\
  util/ssromega.v\
  util/bigcat.v\
  util/nat.v\
  util/notation.v\
  util/list.v\
  util/powerset.v\
  util/all.v\
  util/sorting.v\
  util/tactics.v\
  util/bigord.v\
  util/exists.v\
  util/induction.v\
  util/sum.v\
97
  util/divround.v\
Felipe Cerqueira's avatar
Felipe Cerqueira committed
98
  util/counting.v\
99 100
  implementation/basic/bertogna_edf_example.v\
  implementation/basic/task.v\
101
  implementation/basic/schedule.v\
102 103 104 105
  implementation/basic/job.v\
  implementation/basic/arrival_sequence.v\
  implementation/jitter/bertogna_edf_example.v\
  implementation/jitter/task.v\
106
  implementation/jitter/schedule.v\
107 108
  implementation/jitter/job.v\
  implementation/jitter/arrival_sequence.v\
109
  analysis/basic/bertogna_fp_theory.v\
110 111 112
  analysis/basic/interference_bound_edf.v\
  analysis/basic/interference_bound_fp.v\
  analysis/basic/interference_bound.v\
113 114 115
  analysis/basic/bertogna_edf_comp.v\
  analysis/basic/bertogna_fp_comp.v\
  analysis/basic/bertogna_edf_theory.v\
116
  analysis/basic/workload_bound.v\
Felipe Cerqueira's avatar
Felipe Cerqueira committed
117 118 119 120 121 122 123 124
  analysis/parallel/bertogna_fp_theory.v\
  analysis/parallel/interference_bound_edf.v\
  analysis/parallel/interference_bound_fp.v\
  analysis/parallel/interference_bound.v\
  analysis/parallel/bertogna_edf_comp.v\
  analysis/parallel/bertogna_fp_comp.v\
  analysis/parallel/bertogna_edf_theory.v\
  analysis/parallel/workload_bound.v\
125
  analysis/jitter/bertogna_fp_theory.v\
126 127 128
  analysis/jitter/interference_bound_edf.v\
  analysis/jitter/interference_bound_fp.v\
  analysis/jitter/interference_bound.v\
129 130 131
  analysis/jitter/bertogna_edf_comp.v\
  analysis/jitter/bertogna_fp_comp.v\
  analysis/jitter/bertogna_edf_theory.v\
132
  analysis/jitter/workload_bound.v\
133
  model/basic/time.v\
134 135 136 137 138 139 140 141 142 143 144 145 146
  model/basic/schedulability.v\
  model/basic/task.v\
  model/basic/task_arrival.v\
  model/basic/platform.v\
  model/basic/schedule.v\
  model/basic/priority.v\
  model/basic/interference_edf.v\
  model/basic/interference.v\
  model/basic/workload.v\
  model/basic/job.v\
  model/basic/arrival_sequence.v\
  model/basic/response_time.v\
  model/basic/platform_fp.v\
147
  model/jitter/time.v\
148 149 150 151 152 153 154 155 156 157 158 159
  model/jitter/schedulability.v\
  model/jitter/task.v\
  model/jitter/task_arrival.v\
  model/jitter/platform.v\
  model/jitter/schedule.v\
  model/jitter/priority.v\
  model/jitter/interference_edf.v\
  model/jitter/interference.v\
  model/jitter/workload.v\
  model/jitter/job.v\
  model/jitter/arrival_sequence.v\
  model/jitter/response_time.v\
160
  model/jitter/platform_fp.v
Felipe Cerqueira's avatar
Felipe Cerqueira committed
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

-include $(addsuffix .d,$(VFILES))
.SECONDARY: $(addsuffix .d,$(VFILES))

VOFILES:=$(VFILES:.v=.vo)
GLOBFILES:=$(VFILES:.v=.glob)
VIFILES:=$(VFILES:.v=.vi)
GFILES:=$(VFILES:.v=.g)
HTMLFILES:=$(VFILES:.v=.html)
GHTMLFILES:=$(VFILES:.v=.g.html)
ifeq '$(HASNATDYNLINK)' 'true'
HASNATDYNLINK_OR_EMPTY := yes
else
HASNATDYNLINK_OR_EMPTY :=
endif

#######################################
#                                     #
# Definition of the toplevel targets. #
#                                     #
#######################################

all: $(VOFILES) 

spec: $(VIFILES)

gallina: $(GFILES)

html: $(GLOBFILES) $(VFILES)
	- mkdir -p html
	$(COQDOC) -toc $(COQDOCFLAGS) -html $(COQDOCLIBS) -d html $(VFILES)

gallinahtml: $(GLOBFILES) $(VFILES)
	- mkdir -p html
	$(COQDOC) -toc $(COQDOCFLAGS) -html -g $(COQDOCLIBS) -d html $(VFILES)

all.ps: $(VFILES)
	$(COQDOC) -toc $(COQDOCFLAGS) -ps $(COQDOCLIBS) -o $@ `$(COQDEP) -sort -suffix .v $^`

all-gal.ps: $(VFILES)
	$(COQDOC) -toc $(COQDOCFLAGS) -ps -g $(COQDOCLIBS) -o $@ `$(COQDEP) -sort -suffix .v $^`

all.pdf: $(VFILES)
	$(COQDOC) -toc $(COQDOCFLAGS) -pdf $(COQDOCLIBS) -o $@ `$(COQDEP) -sort -suffix .v $^`

all-gal.pdf: $(VFILES)
	$(COQDOC) -toc $(COQDOCFLAGS) -pdf -g $(COQDOCLIBS) -o $@ `$(COQDEP) -sort -suffix .v $^`

validate: $(VOFILES)
210
	$(COQCHK) $(COQCHKFLAGS) $(COQLIBS) $(addprefix rt., $(subst /,., $(^:.vo=)))
Felipe Cerqueira's avatar
Felipe Cerqueira committed
211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234

beautify: $(VFILES:=.beautified)
	for file in $^; do mv $${file%.beautified} $${file%beautified}old && mv $${file} $${file%.beautified}; done
	@echo 'Do not do "make clean" until you are sure that everything went well!'
	@echo 'If there were a problem, execute "for file in $$(find . -name \*.v.old -print); do mv $${file} $${file%.old}; done" in your shell/'

.PHONY: all opt byte archclean clean install userinstall depend html validate

####################
#                  #
# Special targets. #
#                  #
####################

byte:
	$(MAKE) all "OPT:=-byte"

opt:
	$(MAKE) all "OPT:=-opt"

userinstall:
	+$(MAKE) USERINSTALL=true install

install:
235 236 237
	for i in $(VOFILES); do \
	 install -d `dirname $(DSTROOT)$(COQLIBINSTALL)/rt/$$i`; \
	 install -m 0644 $$i $(DSTROOT)$(COQLIBINSTALL)/rt/$$i; \
Felipe Cerqueira's avatar
Felipe Cerqueira committed
238 239 240
	done

install-doc:
241
	install -d $(DSTROOT)$(COQDOCINSTALL)/rt/html
Felipe Cerqueira's avatar
Felipe Cerqueira committed
242
	for i in html/*; do \
243
	 install -m 0644 $$i $(DSTROOT)$(COQDOCINSTALL)/rt/$$i;\
Felipe Cerqueira's avatar
Felipe Cerqueira committed
244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301
	done

clean:
	rm -f $(VOFILES) $(VIFILES) $(GFILES) $(VFILES:.v=.v.d) $(VFILES:=.beautified) $(VFILES:=.old)
	rm -f all.ps all-gal.ps all.pdf all-gal.pdf all.glob $(VFILES:.v=.glob) $(VFILES:.v=.tex) $(VFILES:.v=.g.tex) all-mli.tex
	- rm -rf html mlihtml

archclean:
	rm -f *.cmx *.o

printenv:
	@$(COQBIN)coqtop -config
	@echo CAMLC =	$(CAMLC)
	@echo CAMLOPTC =	$(CAMLOPTC)
	@echo PP =	$(PP)
	@echo COQFLAGS =	$(COQFLAGS)
	@echo COQLIBINSTALL =	$(COQLIBINSTALL)
	@echo COQDOCINSTALL =	$(COQDOCINSTALL)

###################
#                 #
# Implicit rules. #
#                 #
###################

%.vo %.glob: %.v
	$(COQC) $(COQDEBUG) $(COQFLAGS) $*

%.vi: %.v
	$(COQC) -i $(COQDEBUG) $(COQFLAGS) $*

%.g: %.v
	$(GALLINA) $<

%.tex: %.v
	$(COQDOC) $(COQDOCFLAGS) -latex $< -o $@

%.html: %.v %.glob
	$(COQDOC) $(COQDOCFLAGS) -html $< -o $@

%.g.tex: %.v
	$(COQDOC) $(COQDOCFLAGS) -latex -g $< -o $@

%.g.html: %.v %.glob
	$(COQDOC)$(COQDOCFLAGS)  -html -g $< -o $@

%.v.d: %.v
	$(COQDEP) -slash $(COQLIBS) "$<" > "$@" || ( RV=$$?; rm -f "$@"; exit $${RV} )

%.v.beautified:
	$(COQC) $(COQDEBUG) $(COQFLAGS) -beautify $*

# WARNING
#
# This Makefile has been automagically generated
# Edit at your own risks !
#
# END OF WARNING
Felipe Cerqueira's avatar
Felipe Cerqueira committed
302