summaryrefslogtreecommitdiff
path: root/dev/make-macos-dmg.sh
diff options
context:
space:
mode:
Diffstat (limited to 'dev/make-macos-dmg.sh')
-rwxr-xr-xdev/make-macos-dmg.sh31
1 files changed, 31 insertions, 0 deletions
diff --git a/dev/make-macos-dmg.sh b/dev/make-macos-dmg.sh
new file mode 100755
index 00000000..70889bad
--- /dev/null
+++ b/dev/make-macos-dmg.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+# Fail on first error
+set -e
+
+# Configuration setup
+eval `opam config env`
+make distclean
+OUTDIR=$PWD/_install
+DMGDIR=$PWD/_dmg
+./configure -debug -prefix $OUTDIR
+VERSION=$(sed -n -e '/^let coq_version/ s/^[^"]*"\([^"]*\)"$/\1/p' configure.ml)
+APP=bin/CoqIDE_${VERSION}.app
+
+# Create a .app file with CoqIDE
+~/.local/bin/jhbuild run make -j -l2 $APP
+
+# Build Coq and run test-suite
+make && make check
+
+# Add Coq to the .app file
+make OLDROOT=$OUTDIR COQINSTALLPREFIX=$APP/Contents/Resources/ install-coq install-ide-toploop
+
+# Sign the .app file
+codesign -f -s - $APP
+
+# Create the dmg bundle
+mkdir -p $DMGDIR
+ln -sf /Applications $DMGDIR/Applications
+cp -r $APP $DMGDIR
+hdiutil create -imagekey zlib-level=9 -volname CoqIDE_$VERSION -srcfolder $DMGDIR -ov -format UDZO CoqIDE_$VERSION.dmg