Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Iris
Tutorial POPL18
Commits
3ed6ae06
Commit
3ed6ae06
authored
Nov 11, 2020
by
Ralf Jung
Browse files
update build system
parent
65bd2aff
Pipeline
#39032
failed with stage
in 17 minutes and 13 seconds
Changes
3
Pipelines
25
Hide whitespace changes
Inline
Side-by-side
.gitignore
View file @
3ed6ae06
...
...
@@ -33,6 +33,6 @@ Makefile.coq.conf
.Makefile.coq.d
*.crashcoqide
.coqdeps.d
build
-
dep
builddep
_opam
.lia.cache
Makefile
View file @
3ed6ae06
# Default target
all
:
Makefile.coq
+@
$(MAKE)
-f
Makefile.coq all
.PHONY
:
all
# Permit local customization
-include
Makefile.local
# Forward most targets to Coq makefile (with some trick to make this phony)
%
:
Makefile.coq phony
+@make
-f
Makefile.coq
$@
all
:
Makefile.coq
+@make
-f
Makefile.coq all
.PHONY
:
all
@
#echo "Forwarding $@"
+@
$(MAKE)
-f
Makefile.coq
$@
phony
:
;
.PHONY
:
phony
clean
:
Makefile.coq
+@make
-f
Makefile.coq clean
find theories tests exercises solutions
\(
-name
"*.d"
-o
-name
"*.vo"
-o
-name
"*.vo[sk]"
-o
-name
"*.aux"
-o
-name
"*.cache"
-o
-name
"*.glob"
-o
-name
"*.vio"
\)
-print
-delete
||
true
rm
-f
Makefile.coq .lia.cache
+@
$(MAKE)
-f
Makefile.coq clean
@
# Make sure not to enter the `_opam` folder.
find
[
a-z]
*
/
\(
-name
"*.d"
-o
-name
"*.vo"
-o
-name
"*.vo[sk]"
-o
-name
"*.aux"
-o
-name
"*.cache"
-o
-name
"*.glob"
-o
-name
"*.vio"
\)
-print
-delete
||
true
rm
-f
Makefile.coq .lia.cache builddep/
*
.PHONY
:
clean
# Create Coq Makefile.
...
...
@@ -20,27 +25,31 @@ Makefile.coq: _CoqProject Makefile
"
$(COQBIN)
coq_makefile"
-f
_CoqProject
-o
Makefile.coq
$(EXTRA_COQFILES)
# Install build-dependencies
build-dep/opam
:
opam Makefile
@
echo
"# Creating build-dep package."
@
mkdir
-p
build-dep
@
sed
<opam
-E
's/^(build|install|remove):.*/\1: []/; s/^name: *"(.*)" */name: "\1-builddep"/'
>
build-dep/opam
@
fgrep builddep build-dep/opam
>
/dev/null
||
(
echo
"sed failed to fix the package name"
&&
exit
1
)
# sanity check
build-dep
:
build-dep/opam phony
@
# We want opam to not just instal the build-deps now, but to also keep satisfying these
OPAMFILES
=
$(
wildcard
*
.opam
)
BUILDDEPFILES
=
$(
addsuffix
-builddep
.opam,
$(
addprefix
builddep/,
$(
basename
$(OPAMFILES)
)))
builddep/%-builddep.opam
:
%.opam Makefile
@
echo
"# Creating builddep package for
$<
."
@
mkdir
-p
builddep
@
sed
<
$<
-E
's/^(build|install|remove):.*/\1: []/; s/"(.*)"(.*= *version.*)$$/"\1-builddep"\2/;'
>
$@
builddep-opamfiles
:
$(BUILDDEPFILES)
.PHONY
:
builddep-opamfiles
builddep
:
builddep-opamfiles
@
# We want opam to not just install the build-deps now, but to also keep satisfying these
@
# constraints. Otherwise, `opam upgrade` may well update some packages to versions
@
# that are incompatible with our build requirements.
@
# To achieve this, we create a fake opam package that has our build-dependencies as
@
# dependencies, but does not actually install anything itself.
@
echo
"# Installing build-dep package."
@
opam
install
$(OPAMFLAGS)
build-dep/
@
echo
"# Installing builddep packages."
@
opam
install
$(OPAMFLAGS)
$(BUILDDEPFILES)
.PHONY
:
builddep
# Some files that do *not* need to be forwarded to Makefile.coq
Makefile
:
;
_CoqProject
:
;
opam
:
;
Makefile.local
:
;
# Backwards compatibility target
build-dep
:
builddep
.PHONY
:
build-dep
#
Phony wildcard targets
phony
:
;
.PHONY
:
phony
#
Some files that do *not* need to be forwarded to Makefile.coq.
# ("::" lets Makefile.local overwrite this.)
Makefile Makefile.local _CoqProject $(OPAMFILES)
::
;
opam
→
coq-iris-tutorial-popl18.
opam
View file @
3ed6ae06
opam-version: "2.0"
name: "coq-iris-tutorial-popl18"
maintainer: "The Iris Organization"
authors: "The Iris Organization"
homepage: "https://gitlab.mpi-sws.org/iris/tutorial-popl18"
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment