Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Jonas Kastberg
iris
Commits
c3c8ce45
Commit
c3c8ce45
authored
Oct 28, 2017
by
Ralf Jung
Browse files
opam CI: more verbose output; more robust opam
parent
860821b3
Changes
1
Hide whitespace changes
Inline
Side-by-side
build/opam-ci.sh
View file @
c3c8ce45
#!/bin/bash
set
-e
set
-x
## This script installs the build dependencies for CI builds.
function
run_and_print
()
{
echo
"
$ $@
"
"
$@
"
}
# Prepare OPAM configuration
export
OPAMROOT
=
"
$(
pwd
)
/opamroot"
...
...
@@ -12,27 +9,27 @@ export OPAMJOBS="$((2*$CPU_CORES))"
export
OPAM_EDITOR
=
"
$(
which
false
)
"
# Make sure we got a good OPAM.
test
-d
"
$OPAMROOT
"
||
(
mkdir
"
$OPAMROOT
"
&&
run_and_print
opam init
--no-setup
-y
)
test
-d
"
$OPAMROOT
"
||
(
mkdir
"
$OPAMROOT
"
&&
opam init
--no-setup
-y
)
eval
`
opam conf
env
`
# Make sure the pin for the builddep package is not stale.
run_and_print
make build-dep/opam
make build-dep/opam
# Update repositories
run_and_print
opam update
opam update
# Make sure we got the right set of repositories registered
if
echo
"
$@
"
| fgrep
"dev"
>
/dev/null
;
then
# We are compiling against a dev version of something. Get ourselves the dev repositories.
test
-d
"
$OPAMROOT
/repo/coq-extra-dev"
||
run_and_print
opam repo add coq-extra-dev https://coq.inria.fr/opam/extra-dev
-p
0
test
-d
"
$OPAMROOT
/repo/coq-core-dev"
||
run_and_print
opam repo add coq-core-dev https://coq.inria.fr/opam/core-dev
-p
5
test
-d
"
$OPAMROOT
/repo/coq-extra-dev"
||
opam repo add coq-extra-dev https://coq.inria.fr/opam/extra-dev
-p
0
test
-d
"
$OPAMROOT
/repo/coq-core-dev"
||
opam repo add coq-core-dev https://coq.inria.fr/opam/core-dev
-p
5
else
# No dev version, make sure we do not have the dev repositories.
test
-d
"
$OPAMROOT
/repo/coq-extra-dev"
&&
run_and_print
opam repo remove coq-extra-dev
test
-d
"
$OPAMROOT
/repo/coq-core-dev"
&&
run_and_print
opam repo remove coq-core-dev
test
-d
"
$OPAMROOT
/repo/coq-extra-dev"
&&
opam repo remove coq-extra-dev
test
-d
"
$OPAMROOT
/repo/coq-core-dev"
&&
opam repo remove coq-core-dev
fi
test
-d
"
$OPAMROOT
/repo/coq-released"
||
run_and_print
opam repo add coq-released https://coq.inria.fr/opam/released
-p
10
test
-d
"
$OPAMROOT
/repo/iris-dev"
||
run_and_print
opam repo add iris-dev https://gitlab.mpi-sws.org/FP/opam-dev.git
-p
20
test
-d
"
$OPAMROOT
/repo/coq-released"
||
opam repo add coq-released https://coq.inria.fr/opam/released
-p
10
test
-d
"
$OPAMROOT
/repo/iris-dev"
||
opam repo add iris-dev https://gitlab.mpi-sws.org/FP/opam-dev.git
-p
20
echo
# We really want to run all of the following in one opam transaction, but due to opam limitations,
...
...
@@ -51,14 +48,14 @@ while (( "$#" )); do # while there are arguments left
echo
"[opam-ci]
$PACKAGE
already
$KIND
-pinned to
$VERSION
"
else
echo
"[opam-ci]
$KIND
-pinning
$PACKAGE
to
$VERSION
"
run_and_print
opam pin add
-y
-k
"
$KIND
"
"
$PACKAGE
"
"
$VERSION
"
opam pin add
-y
-k
"
$KIND
"
"
$PACKAGE
"
"
$VERSION
"
fi
done
# Upgrade cached things.
echo
echo
"[opam-ci] Upgrading opam"
run_and_print
opam upgrade
-y
opam upgrade
-y
--fixup
# Install build-dependencies.
echo
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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