citrun

watch C/C++ source code execute
Log | Files | Refs | LICENSE

commit f058542e2212d107af280469df7a1731bb35e3a1
parent e686bed220fa270d5ea55841cb46669d8e4d16b2
Author: Kyle Milz <kyle@getaddrinfo.net>
Date:   Sun,  3 Apr 2016 16:52:45 -0600

pkg: first pass at dmg creation

Diffstat:
Apkg/osx/Info.plist | 9+++++++++
Mpkg/package.sh | 35++++++++++++++++++++++++++++++++++-
2 files changed, 43 insertions(+), 1 deletion(-)

diff --git a/pkg/osx/Info.plist b/pkg/osx/Info.plist @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" +"http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleExecutable</key> + <string>citrun_gl</string> +</dict> +</plist> diff --git a/pkg/package.sh b/pkg/package.sh @@ -30,10 +30,43 @@ if [ "`uname`" == "OpenBSD" ]; then echo creating package from citrun-$ver.tar.gz export PORTSDIR=`pwd`/ports - # Disable tarball checksumming. export NO_CHECKSUM=1 make -C ports/devel/citrun clean=all make -C ports/devel/citrun package + +elif [ "`uname`" == "Darwin" ]; then + rm -rf Citrun.app citrun_rw_img.dmg Citrun-$ver.dmg + + # Recompile from a fresh tarball + tar xzf ../citrun-$ver.tar.gz + rm ../citrun-$ver.tar.gz + (cd citrun-$ver && jam) + + mkdir Citrun.app + mkdir Citrun.app/Contents + + # Start out with a standard unix style install + (cd citrun-$ver && PREFIX=../Citrun.app/Contents jam install) + + (cd Citrun.app/Contents && mv bin MacOS) + (cd Citrun.app/Contents && mv lib/* MacOS/) + (cd Citrun.app/Contents && mv man Reources) + + cp osx/Info.plist Citrun.app/Contents/ + + # In case this didn't happen last time + umount /Volumes/_Packager || true + hdiutil create -size 32m -fs HFS+ -volname "_Packager" citrun_rw_img.dmg + hdiutil attach citrun_rw_img.dmg + + # Figure out what device we just mounted + DEVS=$(hdiutil attach citrun_rw_img.dmg | cut -f 1) + DEV=$(echo $DEVS | cut -f 1 -d ' ') + + cp -R Citrun.app /Volumes/_Packager/ + + hdiutil detach $DEV + hdiutil convert citrun_rw_img.dmg -format UDZO -o Citrun-$ver.dmg else echo error: `uname` needs package magic fi