You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

makemacapp.in 1.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. #!/bin/sh
  2. set -u
  3. set -e
  4. trap onexit INT
  5. trap onexit TERM
  6. trap onexit EXIT
  7. TMPDIR=
  8. onexit()
  9. {
  10. if [ ! "$TMPDIR" = "" ]; then
  11. rm -rf $TMPDIR
  12. fi
  13. }
  14. usage()
  15. {
  16. echo "$0 [universal]"
  17. exit 1
  18. }
  19. UNIVERSAL=0
  20. PACKAGE_NAME=TigerVNC
  21. VERSION=@VERSION@
  22. BUILD=@BUILD@
  23. SRCDIR=@CMAKE_SOURCE_DIR@
  24. BINDIR=@CMAKE_BINARY_DIR@
  25. BUILDDIR32=@OSX_X86_BUILD@
  26. if [ $# -gt 0 ]; then
  27. if [ "$1" = "universal" ]; then
  28. UNIVERSAL=1
  29. fi
  30. fi
  31. cd $BINDIR
  32. if [ -f $PACKAGE_NAME.dmg ]; then
  33. rm -f $PACKAGE_NAME.dmg
  34. fi
  35. umask 022
  36. TMPDIR=`mktemp -d /tmp/$PACKAGE_NAME-build.XXXXXX`
  37. APPROOT="$TMPDIR/dmg/TigerVNC Viewer $VERSION.app"
  38. mkdir -p "$APPROOT/Contents/MacOS"
  39. mkdir -p "$APPROOT/Contents/Resources"
  40. install -m 755 vncviewer/vncviewer "$APPROOT/Contents/MacOS/TigerVNC Viewer"
  41. if [ $UNIVERSAL = 1 ]; then
  42. if [ ! -d $BUILDDIR32 ]; then
  43. echo ERROR: 32-bit build directory $BUILDDIR32 does not exist
  44. exit 1
  45. fi
  46. if [ ! -f $BUILDDIR32/Makefile ]; then
  47. echo ERROR: 32-bit build directory $BUILDDIR32 is not configured
  48. exit 1
  49. fi
  50. pushd $BUILDDIR32
  51. make
  52. popd
  53. lipo -create -arch i386 $BUILDDIR32/vncviewer/vncviewer -arch x86_64 \
  54. "$APPROOT/Contents/MacOS/TigerVNC Viewer" \
  55. -output "$APPROOT/Contents/MacOS/TigerVNC Viewer"
  56. fi
  57. install -m 644 $SRCDIR/release/tigervnc.icns "$APPROOT/Contents/Resources/"
  58. install -m 644 release/Info.plist "$APPROOT/Contents/"
  59. for lang in `cat "$SRCDIR/po/LINGUAS"`; do
  60. mkdir -p "$APPROOT/Contents/Resources/locale/$lang/LC_MESSAGES"
  61. install -m 644 po/$lang.mo \
  62. "$APPROOT/Contents/Resources/locale/$lang/LC_MESSAGES/tigervnc.mo"
  63. done
  64. install -m 644 $SRCDIR/LICENCE.TXT $TMPDIR/dmg/
  65. install -m 644 $SRCDIR/README.rst $TMPDIR/dmg/
  66. hdiutil create -fs HFS+ -volname $PACKAGE_NAME-$VERSION \
  67. -srcfolder "$TMPDIR/dmg" \
  68. $TMPDIR/$PACKAGE_NAME-$VERSION.dmg
  69. cp $TMPDIR/$PACKAGE_NAME-$VERSION.dmg .
  70. exit