summaryrefslogtreecommitdiffstats
path: root/util/scripts/mac-binary
diff options
context:
space:
mode:
Diffstat (limited to 'util/scripts/mac-binary')
-rwxr-xr-xutil/scripts/mac-binary/doit.sh24
-rw-r--r--util/scripts/mac-binary/install/debuglibraries/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/debuglibraries/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/debuglibraries/Resources/Readme.rtf7
-rw-r--r--util/scripts/mac-binary/install/debuglibraries/Resources/debuglibraries.info17
-rwxr-xr-xutil/scripts/mac-binary/install/debuglibraries/Resources/postflight58
-rwxr-xr-xutil/scripts/mac-binary/install/debuglibraries/create_package.sh73
-rw-r--r--util/scripts/mac-binary/install/docs/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/docs/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/docs/Resources/Readme.rtf7
-rw-r--r--util/scripts/mac-binary/install/docs/Resources/docs.info17
-rwxr-xr-xutil/scripts/mac-binary/install/docs/Resources/postflight16
-rwxr-xr-xutil/scripts/mac-binary/install/docs/create_package.sh35
-rw-r--r--util/scripts/mac-binary/install/examples/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/examples/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/examples/Resources/Readme.rtf7
-rw-r--r--util/scripts/mac-binary/install/examples/Resources/examples.info17
-rw-r--r--util/scripts/mac-binary/install/examples/Resources/postflight31
-rwxr-xr-xutil/scripts/mac-binary/install/examples/create_package.sh148
-rw-r--r--util/scripts/mac-binary/install/headers/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/headers/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/headers/Resources/Readme.rtf7
-rw-r--r--util/scripts/mac-binary/install/headers/Resources/headers.info17
-rwxr-xr-xutil/scripts/mac-binary/install/headers/Resources/postflight61
-rwxr-xr-xutil/scripts/mac-binary/install/headers/create_package.sh41
-rw-r--r--util/scripts/mac-binary/install/libraries/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/libraries/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/libraries/Resources/Readme.rtf7
-rw-r--r--util/scripts/mac-binary/install/libraries/Resources/libraries.info17
-rwxr-xr-xutil/scripts/mac-binary/install/libraries/Resources/postflight76
-rwxr-xr-xutil/scripts/mac-binary/install/libraries/create_package.sh48
-rwxr-xr-xutil/scripts/mac-binary/install/libraries/fix_config_paths.pl60
-rwxr-xr-xutil/scripts/mac-binary/install/libraries/fix_prl_paths.pl17
-rw-r--r--util/scripts/mac-binary/install/plugins/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/plugins/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/plugins/Resources/Readme.rtf7
-rw-r--r--util/scripts/mac-binary/install/plugins/Resources/plugins.info17
-rwxr-xr-xutil/scripts/mac-binary/install/plugins/Resources/postflight5
-rwxr-xr-xutil/scripts/mac-binary/install/plugins/create_package.sh31
-rw-r--r--util/scripts/mac-binary/install/tools/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/tools/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/tools/Resources/Readme.rtf7
-rwxr-xr-xutil/scripts/mac-binary/install/tools/Resources/postflight40
-rw-r--r--util/scripts/mac-binary/install/tools/Resources/tools.info17
-rwxr-xr-xutil/scripts/mac-binary/install/tools/create_package.sh142
-rw-r--r--util/scripts/mac-binary/install/translations/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/translations/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/translations/Resources/Readme.rtf7
-rwxr-xr-xutil/scripts/mac-binary/install/translations/Resources/postflight5
-rw-r--r--util/scripts/mac-binary/install/translations/Resources/translations.info17
-rw-r--r--util/scripts/mac-binary/install/translations/create_package.sh35
-rw-r--r--util/scripts/mac-binary/install/xcode/.build_separate0
-rw-r--r--util/scripts/mac-binary/install/xcode/.gitattributes1
-rw-r--r--util/scripts/mac-binary/install/xcode/Info.plist40
-rw-r--r--util/scripts/mac-binary/install/xcode/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/install/xcode/Resources/Readme.rtf7
-rw-r--r--util/scripts/mac-binary/install/xcode/Resources/xcode.info17
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/create_package.sh46
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/do_translate.sh9
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/fake_package.sh49
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/scripts/get_file_list.applescript31
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/integration/scripts/get_mocs.sh144
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/integration/scripts/make_moc.sh98
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/integration/scripts/make_rcc.sh45
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/integration/scripts/make_uic.sh43
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/Info.plist26
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS/build_bundle.sh20
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS/bundle.cpp129
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/Resources/CustomDataViews.plist48
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/version.plist16
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/TemplateInfo.plist5
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/class.cpp61
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/class.h62
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/Header File.pbfiletemplate/TemplateInfo.plist4
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/Header File.pbfiletemplate/header.h51
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/QRC File.pbfiletemplate/TemplateInfo.plist4
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/QRC File.pbfiletemplate/resource.qrc5
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/UI File.pbfiletemplate/TemplateInfo.plist4
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/UI File.pbfiletemplate/class.ui16
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/Info.plist24
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.mocs1
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.pbproj/TemplateInfo.plist11
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.pbproj/project.pbxproj377
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/main.cpp52
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/version.plist16
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/10-aboutQt.sh23
-rwxr-xr-xutil/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/20-getMocs.sh12
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/menuIcon.tiffbin0 -> 1738 bytes
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Specifications/qt.pbfilespec41
-rw-r--r--util/scripts/mac-binary/install/xcode/integration/templates/Specifications/qt.pblangspec84
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/English.lproj/InfoPlist.stringsbin0 -> 334 bytes
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/classes.nib43
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/info.nib23
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/keyedobjects.nib3688
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/classes.nib42
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/info.nib23
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/keyedobjects.nib2942
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/English.lproj/Localizable.stringsbin0 -> 154 bytes
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/Info.plist30
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/InstallerPane.xcodeproj/default.pbxuser238
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/InstallerPane.xcodeproj/project.pbxproj381
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/InstallerPanePane.h68
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/InstallerPanePane.mm250
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/InstallerPane_Prefix.pch8
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/InstallerSecionSection.h56
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/InstallerSecionSection.mm46
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/InstallerSections.plist16
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/helpfulfunc.h62
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/helpfulfunc.mm88
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/keydec.cpp323
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/keydec.h197
-rw-r--r--util/scripts/mac-binary/package/InstallerPane/version.plist14
-rw-r--r--util/scripts/mac-binary/package/MetaPackage/Info.plist30
-rw-r--r--util/scripts/mac-binary/package/MetaPackage/PkgInfo1
-rw-r--r--util/scripts/mac-binary/package/MetaPackage/Resources/Description.plist14
-rw-r--r--util/scripts/mac-binary/package/MetaPackage/Resources/Qt.info16
-rwxr-xr-xutil/scripts/mac-binary/package/Resources/InstallationCheck96
-rw-r--r--util/scripts/mac-binary/package/Resources/InstallationCheck.stringsbin0 -> 1688 bytes
-rw-r--r--util/scripts/mac-binary/package/Resources/background.jpgbin0 -> 16423 bytes
-rw-r--r--util/scripts/mac-binary/package/Welcome-commercial.rtf25
-rw-r--r--util/scripts/mac-binary/package/Welcome-eval.rtf28
-rw-r--r--util/scripts/mac-binary/package/Welcome-opensource.rtf28
-rw-r--r--util/scripts/mac-binary/package/backgrounds/DiskImage-Commercial.pngbin0 -> 8323 bytes
-rw-r--r--util/scripts/mac-binary/package/backgrounds/DiskImage-Eval.pngbin0 -> 8334 bytes
-rw-r--r--util/scripts/mac-binary/package/backgrounds/DiskImage-Opensource.pngbin0 -> 8503 bytes
-rw-r--r--util/scripts/mac-binary/package/backgrounds/DriveIcon.icnsbin0 -> 58112 bytes
-rw-r--r--util/scripts/mac-binary/package/keydecoder/main.cpp54
-rw-r--r--util/scripts/mac-binary/package/make-model-ds_store.applescript41
-rwxr-xr-xutil/scripts/mac-binary/package/mkcommercialpackage24
-rwxr-xr-xutil/scripts/mac-binary/package/mkpackage842
-rw-r--r--util/scripts/mac-binary/package/model-DS_Storebin0 -> 12292 bytes
-rwxr-xr-xutil/scripts/mac-binary/package/model-DS_Store-4.0.0bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.0.1bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.1.0bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.1.1bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.1.2bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.1.3bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.1.4bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.1.5bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.1.6bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.2.0bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.2.0-rc1bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.2.1bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.2.2bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.2.3bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.2.4bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.2.5bin0 -> 12293 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.3.0bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.3.1bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.3.2bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.3.3bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.3.4bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.3.5bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.4.0bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.4.0-rc1bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.4.1bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.4.2bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.4.3bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.4.4bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.4.5bin0 -> 12292 bytes
-rw-r--r--util/scripts/mac-binary/package/model-DS_Store-4.5.0bin0 -> 12292 bytes
-rwxr-xr-xutil/scripts/mac-binary/package/opensourceStuff/InstallationCheck15
-rw-r--r--util/scripts/mac-binary/package/opensourceStuff/InstallationCheck.stringsbin0 -> 180 bytes
-rwxr-xr-xutil/scripts/mac-binary/package/uninstall-qt.py154
164 files changed, 13112 insertions, 0 deletions
diff --git a/util/scripts/mac-binary/doit.sh b/util/scripts/mac-binary/doit.sh
new file mode 100755
index 0000000..109f014
--- /dev/null
+++ b/util/scripts/mac-binary/doit.sh
@@ -0,0 +1,24 @@
+#!/bin/bash -e
+[ -r $HOME/.bashrc ] && . $HOME/.bashrc
+VERSION=$1
+
+PACKAGE=qt-mac-commercial-src-${VERSION}.tar.gz
+OSPACKAGE=qt-mac-opensource-src-${VERSION}.tar.gz
+EVALPACKAGE=qt-mac-evalpatches-src-${VERSION}.tar.gz
+
+echo Downloading source packages...
+curl -O http://tirion.troll.no/~qt/packages/$VERSION/$PACKAGE
+curl -O http://tirion.troll.no/~qt/packages/$VERSION/$OSPACKAGE
+curl -O http://tirion.troll.no/~qt/packages/$VERSION/$EVALPACKAGE
+
+echo Building commercial package...
+./package/mkpackage -packages $HOME/tmp/mac-binary/install -qtpackage $PWD/$PACKAGE >log 2>&1
+
+echo Building opensource package...
+./package/mkpackage -packages $HOME/tmp/mac-binary/install -qtpackage $PWD/$OSPACKAGE >>log 2>&1
+
+echo Building eval package...
+./package/mkpackage -packages $HOME/tmp/mac-binary/install -qtpackage $PWD/$PACKAGE -licensetype eval >>log 2>&1
+
+echo -n Uploading results...
+scp -B outputs/*.dmg qt@tirion:public_html/packages/$VERSION
diff --git a/util/scripts/mac-binary/install/debuglibraries/Info.plist b/util/scripts/mac-binary/install/debuglibraries/Info.plist
new file mode 100644
index 0000000..b421879
--- /dev/null
+++ b/util/scripts/mac-binary/install/debuglibraries/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Debug Libraries</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.debuglibs</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Debug Libraries</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <false/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/debuglibraries/Resources/Description.plist b/util/scripts/mac-binary/install/debuglibraries/Resources/Description.plist
new file mode 100644
index 0000000..d12abfd
--- /dev/null
+++ b/util/scripts/mac-binary/install/debuglibraries/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Debug Libraries</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt Debug Libraries</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/debuglibraries/Resources/Readme.rtf b/util/scripts/mac-binary/install/debuglibraries/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/debuglibraries/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/debuglibraries/Resources/debuglibraries.info b/util/scripts/mac-binary/install/debuglibraries/Resources/debuglibraries.info
new file mode 100644
index 0000000..7acd621
--- /dev/null
+++ b/util/scripts/mac-binary/install/debuglibraries/Resources/debuglibraries.info
@@ -0,0 +1,17 @@
+Title Qt Libraries
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Debug Libraries
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/debuglibraries/Resources/postflight b/util/scripts/mac-binary/install/debuglibraries/Resources/postflight
new file mode 100755
index 0000000..be34b81
--- /dev/null
+++ b/util/scripts/mac-binary/install/debuglibraries/Resources/postflight
@@ -0,0 +1,58 @@
+#!/bin/sh
+#fix the doc path
+#PACK_LOCATION="$1"
+#INST_LOCATION="$3"
+#"$PACK_LOCATION/Contents/Resources/qtconf.pl" -version $VERSION_MAJOR$.$VERSION_MINOR$ -value "$INST_LOCATION/System/Library" Libraries
+
+t()
+{
+ o="$1"
+ i="$INSTALLER_TEMP/`basename $o`_t"
+ rm -f "$i"
+ mv "$o" "$i"
+ perl -e "open(SIN, \"<\" . \"$i\");
+ open(SOUT, \">\" . \"$o\");
+ local $/;
+ binmode SIN;
+ binmode SOUT;
+ \$ulen = length(\"$2\")+1;
+ \$plen = length(\"$3\")+1;
+ \$klen = length(\"$4\")+1;
+ while(\$C = <SIN>) {
+ \$C =~ s,(qt_lcnsuser=).{\$ulen},\\1$2\\0,;
+ \$C =~ s,(qt_lcnsprod=).{\$plen},\1$3\0,;
+ \$C =~ s,(qt_qevalkey=).{\$klen},\1$4\0,;
+ print SOUT \$C;
+ }
+ close SIN;
+ close SOUT"
+}
+
+for lib in QtCore QtGui QtNetwork QtXml QtOpenGL QtSql Qt3Support QtSvg QtScript; do
+ [ -d "${3}/Library/Frameworks/${lib}.framework" ] || continue
+ cd "${3}/Library/Frameworks/${lib}.framework/Versions/$VERSION_MAJOR$.0"
+ Products="bad product"
+ (Licensee="not-licensed"; LicenseKeyExt="bad-license"; . $HOME/.qt-license >/dev/null 2>&1
+ if [ "$LicenseKeyExt" != "bad-license" ]; then
+ productTest=`echo $LicenseKeyExt | cut -f 1 -d - | cut -b 1`
+ case $productTest in
+ F)
+ # Universal
+ Products="Universal"
+ ;;
+ B)
+ # Desktop
+ Products="Desktop"
+ ;;
+ L)
+ # Desktop Lite
+ Products="Desktop Light"
+ ;;
+ *)
+ Products="bad product"
+ esac
+ fi
+ t "${lib}_debug" "$Licensee" "$Products" "$LicenseKeyExt")
+done
+
+exit 0
diff --git a/util/scripts/mac-binary/install/debuglibraries/create_package.sh b/util/scripts/mac-binary/install/debuglibraries/create_package.sh
new file mode 100755
index 0000000..ed3a85d
--- /dev/null
+++ b/util/scripts/mac-binary/install/debuglibraries/create_package.sh
@@ -0,0 +1,73 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+SRCDIR=
+OUTDIR=
+DO_DEBUG=yes
+while [ -n "$1" ]; do
+ echo "$1" | grep '^--*=*' >/dev/null 2>&1 || break
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ debug) DO_DEBUG="$ARG" ;;
+ qtsrc) SRCDIR="$ARG" ;;
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+[ -z "$OUTDIR" ] && exit 1
+
+#setup
+FRAMEWORK_DIR="$OUTDIR/Library/Frameworks"
+mkdir -p "$FRAMEWORK_DIR"
+
+for lib in QtCore QtGui QtNetwork QtXml QtOpenGL QtSql Qt3Support QtSvg QtAssistant QtDesigner QtDesignerComponents QtTest QtScript QtScriptTools QtHelp QtXmlPatterns QtWebKit QtDBus phonon; do
+ if [ ! -d "$BINDIR/lib/${lib}.framework" ]; then
+ echo "No framework for $lib!"
+ continue
+ fi
+ cp -R "$BINDIR/lib/${lib}.framework" "$FRAMEWORK_DIR/" >/dev/null 2>&1
+ ../libraries/fix_config_paths.pl "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}_debug" "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}_debug.fixed"
+ mv "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}_debug.fixed" "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}_debug"
+ ../libraries/fix_prl_paths.pl "$FRAMEWORK_DIR/${lib}.framework/${lib}_debug.prl" "$FRAMEWORK_DIR/${lib}.framework/${lib}_debug.prl.fixed"
+ mv "$FRAMEWORK_DIR/${lib}.framework/${lib}_debug.prl.fixed" "$FRAMEWORK_DIR/${lib}.framework/${lib}_debug.prl"
+ # Remove the normal libraries and headers (they are part of another package)
+ # some find command here.
+ find "$FRAMEWORK_DIR/${lib}.framework" -name ${lib} -o -name ${lib}'.*' -a ! -name ${lib}.framework | xargs rm >/dev/null 2>&1
+ find "$FRAMEWORK_DIR/${lib}.framework/" -name Headers -exec rm -rf {} \; >/dev/null 2>&1
+ # Since we are using dwarf-2 for debugging, we need to store the dSYM bundles as well.
+ /usr/bin/dsymutil -o "$FRAMEWORK_DIR/${lib}.framework/${lib}_debug.dSYM" "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}_debug"
+done
+
+#Handle the libraries in tools as well
+mkdir -p "$OUTDIR/usr/lib"
+
+#first QtAssistantClient, and QtUiTools since they are static
+for lib in libQtUiTools_debug.a; do
+ [ -e "$BINDIR/lib/${lib}" ] && cp "$BINDIR/lib/${lib}" "$OUTDIR/usr/lib/${lib}"
+done
+
+if [ -e "${BINDIR}/lib/libQtCLucene_debug.${VERSION_MAJOR}.dylib" ]; then
+ mkdir -p "$OUTDIR/usr/lib"
+ for lib in libQtCLucene_debug.dylib libQtCLucene_debug.${VERSION_MAJOR}.dylib libQtCLucene_debug.${VERSION_MAJOR}.${VERSION_MINOR}.dylib libQtCLucene_debug.${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}.dylib; do
+ cp -R "${BINDIR}/lib/$lib" "$OUTDIR/usr/lib/"
+ /usr/bin/dsymutil "$OUTDIR/usr/lib/$lib"
+ done
+fi
+
+
+# Now for the plugins
+for plugin in `find $BINDIR/plugins/ -name 'lib*.dylib'`; do
+ if echo `basename $plugin` | grep "_debug" >/dev/null 2>&1; then
+ out_plugin=`echo $plugin | sed "s,^$BINDIR,$OUTDIR/Developer/Applications/Qt,g"`
+ pluginDirName= `dirname $out_plugin`
+ mkdir -p $pluginDirName
+ [ -e "$plugin" ] && ../libraries/fix_config_paths.pl "$plugin" "$out_plugin"
+ /usr/bin/dsymutil -o "$pluginDirName/$out_plugin.dSYM" "$out_plugin"
+ fi
+done
+
+exit 0
diff --git a/util/scripts/mac-binary/install/docs/Info.plist b/util/scripts/mac-binary/install/docs/Info.plist
new file mode 100644
index 0000000..f67feed
--- /dev/null
+++ b/util/scripts/mac-binary/install/docs/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Documentation</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.docs</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Documentation</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <false/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/docs/Resources/Description.plist b/util/scripts/mac-binary/install/docs/Resources/Description.plist
new file mode 100644
index 0000000..b89be7b
--- /dev/null
+++ b/util/scripts/mac-binary/install/docs/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Documentation</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt Documentation</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/docs/Resources/Readme.rtf b/util/scripts/mac-binary/install/docs/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/docs/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/docs/Resources/docs.info b/util/scripts/mac-binary/install/docs/Resources/docs.info
new file mode 100644
index 0000000..6be46f2
--- /dev/null
+++ b/util/scripts/mac-binary/install/docs/Resources/docs.info
@@ -0,0 +1,17 @@
+Title Qt Documentation
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Documentation
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/docs/Resources/postflight b/util/scripts/mac-binary/install/docs/Resources/postflight
new file mode 100755
index 0000000..ecd77da
--- /dev/null
+++ b/util/scripts/mac-binary/install/docs/Resources/postflight
@@ -0,0 +1,16 @@
+#!/bin/sh
+#fix the doc path
+#PACK_LOCATION="$1"
+#INST_LOCATION="$3"
+#"$PACK_LOCATION/Contents/Resources/qtconf.pl" -version $VERSION_MAJOR$.$VERSION_MINOR$ -value "$INST_LOCATION/Developer/Documentation/Qt" Documentation
+
+#get the documentation into the index
+DOC_INDEX="/Developer/Documentation/Help/Developer Help Viewer/MacOSXDeveloper.pbHelpIndexerList"
+if [ -e "$DOC_INDEX" ]; then
+ if grep "$3/Developer/Documentation/Qt" "$DOC_INDEX" >/dev/null 2>&1; then
+ true
+ else
+ echo "$3/Developer/Documentation/Qt" >>"$$DOC_INDEX"
+ /Developer/Tools/pbhelpindexer &
+ fi
+fi \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/docs/create_package.sh b/util/scripts/mac-binary/install/docs/create_package.sh
new file mode 100755
index 0000000..fccd6fc
--- /dev/null
+++ b/util/scripts/mac-binary/install/docs/create_package.sh
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+SRCDIR=
+OUTDIR=
+while [ -n "$1" ]; do
+ echo "$1" | grep '^--*=*' >/dev/null 2>&1 || break
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ qtsrc) SRCDIR="$ARG" ;;
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+[ -z "$OUTDIR" ] && exit 1
+
+mkdir -p "$OUTDIR/Developer/Documentation/Qt"
+for dir in `find "$SRCDIR/doc" -name 'html*' -type d`; do
+ cp -R "$dir" "$OUTDIR/Developer/Documentation/Qt"
+done
+
+for dir in `find "$SRCDIR/doc" -name 'qch' -type d`; do
+ cp -R "$dir" "$OUTDIR/Developer/Documentation/Qt"
+done
+
+# The old code.
+#cp -R "$SRCDIR/doc/html/" "$OUTDIR/Developer/Documentation/Qt"
+#[ "$SRCDIR" != "$BINDIR" ] && cp -R "$BINDIR/doc/html/" "$OUTDIR/Developer/Documentation/Qt"
+#ln -s . "$OUTDIR/Developer/Documentation/Qt/html"
+
+exit 0
diff --git a/util/scripts/mac-binary/install/examples/Info.plist b/util/scripts/mac-binary/install/examples/Info.plist
new file mode 100644
index 0000000..1799025
--- /dev/null
+++ b/util/scripts/mac-binary/install/examples/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Examples</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.examples</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Examples</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <true/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/examples/Resources/Description.plist b/util/scripts/mac-binary/install/examples/Resources/Description.plist
new file mode 100644
index 0000000..ad798e3
--- /dev/null
+++ b/util/scripts/mac-binary/install/examples/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Examples</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt Examples</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/examples/Resources/Readme.rtf b/util/scripts/mac-binary/install/examples/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/examples/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/examples/Resources/examples.info b/util/scripts/mac-binary/install/examples/Resources/examples.info
new file mode 100644
index 0000000..f94a510
--- /dev/null
+++ b/util/scripts/mac-binary/install/examples/Resources/examples.info
@@ -0,0 +1,17 @@
+Title Qt Examples
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Examples
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/examples/Resources/postflight b/util/scripts/mac-binary/install/examples/Resources/postflight
new file mode 100644
index 0000000..e7c10e7
--- /dev/null
+++ b/util/scripts/mac-binary/install/examples/Resources/postflight
@@ -0,0 +1,31 @@
+#!/usr/bin/env python
+
+import os, sys, grp
+
+startPath = os.path.join(sys.argv[2], "Developer/Examples/Qt")
+qmakeCache = open(os.path.join(startPath, ".qmake.cache"), "w")
+qmakeCache.write("#nothing anymore...")
+qmakeCache.close()
+adminGid = grp.getgrnam('admin')[2]
+
+# Generate Xcode projects for everything and make things
+# writeable to the admin users
+for root, dirs, files in os.walk(startPath, topdown = False):
+ for name in files:
+ fullName = os.path.join(root, name)
+ currUid = os.stat(fullName).st_uid
+ if name.endswith(".pro"):
+ os.chdir(os.path.dirname(fullName))
+ print "/usr/bin/qmake -spec macx-xcode %s [%s]" % (name, fullName)
+ sys.stdout.flush() # To make the logger update in a timely fashion
+ os.system('/usr/bin/qmake -spec macx-xcode "%s"' % (name))
+ os.chown(fullName, currUid, adminGid)
+ if os.access(fullName, os.X_OK):
+ os.chmod(fullName, 0775)
+ elif os.access(fullName, os.W_OK):
+ os.chmod(fullName, 0664)
+ for name in dirs:
+ fullName = os.path.join(root, name)
+ currUid = os.stat(fullName).st_uid
+ os.chown(fullName, currUid, adminGid)
+ os.chmod(fullName, 0775)
diff --git a/util/scripts/mac-binary/install/examples/create_package.sh b/util/scripts/mac-binary/install/examples/create_package.sh
new file mode 100755
index 0000000..f2a82f2
--- /dev/null
+++ b/util/scripts/mac-binary/install/examples/create_package.sh
@@ -0,0 +1,148 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+SRCDIR=
+OUTDIR=
+while [ -n "$1" ]; do
+ echo "$1" | grep '^--*=*' >/dev/null 2>&1 || break
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ qtsrc) SRCDIR="$ARG" ;;
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+[ -z "$OUTDIR" ] && exit 1
+
+mkdir -p "$OUTDIR/Developer/Examples/Qt"
+
+get_sources()
+{
+ DIR="$1"
+ IN="$2"
+ for file in `find $DIR -type f`; do
+ case $file in #only need sources
+ */ui_*.h|*/moc_*.cpp|*/qrc_*.cpp|*.app|*.app/*|*/.obj/*|*/.ui/*|*/.rcc/*|*/.moc/*|*/Makefile|*.build*|*.xcode*|*/build|*/build/*|*.doc|*~|*.gch|*.gch/*|*/.DS_Store|*/.gdb_history) continue ;;
+ *) ;;
+ esac
+ [ -x "$file" ] && continue
+ FILE=`echo "$file" | sed "s,^$DIR,,"`
+ mkdir -p "$OUTDIR/Developer/Examples/Qt/$IN/`dirname $FILE`"
+ cp "$file" "$OUTDIR/Developer/Examples/Qt/$IN/$FILE"
+ done
+}
+
+#examples
+get_sources "$SRCDIR/examples/"
+rm -rf "$OUTDIR/Developer/Examples/Qt/activeqt" #we don't need it
+for category_dir in $BINDIR/examples/*; do
+ for example_dir in $category_dir/*; do
+ [ -d "$example_dir" ] || continue
+ example_cat=`echo $example_dir | sed "s,^$BINDIR/examples/,,"`
+ [ -d "${OUTDIR}/Developer/Examples/Qt/${example_cat}" ] || continue
+ example=`basename $example_dir`
+ EXE=
+ if [ -x "${example_dir}/${example}" ]; then
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/${example_cat}/"
+ EXE="${OUTDIR}/Developer/Examples/Qt/${example_cat}/${example}"
+ cp "${example_dir}/${example}" "$EXE"
+ elif [ -d "${example_dir}/${example}.app" ]; then #in a bundle
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/${example_cat}/"
+ cp -R "${example_dir}/${example}.app" "${OUTDIR}/Developer/Examples/Qt/${example_cat}/"
+ EXE="${OUTDIR}/Developer/Examples/Qt/${example_cat}/${example}.app/Contents/MacOS/${example}"
+ else
+ FOUND=no
+ for f in ${example_dir}/*; do
+ if [ '!' -d "$f" ] && [ -x "$f" ]; then
+ FOUND=yes
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/${example_cat}/"
+ EXE="${OUTDIR}/Developer/Examples/Qt/${example_cat}/`basename $f`"
+ cp "$f" "$EXE"
+ elif echo "$f" | grep ".dylib$" >/dev/null 2>&1; then
+ FOUND=yes
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/${example_cat}/"
+ EXE="${OUTDIR}/Developer/Examples/Qt/${example_cat}/`basename $f`"
+ cp "$f" "$EXE"
+ elif [ -d "$f" ] && echo "$f" | grep ".app$" >/dev/null 2>&1; then
+ FOUND=yes
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/${example_cat}/"
+ cp -R "$f" "${OUTDIR}/Developer/Examples/Qt/${example_cat}/"
+ APP_NAME=`basename $f | sed "s,\.app$,,"`
+ EXE="${OUTDIR}/Developer/Examples/Qt/${example_cat}/${APP_NAME}.app/Contents/MacOS/$APP_NAME"
+ fi
+ done
+ #[ "$FOUND" = "no" ] && echo "Unable to find binary for Example [$example]"
+ fi
+ if [ "$example" = "plugandpaint" ]; then
+ PLG="${OUTDIR}/Developer/Examples/Qt/${example_cat}/plugins/"
+ mkdir -p "$PLG"
+ for plugin in ${example_dir}/plugins/*.dylib; do
+ ../libraries/fix_config_paths.pl "$plugin" "/tmp/tmp.plg"
+ cp "/tmp/tmp.plg" "$PLG/`basename $plugin`"
+ rm -f "/tmp/tmp.plg"
+ done
+ fi
+ if [ -x "$EXE" ]; then
+ ../libraries/fix_config_paths.pl "$EXE" "/tmp/tmp.exe"
+ strip "/tmp/tmp.exe"
+ cp "/tmp/tmp.exe" "$EXE"
+ rm -f "/tmp/tmp.exe"
+ chmod a+x "$EXE"
+ fi
+ done
+done
+
+#demos
+get_sources "$SRCDIR/demos" "Demos"
+for demo_dir in $BINDIR/demos/*; do
+ [ -d "$demo_dir" ] || continue
+ demo=`basename $demo_dir`
+ EXE=
+ if [ "$demo" = "qtdemo" ]; then
+ mkdir -p "${OUTDIR}/Developer/Applications/Qt/"
+ cp -R "$BINDIR/bin/${demo}.app" "${OUTDIR}/Developer/Applications/Qt/"
+ EXE="${OUTDIR}/Developer/Applications/Qt/${demo}.app/Contents/MacOS/${demo}"
+ elif [ -x "${demo_dir}/${demo}" ]; then
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/Demos/${demo}"
+ EXE="${OUTDIR}/Developer/Examples/Qt/Demos/${demo_dir}/${demo}"
+ cp "${demo}/${demo}" "$EXE"
+ elif [ -d "${demo_dir}/${demo}.app" ]; then #in a bundle
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/Demos/${demo}"
+ cp -R "${demo_dir}/${demo}.app" "${OUTDIR}/Developer/Examples/Qt/Demos/${demo}"
+ EXE="${OUTDIR}/Developer/Examples/Qt/Demos/${demo}/${demo}.app/Contents/MacOS/$demo"
+ else
+ FOUND=no
+ for f in ${demo_dir}/*; do
+ if [ '!' -d "$f" ] && [ -x "$f" ]; then
+ FOUND=yes
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/Demos/${demo}/"
+ EXE="${OUTDIR}/Developer/Examples/Qt/Demos/${demo_dir}/`basename $f`"
+ cp "$f" "$EXE"
+ elif echo "$f" | grep ".dylib$" >/dev/null 2>&1; then
+ FOUND=yes
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/Demos/${demo}/"
+ EXE="${OUTDIR}/Developer/Examples/Qt/Demos/${demo_dir}/`basename $f`"
+ cp "$f" "$EXE"
+ elif [ -d "$f" ] && echo "$f" | grep ".app$" >/dev/null 2>&1; then
+ FOUND=yes
+ mkdir -p "${OUTDIR}/Developer/Examples/Qt/Demos/${demo}/"
+ cp -R "$f" "${OUTDIR}/Developer/Examples/Qt/Demos/${demo}/"
+ APP_NAME=`basename $f | sed "s,\.app$,,"`
+ EXE="${OUTDIR}/Developer/Examples/Qt/Demos/${demo}/${APP_NAME}.app/Contents/MacOS/$APP_NAME}"
+ fi
+ done
+ fi
+ if [ -x "$EXE" ]; then
+ ../libraries/fix_config_paths.pl "$EXE" "/tmp/tmp.exe"
+ strip "/tmp/tmp.exe"
+ cp "/tmp/tmp.exe" "$EXE"
+ rm -f "/tmp/tmp.exe"
+ chmod a+x "$EXE"
+ fi
+done
+
+exit 0
diff --git a/util/scripts/mac-binary/install/headers/Info.plist b/util/scripts/mac-binary/install/headers/Info.plist
new file mode 100644
index 0000000..3cf7064
--- /dev/null
+++ b/util/scripts/mac-binary/install/headers/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Headers</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.headers</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Headers</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <false/>
+ <key>IFPkgFlagIsRequired</key>
+ <false/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/headers/Resources/Description.plist b/util/scripts/mac-binary/install/headers/Resources/Description.plist
new file mode 100644
index 0000000..ddfe8a9
--- /dev/null
+++ b/util/scripts/mac-binary/install/headers/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Headers</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt Headers</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/headers/Resources/Readme.rtf b/util/scripts/mac-binary/install/headers/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/headers/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/headers/Resources/headers.info b/util/scripts/mac-binary/install/headers/Resources/headers.info
new file mode 100644
index 0000000..a241de8e
--- /dev/null
+++ b/util/scripts/mac-binary/install/headers/Resources/headers.info
@@ -0,0 +1,17 @@
+Title Qt Headers
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Headers
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/headers/Resources/postflight b/util/scripts/mac-binary/install/headers/Resources/postflight
new file mode 100755
index 0000000..aefec7b
--- /dev/null
+++ b/util/scripts/mac-binary/install/headers/Resources/postflight
@@ -0,0 +1,61 @@
+#!/usr/bin/env python
+
+import os, re
+
+def getEditionDefine(licenseKey):
+ ProductMap = { 'F': 'QT_EDITION_UNIVERSAL', 'B': 'QT_EDITION_DESKTOP',
+ 'L': 'QT_EDITION_DESKTOPLIGHT', 'R': 'QT_EDITION_CONSOLE',
+ 'OPEN': 'QT_EDITION_OPENSOURCE' }
+
+ LicenseTypeMap = { 'Z4M': "QT_EDITION_EVALUATION", 'R4M': "QT_EDITION_EVALUATION",
+ 'Q4M': "QT_EDITION_EVALUATION", '34M': "QT_EDITION_ACADEMIC",
+ 'TBM': "QT_EDITION_EDUCATIONAL" }
+
+ if len(licenseKey) == 0:
+ return 'QT_EDITION_UNKNOWN'
+ licenseParts = licenseKey.split('-')
+ productDefine = LicenseTypeMap.get(licenseParts[2], "")
+ if len(productDefine) == 0:
+ productDefine = ProductMap.get(licenseParts[0][0], 'QT_EDITION_UNKNOWN')
+
+ return productDefine
+
+def alterQConfig(qconfigPath, licenseKey):
+ qconfigFile = open(qconfigPath, 'r')
+ qconfigLines = qconfigFile.readlines()
+ qconfigFile.close()
+ finalContents = []
+ editionRE = re.compile(r"(^#\s*define QT_EDITION) (.*)$")
+ licenseKeyRE = re.compile(r'(^#define QT_PRODUCT_LICENSEKEY).*$')
+
+ for line in qconfigLines:
+ tmpStr = line
+ matchObj = editionRE.search(line)
+ if matchObj:
+ tmpStr = matchObj.group(1) + " " + getEditionDefine(licenseKey) + "\n"
+ else:
+ matchObj = licenseKeyRE.search(line)
+ if matchObj:
+ tmpStr = matchObj.group(1) + ' "' + licenseKey + '"\n'
+ finalContents.append(tmpStr)
+ qconfigFile = open(qconfigPath, 'w')
+ qconfigFile.writelines(finalContents)
+ qconfigFile.close()
+
+def getLicenseKey():
+ licensePath = os.path.join(os.environ["HOME"], ".qt-license")
+ if not os.path.exists(licensePath):
+ return ""
+
+ licenseKeyRE = re.compile(r"^LicenseKeyExt=(.+)$")
+ file = open(licensePath, 'r')
+ for line in file:
+ matchObj = licenseKeyRE.search(line)
+ if matchObj:
+ return matchObj.group(1)
+
+if __name__ == "__main__":
+ import sys
+ qconfigPath = os.path.join(sys.argv[3],
+ "Library/Frameworks/QtCore.framework/Versions/4.0/Headers/qconfig.h")
+ alterQConfig(qconfigPath, getLicenseKey())
diff --git a/util/scripts/mac-binary/install/headers/create_package.sh b/util/scripts/mac-binary/install/headers/create_package.sh
new file mode 100755
index 0000000..02ff489
--- /dev/null
+++ b/util/scripts/mac-binary/install/headers/create_package.sh
@@ -0,0 +1,41 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+SRCDIR=
+OUTDIR=
+while [ -n "$1" ]; do
+ echo "$1" | grep '^--*=*' >/dev/null 2>&1 || break
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ qtsrc) SRCDIR="$ARG" ;;
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+[ -z "$OUTDIR" ] && exit 1
+
+#setup
+FRAMEWORK_DIR="$OUTDIR/Library/Frameworks"
+mkdir -p "$FRAMEWORK_DIR"
+
+for lib in QtCore QtGui QtNetwork QtXml QtOpenGL QtSql Qt3Support QtSvg QtScript QtScriptTools QtXmlPatterns QtWebKit QtDBus phonon; do
+ if [ ! -d "$BINDIR/lib/${lib}.framework/Headers" ]; then
+ echo "No headers for $lib"
+ continue
+ fi
+ (cd "$BINDIR/lib/${lib}.framework/"
+ for header in `find . -name Headers`; do
+ mkdir -p "$FRAMEWORK_DIR/${lib}.framework/`dirname $header`"
+ if [ -L "$header" ]; then
+ cp -RP "$header" "$FRAMEWORK_DIR/${lib}.framework/`dirname $header`"
+ else
+ cp -R "$header" "$FRAMEWORK_DIR/${lib}.framework/`dirname $header`"
+ fi
+ done)
+done
+
+exit 0
diff --git a/util/scripts/mac-binary/install/libraries/Info.plist b/util/scripts/mac-binary/install/libraries/Info.plist
new file mode 100644
index 0000000..6c70d73
--- /dev/null
+++ b/util/scripts/mac-binary/install/libraries/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Libraries</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.libs</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Libraries</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <true/>
+ <key>IFPkgFlagIsRequired</key>
+ <true/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/libraries/Resources/Description.plist b/util/scripts/mac-binary/install/libraries/Resources/Description.plist
new file mode 100644
index 0000000..ffba86f
--- /dev/null
+++ b/util/scripts/mac-binary/install/libraries/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Libraries</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt Libraries</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/libraries/Resources/Readme.rtf b/util/scripts/mac-binary/install/libraries/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/libraries/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/libraries/Resources/libraries.info b/util/scripts/mac-binary/install/libraries/Resources/libraries.info
new file mode 100644
index 0000000..aaad93f
--- /dev/null
+++ b/util/scripts/mac-binary/install/libraries/Resources/libraries.info
@@ -0,0 +1,17 @@
+Title Qt Libraries
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Libraries
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/libraries/Resources/postflight b/util/scripts/mac-binary/install/libraries/Resources/postflight
new file mode 100755
index 0000000..4bcaa6c
--- /dev/null
+++ b/util/scripts/mac-binary/install/libraries/Resources/postflight
@@ -0,0 +1,76 @@
+#!/usr/bin/env python
+
+import os, sys, shutil, re
+def replaceStrings(library, licensee, product, licenseKey):
+ tmpLib = os.path.join(os.environ["INSTALLER_TEMP"], os.path.basename(library) + "_t")
+ if os.path.exists(tmpLib):
+ os.remove(tmpLib)
+ shutil.move(library, tmpLib)
+ tmpLibFile = open(tmpLib, 'r')
+ libraryFile = open(library, 'w')
+ namRe = re.compile(r'(qt_lcnsuser=).{' + str(len(licensee) + 1) + r'}')
+ prdRe = re.compile(r'(qt_lcnsprod=).{' + str(len(product) + 1) + r'}')
+ keyRe = re.compile(r'(qt_qevalkey=).{' + str(len(licenseKey) + 1) + r'}')
+
+ for line in tmpLibFile.readlines():
+ line = namRe.sub('\\1' + licensee + '\0', line)
+ line = prdRe.sub('\\1' + product + '\0', line)
+ line = keyRe.sub('\\1' + licenseKey + '\0', line)
+ libraryFile.write(line)
+ libraryFile.close()
+ tmpLibFile.close()
+ os.remove(tmpLib)
+
+def getEditionDefine(licenseKey):
+ ProductMap = { 'F': 'Universal', 'B': 'Desktop',
+ 'L': 'Desktop Light', 'R': 'Console',
+ 'OPEN': 'Opensource' }
+
+ LicenseTypeMap = { 'Z4M': "Evaluation", 'R4M': "Evaluation",
+ 'Q4M': "Evaluation", '34M': "Academic",
+ 'TBM': "Educational" }
+
+ if len(licenseKey) == 0:
+ return 'QT_EDITION_UNKNOWN'
+ licenseParts = licenseKey.split('-')
+ productDefine = LicenseTypeMap.get(licenseParts[2], "")
+ if len(productDefine) == 0:
+ productDefine = ProductMap.get(licenseParts[0][0], 'QT_EDITION_UNKNOWN')
+
+ return productDefine
+
+def readLicenseFile():
+ licenseKeyPath = os.path.join(os.environ['HOME'], '.qt-license');
+
+ licenseKeyRE = re.compile(r"^LicenseKeyExt=(.+)$")
+ licenseeRE = re.compile(r"^Licensee=(.+)$")
+ license = open(licenseKeyPath, 'r')
+ licensee = "Bad Licensee"
+ product = "Bad Product"
+ licensekey = "Bad Key"
+ for line in license:
+ matchObj = licenseeRE.match(line)
+ if matchObj:
+ licensee = matchObj.group(1)
+ else:
+ matchObj = licenseKeyRE.match(line)
+ if matchObj:
+ licensekey = matchObj.group(1)
+ product = getEditionDefine(licensekey)
+ return (licensee, product, licensekey)
+
+def fixLibraries():
+ licensee, product, licensekey = readLicenseFile()
+
+ frameworks = [ "QtCore", "QtGui", "QtNetwork", "QtXml", "QtOpenGL", "QtSql", "Qt3Support", "QtSvg", "QtScript" ]
+ for framework in frameworks:
+ frameworkPath = os.path.join(sys.argv[3], 'Library', 'Frameworks', framework + '.framework')
+ if not os.path.exists(frameworkPath):
+ continue
+ os.chdir(os.path.join(frameworkPath, 'Versions', '4.0'))
+ replaceStrings(framework, licensee, product, licensekey)
+
+if __name__ == "__main__":
+ fixLibraries()
+ sys.exit(0)
+
diff --git a/util/scripts/mac-binary/install/libraries/create_package.sh b/util/scripts/mac-binary/install/libraries/create_package.sh
new file mode 100755
index 0000000..781f092
--- /dev/null
+++ b/util/scripts/mac-binary/install/libraries/create_package.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+SRCDIR=
+OUTDIR=
+DO_DEBUG=yes
+while [ -n "$1" ]; do
+ echo "$1" | grep '^--*=*' >/dev/null 2>&1 || break
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ debug) DO_DEBUG="$ARG" ;;
+ qtsrc) SRCDIR="$ARG" ;;
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+[ -z "$OUTDIR" ] && exit 1
+
+#setup
+FRAMEWORK_DIR="$OUTDIR/Library/Frameworks"
+mkdir -p "$FRAMEWORK_DIR"
+
+for lib in QtCore QtGui QtNetwork QtXml QtOpenGL QtSql Qt3Support QtSvg QtScript QtScriptTools QtXmlPatterns QtWebKit QtDBus phonon; do
+ if [ ! -d "$BINDIR/lib/${lib}.framework" ]; then
+ echo "No framework for $lib!"
+ continue
+ fi
+ cp -R "$BINDIR/lib/${lib}.framework" "$FRAMEWORK_DIR/" >/dev/null 2>&1
+ ./fix_prl_paths.pl "$FRAMEWORK_DIR/${lib}.framework/${lib}.prl" "$FRAMEWORK_DIR/${lib}.framework/${lib}.prl.fixed"
+ mv "$FRAMEWORK_DIR/${lib}.framework/${lib}.prl.fixed" "$FRAMEWORK_DIR/${lib}.framework/${lib}.prl"
+ ./fix_config_paths.pl "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/$lib" "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}.fixed"
+ mv "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}.fixed" "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/$lib"
+
+ # Make a sym-link to make things compatible with what we had in version before 4.2
+ OLDDIR="$PWD"
+ cd "$FRAMEWORK_DIR/${lib}.framework/Versions"
+ ln -s "${VERSION_MAJOR}" "4.0"
+ cd "$OLDDIR"
+ # Remove the debug libraries and headers (they are part of another package)
+ find "$FRAMEWORK_DIR/${lib}.framework/" -name '*_debug*' -exec rm -f {} \; >/dev/null 2>&1
+ find "$FRAMEWORK_DIR/${lib}.framework/" -name Headers -exec rm -rf {} \; >/dev/null 2>&1
+done
+
+exit 0
diff --git a/util/scripts/mac-binary/install/libraries/fix_config_paths.pl b/util/scripts/mac-binary/install/libraries/fix_config_paths.pl
new file mode 100755
index 0000000..6b9d777
--- /dev/null
+++ b/util/scripts/mac-binary/install/libraries/fix_config_paths.pl
@@ -0,0 +1,60 @@
+#!/usr/bin/perl -w
+
+use strict;
+
+#globals
+my %VARS = (
+ "docs" => "/Developer/Documentation/Qt",
+ "libs" => "/Library/Frameworks",
+ "plug" => "/Developer/Applications/Qt/plugins",
+ "trns" => "/Developer/Applications/Qt/translations",
+ "data" => "/usr/local/Qt" . $ENV{"VERSION_MAJOR"} . "." . $ENV{"VERSION_MINOR"},
+ "bins" => "/Developer/Tools/Qt",
+ "demo" => "/Developer/Examples/Qt/Demos",
+ "xmpl" => "/Developer/Examples/Qt/",
+ "hdrs" => "/usr/include",
+ "prfx" => "/"
+);
+my $file_in = 0;
+my $file_out = 0;
+
+#parse args
+while ( @ARGV ) {
+ my $arg = shift @ARGV;
+ if($arg =~ /^-/) {
+ my $val = shift @ARGV;
+ my $var = $arg;
+ $var =~ s,^-,,;
+ $VARS{$var} = $val;
+ } elsif(!$file_in) {
+ $file_in = $arg;
+ } elsif(!$file_out) {
+ $file_out = $arg;
+ } else {
+ die "$0 <file_in> <file_out>";
+ }
+}
+die "$0 <file_in> <file_out>" if(!$file_in || !$file_out);
+
+#open
+
+open(FIN , "<" . $file_in ) || die "Could not open $file_in for reading";
+open(FOUT, ">" . $file_out) || die "Could not open $file_out for writing";
+local $/;
+binmode FIN;
+binmode FOUT;
+
+#do stuff
+while(my $CONTENT = <FIN>) {
+ foreach (keys(%VARS)) {
+ my $var = "qt_" . $_ . "path=";
+ my $val = $VARS{$_};
+ my $val_length = length($val)+1;
+ $CONTENT =~ s,${var}.{$val_length},${var}${val}\0,g;
+ }
+ print FOUT $CONTENT;
+}
+
+#close
+close FIN;
+close FOUT;
diff --git a/util/scripts/mac-binary/install/libraries/fix_prl_paths.pl b/util/scripts/mac-binary/install/libraries/fix_prl_paths.pl
new file mode 100755
index 0000000..62c8f7a
--- /dev/null
+++ b/util/scripts/mac-binary/install/libraries/fix_prl_paths.pl
@@ -0,0 +1,17 @@
+#!/usr/bin/perl
+
+use strict;
+
+open(OLDFILE, "<" . "$ARGV[0]") || die "Couldn't open input file: $ARGV[0]";
+open(NEWFILE, ">" . "$ARGV[1]") || die "Couldn't open output file: $ARGV[1]";
+
+while (my $line = <OLDFILE>) {
+ $line =~ s,-L/(\w+(\w|\s|/)*)/pgsql/lib,,g;
+ $line =~ s,-L/(\w+(\w|\s|/)*)/mysql/lib/mysql,,g;
+ $line =~ s,-F(/private)?/tmp/qt-stuff/source/qt-mac-\w+-src-4\.\d\.\d(-rc\d)?/lib,,g;
+ $line =~ s,-L(/private)?/tmp/qt-stuff/source/qt-mac-\w+-src-4\.\d\.\d(-rc\d)?/lib,,g;
+ print NEWFILE $line;
+}
+
+close OLDFILE;
+close NEWFILE;
diff --git a/util/scripts/mac-binary/install/plugins/Info.plist b/util/scripts/mac-binary/install/plugins/Info.plist
new file mode 100644
index 0000000..4d2ae28
--- /dev/null
+++ b/util/scripts/mac-binary/install/plugins/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Plugins</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.plugins</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Plugins</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <true/>
+ <key>IFPkgFlagIsRequired</key>
+ <true/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/plugins/Resources/Description.plist b/util/scripts/mac-binary/install/plugins/Resources/Description.plist
new file mode 100644
index 0000000..9e94d9e
--- /dev/null
+++ b/util/scripts/mac-binary/install/plugins/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Plugins</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt Plugins</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/plugins/Resources/Readme.rtf b/util/scripts/mac-binary/install/plugins/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/plugins/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/plugins/Resources/plugins.info b/util/scripts/mac-binary/install/plugins/Resources/plugins.info
new file mode 100644
index 0000000..24fd13f
--- /dev/null
+++ b/util/scripts/mac-binary/install/plugins/Resources/plugins.info
@@ -0,0 +1,17 @@
+Title Qt Tools
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Plugins
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/plugins/Resources/postflight b/util/scripts/mac-binary/install/plugins/Resources/postflight
new file mode 100755
index 0000000..a8af8dd
--- /dev/null
+++ b/util/scripts/mac-binary/install/plugins/Resources/postflight
@@ -0,0 +1,5 @@
+#!/bin/sh
+#fix the doc path
+#PACK_LOCATION="$1"
+#INST_LOCATION="$3"
+#"$PACK_LOCATION/Contents/Resources/qtconf.pl" -version $VERSION_MAJOR$.$VERSION_MINOR$ -value "$INST_LOCATION/Developer/Applications/Qt/plugins" Plugins
diff --git a/util/scripts/mac-binary/install/plugins/create_package.sh b/util/scripts/mac-binary/install/plugins/create_package.sh
new file mode 100755
index 0000000..b722f68
--- /dev/null
+++ b/util/scripts/mac-binary/install/plugins/create_package.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+SRCDIR=
+OUTDIR=
+DO_DEBUG=yes
+while [ -n "$1" ]; do
+ echo "$1" | grep '^--*=*' >/dev/null 2>&1 || break
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ debug) DO_DEBUG="$ARG" ;;
+ qtsrc) SRCDIR="$ARG" ;;
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+[ -z "$OUTDIR" ] && exit 1
+
+#copy plugins
+for plugin in `find $BINDIR/plugins/ -name 'lib*.dylib'`; do
+ echo `basename $plugin` | grep "_debug" >/dev/null 2>&1 && continue
+ out_plugin=`echo $plugin | sed "s,^$BINDIR,$OUTDIR/Developer/Applications/Qt,g"`
+ mkdir -p `dirname $out_plugin`
+ [ -e "$plugin" ] && ../libraries/fix_config_paths.pl "$plugin" "$out_plugin"
+done
+
+exit 0
diff --git a/util/scripts/mac-binary/install/tools/Info.plist b/util/scripts/mac-binary/install/tools/Info.plist
new file mode 100644
index 0000000..f30ba03
--- /dev/null
+++ b/util/scripts/mac-binary/install/tools/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Tools</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.tools</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Tools</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <true/>
+ <key>IFPkgFlagIsRequired</key>
+ <true/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/tools/Resources/Description.plist b/util/scripts/mac-binary/install/tools/Resources/Description.plist
new file mode 100644
index 0000000..5a88747
--- /dev/null
+++ b/util/scripts/mac-binary/install/tools/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Tools</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt Tools</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/tools/Resources/Readme.rtf b/util/scripts/mac-binary/install/tools/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/tools/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/tools/Resources/postflight b/util/scripts/mac-binary/install/tools/Resources/postflight
new file mode 100755
index 0000000..d9c4a57
--- /dev/null
+++ b/util/scripts/mac-binary/install/tools/Resources/postflight
@@ -0,0 +1,40 @@
+#!/usr/bin/env python
+
+import os, sys, shutil, re
+
+def readLicenseFile():
+ licenseKeyPath = os.path.join(os.environ['HOME'], '.qt-license');
+
+ licenseKeyRE = re.compile(r"^LicenseKeyExt=(.+)$")
+ license = open(licenseKeyPath, 'r')
+ licensekey = "Bad Key"
+ for line in license:
+ matchObj = licenseKeyRE.match(line)
+ if matchObj:
+ licensekey = matchObj.group(1)
+ return licensekey
+
+def getEditionDefine():
+ licenseKey = readLicenseFile()
+
+ MeteredMap = { '5': True, 'L': True }
+
+ if len(licenseKey) == 0:
+ return false
+
+ licenseParts = licenseKey.split('-')
+ return MeteredMap.get(licenseParts[3][0], False)
+
+
+if __name__ == "__main__":
+ if getEditionDefine() == False:
+ usageReporterPath = os.path.join(os.path.sep, 'usr', 'bin', 'qtusagereporter')
+ reporterInDevToolsPath = os.path.join(os.path.sep, 'Developer', 'Tools', 'qtusagereporter')
+ if os.path.exists(usageReporterPath):
+ finalPath = os.path.realpath(usageReporterPath);
+ os.remove(finalPath)
+ if os.path.exists(reporterInDevToolsPath):
+ os.remove(reporterInDevToolsPath)
+ if os.path.exists(usageReporterPath):
+ os.remove(usageReporterPath)
+ sys.exit(0)
diff --git a/util/scripts/mac-binary/install/tools/Resources/tools.info b/util/scripts/mac-binary/install/tools/Resources/tools.info
new file mode 100644
index 0000000..54f8d04
--- /dev/null
+++ b/util/scripts/mac-binary/install/tools/Resources/tools.info
@@ -0,0 +1,17 @@
+Title Qt Tools
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Tools
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/tools/create_package.sh b/util/scripts/mac-binary/install/tools/create_package.sh
new file mode 100755
index 0000000..6ed1e15
--- /dev/null
+++ b/util/scripts/mac-binary/install/tools/create_package.sh
@@ -0,0 +1,142 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+SRCDIR=
+OUTDIR=
+DO_DEBUG=yes
+while [ -n "$1" ]; do
+ echo "$1" | grep '^--*=*' >/dev/null 2>&1 || break
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ debug) DO_DEBUG="$ARG" ;;
+ qtsrc) SRCDIR="$ARG" ;;
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+
+copyHeader()
+{
+ HEADER_FILE=$1
+ HEADER_DIR=$2
+ mkdir -p $HEADER_DIR
+ if [ `wc -l $HEADER_FILE | awk '{print $1;}'` = "1" ]; then
+ LINE=`head -1 $HEADER_FILE`
+ if echo "$LINE" | grep '^#include "../../' >/dev/null 2>&1; then
+ HEADER_FILE=`dirname $HEADER_FILE`/`echo $LINE | sed "s,^#include \"\([^\"]*\)\"\$,\1,"`
+ fi
+ fi
+ cp "$HEADER_FILE" "$HEADER_DIR"
+}
+
+copyHeaderDir()
+{
+ BASEDIR=$1
+ DESTDIR=$2
+ mkdir -p "$DESTDIR"
+ for header in `find "$BASEDIR" -type f`; do
+ case $header in
+ *_pch.h|*_p.h|*headers.pri)
+ continue
+ ;;
+ *)
+ copyHeader "$header" "$DESTDIR"
+ ;;
+ esac
+ done
+}
+
+[ -z "$OUTDIR" ] && exit 1
+
+#copy tools
+for a in qmake uic uic3 rcc moc Assistant Assistant_adp pixeltool Linguist Designer qt3to4 rccdump lrelease lupdate lconvert findtr qtusagereporter qdoc qcollectiongenerator qhelpconverter qhelpgenerator xmlpatterns qdbus qdbusviewer qdbusxml2cpp qdbuscpp2xml evalextender macdeployqt; do
+ EXE=
+ if [ -d "${BINDIR}/bin/${a}.app" ]; then
+ mkdir -p "$OUTDIR/Developer/Applications/Qt/"
+ cp -R "${BINDIR}/bin/${a}.app" "$OUTDIR/Developer/Applications/Qt"
+ EXE="$OUTDIR/Developer/Applications/Qt/${a}.app/Contents/MacOS/$a" #in the bundle
+ #place it into the tools dir
+ mkdir -p "$OUTDIR/Developer/Tools/Qt/"
+ ln -s "/Developer/Applications/Qt/${a}.app" "$OUTDIR/Developer/Tools/Qt/${a}.app"
+ elif [ -x "${BINDIR}/bin/${a}" -o -x "${BINDIR}/tools/qdoc3/${a}" ]; then
+ EXE="$OUTDIR/usr/bin/$a-${VERSION_MAJOR}.${VERSION_MINOR}"
+ mkdir -p `dirname $EXE`
+ cp "${BINDIR}/bin/$a" "$EXE"
+ ln -s "$a-${VERSION_MAJOR}.${VERSION_MINOR}" "$OUTDIR/usr/bin/$a"
+ #place it into the tools dir
+ mkdir -p "$OUTDIR/Developer/Tools/Qt/"
+ ln -s "/usr/bin/$a-${VERSION_MAJOR}.${VERSION_MINOR}" "$OUTDIR/Developer/Tools/Qt/$a"
+ fi
+ [ -z "$EXE" ] && continue
+
+ #configs
+ if [ "$a" = "qmake" ]; then
+ mkdir -p "$OUTDIR/usr/local/Qt${VERSION_MAJOR}.${VERSION_MINOR}/mkspecs"
+ cp -PR $SRCDIR/mkspecs/* "$OUTDIR/usr/local/Qt${VERSION_MAJOR}.${VERSION_MINOR}/mkspecs"
+ sed "s,qt_no_framework,,g" "$BINDIR/mkspecs/qconfig.pri" >"$OUTDIR/usr/local/Qt${VERSION_MAJOR}.${VERSION_MINOR}/mkspecs/qconfig.pri"
+ cat >>"$OUTDIR/usr/local/Qt${VERSION_MAJOR}.${VERSION_MINOR}/mkspecs/qconfig.pri" <<EOF
+CONFIG += no_mocdepend
+EOF
+ (cd "$OUTDIR/usr/local/Qt${VERSION_MAJOR}.${VERSION_MINOR}/mkspecs"; rm -f default; ln -s macx-xcode default)
+ ../libraries/fix_config_paths.pl -data "/usr/local/Qt${VERSION_MAJOR}.${VERSION_MINOR}" "$EXE" "/tmp/tmp.exe"
+ cp "/tmp/tmp.exe" "$EXE"
+ rm -f "/tmp/tmp.exe"
+ else
+ ../libraries/fix_config_paths.pl "$EXE" "/tmp/tmp.exe"
+ cp "/tmp/tmp.exe" "$EXE"
+ rm -f /tmp/tmp.exe
+ fi
+ #perms
+ strip "$EXE" >/dev/null 2>&1
+ chmod a+x "$EXE"
+done
+
+# Do the tool frameworks (Gah, this is copy-past from the libraries create_package.sh).
+FRAMEWORK_DIR="$OUTDIR/Library/Frameworks"
+mkdir -p "$FRAMEWORK_DIR"
+for lib in QtDesigner QtDesignerComponents QtTest QtAssistant QtHelp; do
+ if [ ! -d "$BINDIR/lib/${lib}.framework" ]; then
+ echo "No framework for $lib!"
+ continue
+ fi
+
+ cp -R "$BINDIR/lib/${lib}.framework" "$FRAMEWORK_DIR/" >/dev/null 2>&1
+ ../libraries/fix_prl_paths.pl "$FRAMEWORK_DIR/${lib}.framework/${lib}.prl" "$FRAMEWORK_DIR/${lib}.framework/${lib}.prl.fixed"
+ mv "$FRAMEWORK_DIR/${lib}.framework/${lib}.prl.fixed" "$FRAMEWORK_DIR/${lib}.framework/${lib}.prl"
+ ../libraries/fix_config_paths.pl "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/$lib" "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}.fixed"
+ mv "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/${lib}.fixed" "$FRAMEWORK_DIR/${lib}.framework/Versions/${VERSION_MAJOR}/$lib"
+
+ # Remove the debug libraries (they are part of another package)
+ find "$FRAMEWORK_DIR/${lib}.framework/" -name '*_debug*' -exec rm -f {} \; >/dev/null 2>&1
+done
+
+#copy q3porting.xml. qt3to4 looks for it in QLibraryInfo::DataPath and QLibraryInfo::PrefixPath
+cp $BINDIR/tools/porting/src/q3porting.xml $OUTDIR/usr/local/Qt${VERSION_MAJOR}.${VERSION_MINOR}/q3porting.xml
+
+# Finally handle QtUiTools
+if [ -e "${BINDIR}/lib/libQtUiTools.a" ]; then
+ mkdir -p "$OUTDIR/usr/lib"
+ cp "${BINDIR}/lib/libQtUiTools.a" "$OUTDIR/usr/lib/libQtUiTools.a"
+ # Copy its headers as well
+ copyHeaderDir "${BINDIR}/include/QtUiTools" "$OUTDIR/usr/include/QtUiTools"
+fi
+
+if [ -e "${BINDIR}/lib/libQtCLucene.${VERSION_MAJOR}.dylib" ]; then
+ mkdir -p "$OUTDIR/usr/lib"
+ for lib in libQtCLucene.dylib libQtCLucene.${VERSION_MAJOR}.dylib libQtCLucene.${VERSION_MAJOR}.${VERSION_MINOR}.dylib libQtCLucene.${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}.dylib; do
+ cp -R "${BINDIR}/lib/$lib" "$OUTDIR/usr/lib/"
+ done
+fi
+
+# finally phrase books for Linguist
+PHRASEDEST="$OUTDIR/Developer/Applications/Qt/phrasebooks"
+mkdir -p "$PHRASEDEST"
+for phrasebook in `find $BINDIR/tools/linguist/phrasebooks/ -name '*.qph'`; do
+ cp "$phrasebook" "$PHRASEDEST"
+done
+
+
diff --git a/util/scripts/mac-binary/install/translations/Info.plist b/util/scripts/mac-binary/install/translations/Info.plist
new file mode 100644
index 0000000..73eb840
--- /dev/null
+++ b/util/scripts/mac-binary/install/translations/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Translations</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.translations</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Translations</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <true/>
+ <key>IFPkgFlagIsRequired</key>
+ <true/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/translations/Resources/Description.plist b/util/scripts/mac-binary/install/translations/Resources/Description.plist
new file mode 100644
index 0000000..c1b27b2
--- /dev/null
+++ b/util/scripts/mac-binary/install/translations/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Translations</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt Translations</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/translations/Resources/Readme.rtf b/util/scripts/mac-binary/install/translations/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/translations/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/translations/Resources/postflight b/util/scripts/mac-binary/install/translations/Resources/postflight
new file mode 100755
index 0000000..a8af8dd
--- /dev/null
+++ b/util/scripts/mac-binary/install/translations/Resources/postflight
@@ -0,0 +1,5 @@
+#!/bin/sh
+#fix the doc path
+#PACK_LOCATION="$1"
+#INST_LOCATION="$3"
+#"$PACK_LOCATION/Contents/Resources/qtconf.pl" -version $VERSION_MAJOR$.$VERSION_MINOR$ -value "$INST_LOCATION/Developer/Applications/Qt/plugins" Plugins
diff --git a/util/scripts/mac-binary/install/translations/Resources/translations.info b/util/scripts/mac-binary/install/translations/Resources/translations.info
new file mode 100644
index 0000000..cc0d5b3
--- /dev/null
+++ b/util/scripts/mac-binary/install/translations/Resources/translations.info
@@ -0,0 +1,17 @@
+Title Qt Translations
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ Translations
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/translations/create_package.sh b/util/scripts/mac-binary/install/translations/create_package.sh
new file mode 100644
index 0000000..b8b2b78
--- /dev/null
+++ b/util/scripts/mac-binary/install/translations/create_package.sh
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+SRCDIR=
+OUTDIR=
+DO_DEBUG=yes
+while [ -n "$1" ]; do
+ echo "$1" | grep '^--*=*' >/dev/null 2>&1 || break
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ debug) DO_DEBUG="$ARG" ;;
+ qtsrc) SRCDIR="$ARG" ;;
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+[ -z "$OUTDIR" ] && exit 1
+
+#copy translation
+TRANSLATIONDEST="$OUTDIR/Developer/Applications/Qt/translations"
+mkdir -p "$TRANSLATIONDEST"
+for translation in `find $BINDIR/translations/ -name '*.qm'`; do
+ cp "$translation" "$TRANSLATIONDEST"
+done
+
+# Copy the untranslated, so there's a starting point for them as well.
+for translation in `find $BINDIR/translations/ -name '*_untranslated.ts'`; do
+ cp "$translation" "$TRANSLATIONDEST"
+done
+
+exit 0
diff --git a/util/scripts/mac-binary/install/xcode/.build_separate b/util/scripts/mac-binary/install/xcode/.build_separate
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/.build_separate
diff --git a/util/scripts/mac-binary/install/xcode/.gitattributes b/util/scripts/mac-binary/install/xcode/.gitattributes
new file mode 100644
index 0000000..5a2a8ee
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/.gitattributes
@@ -0,0 +1 @@
+integration/templates/*/Application/*/main.cpp -crlf
diff --git a/util/scripts/mac-binary/install/xcode/Info.plist b/util/scripts/mac-binary/install/xcode/Info.plist
new file mode 100644
index 0000000..4410b63
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/Info.plist
@@ -0,0 +1,40 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ XCode Integration</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt$VERSION_MAJOR$.xcode</string>
+ <key>CFBundleName</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ XCode Integration</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagAllowBackRev</key>
+ <false/>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagDefaultLocation</key>
+ <string>/</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFPkgFlagInstallFat</key>
+ <true/>
+ <key>IFPkgFlagIsRequired</key>
+ <true/>
+ <key>IFPkgFlagRelocatable</key>
+ <false/>
+ <key>IFPkgFlagRestartAction</key>
+ <string>NoRestart</string>
+ <key>IFPkgFlagRootVolumeOnly</key>
+ <true/>
+ <key>IFPkgFlagUpdateInstalledLanguages</key>
+ <false/>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/xcode/Resources/Description.plist b/util/scripts/mac-binary/install/xcode/Resources/Description.plist
new file mode 100644
index 0000000..386e200
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ XCode Integration</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt XCode Integration</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/xcode/Resources/Readme.rtf b/util/scripts/mac-binary/install/xcode/Resources/Readme.rtf
new file mode 100644
index 0000000..f5636ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/Resources/Readme.rtf
@@ -0,0 +1,7 @@
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Thanks for reading me} \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/xcode/Resources/xcode.info b/util/scripts/mac-binary/install/xcode/Resources/xcode.info
new file mode 100644
index 0000000..0f3e8a4
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/Resources/xcode.info
@@ -0,0 +1,17 @@
+Title Qt Tools
+Version $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$ XCode Integration
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization YES
+Required NO
+Relocatable YES
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
+
diff --git a/util/scripts/mac-binary/install/xcode/create_package.sh b/util/scripts/mac-binary/install/xcode/create_package.sh
new file mode 100755
index 0000000..f86932b
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/create_package.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+#options parsing
+BINDIR=
+OUTDIR=
+while [ -n "$1" ]; do
+ OPTION=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,^--\([^=]*\)=\(.*\),\2,'`
+ shift
+ case "$OPTION" in
+ qtbin) BINDIR="$ARG" ;;
+ outdir) OUTDIR="$ARG" ;;
+ *) ;;
+ esac
+done
+[ -z "$OUTDIR" ] && exit 1
+
+translate_cp()
+{
+ DO_TRANSLATE="$PWD/do_translate.sh"
+ if [ -d "$1" ]; then
+ (cd "$1" && find . -type f -exec "$DO_TRANSLATE" {} "$2" \;)
+ else
+ "$DO_TRANSLATE" "$1" "$2"
+ fi
+}
+
+#copy the scripts
+SCRPT_DIR="$OUTDIR/Library/Frameworks/QtCore.framework/Versions/${VERSION_MAJOR}.${VERSION_MINOR}/Resources/xcode"
+mkdir -p "$SCRPT_DIR"
+translate_cp integration/scripts "$SCRPT_DIR"
+for a in $SCRPT_DIR/*.sh; do
+ chmod a+x "$a"
+done
+ln -sf "Versions/${VERSION_MAJOR}.${VERSION_MINOR}/Resources" "$OUTDIR/Library/Frameworks/QtCore.framework/Resources"
+
+#copy the templates
+mkdir -p "$OUTDIR/Library/Application Support/Apple/Developer Tools/"
+translate_cp integration/templates "$OUTDIR/Library/Application Support/Apple/Developer Tools/"
+
+#build the bundle
+(cd "$OUTDIR/Library/Application Support/Apple/Developer Tools/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS"
+chmod 755 ./build_bundle.sh
+QTDIR="$BINDIR" ./build_bundle.sh)
+
+exit 0
diff --git a/util/scripts/mac-binary/install/xcode/do_translate.sh b/util/scripts/mac-binary/install/xcode/do_translate.sh
new file mode 100755
index 0000000..b1b00e49
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/do_translate.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+dir=`dirname "$2/$1"`
+mkdir -p "$dir"
+sed -e "s,\\\$VERSION_MAJOR\\\$,$VERSION_MAJOR,g" \
+ -e "s,\\\$VERSION_MINOR\\\$,$VERSION_MINOR,g" \
+ -e "s,\\\$VERSION_PATCH\\\$,$VERSION_PATCH,g" "$1" >"$2/$1"
+
+
diff --git a/util/scripts/mac-binary/install/xcode/fake_package.sh b/util/scripts/mac-binary/install/xcode/fake_package.sh
new file mode 100755
index 0000000..74175c5
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/fake_package.sh
@@ -0,0 +1,49 @@
+#!/bin/sh
+
+#for now
+VERSION_MAJOR=4
+VERSION_MINOR=0
+BINDIR="$QTDIR"
+
+translate_cp()
+{
+ DO_TRANSLATE="$PWD/do_translate.sh"
+ if [ -d "$1" ]; then
+ (cd "$1" && find . -type f -exec "$DO_TRANSLATE" {} "$2" \;)
+ else
+ "$DO_TRANSLATE" "$1" "$2"
+ fi
+}
+
+make_link()
+{
+ base=`basename "$1"`
+ rm -rf "$2/$base"
+ mkdir -p "$2"
+ ln -sf "$1" "$2"
+}
+
+#copy the templates
+rm -rf "$PWD/.faked_integration"
+mkdir -p "$PWD/.faked_integration"
+translate_cp integration/templates "$PWD/.faked_integration"
+(cd "$PWD/.faked_integration/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS"
+chmod 755 ./build_bundle.sh
+QTDIR="$BINDIR" ./build_bundle.sh)
+#links
+templ_dir="/Library/Application Support/Apple/Developer Tools/"
+make_link "$PWD/.faked_integration/CustomDataViews/QtDataFormatters.bundle" "$templ_dir/CustomDataViews"
+make_link "$PWD/.faked_integration/Project Templates/Application/Qt Application" "$templ_dir/Project Templates/Application"
+make_link "$PWD/.faked_integration/File Templates/Qt" "$templ_dir/File Templates"
+make_link "$PWD/.faked_integration/Scripts/999-Qt" "$templ_dir/Scripts"
+for a in `find "$PWD/.faked_integration/Specifications/" -name *.pb*spec`; do
+ make_link "$a" "$templ_dir/Specifications"
+done
+
+#copy the scripts
+SCRPT_DIR="/Library/Frameworks/QtCore.framework/Versions/${VERSION_MAJOR}.${VERSION_MINOR}/Resources/xcode"
+mkdir -p "$SCRPT_DIR"
+for script in integration/scripts/*; do
+ make_link "$PWD/$script" "$SCRPT_DIR"
+done
+ln -sf "Versions/${VERSION_MAJOR}.${VERSION_MINOR}/Resources" "/Library/Frameworks/QtCore.framework/Resources"
diff --git a/util/scripts/mac-binary/install/xcode/integration/scripts/get_file_list.applescript b/util/scripts/mac-binary/install/xcode/integration/scripts/get_file_list.applescript
new file mode 100644
index 0000000..6f110ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/scripts/get_file_list.applescript
@@ -0,0 +1,31 @@
+set all_files to {}
+tell application "Xcode"
+ tell project 1
+ repeat with f in file references
+ tell f
+ set fn to absolute path
+ set end of all_files to fn & "
+"
+ end tell
+ end repeat
+ set all_groups to {}
+ repeat with grp in groups
+ set end of all_groups to grp
+ end repeat
+ repeat with grp in all_groups
+ tell grp
+ repeat with grp in groups
+ set end of all_groups to grp
+ end repeat
+ repeat with f in file references
+ tell f
+ set fn to absolute path
+ set end of all_files to fn & "
+"
+ end tell
+ end repeat
+ end tell
+ end repeat
+ end tell
+end tell
+all_files \ No newline at end of file
diff --git a/util/scripts/mac-binary/install/xcode/integration/scripts/get_mocs.sh b/util/scripts/mac-binary/install/xcode/integration/scripts/get_mocs.sh
new file mode 100755
index 0000000..c3107fc
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/scripts/get_mocs.sh
@@ -0,0 +1,144 @@
+#!/bin/sh
+
+[ -z "$TEMP_FILE_DIR" ] && TEMP_FILE_DIR="/tmp"
+CFG_MODE=overwrite
+CFG_PREPROCESS_FLAGS=
+CFG_INPUT=
+CFG_OUTPUT=
+CFG_MOC="/usr/bin/moc"
+CFG_FILE_LIST="/Library/Frameworks/QtCore.framework/Resources/xcode/get_file_list.applescript"
+
+mocable()
+{
+ if grep '\bQ_OBJECT\b' "$1" >/dev/null 2>&1; then
+ return 0
+ fi
+ return 1
+}
+
+while [ -n "$1" ]; do
+ CACHE_1="$1"
+ OPTION=
+ ARG=
+ case $1 in
+ -*=*) #gnu style
+ OPTION=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\2,'`
+ ;;
+ -output|-moc|-file-list|-input) #second arg style
+ OPTION=`echo $1 | sed 's,-\([^=]*\),\1,'`
+ shift
+ ARG=$1
+ ;;
+ esac
+ shift
+ case "$OPTION" in
+ file-list) CFG_FILE_LIST="$ARG" ;;
+ moc) CFG_MOC="$ARG" ;;
+ input) CFG_INPUT="$ARG" ;;
+ output) CFG_OUTPUT="$ARG" ;;
+ help|*)
+ [ "$OPTION" = "help" ] || echo "Unknown option $CACHE_1!"
+ echo "Help!!"
+ exit 888;
+ ;;
+ esac
+done
+
+cd "${SOURCE_ROOT}"
+for a in $OTHER_CPLUSPLUSFLAGS; do
+ case "$a" in
+ -D*|-I*)
+ CFG_PREPROCESS_FLAGS="$CFG_PREPROCESS_FLAGS ${a}" ;;
+ *) ;;
+ esac
+done
+for a in $GCC_PREPROCESSOR_DEFINITIONS; do
+ CFG_PREPROCESS_FLAGS="$CFG_PREPROCESS_FLAGS -D${a}"
+done
+CFG_PREPROCESS_FLAGS="$CFG_PREPROCESS_FLAGS -I${SOURCE_ROOT}"
+
+MOC_LIST="${TEMP_FILE_DIR}/mocable.list"
+echo >"$MOC_LIST"
+
+if [ ! -z "$CFG_INPUT" ] && [ ! -z "$CFG_OUTPUT" ]; then
+ FILE_TYPE=unknown
+ case "$CFG_INPUT" in
+ *.cpp|*.C|*.cc|*.CPP|*.CC) FILE_TYPE=c++-source ;;
+ *.h|*.H|*.hpp|*.HPP) FILE_TYPE=c++-header ;;
+ esac
+ [ "$FILE_TYPE" = "unknown" ] && exit 0
+
+ if mocable "$CFG_INPUT"; then
+ if [ "$FILE_TYPE" = "c++-source" ]; then
+ MOC_FILE=`echo $CFG_INPUT | sed "s,\.[^.]*$,.moc,"`
+ if [ ! -e "$MOC_FILE" ] || [ "$CFG_INPUT" -nt "$MOC_FILE" ]; then
+ $CFG_MOC "$CFG_PREPROCESS_FLAGS" "$CFG_INPUT" -o "$MOC_FILE"
+ fi
+ elif [ "$FILE_TYPE" = "c++-header" ]; then
+ [ -f "$CFG_OUTPUT" ] && cp "$CFG_OUTPUT" "$MOC_LIST"
+ echo "#include \"$CFG_INPUT\"" >>"$MOC_LIST"
+ fi
+ elif [ -f "$CFG_OUTPUT" ]; then
+ grep -v "$CFG_INPUT" "$CFG_OUTPUT" >"$MOC_LIST"
+ fi
+else
+ FILE_LIST="${TEMP_FILE_DIR}/file.list"
+ osascript "$CFG_FILE_LIST" | sed "s,^[, ]*,,g" >"$FILE_LIST"
+
+ LINE=0
+ LINES=`wc -l "$FILE_LIST" | awk '{ print $1; }'`
+ while [ "$LINE" -lt "$LINES" ]; do
+ LINE=$((LINE+1))
+ FILE=`head -$LINE ${FILE_LIST} | tail -1`
+ FILE_TYPE=unknown
+ case "$FILE" in
+ *.cpp|*.C|*.cc|*.CPP|*.CC) FILE_TYPE=c++-source ;;
+ *.h|*.H|*.hpp|*.HPP) FILE_TYPE=c++-header ;;
+ *.mocs) [ -z "$CFG_OUTPUT" ] && CFG_OUTPUT="$FILE" ;;
+ esac
+ [ "$FILE_TYPE" = "unknown" ] && continue
+
+ if mocable "$FILE"; then
+ if [ "$FILE_TYPE" = "c++-source" ]; then
+ MOC_FILE=`echo $FILE | sed "s,\.[^.]*$,.moc,"`
+ if [ ! -e "$MOC_FILE" ] || [ "$FILE" -nt "$MOC_FILE" ]; then
+ $CFG_MOC "$CFG_PREPROCESS_FLAGS" "$FILE" -o "$MOC_FILE"
+ fi
+ elif [ "$FILE_TYPE" = "c++-header" ]; then
+ echo "#include \"$FILE\"" >>"$MOC_LIST"
+ fi
+ fi
+ done
+ rm -f "$FILE_LIST"
+
+ if [ -z "$CFG_OUTPUT" ]; then
+ echo "No output file specified!"
+ exit 1
+ fi
+# CFG_MODE=remove
+fi
+
+#sort it
+sort "$MOC_LIST" | uniq | grep -v '^$' >"${MOC_LIST}.sorted"
+mv "${MOC_LIST}.sorted" "${MOC_LIST}"
+
+#replace it
+if cmp -s "$MOC_LIST" "$CFG_OUTPUT"; then
+ rm -f "$MOC_LIST"
+else
+ if [ "$CFG_MODE" = "overwrite" ]; then
+ mv "$MOC_LIST" "$CFG_OUTPUT"
+ else
+ if [ -z `cat "$MOC_LIST"` ]; then
+ if [ ! -e "$CFG_OUTPUT" ] || [ ! -z `cat "$CFG_OUTPUT"` ]; then
+ echo >"$CFG_OUTPUT"
+ fi
+ else
+ rm -f "$CFG_OUTPUT"
+ fi
+ rm -f "$MOC_LIST"
+ fi
+fi
+
+exit 0
diff --git a/util/scripts/mac-binary/install/xcode/integration/scripts/make_moc.sh b/util/scripts/mac-binary/install/xcode/integration/scripts/make_moc.sh
new file mode 100755
index 0000000..c7f0179
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/scripts/make_moc.sh
@@ -0,0 +1,98 @@
+#!/bin/sh
+
+CFG_PREPROCESS_FLAGS=
+CFG_MOC="/usr/bin/moc"
+CFG_INPUT=
+CFG_OUTPUT=
+
+while [ -n "$1" ]; do
+ CACHE_1="$1"
+ OPTION=
+ ARG=
+ case $1 in
+ -*=*) #gnu style
+ OPTION=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\2,'`
+ ;;
+ -output|-input|-moc) #second arg style
+ OPTION=`echo $1 | sed 's,-\([^=]*\),\1,'`
+ shift
+ ARG=$1
+ ;;
+ esac
+ shift
+ case "$OPTION" in
+ moc) CFG_MOC="$ARG" ;;
+ output) CFG_OUTPUT="$ARG" ;;
+ input) CFG_INPUT="$ARG" ;;
+ help|*)
+ [ "$OPTION" = "help" ] || echo "Unknown option $CACHE_1!"
+ echo "Help!!"
+ exit 888;
+ ;;
+ esac
+done
+
+if [ -z "$CFG_INPUT" ] || [ -z "$CFG_OUTPUT" ]; then
+ echo "No input/output file specified."
+ exit 1
+fi
+
+cd "${SOURCE_ROOT}"
+for a in $OTHER_CPLUSPLUSFLAGS; do
+ case "$a" in
+ -D*|-I*)
+ CFG_PREPROCESS_FLAGS="$CFG_PREPROCESS_FLAGS ${a}" ;;
+ *) ;;
+ esac
+done
+for a in $GCC_PREPROCESSOR_DEFINITIONS; do
+ CFG_PREPROCESS_FLAGS="$CFG_PREPROCESS_FLAGS -D${a}"
+done
+CFG_PREPROCESS_FLAGS="$CFG_PREPROCESS_FLAGS -I${SOURCE_ROOT}"
+
+NO_CHANGE=yes
+MOC_OUTPUT="${TEMP_FILE_DIR}/moc.out"
+echo >"$MOC_OUTPUT"
+
+#do the moc
+if [ -e "$CFG_INPUT" ]; then
+ if [ '!' -e "$CFG_OUTPUT" ] || [ "$CFG_INPUT" -nt "$CFG_OUTPUT" ]; then
+ NO_CHANGE=no
+ else
+ LINE=0
+ LINES=`wc -l "$CFG_INPUT" | awk '{ print $1; }'`
+ while [ "$LINE" -lt "$LINES" ]; do
+ LINE=$((LINE+1))
+ SOURCE=`head -$LINE ${CFG_INPUT} | tail -1`
+
+ FILE=`echo $SOURCE | sed "s,^#include \"\([^\"]*\)\"$,\1,"`
+ if [ '!' -f "$FILE" ] || [ "$FILE" -nt "$CFG_OUTPUT" ]; then
+ NO_CHANGE=no
+ break
+ fi
+ done
+ fi
+
+ if [ "$NO_CHANGE" = "no" ]; then
+ LINE=0
+ LINES=`wc -l "$CFG_INPUT" | awk '{ print $1; }'`
+ while [ "$LINE" -lt "$LINES" ]; do
+ LINE=$((LINE+1))
+ SOURCE=`head -$LINE ${CFG_INPUT} | tail -1`
+
+ FILE=`echo $SOURCE | sed "s,^#include \"\([^\"]*\)\"$,\1,"`
+ if [ -f "$FILE" ]; then
+ $CFG_MOC $CFG_PREPROCESS_FLAGS "$FILE" >>"$MOC_OUTPUT"
+ fi
+ done
+ fi
+fi
+
+#replace it
+if [ "$NO_CHANGE" = "yes" ] || cmp -s "$MOC_OUTPUT" "$CFG_OUTPUT"; then
+ rm -f "$MOC_OUTPUT"
+else
+ mv "$MOC_OUTPUT" "$CFG_OUTPUT"
+fi
+
diff --git a/util/scripts/mac-binary/install/xcode/integration/scripts/make_rcc.sh b/util/scripts/mac-binary/install/xcode/integration/scripts/make_rcc.sh
new file mode 100755
index 0000000..2165bec
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/scripts/make_rcc.sh
@@ -0,0 +1,45 @@
+#!/bin/sh
+
+CFG_RCC="/usr/bin/rcc"
+CFG_INPUT=
+CFG_OUTPUT=
+
+while [ -n "$1" ]; do
+ CACHE_1="$1"
+ OPTION=
+ ARG=
+ case $1 in
+ -*=*) #gnu style
+ OPTION=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\2,'`
+ ;;
+ -output|-input|-rcc) #second arg style
+ OPTION=`echo $1 | sed 's,-\([^=]*\),\1,'`
+ shift
+ ARG=$1
+ ;;
+ esac
+ shift
+ case "$OPTION" in
+ rcc) CFG_UIC="$ARG" ;;
+ output) CFG_OUTPUT="$ARG" ;;
+ input) CFG_INPUT="$ARG" ;;
+ help|*)
+ [ "$OPTION" = "help" ] || echo "Unknown option $CACHE_1!"
+ echo "Help!!"
+ exit 888;
+ ;;
+ esac
+done
+
+if [ -z "$CFG_INPUT" ] || [ -z "$CFG_OUTPUT" ]; then
+ echo "No input/output file specified."
+ exit 1
+fi
+[ "$CFG_OUTPUT" -nt "$CFG_INPUT" ] && exit 0
+cd "${SOURCE_ROOT}"
+
+#do the rcc
+RCC_OPTIONS=
+[ -z "$PRODUCT_NAME" ] || RCC_OPTIONS="$RCC_OPTIONS -name \"$PRODUCT_NAME\""
+$CFG_RCC $RCC_OPTIONS -o "$CFG_OUTPUT" "$CFG_INPUT"
diff --git a/util/scripts/mac-binary/install/xcode/integration/scripts/make_uic.sh b/util/scripts/mac-binary/install/xcode/integration/scripts/make_uic.sh
new file mode 100755
index 0000000..e5fd5c1
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/scripts/make_uic.sh
@@ -0,0 +1,43 @@
+#!/bin/sh
+
+CFG_UIC="/usr/bin/uic"
+CFG_INPUT=
+CFG_OUTPUT=
+
+while [ -n "$1" ]; do
+ CACHE_1="$1"
+ OPTION=
+ ARG=
+ case $1 in
+ -*=*) #gnu style
+ OPTION=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\2,'`
+ ;;
+ -output|-input|-uic) #second arg style
+ OPTION=`echo $1 | sed 's,-\([^=]*\),\1,'`
+ shift
+ ARG=$1
+ ;;
+ esac
+ shift
+ case "$OPTION" in
+ uic) CFG_UIC="$ARG" ;;
+ output) CFG_OUTPUT="$ARG" ;;
+ input) CFG_INPUT="$ARG" ;;
+ help|*)
+ [ "$OPTION" = "help" ] || echo "Unknown option $CACHE_1!"
+ echo "Help!!"
+ exit 888;
+ ;;
+ esac
+done
+
+if [ -z "$CFG_INPUT" ] || [ -z "$CFG_OUTPUT" ]; then
+ echo "No input/output file specified."
+ exit 1
+fi
+[ "$CFG_OUTPUT" -nt "$CFG_INPUT" ] && exit 0
+cd "${SOURCE_ROOT}"
+
+#do the uic
+$CFG_UIC -o "$CFG_OUTPUT" "$CFG_INPUT"
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/Info.plist b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/Info.plist
new file mode 100644
index 0000000..b775dcd
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/Info.plist
@@ -0,0 +1,26 @@
+<?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>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleExecutable</key>
+ <string>QtDataFormatters</string>
+ <key>CFBundleGetInfoString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$, Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies)</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.apple.Xcode.QtDataFormatters</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>Xcode Qt Data Formatters Plugin</string>
+ <key>CFBundlePackageType</key>
+ <string>BNDL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.2</string>
+ <key>CFBundleSignature</key>
+ <string>xccf</string>
+ <key>CFBundleVersion</key>
+ <string>308</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS/build_bundle.sh b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS/build_bundle.sh
new file mode 100755
index 0000000..df1e225
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS/build_bundle.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+DO_DEBUG=yes
+[ "$1" = "-debug" ] && DO_DEBUG=yes
+
+#figure out compiler flags
+CFLAGS="-F${QTDIR}/lib"
+LFLAGS=
+for a in QtCore; do
+ LFLAGS="$LFLAGS -framework ${a}"
+done
+[ "$DO_DEBUG" = "yes" ] && CFLAGS="$CFLAGS -g"
+if [ -d "/Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.xcplugin/Contents/Headers/" ]; then
+ CFLAGS="$CFLAGS -I/Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.xcplugin/Contents/Headers/"
+elif [ -d "/Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.pbplugin/Contents/Headers/" ]; then
+ CFLAGS="$CFLAGS -I/Developer/Applications/Xcode.app/Contents/PlugIns/GDBMIDebugging.pbplugin/Contents/Headers/"
+fi
+
+#link
+/usr/bin/c++ -bundle bundle.cpp $CFLAGS -o QtDataFormatters $LFLAGS
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS/bundle.cpp b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS/bundle.cpp
new file mode 100644
index 0000000..2c28c6f
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/MacOS/bundle.cpp
@@ -0,0 +1,129 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the $MODULE$ of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************///xcode
+extern "C" {
+#include "DataFormatterPlugin.h"
+ _pbxgdb_plugin_function_list *_pbxgdb_plugin_functions = 0;
+}
+
+//qt stuff
+#include <QtCore/QtCore>
+
+static int serialId(int id)
+{
+#if 0
+ static int serialRet = 0xF00F00F0;
+ return serialRet--;
+#else
+ return id;
+#endif
+}
+
+static void *doAllocate(int id, int size)
+{
+ if(_pbxgdb_plugin_functions && _pbxgdb_plugin_functions->allocate)
+ return (*_pbxgdb_plugin_functions->allocate)(id, size);
+ return malloc(size);
+}
+
+static char *doSprintf(int id, const char *format, va_list ap)
+{
+ if(_pbxgdb_plugin_functions && _pbxgdb_plugin_functions->vmessage)
+ return (*_pbxgdb_plugin_functions->vmessage)(id, format, ap);
+ return "Unable to sprintf!";
+}
+
+static char *doSprintf(int id, const char *format, ...)
+{
+ va_list ap;
+ va_start(ap, format);
+ char *ret = doSprintf(id, format, ap);
+ va_end(ap);
+ return ret;
+}
+
+char *
+Qt_QPointSummary(QPoint &point, int id)
+{
+ return doSprintf(serialId(id), "(%d,%d)", point.x(), point.y());
+}
+
+char *
+Qt_QSizeSummary(QSize &size, int id)
+{
+ return doSprintf(serialId(id), "[%dx%d]", size.width(), size.height());
+}
+
+char *
+Qt_QStringSummary(QString &string, int id)
+{
+ return doSprintf(serialId(id), "%s", string.toLatin1().constData());
+}
+
+char *
+Qt_QDateSummary(QDate &v, int id)
+{
+ return doSprintf(serialId(id), "%s", v.toString().toLatin1().constData());
+}
+
+char *
+Qt_QTimeSummary(QTime &v, int id)
+{
+ return doSprintf(serialId(id), "%s", v.toString().toLatin1().constData());
+}
+
+char *
+Qt_QDateTimeSummary(QDateTime &v, int id)
+{
+ return doSprintf(serialId(id), "%s", v.toString().toLatin1().constData());
+}
+
+char *
+Qt_QVariantSummary(QVariant &v, int id)
+{
+ return doSprintf(serialId(id), "%s", v.toString().toLatin1().constData());
+}
+
+char *
+Qt_QRectSummary(QRect &rect, int id)
+{
+ return doSprintf(serialId(id), "(%d,%d)[%dx%d]", rect.x(), rect.y(),
+ rect.width(), rect.height());
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/Resources/CustomDataViews.plist b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/Resources/CustomDataViews.plist
new file mode 100644
index 0000000..cebb3c7
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/Resources/CustomDataViews.plist
@@ -0,0 +1,48 @@
+<?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>QRect</key>
+ <dict>
+ <key>SummaryString</key>
+ <string>{(char *)Qt_QRectSummary($VAR, $ID)}:s</string>
+ </dict>
+ <key>QPoint</key>
+ <dict>
+ <key>SummaryString</key>
+ <string>{(char *)Qt_QPointSummary($VAR, $ID)}:s</string>
+ </dict>
+ <key>QSize</key>
+ <dict>
+ <key>SummaryString</key>
+ <string>{(char *)Qt_QSizeSummary($VAR, $ID)}:s</string>
+ </dict>
+ <key>QString</key>
+ <dict>
+ <key>SummaryString</key>
+ <string>{(char *)Qt_QStringSummary($VAR, $ID)}:s</string>
+ </dict>
+ <key>QDate</key>
+ <dict>
+ <key>SummaryString</key>
+ <string>{(char *)Qt_QDateSummary($VAR, $ID)}:s</string>
+ </dict>
+ <key>QTime</key>
+ <dict>
+ <key>SummaryString</key>
+ <string>{(char *)Qt_QTimeSummary($VAR, $ID)}:s</string>
+ </dict>
+ <key>QDateTime</key>
+ <dict>
+ <key>SummaryString</key>
+ <string>{(char *)Qt_QDateTimeSummary($VAR, $ID)}:s</string>
+ </dict>
+ <key>QCoreVariant</key>
+ <dict>
+ <key>SummaryString</key>
+ <string>{(char *)Qt_QCoreVariantSummary($VAR, $ID)}:s</string>
+ </dict>
+ <key>File Version</key>
+ <string>1</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/version.plist b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/version.plist
new file mode 100644
index 0000000..7cc21e5
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/CustomDataViews/QtDataFormatters.bundle/Contents/version.plist
@@ -0,0 +1,16 @@
+<?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>BuildVersion</key>
+ <string>1</string>
+ <key>CFBundleShortVersionString</key>
+ <string>$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>CFBundleVersion</key>
+ <string>308</string>
+ <key>ProjectName</key>
+ <string>pbxdataformatters</string>
+ <key>SourceVersion</key>
+ <string>3080000</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/TemplateInfo.plist b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/TemplateInfo.plist
new file mode 100644
index 0000000..2cb6259
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/TemplateInfo.plist
@@ -0,0 +1,5 @@
+{
+ MainTemplateFile = "class.cpp";
+ CounterpartTemplateFile = "class.h";
+ Description = "A C++ class, with an optional header file which includes the <QtGui/QtGui> header.";
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/class.cpp b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/class.cpp
new file mode 100644
index 0000000..d790000
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/class.cpp
@@ -0,0 +1,61 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+/*
+ * «FILENAME»
+ * «PROJECTNAME»
+ *
+ * Created by «FULLUSERNAME» on «DATE».
+ * Copyright (c) «YEAR» «ORGANIZATIONNAME». All rights reserved.
+ *
+ */
+
+#include "«FILEBASENAME».h"
+
+«FILEBASENAME»::«FILEBASENAME»(QWidget *parent) : QWidget(parent)
+{
+
+
+}
+
+«FILEBASENAME»::~«FILEBASENAME»()
+{
+
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/class.h b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/class.h
new file mode 100644
index 0000000..c48011d4
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/C++ Class.pbfiletemplate/class.h
@@ -0,0 +1,62 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+/*
+ * «FILENAME»
+ * «PROJECTNAME»
+ *
+ * Created by «FULLUSERNAME» on «DATE».
+ * Copyright (c) «YEAR» «ORGANIZATIONNAME». All rights reserved.
+ *
+ */
+
+#ifndef «FILEBASENAME»__HEADER
+
+#include <QtGui/QtGui>
+
+class «FILEBASENAME» : public QWidget
+{
+ Q_OBJECT
+public:
+ «FILEBASENAME»(QWidget *parent=0);
+ ~«FILEBASENAME»();
+};
+
+#endif //«FILEBASENAME»__HEADER
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/Header File.pbfiletemplate/TemplateInfo.plist b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/Header File.pbfiletemplate/TemplateInfo.plist
new file mode 100644
index 0000000..7f20a37
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/Header File.pbfiletemplate/TemplateInfo.plist
@@ -0,0 +1,4 @@
+{
+ MainTemplateFile = "header.h";
+ Description = "A header file which includes the <QtGui/QtGui> header.";
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/Header File.pbfiletemplate/header.h b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/Header File.pbfiletemplate/header.h
new file mode 100644
index 0000000..dd1cdd9
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/Header File.pbfiletemplate/header.h
@@ -0,0 +1,51 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+/*
+ * «FILENAME»
+ * «PROJECTNAME»
+ *
+ * Created by «FULLUSERNAME» on «DATE».
+ * Copyright (c) «YEAR» «ORGANIZATIONNAME». All rights reserved.
+ *
+ */
+
+#include <QtGui/QtGui>
+
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/QRC File.pbfiletemplate/TemplateInfo.plist b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/QRC File.pbfiletemplate/TemplateInfo.plist
new file mode 100644
index 0000000..8f896d4
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/QRC File.pbfiletemplate/TemplateInfo.plist
@@ -0,0 +1,4 @@
+{
+ MainTemplateFile = "resource.qrc";
+ Description = "A base Qt resource file";
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/QRC File.pbfiletemplate/resource.qrc b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/QRC File.pbfiletemplate/resource.qrc
new file mode 100644
index 0000000..bf4f322
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/QRC File.pbfiletemplate/resource.qrc
@@ -0,0 +1,5 @@
+<!DOCTYPE RCC><RCC version="1.0">
+<qresource prefix="/">
+ <file>YOUR_FILE</file>
+</qresource>
+</RCC>
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/UI File.pbfiletemplate/TemplateInfo.plist b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/UI File.pbfiletemplate/TemplateInfo.plist
new file mode 100644
index 0000000..c6e3e8c
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/UI File.pbfiletemplate/TemplateInfo.plist
@@ -0,0 +1,4 @@
+{
+ MainTemplateFile = "class.ui";
+ Description = "A base UI file to edit with the designer";
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/UI File.pbfiletemplate/class.ui b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/UI File.pbfiletemplate/class.ui
new file mode 100644
index 0000000..95db9ca
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/File Templates/Qt/UI File.pbfiletemplate/class.ui
@@ -0,0 +1,16 @@
+<UI version="4.0" stdsetdef="1" >
+ <class>«FILEBASENAME»</class>
+ <widget class="QDialog" name="«FILEBASENAME»" >
+ <property name="objectName" >
+ <string notr="true">«FILEBASENAME»</string>
+ </property>
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>391</width>
+ <height>223</height>
+ </rect>
+ </property>
+ </widget>
+</UI>
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/Info.plist b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/Info.plist
new file mode 100644
index 0000000..f554bea
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/Info.plist
@@ -0,0 +1,24 @@
+<?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>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleExecutable</key>
+ <string>«PROJECTNAMEASXML»</string>
+ <key>CFBundleIconFile</key>
+ <string></string>
+ <key>CFBundleIdentifier</key>
+ <string>com.apple.myQtApp</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>0.1</string>
+ <key>CSResourcesFileMapped</key>
+ <true/>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.mocs b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.mocs
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.mocs
@@ -0,0 +1 @@
+
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.pbproj/TemplateInfo.plist b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.pbproj/TemplateInfo.plist
new file mode 100644
index 0000000..8003b8d
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.pbproj/TemplateInfo.plist
@@ -0,0 +1,11 @@
+{
+ FilesToRename = {
+ "QtApp.mocs" = "ÇPROJECTNAMEÈ.mocs";
+ };
+ FilesToMacroExpand = (
+ "ÇPROJECTNAMEÈ.mocs",
+ "Info.plist",
+ "main.cpp",
+ );
+ Description = "This project builds a Qt application that uses .ui files for interfaces.";
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.pbproj/project.pbxproj b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.pbproj/project.pbxproj
new file mode 100644
index 0000000..c2522e2
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/QtApp.pbproj/project.pbxproj
@@ -0,0 +1,377 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 39;
+ objects = {
+ 0249A66BFF388E3F11CA2CEA = {
+ expectedFileType = archive.ar;
+ isa = PBXFileReference;
+ name = "libstdc++.a";
+ path = "/usr/lib/libstdc++.a";
+ refType = 0;
+ sourceTree = "<absolute>";
+ };
+//020
+//021
+//022
+//023
+//024
+//080
+//081
+//082
+//083
+//084
+ 195DF8CFFE9D517E11CA2CBB = {
+ children = (
+ 8D0C4E970486CD37000505A6,
+ );
+ isa = PBXGroup;
+ name = Products;
+ refType = 4;
+ sourceTree = "<group>";
+ };
+//190
+//191
+//192
+//193
+//194
+//200
+//201
+//202
+//203
+//204
+ 20286C28FDCF999611CA2CEA = {
+ buildStyles = (
+ 4A9504C5FFE6A39111CA0CBA,
+ 4A9504C6FFE6A39111CA0CBA,
+ );
+ hasScannedForEncodings = 1;
+ isa = PBXProject;
+ mainGroup = 20286C29FDCF999611CA2CEA;
+ projectDirPath = "";
+ targets = (
+ 8D0C4E890486CD37000505A6,
+ );
+ };
+ 20286C29FDCF999611CA2CEA = {
+ children = (
+ 20286C2AFDCF999611CA2CEA,
+ 20286C32FDCF999611CA2CEA,
+ 195DF8CFFE9D517E11CA2CBB,
+ );
+ isa = PBXGroup;
+ name = "«PROJECTNAMEASXML»";
+ path = "";
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ 20286C2AFDCF999611CA2CEA = {
+ children = (
+ 32DBCF6D0370B57F00C91783,
+ 20286C2BFDCF999611CA2CEA,
+ );
+ isa = PBXGroup;
+ name = Sources;
+ path = "";
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ 20286C2BFDCF999611CA2CEA = {
+ expectedFileType = sourcecode.qt.cpp;
+ fileEncoding = 30;
+ isa = PBXFileReference;
+ path = main.cpp;
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ 20286C32FDCF999611CA2CEA = {
+ children = (
+ 20286C33FDCF999611CA2CEA,
+ 20286CA3FDCF999611CA2CEA,
+ 4A9504CAFFE6A41611CA0CBA,
+ 4A9504C8FFE6A3BC11CA0CBA,
+ 0249A66BFF388E3F11CA2CEA,
+ );
+ isa = PBXGroup;
+ name = "External Frameworks and Libraries";
+ path = "";
+ refType = 4;
+ sourceTree = "<group>";
+ };
+ 20286CA3FDCF999611CA2CEA = {
+ expectedFileType = wrapper.framework;
+ fallbackIsa = PBXFileReference;
+ isa = PBXFrameworkReference;
+ name = QtGui.framework;
+ path = /Library/Frameworks/QtGui.framework;
+ refType = 0;
+ sourceTree = "<absolute>";
+ };
+
+ 20286C33FDCF999611CA2CEA = {
+ expectedFileType = wrapper.framework;
+ fallbackIsa = PBXFileReference;
+ isa = PBXFrameworkReference;
+ name = QtCore.framework;
+ path = /Library/Frameworks/QtCore.framework;
+ refType = 0;
+ sourceTree = "<absolute>";
+ };
+//200
+//201
+//202
+//203
+//204
+//320
+//321
+//322
+//323
+//324
+ 32DBCF6D0370B57F00C91783 = {
+ fileEncoding = 4;
+ isa = PBXFileReference;
+ path = "«PROJECTNAME».mocs";
+ refType = 4;
+ sourceTree = "<group>";
+ };
+//320
+//321
+//322
+//323
+//324
+//4A0
+//4A1
+//4A2
+//4A3
+//4A4
+ 4A9504C5FFE6A39111CA0CBA = {
+ buildRules = (
+ );
+ buildSettings = {
+ COPY_PHASE_STRIP = NO;
+ DEBUGGING_SYMBOLS = YES;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ OPTIMIZATION_CFLAGS = "-O0";
+ ZERO_LINK = YES;
+ };
+ isa = PBXBuildStyle;
+ name = Development;
+ };
+ 4A9504C6FFE6A39111CA0CBA = {
+ buildRules = (
+ );
+ buildSettings = {
+ COPY_PHASE_STRIP = YES;
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ ZERO_LINK = NO;
+ };
+ isa = PBXBuildStyle;
+ name = Deployment;
+ };
+ 4A9504C8FFE6A3BC11CA0CBA = {
+ expectedFileType = wrapper.framework;
+ fallbackIsa = PBXFileReference;
+ isa = PBXFrameworkReference;
+ name = ApplicationServices.framework;
+ path = /System/Library/Frameworks/ApplicationServices.framework;
+ refType = 0;
+ sourceTree = "<absolute>";
+ };
+ 4A9504CAFFE6A41611CA0CBA = {
+ expectedFileType = wrapper.framework;
+ fallbackIsa = PBXFileReference;
+ isa = PBXFrameworkReference;
+ name = CoreServices.framework;
+ path = /System/Library/Frameworks/CoreServices.framework;
+ refType = 0;
+ sourceTree = "<absolute>";
+ };
+//4A0
+//4A1
+//4A2
+//4A3
+//4A4
+//8D0
+//8D1
+//8D2
+//8D3
+//8D4
+ 8D0C4E890486CD37000505A6 = {
+ buildPhases = (
+ 22D275D307D515930050A600, //get_mocs phase
+ 8D0C4E8F0486CD37000505A6,
+ 8D0C4E910486CD37000505A6,
+ 8D0C4E940486CD37000505A6,
+ );
+ buildRules = (
+ //22E554940732E0C3002CE4A0, //get_mocs rule
+ 2241F8060731C52400C1F590, //make_moc rule
+ 2241F8060731C52430C1F590, //make_uic rule
+ 2241F8060731C59400C1F590, //make_rcc rule
+ );
+ buildSettings = {
+ FRAMEWORK_SEARCH_PATHS = "";
+ GCC_ENABLE_TRIGRAPHS = NO;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ GCC_PRECOMPILE_PREFIX_HEADER = NO;
+ GCC_PREFIX_HEADER = "";
+ GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
+ GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
+ GCC_WARN_UNKNOWN_PRAGMAS = NO;
+ HEADER_SEARCH_PATHS = "";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Applications";
+ LIBRARY_SEARCH_PATHS = "";
+ LIBRARY_STYLE = Static;
+ OTHER_CPLUSPLUSFLAGS = "-I/Library/Frameworks/QtCore.framework/Headers -I/Library/Frameworks/QtGui.framework/Headers";
+ OTHER_CLAGS = "-I/Library/Frameworks/QtCore.framework/Headers -I/Library/Frameworks/QtGui.framework/Headers";
+ OTHER_LDFLAGS = "";
+ OTHER_REZFLAGS = "";
+ PRODUCT_NAME = "«PROJECTNAME»";
+ SECTORDER_FLAGS = "";
+ WARNING_CFLAGS = "-Wmost -Wno-four-char-constants -Wno-unknown-pragmas";
+ WRAPPER_EXTENSION = app;
+ };
+ dependencies = (
+ );
+ isa = PBXNativeTarget;
+ name = "«PROJECTNAME»";
+ productInstallPath = "$(HOME)/Applications";
+ productName = "«PROJECTNAME»";
+ productReference = 8D0C4E970486CD37000505A6;
+ productType = "com.apple.product-type.application";
+ };
+ 8D0C4E8B0486CD37000505A6 = {
+ fileRef = 32DBCF6D0370B57F00C91783;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ 22D275D307D515930050A600 = { //get_mocs phase
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputPaths = (
+ //"*.h",
+ );
+ name = "Qt Auto-Retrieve Mocables";
+ isa = PBXShellScriptBuildPhase;
+ outputPaths = (
+ //"«PROJECTNAME».mocs",
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "/Library/Frameworks/QtCore.framework/Resources/xcode/get_mocs.sh -output \"«PROJECTNAME».mocs\"";
+ };
+ 22E554940732E0C3002CE4A0 = { //get_mocs rule
+ compilerSpec = com.apple.compilers.proxy.script;
+ filePatterns = "*.h";
+ fileType = pattern.proxy;
+ isEditable = 1;
+ isa = PBXBuildRule;
+ outputFiles = (
+ "«PROJECTNAME».mocs",
+ );
+ script = "/Library/Frameworks/QtCore.framework/Resources/xcode/get_mocs.sh -input \"${INPUT_FILE_PATH}\" -output \"«PROJECTNAME».mocs\"";
+ };
+ 2241F8060731C59400C1F590 = { //make_rcc rule
+ compilerSpec = com.apple.compilers.proxy.script;
+ filePatterns = "*.qrc";
+ fileType = pattern.proxy;
+ isEditable = 1;
+ isa = PBXBuildRule;
+ outputFiles = (
+ "${DERIVED_FILES_DIR}/qrc_${INPUT_FILE_BASE}.cpp",
+ );
+ script = "/Library/Frameworks/QtCore.framework/Resources/xcode/make_rcc.sh -input \"${INPUT_FILE_PATH}\" -output \"${DERIVED_FILES_DIR}/qrc_${INPUT_FILE_BASE}.cpp\"";
+ };
+ 2241F8060731C52430C1F590 = { //make_uic rule
+ compilerSpec = com.apple.compilers.proxy.script;
+ filePatterns = "*.ui";
+ fileType = pattern.proxy;
+ isEditable = 1;
+ isa = PBXBuildRule;
+ outputFiles = (
+ "${DERIVED_FILES_DIR}/ui_${INPUT_FILE_BASE}.h",
+ );
+ script = "/Library/Frameworks/QtCore.framework/Resources/xcode/make_uic.sh -input \"${INPUT_FILE_PATH}\" -output \"${DERIVED_FILES_DIR}/ui_${INPUT_FILE_BASE}.h\"";
+ };
+ 2241F8060731C52400C1F590 = { //make_moc rule
+ compilerSpec = com.apple.compilers.proxy.script;
+ filePatterns = "*.mocs";
+ fileType = pattern.proxy;
+ isEditable = 1;
+ isa = PBXBuildRule;
+ outputFiles = (
+ "${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}_mocs.cpp",
+ );
+ script = "/Library/Frameworks/QtCore.framework/Resources/xcode/make_moc.sh -input \"${INPUT_FILE_PATH}\" -output \"${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}_mocs.cpp\"";
+ };
+ 8D0C4E8F0486CD37000505A6 = {
+ buildActionMask = 2147483647;
+ files = (
+ 8D0C4E8B0486CD37000505A6,
+ 8D0C4E900486CD37000505A6,
+ );
+ isa = PBXSourcesBuildPhase;
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 8D0C4E900486CD37000505A6 = {
+ fileRef = 20286C2BFDCF999611CA2CEA;
+ isa = PBXBuildFile;
+ settings = {
+ ATTRIBUTES = (
+ );
+ };
+ };
+ 8D0C4E910486CD37000505A6 = {
+ buildActionMask = 2147483647;
+ files = (
+ 8D0C4E920486CD37000505A6,
+ 8D0C4E92048CCD37000505A6,
+ 8D0C4E930486CD37000505A6,
+ );
+ isa = PBXFrameworksBuildPhase;
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 8D0C4E92048CCD37000505A6 = {
+ fileRef = 20286CA3FDCF999611CA2CEA;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ 8D0C4E920486CD37000505A6 = {
+ fileRef = 20286C33FDCF999611CA2CEA;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ 8D0C4E930486CD37000505A6 = {
+ fileRef = 0249A66BFF388E3F11CA2CEA;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ 8D0C4E940486CD37000505A6 = {
+ buildActionMask = 2147483647;
+ files = (
+ );
+ isa = PBXRezBuildPhase;
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 8D0C4E970486CD37000505A6 = {
+ expectedFileType = wrapper.application;
+ includeInIndex = 0;
+ isa = PBXFileReference;
+ path = "«PROJECTNAME».app";
+ refType = 3;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ };
+ rootObject = 20286C28FDCF999611CA2CEA;
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/main.cpp b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/main.cpp
new file mode 100644
index 0000000..f67c971
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/main.cpp
@@ -0,0 +1,52 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <QtGui/QtGui>
+
+int main(int argc, char **argv)
+{
+ QApplication a(argc, argv);
+
+ QLabel label;
+ label.setText("Hello world!");
+ label.show();
+
+ return a.exec();
+}
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/version.plist b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/version.plist
new file mode 100644
index 0000000..6f3c68c
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Project Templates/Application/Qt Application/version.plist
@@ -0,0 +1,16 @@
+<?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>BuildVersion</key>
+ <string>1</string>
+ <key>CFBundleShortVersionString</key>
+ <string>0.1</string>
+ <key>CFBundleVersion</key>
+ <string>0.1</string>
+ <key>ProjectName</key>
+ <string>NibPBTemplates</string>
+ <key>SourceVersion</key>
+ <string>1160200</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/10-aboutQt.sh b/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/10-aboutQt.sh
new file mode 100755
index 0000000..343181e
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/10-aboutQt.sh
@@ -0,0 +1,23 @@
+#! /bin/sh
+#
+# aboutQt.sh - Will display about Qt.
+#
+# -- PB User Script Info --
+# %%%{PBXName=About Qt}%%%
+# %%%{PBXInput=None}%%%
+# %%%{PBXOutput=SeparateWindow}%%%
+# %%%{PBXKeyEquivalent=}%%%
+#
+
+echo "This program uses Qt version $VERSION_MAJOR$."
+echo "Qt is a C++ toolkit for cross-platform GUI "
+echo "application development."
+echo
+echo "Qt provides single-source "
+echo "portability across MS Windows, Mac OS X, "
+echo "Linux, and all major commercial Unix variants."
+echo
+echo "Qt is also available for embedded devices."
+echo
+echo "Qt is a Trolltech product. "
+echo "See http://qtsoftware.com/qt/ for more information."
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/20-getMocs.sh b/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/20-getMocs.sh
new file mode 100755
index 0000000..3fea677
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/20-getMocs.sh
@@ -0,0 +1,12 @@
+#! /bin/sh
+#
+# getMocs.sh - Will update meta object information for your current project
+#
+# -- PB User Script Info --
+# %%%{PBXName=Check for mocables}%%%
+# %%%{PBXInput=None}%%%
+# %%%{PBXOutput=AppendToAllText}%%%
+# %%%{PBXKeyEquivalent=}%%%
+#
+
+/Library/Frameworks/QtCore.framework/Resources/xcode/get_mocs.sh
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/menuIcon.tiff b/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/menuIcon.tiff
new file mode 100644
index 0000000..466b976
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/menuIcon.tiff
Binary files differ
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Specifications/qt.pbfilespec b/util/scripts/mac-binary/install/xcode/integration/templates/Specifications/qt.pbfilespec
new file mode 100644
index 0000000..62b205d
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Specifications/qt.pbfilespec
@@ -0,0 +1,41 @@
+/** Qt file formats
+*/
+(
+ {
+ Identifier = sourcecode.qt.h;
+ BasedOn = sourcecode.cpp.h;
+ Name = "Qt header file";
+ ComputerLanguage = qt.c.cpp;
+ AppliesToBuildRules = no;
+ Extensions = (h);
+ IncludeInIndex = NO;
+ CanSetIncludeInIndex = YES;
+ },
+ {
+ Identifier = sourcecode.qt.cpp;
+ BasedOn = sourcecode.cpp.cpp;
+ Name = "Qt source file";
+ ComputerLanguage = qt.c.cpp;
+ AppliesToBuildRules = yes;
+ Extensions = (cpp);
+ IncludeInIndex = YES;
+ CanSetIncludeInIndex = YES;
+ },
+ {
+ Identifier = sourcecode.qt.qrc;
+ Name = "Qt resource file";
+ ComputerLanguage = qt.qrc;
+ AppliesToBuildRules = yes;
+ Extensions = (qrc);
+ IncludeInIndex = NO;
+ },
+ {
+ Identifier = sourcecode.qt.ui;
+ Name = "Qt UI file";
+ ComputerLanguage = qt.ui;
+ AppliesToBuildRules = yes;
+ Extensions = (ui);
+ IncludeInIndex = NO;
+ }
+)
+
diff --git a/util/scripts/mac-binary/install/xcode/integration/templates/Specifications/qt.pblangspec b/util/scripts/mac-binary/install/xcode/integration/templates/Specifications/qt.pblangspec
new file mode 100644
index 0000000..6500020
--- /dev/null
+++ b/util/scripts/mac-binary/install/xcode/integration/templates/Specifications/qt.pblangspec
@@ -0,0 +1,84 @@
+(
+ {
+ Identifier = qt.c.cpp;
+ BasedOn = c.cpp;
+ Name = "Qt C++";
+ SourceScannerClassName = PBXCPPSourceScanner;
+ SupportsIndentation = YES;
+ Description = "Qt C++";
+ SyntaxColoring = {
+ CaseSensitive = YES;
+ Keywords = (
+ "slots",
+ "signals",
+ "Q_OBJECT",
+ "Q_PROPERTY",
+ "Q_CLASSINFO",
+ "Q_INTERFACES",
+ "Q_PROPERTY",
+ "Q_OVERRIDE",
+ "Q_ENUMS",
+ "Q_FLAGS",
+ "Q_GADGET",
+ "foreach"
+ );
+ AltKeywords = (
+ "SLOT",
+ "SIGNAL",
+ "Q_SCRIPTABLE",
+ "Q_INVOKABLE",
+ "emit"
+ );
+ };
+ },
+ {
+ Identifier = qt.xml;
+ Name = "Qt XML";
+ Description = "Qt XML";
+ BasedOn = "pbx_root_language";
+ SupportsIndentation = NO;
+ Indentation = {
+ };
+ SyntaxColoring = {
+ CaseSensitive = NO;
+ UnicodeSymbols = YES;
+ MultiLineComment = (
+ ( "<!--", "-->" )
+ );
+ /*KeywordDelimeters = ( // not supported yet
+ ( "<", ">" )
+ );*/
+ String = (
+ ( "<", ">" )
+ );
+ Character = (
+ ( "&", ";", "=" )
+ );
+ };
+ },
+ {
+ Identifier = qt.qrc;
+ Name = "Qt Resource";
+ Description = "Qt Resource";
+ BasedOn = "qt.xml";
+ SyntaxColoring = {
+ CaseSensitive = NO;
+ String = (
+ "RCC",
+ "qresource",
+ "file",
+ );
+ AltKeywords = (
+ "version",
+ "prefix",
+ "alias"
+ );
+ };
+ },
+ {
+ Identifier = qt.ui;
+ Name = "Qt UI";
+ Description = "Qt UI";
+ BasedOn = "qt.xml";
+ }
+)
diff --git a/util/scripts/mac-binary/package/InstallerPane/English.lproj/InfoPlist.strings b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InfoPlist.strings
new file mode 100644
index 0000000..ea97bd3
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InfoPlist.strings
Binary files differ
diff --git a/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/classes.nib b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/classes.nib
new file mode 100644
index 0000000..73d69c9
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/classes.nib
@@ -0,0 +1,43 @@
+{
+ IBClasses = (
+ {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
+ {
+ CLASS = InstallerPane;
+ LANGUAGE = ObjC;
+ OUTLETS = {
+ contentView = NSView;
+ firstKeyView = NSView;
+ initialKeyView = NSView;
+ lastKeyView = NSView;
+ nextPane = InstallerPane;
+ parentSection = id;
+ };
+ SUPERCLASS = NSObject;
+ },
+ {
+ ACTIONS = {checkLicense = id; checkName = id; };
+ CLASS = InstallerPanePane;
+ LANGUAGE = ObjC;
+ OUTLETS = {
+ LicenseField1 = NSTextField;
+ LicenseField2 = NSTextField;
+ LicenseField3 = NSTextField;
+ LicenseField4 = NSTextField;
+ LicenseField5 = NSTextField;
+ LicenseField6 = NSTextField;
+ LicenseField7 = NSTextField;
+ errorField = NSTextField;
+ myOutlet = id;
+ nameField = NSTextField;
+ };
+ SUPERCLASS = InstallerPane;
+ },
+ {
+ CLASS = InstallerSection;
+ LANGUAGE = ObjC;
+ OUTLETS = {firstPane = InstallerPane; };
+ SUPERCLASS = NSObject;
+ }
+ );
+ IBVersion = 1;
+} \ No newline at end of file
diff --git a/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/info.nib b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/info.nib
new file mode 100644
index 0000000..0ec3501
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/info.nib
@@ -0,0 +1,23 @@
+<?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>IBDocumentLocation</key>
+ <string>283 121 356 240 0 0 1600 1178 </string>
+ <key>IBEditorPositions</key>
+ <dict>
+ <key>8</key>
+ <string>162 556 438 372 0 0 1600 1178 </string>
+ </dict>
+ <key>IBFramework Version</key>
+ <string>446.1</string>
+ <key>IBOpenObjects</key>
+ <array>
+ <integer>8</integer>
+ </array>
+ <key>IBSystem Version</key>
+ <string>8I127</string>
+ <key>IBUsesTextArchiving</key>
+ <true/>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/keyedobjects.nib b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/keyedobjects.nib
new file mode 100644
index 0000000..d15482e
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane.nib/keyedobjects.nib
@@ -0,0 +1,3688 @@
+<?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>$archiver</key>
+ <string>NSKeyedArchiver</string>
+ <key>$objects</key>
+ <array>
+ <string>$null</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>241</integer>
+ </dict>
+ <key>NSAccessibilityConnectors</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>238</integer>
+ </dict>
+ <key>NSAccessibilityOidsKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>239</integer>
+ </dict>
+ <key>NSAccessibilityOidsValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>240</integer>
+ </dict>
+ <key>NSClassesKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>182</integer>
+ </dict>
+ <key>NSClassesValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>183</integer>
+ </dict>
+ <key>NSConnections</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>8</integer>
+ </dict>
+ <key>NSFontManager</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>0</integer>
+ </dict>
+ <key>NSFramework</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>5</integer>
+ </dict>
+ <key>NSNamesKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>159</integer>
+ </dict>
+ <key>NSNamesValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>160</integer>
+ </dict>
+ <key>NSNextOid</key>
+ <integer>130</integer>
+ <key>NSObjectsKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>156</integer>
+ </dict>
+ <key>NSObjectsValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>158</integer>
+ </dict>
+ <key>NSOidsKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>184</integer>
+ </dict>
+ <key>NSOidsValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>185</integer>
+ </dict>
+ <key>NSRoot</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <key>NSVisibleWindows</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>6</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>4</integer>
+ </dict>
+ <key>NSClassName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>3</integer>
+ </dict>
+ </dict>
+ <string>InstallerSection</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSCustomObject</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSCustomObject</string>
+ </dict>
+ <string>IBCocoaFramework</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>7</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSMutableSet</string>
+ <string>NSSet</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSMutableSet</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>24</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>9</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>14</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>16</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>119</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>121</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>122</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>123</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>124</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>125</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>127</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>129</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>131</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>133</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>135</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>137</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>139</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>141</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>143</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>144</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>145</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>146</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>147</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>148</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>149</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>150</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>151</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>152</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>153</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>154</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>12</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>4</integer>
+ </dict>
+ <key>NSClassName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>11</integer>
+ </dict>
+ </dict>
+ <string>InstallerPanePane</string>
+ <string>firstPane</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSNibOutletConnector</string>
+ <string>NSNibConnector</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSNibOutletConnector</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>15</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>parentSection</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>118</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>117</integer>
+ </dict>
+ <key>NSClassName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>115</integer>
+ </dict>
+ <key>NSExtension</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>116</integer>
+ </dict>
+ <key>NSFrameSize</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>0</integer>
+ </dict>
+ <key>NSSubviews</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>18</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>24</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>86</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>90</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>94</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>98</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>102</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>106</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>110</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>39</integer>
+ </dict>
+ <key>NSBorderType</key>
+ <integer>3</integer>
+ <key>NSBoxType</key>
+ <integer>2</integer>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>25</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSOffsets</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>26</integer>
+ </dict>
+ <key>NSSubviews</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>20</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSTitleCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>27</integer>
+ </dict>
+ <key>NSTitlePosition</key>
+ <integer>0</integer>
+ <key>NSTransparent</key>
+ <false/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>24</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>21</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>23</integer>
+ </dict>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>22</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ </dict>
+ <string>{{2, 2}, {125, 1}}</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSView</string>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSMutableArray</string>
+ <string>NSArray</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSMutableArray</string>
+ </dict>
+ <string>{{12, 154}, {394, 5}}</string>
+ <string>{0, 0}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>0</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>28</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>37</integer>
+ </dict>
+ </dict>
+ <string>Box</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>31</integer>
+ </dict>
+ <key>NSName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>30</integer>
+ </dict>
+ <key>NSSize</key>
+ <real>13</real>
+ <key>NSfFlags</key>
+ <integer>1044</integer>
+ </dict>
+ <string>LucidaGrande</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSFont</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSFont</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSCatalogName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>33</integer>
+ </dict>
+ <key>NSColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>35</integer>
+ </dict>
+ <key>NSColorName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>34</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>6</integer>
+ </dict>
+ <string>System</string>
+ <string>textBackgroundColor</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>3</integer>
+ <key>NSWhite</key>
+ <data>
+ MQA=
+ </data>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSColor</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSColor</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>3</integer>
+ <key>NSWhite</key>
+ <data>
+ MCAwLjgwMDAwMDAxAA==
+ </data>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSTextFieldCell</string>
+ <string>NSActionCell</string>
+ <string>NSCell</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSTextFieldCell</string>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSBox</string>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSBox</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>42</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>41</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{240, 126}, {43, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <string></string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSCatalogName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>33</integer>
+ </dict>
+ <key>NSColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>46</integer>
+ </dict>
+ <key>NSColorName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>45</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>6</integer>
+ </dict>
+ <string>textColor</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>3</integer>
+ <key>NSWhite</key>
+ <data>
+ MAA=
+ </data>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSTextField</string>
+ <string>%NSTextField</string>
+ <string>NSControl</string>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSTextField</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>50</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>49</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{187, 126}, {45, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>53</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>52</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{134, 126}, {45, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>56</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>55</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{83, 126}, {43, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>59</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>58</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{291, 126}, {45, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>62</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>61</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{9, 183}, {45, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>71303168</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>63</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>Name:
+</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSCatalogName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>33</integer>
+ </dict>
+ <key>NSColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>66</integer>
+ </dict>
+ <key>NSColorName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>65</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>6</integer>
+ </dict>
+ <string>controlColor</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>3</integer>
+ <key>NSWhite</key>
+ <data>
+ MC42NjY2NjY2OQA=
+ </data>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSCatalogName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>33</integer>
+ </dict>
+ <key>NSColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>46</integer>
+ </dict>
+ <key>NSColorName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>68</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>6</integer>
+ </dict>
+ <string>controlTextColor</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>71</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>70</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{159, 156}, {82, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>72</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>License Key:</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>75</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>74</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{59, 181}, {347, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>78</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>77</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{30, 126}, {45, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>81</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>80</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{344, 126}, {44, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>84</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>83</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{78, 211}, {263, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>85</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>Please Enter Your Name and License Key
+</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>88</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>87</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{27, 101}, {364, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>138412032</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>86</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>89</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>1</integer>
+ <key>NSRGB</key>
+ <data>
+ MCAwIDAA
+ </data>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>92</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>91</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{73, 128}, {12, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>93</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>90</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>-
+</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>96</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>95</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{177, 128}, {12, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>97</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>94</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>-
+</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>100</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>99</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{124, 128}, {12, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>101</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>98</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>-
+</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>104</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>103</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{230, 128}, {12, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>105</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>102</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>-
+</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>108</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>107</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{281, 128}, {12, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>109</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>106</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>-
+</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>112</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>111</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{334, 128}, {11, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>113</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>110</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>-
+</string>
+ <string>{418, 330}</string>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSCustomView</string>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSCustomView</string>
+ </dict>
+ <string>contentView</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ </dict>
+ <string>nextKeyView</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>126</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>nameField</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField1</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>130</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField2</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>132</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField3</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>134</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField4</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>136</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField5</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>138</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField6</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>140</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField7</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ </dict>
+ <string>delegate</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>86</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>155</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>errorField</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>86</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>106</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>21</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>94</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>98</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>110</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>102</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>90</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSArray</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSArray</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>86</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>106</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>21</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>94</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>98</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>110</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>102</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>90</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>161</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>162</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>163</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>164</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>165</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>166</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>167</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>168</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>169</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>170</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>171</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>11</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>115</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>172</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>173</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>174</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>175</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>176</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>177</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>178</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>179</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>180</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>181</integer>
+ </dict>
+ </array>
+ </dict>
+ <string>NSTextField</string>
+ <string>File's Owner</string>
+ <string>NSTextField11326</string>
+ <string>NSTextField22</string>
+ <string>NSTextField11321</string>
+ <string>NSTextField11322</string>
+ <string>NSTextField11325</string>
+ <string>NSTextField211</string>
+ <string>NSTextField2331</string>
+ <string>NSTextField11324</string>
+ <string>NSTextField21</string>
+ <string>NSTextField231</string>
+ <string>NSBox1</string>
+ <string>NSTextField232</string>
+ <string>NSTextField1132</string>
+ <string>NSTextField2332</string>
+ <string>NSTextField2</string>
+ <string>View</string>
+ <string>NSTextField11323</string>
+ <string>NSTextField233</string>
+ <string>NSTextField23</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>127</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>149</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>141</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>94</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>122</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>98</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>129</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>150</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>143</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>123</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>16</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>21</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>131</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>151</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>144</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>86</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>124</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>121</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>153</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>133</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>152</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>145</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>154</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>119</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>135</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>146</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>14</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>90</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>9</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>102</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>147</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>137</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>106</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>110</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>125</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>148</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>139</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>186</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>187</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>188</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>189</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>190</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>191</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>192</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>193</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>194</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>195</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>196</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>197</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>198</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>199</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>200</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>201</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>202</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>203</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>204</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>205</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>206</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>207</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>208</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>209</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>210</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>211</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>212</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>213</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>214</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>215</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>216</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>217</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>218</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>219</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>220</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>221</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>222</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>223</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>224</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>225</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>226</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>227</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>228</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>229</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>230</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>231</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>232</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>233</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>234</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>235</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>236</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>237</integer>
+ </dict>
+ </array>
+ </dict>
+ <integer>62</integer>
+ <integer>94</integer>
+ <integer>116</integer>
+ <integer>109</integer>
+ <integer>125</integer>
+ <integer>73</integer>
+ <integer>89</integer>
+ <integer>5</integer>
+ <integer>126</integer>
+ <integer>95</integer>
+ <integer>117</integer>
+ <integer>110</integer>
+ <integer>80</integer>
+ <integer>90</integer>
+ <integer>9</integer>
+ <integer>69</integer>
+ <integer>72</integer>
+ <integer>96</integer>
+ <integer>118</integer>
+ <integer>111</integer>
+ <integer>122</integer>
+ <integer>1</integer>
+ <integer>91</integer>
+ <integer>88</integer>
+ <integer>79</integer>
+ <integer>68</integer>
+ <integer>120</integer>
+ <integer>97</integer>
+ <integer>119</integer>
+ <integer>112</integer>
+ <integer>121</integer>
+ <integer>77</integer>
+ <integer>123</integer>
+ <integer>87</integer>
+ <integer>98</integer>
+ <integer>113</integer>
+ <integer>7</integer>
+ <integer>124</integer>
+ <integer>8</integer>
+ <integer>76</integer>
+ <integer>6</integer>
+ <integer>127</integer>
+ <integer>114</integer>
+ <integer>99</integer>
+ <integer>128</integer>
+ <integer>75</integer>
+ <integer>129</integer>
+ <integer>71</integer>
+ <integer>92</integer>
+ <integer>115</integer>
+ <integer>74</integer>
+ <integer>100</integer>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>24</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSIBObjectData</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSIBObjectData</string>
+ </dict>
+ </array>
+ <key>$top</key>
+ <dict>
+ <key>IB.objectdata</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>1</integer>
+ </dict>
+ </dict>
+ <key>$version</key>
+ <integer>100000</integer>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/classes.nib b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/classes.nib
new file mode 100644
index 0000000..ac5d9ad
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/classes.nib
@@ -0,0 +1,42 @@
+{
+ IBClasses = (
+ {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
+ {
+ CLASS = InstallerPane;
+ LANGUAGE = ObjC;
+ OUTLETS = {
+ contentView = NSView;
+ firstKeyView = NSView;
+ initialKeyView = NSView;
+ lastKeyView = NSView;
+ nextPane = InstallerPane;
+ parentSection = id;
+ };
+ SUPERCLASS = NSObject;
+ },
+ {
+ ACTIONS = {checkLicense = id; checkName = id; };
+ CLASS = InstallerPanePane;
+ LANGUAGE = ObjC;
+ OUTLETS = {
+ LicenseField1 = NSTextField;
+ LicenseField2 = NSTextField;
+ LicenseField3 = NSTextField;
+ LicenseField4 = NSTextField;
+ LicenseField5 = NSTextField;
+ LicenseField6 = NSTextField;
+ LicenseField7 = NSTextField;
+ companyField = NSTextField;
+ nameField = NSTextField;
+ };
+ SUPERCLASS = InstallerPane;
+ },
+ {
+ CLASS = InstallerSection;
+ LANGUAGE = ObjC;
+ OUTLETS = {firstPane = InstallerPane; };
+ SUPERCLASS = NSObject;
+ }
+ );
+ IBVersion = 1;
+} \ No newline at end of file
diff --git a/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/info.nib b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/info.nib
new file mode 100644
index 0000000..b06383f
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/info.nib
@@ -0,0 +1,23 @@
+<?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>IBDocumentLocation</key>
+ <string>283 121 356 240 0 0 1600 1178 </string>
+ <key>IBEditorPositions</key>
+ <dict>
+ <key>8</key>
+ <string>303 597 438 372 0 0 1600 1178 </string>
+ </dict>
+ <key>IBFramework Version</key>
+ <string>439.0</string>
+ <key>IBOpenObjects</key>
+ <array>
+ <integer>8</integer>
+ </array>
+ <key>IBSystem Version</key>
+ <string>8C46</string>
+ <key>IBUsesTextArchiving</key>
+ <true/>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/keyedobjects.nib b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/keyedobjects.nib
new file mode 100644
index 0000000..81ba051
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/English.lproj/InstallerPane~.nib/keyedobjects.nib
@@ -0,0 +1,2942 @@
+<?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>$archiver</key>
+ <string>NSKeyedArchiver</string>
+ <key>$objects</key>
+ <array>
+ <string>$null</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>197</integer>
+ </dict>
+ <key>NSAccessibilityConnectors</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>194</integer>
+ </dict>
+ <key>NSAccessibilityOidsKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>195</integer>
+ </dict>
+ <key>NSAccessibilityOidsValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>196</integer>
+ </dict>
+ <key>NSClassesKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>146</integer>
+ </dict>
+ <key>NSClassesValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>147</integer>
+ </dict>
+ <key>NSConnections</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>8</integer>
+ </dict>
+ <key>NSFontManager</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>0</integer>
+ </dict>
+ <key>NSFramework</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>5</integer>
+ </dict>
+ <key>NSNamesKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>130</integer>
+ </dict>
+ <key>NSNamesValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>131</integer>
+ </dict>
+ <key>NSNextOid</key>
+ <integer>122</integer>
+ <key>NSObjectsKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>127</integer>
+ </dict>
+ <key>NSObjectsValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>129</integer>
+ </dict>
+ <key>NSOidsKeys</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>148</integer>
+ </dict>
+ <key>NSOidsValues</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>149</integer>
+ </dict>
+ <key>NSRoot</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <key>NSVisibleWindows</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>6</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>4</integer>
+ </dict>
+ <key>NSClassName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>3</integer>
+ </dict>
+ </dict>
+ <string>InstallerSection</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSCustomObject</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSCustomObject</string>
+ </dict>
+ <string>IBCocoaFramework</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>7</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSMutableSet</string>
+ <string>NSSet</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSMutableSet</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>24</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>9</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>14</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>16</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>91</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>93</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>94</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>95</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>96</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>97</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>99</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>101</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>103</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>105</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>107</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>109</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>111</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>113</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>115</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>116</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>117</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>118</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>119</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>121</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>122</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>124</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>125</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>126</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>12</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>4</integer>
+ </dict>
+ <key>NSClassName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>11</integer>
+ </dict>
+ </dict>
+ <string>InstallerPanePane</string>
+ <string>firstPane</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSNibOutletConnector</string>
+ <string>NSNibConnector</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSNibOutletConnector</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>15</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>parentSection</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>90</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>89</integer>
+ </dict>
+ <key>NSClassName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>87</integer>
+ </dict>
+ <key>NSExtension</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>88</integer>
+ </dict>
+ <key>NSFrameSize</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>86</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>0</integer>
+ </dict>
+ <key>NSSubviews</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>18</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>24</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>39</integer>
+ </dict>
+ <key>NSBorderType</key>
+ <integer>3</integer>
+ <key>NSBoxType</key>
+ <integer>2</integer>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>25</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSOffsets</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>26</integer>
+ </dict>
+ <key>NSSubviews</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>20</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSTitleCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>27</integer>
+ </dict>
+ <key>NSTitlePosition</key>
+ <integer>0</integer>
+ <key>NSTransparent</key>
+ <false/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>24</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>21</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>23</integer>
+ </dict>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>22</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ </dict>
+ <string>{{2, 2}, {125, 1}}</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSView</string>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSMutableArray</string>
+ <string>NSArray</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSMutableArray</string>
+ </dict>
+ <string>{{12, 154}, {394, 5}}</string>
+ <string>{0, 0}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>0</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>28</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>37</integer>
+ </dict>
+ </dict>
+ <string>Box</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>31</integer>
+ </dict>
+ <key>NSName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>30</integer>
+ </dict>
+ <key>NSSize</key>
+ <real>13</real>
+ <key>NSfFlags</key>
+ <integer>1044</integer>
+ </dict>
+ <string>LucidaGrande</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSFont</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSFont</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSCatalogName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>33</integer>
+ </dict>
+ <key>NSColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>35</integer>
+ </dict>
+ <key>NSColorName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>34</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>6</integer>
+ </dict>
+ <string>System</string>
+ <string>textBackgroundColor</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>3</integer>
+ <key>NSWhite</key>
+ <data>
+ MQA=
+ </data>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSColor</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSColor</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>3</integer>
+ <key>NSWhite</key>
+ <data>
+ MCAwLjgwMDAwMDAxAA==
+ </data>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSTextFieldCell</string>
+ <string>NSActionCell</string>
+ <string>NSCell</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSTextFieldCell</string>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSBox</string>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSBox</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>42</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>41</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{240, 126}, {43, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <string></string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSCatalogName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>33</integer>
+ </dict>
+ <key>NSColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>46</integer>
+ </dict>
+ <key>NSColorName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>45</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>6</integer>
+ </dict>
+ <string>textColor</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>3</integer>
+ <key>NSWhite</key>
+ <data>
+ MAA=
+ </data>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSTextField</string>
+ <string>%NSTextField</string>
+ <string>NSControl</string>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSTextField</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>50</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>49</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{187, 126}, {45, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>53</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>52</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{134, 126}, {45, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>56</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>55</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{83, 126}, {43, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>59</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>58</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{291, 126}, {45, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>62</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>61</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{9, 183}, {45, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>71303168</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>63</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>Name:
+</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSCatalogName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>33</integer>
+ </dict>
+ <key>NSColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>66</integer>
+ </dict>
+ <key>NSColorName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>65</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>6</integer>
+ </dict>
+ <string>controlColor</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>3</integer>
+ <key>NSWhite</key>
+ <data>
+ MC42NjY2NjY2OQA=
+ </data>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>36</integer>
+ </dict>
+ <key>NSCatalogName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>33</integer>
+ </dict>
+ <key>NSColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>46</integer>
+ </dict>
+ <key>NSColorName</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>68</integer>
+ </dict>
+ <key>NSColorSpace</key>
+ <integer>6</integer>
+ </dict>
+ <string>controlTextColor</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>71</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>70</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{159, 156}, {82, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>72</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>License Key:</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>75</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>74</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{59, 181}, {347, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>78</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>77</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{30, 126}, {45, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>81</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>80</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{344, 126}, {44, 22}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>32</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>-1804468671</integer>
+ <key>NSCellFlags2</key>
+ <integer>272630784</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>43</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <key>NSDrawsBackground</key>
+ <true/>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>44</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>47</integer>
+ </dict>
+ <key>NSCell</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>84</integer>
+ </dict>
+ <key>NSEnabled</key>
+ <true/>
+ <key>NSFrame</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>83</integer>
+ </dict>
+ <key>NSNextResponder</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSSuperview</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <key>NSvFlags</key>
+ <integer>256</integer>
+ </dict>
+ <string>{{78, 211}, {263, 17}}</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>38</integer>
+ </dict>
+ <key>NSBackgroundColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>64</integer>
+ </dict>
+ <key>NSCellFlags</key>
+ <integer>67239424</integer>
+ <key>NSCellFlags2</key>
+ <integer>272629760</integer>
+ <key>NSContents</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>85</integer>
+ </dict>
+ <key>NSControlView</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <key>NSSupport</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>29</integer>
+ </dict>
+ <key>NSTextColor</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>67</integer>
+ </dict>
+ </dict>
+ <string>Please Enter Your Name and License Key
+</string>
+ <string>{418, 330}</string>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSCustomView</string>
+ <string>NSView</string>
+ <string>NSResponder</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSCustomView</string>
+ </dict>
+ <string>contentView</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>92</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ </dict>
+ <string>nextKeyView</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>92</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>92</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>92</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>92</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>98</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>nameField</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>100</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField1</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>102</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField2</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>104</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField3</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>106</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField4</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>108</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField5</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>110</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField6</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>112</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </dict>
+ <string>LicenseField7</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ </dict>
+ <string>delegate</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>114</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>123</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ </dict>
+ <string>nextKeyView</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>123</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>123</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>13</integer>
+ </dict>
+ <key>NSDestination</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <key>NSLabel</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>123</integer>
+ </dict>
+ <key>NSSource</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>21</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSArray</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSArray</string>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>21</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>132</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>133</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>87</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>134</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>135</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>136</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>137</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>138</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>139</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>140</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>141</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>142</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>11</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>143</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>144</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>145</integer>
+ </dict>
+ </array>
+ </dict>
+ <string>NSTextField11325</string>
+ <string>NSTextField211</string>
+ <string>NSTextField11324</string>
+ <string>NSTextField11321</string>
+ <string>NSBox1</string>
+ <string>NSTextField1132</string>
+ <string>NSTextField2</string>
+ <string>NSTextField21</string>
+ <string>NSTextField11323</string>
+ <string>File's Owner</string>
+ <string>NSTextField</string>
+ <string>NSTextField11326</string>
+ <string>View</string>
+ <string>NSTextField11322</string>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>125</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>117</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>60</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>121</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>82</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>2</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>9</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>93</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>17</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>126</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>57</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>101</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>19</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>94</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>116</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>10</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>79</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>14</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>103</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>54</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>91</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>95</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>16</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>105</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>76</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>122</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>51</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>96</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>120</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>124</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>119</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>107</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>73</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>97</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>48</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>118</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>113</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>109</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>115</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>21</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>99</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>69</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>40</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>111</integer>
+ </dict>
+ </array>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array>
+ <dict>
+ <key>CF$UID</key>
+ <integer>150</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>151</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>152</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>153</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>154</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>155</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>156</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>157</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>158</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>159</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>160</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>161</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>162</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>163</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>164</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>165</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>166</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>167</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>168</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>169</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>170</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>171</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>172</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>173</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>174</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>175</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>176</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>177</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>178</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>179</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>180</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>181</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>182</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>183</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>184</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>185</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>186</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>187</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>188</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>189</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>190</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>191</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>192</integer>
+ </dict>
+ <dict>
+ <key>CF$UID</key>
+ <integer>193</integer>
+ </dict>
+ </array>
+ </dict>
+ <integer>119</integer>
+ <integer>112</integer>
+ <integer>77</integer>
+ <integer>116</integer>
+ <integer>121</integer>
+ <integer>1</integer>
+ <integer>6</integer>
+ <integer>88</integer>
+ <integer>8</integer>
+ <integer>120</integer>
+ <integer>76</integer>
+ <integer>95</integer>
+ <integer>68</integer>
+ <integer>89</integer>
+ <integer>111</integer>
+ <integer>5</integer>
+ <integer>75</integer>
+ <integer>7</integer>
+ <integer>96</integer>
+ <integer>74</integer>
+ <integer>87</integer>
+ <integer>90</integer>
+ <integer>9</integer>
+ <integer>97</integer>
+ <integer>62</integer>
+ <integer>117</integer>
+ <integer>73</integer>
+ <integer>91</integer>
+ <integer>115</integer>
+ <integer>118</integer>
+ <integer>114</integer>
+ <integer>98</integer>
+ <integer>80</integer>
+ <integer>92</integer>
+ <integer>72</integer>
+ <integer>113</integer>
+ <integer>109</integer>
+ <integer>99</integer>
+ <integer>110</integer>
+ <integer>69</integer>
+ <integer>94</integer>
+ <integer>79</integer>
+ <integer>71</integer>
+ <integer>100</integer>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>24</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$class</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>128</integer>
+ </dict>
+ <key>NS.objects</key>
+ <array/>
+ </dict>
+ <dict>
+ <key>$classes</key>
+ <array>
+ <string>NSIBObjectData</string>
+ <string>NSObject</string>
+ </array>
+ <key>$classname</key>
+ <string>NSIBObjectData</string>
+ </dict>
+ </array>
+ <key>$top</key>
+ <dict>
+ <key>IB.objectdata</key>
+ <dict>
+ <key>CF$UID</key>
+ <integer>1</integer>
+ </dict>
+ </dict>
+ <key>$version</key>
+ <integer>100000</integer>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/InstallerPane/English.lproj/Localizable.strings b/util/scripts/mac-binary/package/InstallerPane/English.lproj/Localizable.strings
new file mode 100644
index 0000000..13b56d9
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/English.lproj/Localizable.strings
Binary files differ
diff --git a/util/scripts/mac-binary/package/InstallerPane/Info.plist b/util/scripts/mac-binary/package/InstallerPane/Info.plist
new file mode 100644
index 0000000..b255851
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/Info.plist
@@ -0,0 +1,30 @@
+<?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>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleExecutable</key>
+ <string>InstallerPane</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.trolltech.qt.installerPlugin</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>Installer</string>
+ <key>CFBundlePackageType</key>
+ <string>BNDL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+ <key>InstallerSectionTitle</key>
+ <string>InstallerPane</string>
+ <key>NSMainNibFile</key>
+ <string>InstallerPane</string>
+ <key>NSPrincipalClass</key>
+ <string>InstallerSection</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/InstallerPane/InstallerPane.xcodeproj/default.pbxuser b/util/scripts/mac-binary/package/InstallerPane/InstallerPane.xcodeproj/default.pbxuser
new file mode 100644
index 0000000..8c4de76
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/InstallerPane.xcodeproj/default.pbxuser
@@ -0,0 +1,238 @@
+// !$*UTF8*$!
+{
+ 089C1669FE841209C02AAC07 = {
+ activeBuildStyle = 014CEA420018CDE011CA2923;
+ activeTarget = 8D5B49AC048680CD000E48DA;
+ codeSenseManager = B4ED4491067AA67F00C170C8;
+ perUserDictionary = {
+ PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
+ PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
+ PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
+ PBXFileTableDataSourceColumnWidthsKey = (
+ 20,
+ 206,
+ 20,
+ 206,
+ 43,
+ 43,
+ 20,
+ );
+ PBXFileTableDataSourceColumnsKey = (
+ PBXFileDataSource_FiletypeID,
+ PBXFileDataSource_Filename_ColumnID,
+ PBXFileDataSource_Built_ColumnID,
+ PBXFileDataSource_ObjectSize_ColumnID,
+ PBXFileDataSource_Errors_ColumnID,
+ PBXFileDataSource_Warnings_ColumnID,
+ PBXFileDataSource_Target_ColumnID,
+ );
+ };
+ PBXPerProjectTemplateStateSaveDate = 108701307;
+ PBXPrepackagedSmartGroups_v2 = (
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ activationKey = OldTargetSmartGroup;
+ clz = PBXTargetSmartGroup;
+ description = "Displays all targets of the project.";
+ globalID = 1C37FABC04509CD000000102;
+ name = Targets;
+ preferences = {
+ image = Targets;
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ clz = PBXTargetSmartGroup2;
+ description = "Displays all targets of the project as well as nested build phases.";
+ globalID = 1C37FBAC04509CD000000102;
+ name = Targets;
+ preferences = {
+ image = Targets;
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ clz = PBXExecutablesSmartGroup;
+ description = "Displays all executables of the project.";
+ globalID = 1C37FAAC04509CD000000102;
+ name = Executables;
+ preferences = {
+ image = Executable;
+ };
+ },
+ {
+ " PBXTransientLocationAtTop " = bottom;
+ absolutePathToBundle = "";
+ clz = PBXErrorsWarningsSmartGroup;
+ description = "Displays files with errors or warnings.";
+ globalID = 1C08E77C0454961000C914BD;
+ name = "Errors and Warnings";
+ preferences = {
+ fnmatch = "";
+ image = WarningsErrors;
+ recursive = 1;
+ regex = "";
+ root = "<PROJECT>";
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ clz = PBXFilenameSmartGroup;
+ description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
+ globalID = 1CC0EA4004350EF90044410B;
+ name = "Implementation Files";
+ preferences = {
+ canSave = 1;
+ fnmatch = "";
+ image = SmartFolder;
+ isLeaf = 0;
+ recursive = 1;
+ regex = "?*\\.[mcMC]";
+ root = "<PROJECT>";
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ clz = PBXFilenameSmartGroup;
+ description = "This group displays Interface Builder NIB Files.";
+ globalID = 1CC0EA4004350EF90041110B;
+ name = "NIB Files";
+ preferences = {
+ canSave = 1;
+ fnmatch = "*.nib";
+ image = SmartFolder;
+ isLeaf = 0;
+ recursive = 1;
+ regex = "";
+ root = "<PROJECT>";
+ };
+ },
+ {
+ PBXTransientLocationAtTop = no;
+ absolutePathToBundle = "";
+ clz = PBXFindSmartGroup;
+ description = "Displays Find Results.";
+ globalID = 1C37FABC05509CD000000102;
+ name = "Find Results";
+ preferences = {
+ image = spyglass;
+ };
+ },
+ {
+ PBXTransientLocationAtTop = no;
+ absolutePathToBundle = "";
+ clz = PBXBookmarksSmartGroup;
+ description = "Displays Project Bookmarks.";
+ globalID = 1C37FABC05539CD112110102;
+ name = Bookmarks;
+ preferences = {
+ image = Bookmarks;
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ clz = XCSCMSmartGroup;
+ description = "Displays files with interesting SCM status.";
+ globalID = E2644B35053B69B200211256;
+ name = SCM;
+ preferences = {
+ image = PBXRepository;
+ isLeaf = 0;
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ clz = PBXSymbolsSmartGroup;
+ description = "Displays all symbols for the project.";
+ globalID = 1C37FABC04509CD000100104;
+ name = "Project Symbols";
+ preferences = {
+ image = ProjectSymbols;
+ isLeaf = 1;
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ clz = PBXFilenameSmartGroup;
+ description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
+ globalID = PBXTemplateMarker;
+ name = "Simple Filter SmartGroup";
+ preferences = {
+ canSave = 1;
+ fnmatch = "*.nib";
+ image = SmartFolder;
+ isLeaf = 0;
+ recursive = 1;
+ regex = "";
+ root = "<PROJECT>";
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ absolutePathToBundle = "";
+ clz = PBXFilenameSmartGroup;
+ description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
+ globalID = PBXTemplateMarker;
+ name = "Simple Regular Expression SmartGroup";
+ preferences = {
+ canSave = 1;
+ fnmatch = "";
+ image = SmartFolder;
+ isLeaf = 0;
+ recursive = 1;
+ regex = "?*\\.[mcMC]";
+ root = "<PROJECT>";
+ };
+ },
+ {
+ PBXTransientLocationAtTop = bottom;
+ clz = XDDesignSmartGroup;
+ description = "Displays Xdesign models";
+ globalID = 2E4A936305E6979E00701470;
+ name = Design;
+ preferences = {
+ image = Design;
+ isLeaf = 0;
+ };
+ },
+ );
+ PBXWorkspaceStateSaveDate = 108701307;
+ };
+ sourceControlManager = B4ED4490067AA67F00C170C8;
+ userBuildSettings = {
+ };
+ };
+ 8D5B49AC048680CD000E48DA = {
+ activeExec = 0;
+ };
+ B4ED4490067AA67F00C170C8 = {
+ fallbackIsa = XCSourceControlManager;
+ isa = PBXSourceControlManager;
+ scmConfiguration = {
+ };
+ scmType = "";
+ };
+ B4ED4491067AA67F00C170C8 = {
+ indexTemplatePath = "";
+ isa = PBXCodeSenseManager;
+ usesDefaults = 1;
+ wantsCodeCompletion = 1;
+ wantsCodeCompletionAutoPopup = 1;
+ wantsCodeCompletionAutoSuggestions = 0;
+ wantsCodeCompletionCaseSensitivity = 1;
+ wantsCodeCompletionListAlways = 1;
+ wantsCodeCompletionOnlyMatchingItems = 1;
+ wantsCodeCompletionParametersIncluded = 1;
+ wantsCodeCompletionPlaceholdersInserted = 1;
+ wantsCodeCompletionTabCompletes = 1;
+ wantsIndex = 1;
+ };
+}
diff --git a/util/scripts/mac-binary/package/InstallerPane/InstallerPane.xcodeproj/project.pbxproj b/util/scripts/mac-binary/package/InstallerPane/InstallerPane.xcodeproj/project.pbxproj
new file mode 100644
index 0000000..4445b5d
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/InstallerPane.xcodeproj/project.pbxproj
@@ -0,0 +1,381 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 42;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
+ 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; };
+ B40F7FFC06739E1B0053A16B /* InstallerPlugins.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */; };
+ B40F802906739F480053A16B /* InstallerPane.nib in Resources */ = {isa = PBXBuildFile; fileRef = B40F802706739F480053A16B /* InstallerPane.nib */; };
+ B47CF355067B4E030066DBF6 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = B47CF353067B4E030066DBF6 /* Localizable.strings */; };
+ CA21468F0897D41100C0167A /* InstallerSecionSection.mm in Sources */ = {isa = PBXBuildFile; fileRef = CA21468E0897D41100C0167A /* InstallerSecionSection.mm */; };
+ CA72AA6A089640B3001196EE /* InstallerPanePane.mm in Sources */ = {isa = PBXBuildFile; fileRef = CA72AA69089640B3001196EE /* InstallerPanePane.mm */; };
+ CADBCF9F08F55066009B9612 /* helpfulfunc.mm in Sources */ = {isa = PBXBuildFile; fileRef = CADBCF9E08F55066009B9612 /* helpfulfunc.mm */; };
+ CADBD0A108F58F9C009B9612 /* keydec.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CADBD0A008F58F9B009B9612 /* keydec.cpp */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ 089C1672FE841209C02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
+ 089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+ 089C167FFE841241C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
+ 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
+ 32DBCF630370AF2F00C91783 /* InstallerPane_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InstallerPane_Prefix.pch; sourceTree = "<group>"; };
+ 8D5B49B6048680CD000E48DA /* InstallerPane.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = InstallerPane.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
+ 8D5B49B7048680CD000E48DA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
+ B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = InstallerPlugins.framework; path = /System/Library/Frameworks/InstallerPlugins.framework; sourceTree = "<absolute>"; };
+ B40F802806739F480053A16B /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/InstallerPane.nib; sourceTree = "<group>"; };
+ B44C200806739AE500D31AA1 /* InstallerPanePane.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; fileEncoding = 4; path = InstallerPanePane.h; sourceTree = "<group>"; };
+ B47CF354067B4E030066DBF6 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = "<group>"; };
+ B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = InstallerSections.plist; sourceTree = "<group>"; };
+ CA21468D0897D41100C0167A /* InstallerSecionSection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InstallerSecionSection.h; sourceTree = "<group>"; };
+ CA21468E0897D41100C0167A /* InstallerSecionSection.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InstallerSecionSection.mm; sourceTree = "<group>"; };
+ CA2146C00897D69E00C0167A /* helpfulfunc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = helpfulfunc.h; sourceTree = "<group>"; };
+ CA72A9A40896304E001196EE /* keydec.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = keydec.h; sourceTree = "<group>"; };
+ CA72AA69089640B3001196EE /* InstallerPanePane.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InstallerPanePane.mm; sourceTree = "<group>"; };
+ CADBCF9E08F55066009B9612 /* helpfulfunc.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = helpfulfunc.mm; sourceTree = "<group>"; };
+ CADBD0A008F58F9B009B9612 /* keydec.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = keydec.cpp; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 8D5B49B3048680CD000E48DA /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */,
+ B40F7FFC06739E1B0053A16B /* InstallerPlugins.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 089C166AFE841209C02AAC07 /* InstallerPlugin */ = {
+ isa = PBXGroup;
+ children = (
+ 08FB77AFFE84173DC02AAC07 /* Classes */,
+ 32C88E010371C26100C91783 /* Other Sources */,
+ 089C167CFE841241C02AAC07 /* Resources */,
+ 089C1671FE841209C02AAC07 /* Frameworks and Libraries */,
+ 19C28FB8FE9D52D311CA2CBB /* Products */,
+ );
+ name = InstallerPlugin;
+ sourceTree = "<group>";
+ };
+ 089C1671FE841209C02AAC07 /* Frameworks and Libraries */ = {
+ isa = PBXGroup;
+ children = (
+ 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */,
+ 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */,
+ );
+ name = "Frameworks and Libraries";
+ sourceTree = "<group>";
+ };
+ 089C167CFE841241C02AAC07 /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ B47CF353067B4E030066DBF6 /* Localizable.strings */,
+ B4A6B2A60673D523003CD9B2 /* InstallerSections.plist */,
+ 8D5B49B7048680CD000E48DA /* Info.plist */,
+ 089C167DFE841241C02AAC07 /* InfoPlist.strings */,
+ B40F802706739F480053A16B /* InstallerPane.nib */,
+ );
+ name = Resources;
+ sourceTree = "<group>";
+ };
+ 08FB77AFFE84173DC02AAC07 /* Classes */ = {
+ isa = PBXGroup;
+ children = (
+ CADBD0A008F58F9B009B9612 /* keydec.cpp */,
+ CADBCF9E08F55066009B9612 /* helpfulfunc.mm */,
+ CA72A9A40896304E001196EE /* keydec.h */,
+ B44C200806739AE500D31AA1 /* InstallerPanePane.h */,
+ CA72AA69089640B3001196EE /* InstallerPanePane.mm */,
+ CA21468D0897D41100C0167A /* InstallerSecionSection.h */,
+ CA21468E0897D41100C0167A /* InstallerSecionSection.mm */,
+ CA2146C00897D69E00C0167A /* helpfulfunc.h */,
+ );
+ name = Classes;
+ sourceTree = "<group>";
+ };
+ 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */,
+ B40F7FFB06739E1B0053A16B /* InstallerPlugins.framework */,
+ );
+ name = "Linked Frameworks";
+ sourceTree = "<group>";
+ };
+ 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 089C1672FE841209C02AAC07 /* Foundation.framework */,
+ 089C167FFE841241C02AAC07 /* AppKit.framework */,
+ );
+ name = "Other Frameworks";
+ sourceTree = "<group>";
+ };
+ 19C28FB8FE9D52D311CA2CBB /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 8D5B49B6048680CD000E48DA /* InstallerPane.bundle */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 32C88E010371C26100C91783 /* Other Sources */ = {
+ isa = PBXGroup;
+ children = (
+ 32DBCF630370AF2F00C91783 /* InstallerPane_Prefix.pch */,
+ );
+ name = "Other Sources";
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 8D5B49AC048680CD000E48DA /* InstallerPane */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = CA72A7AF0894D77F001196EE /* Build configuration list for PBXNativeTarget "InstallerPane" */;
+ buildPhases = (
+ 8D5B49AF048680CD000E48DA /* Resources */,
+ 8D5B49B1048680CD000E48DA /* Sources */,
+ 8D5B49B3048680CD000E48DA /* Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = InstallerPane;
+ productInstallPath = "$(HOME)/Library/Bundles";
+ productName = InstallerPlugin;
+ productReference = 8D5B49B6048680CD000E48DA /* InstallerPane.bundle */;
+ productType = "com.apple.product-type.bundle";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 089C1669FE841209C02AAC07 /* Project object */ = {
+ isa = PBXProject;
+ buildConfigurationList = CA72A7B30894D77F001196EE /* Build configuration list for PBXProject "InstallerPane" */;
+ compatibilityVersion = "Xcode 2.4";
+ hasScannedForEncodings = 1;
+ mainGroup = 089C166AFE841209C02AAC07 /* InstallerPlugin */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 8D5B49AC048680CD000E48DA /* InstallerPane */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 8D5B49AF048680CD000E48DA /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */,
+ B40F802906739F480053A16B /* InstallerPane.nib in Resources */,
+ B47CF355067B4E030066DBF6 /* Localizable.strings in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 8D5B49B1048680CD000E48DA /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ CA72AA6A089640B3001196EE /* InstallerPanePane.mm in Sources */,
+ CA21468F0897D41100C0167A /* InstallerSecionSection.mm in Sources */,
+ CADBCF9F08F55066009B9612 /* helpfulfunc.mm in Sources */,
+ CADBD0A108F58F9C009B9612 /* keydec.cpp in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXVariantGroup section */
+ 089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 089C167EFE841241C02AAC07 /* English */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "<group>";
+ };
+ B40F802706739F480053A16B /* InstallerPane.nib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ B40F802806739F480053A16B /* English */,
+ );
+ name = InstallerPane.nib;
+ sourceTree = "<group>";
+ };
+ B47CF353067B4E030066DBF6 /* Localizable.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ B47CF354067B4E030066DBF6 /* English */,
+ );
+ name = Localizable.strings;
+ sourceTree = "<group>";
+ };
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+ CA1E6BC90897938F0079C491 /* Debug-eval */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = InstallerPane_Prefix.pch;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Library/Bundles";
+ PREBINDING = NO;
+ PRODUCT_NAME = InstallerPane;
+ WRAPPER_EXTENSION = bundle;
+ ZERO_LINK = YES;
+ };
+ name = "Debug-eval";
+ };
+ CA1E6BCA0897938F0079C491 /* Debug-eval */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ OTHER_CFLAGS = "-DQT_EVAL";
+ SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
+ ZERO_LINK = YES;
+ };
+ name = "Debug-eval";
+ };
+ CA72A7B00894D77F001196EE /* Debug-commercial */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = InstallerPane_Prefix.pch;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Library/Bundles";
+ PREBINDING = NO;
+ PRODUCT_NAME = InstallerPane;
+ WRAPPER_EXTENSION = bundle;
+ ZERO_LINK = YES;
+ };
+ name = "Debug-commercial";
+ };
+ CA72A7B10894D77F001196EE /* Release-commercial */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = (
+ ppc,
+ i386,
+ );
+ COPY_PHASE_STRIP = YES;
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = InstallerPane_Prefix.pch;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Library/Bundles";
+ PREBINDING = NO;
+ PRODUCT_NAME = InstallerPane;
+ WRAPPER_EXTENSION = bundle;
+ ZERO_LINK = NO;
+ };
+ name = "Release-commercial";
+ };
+ CA72A7B40894D77F001196EE /* Debug-commercial */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
+ ZERO_LINK = YES;
+ };
+ name = "Debug-commercial";
+ };
+ CA72A7B50894D77F001196EE /* Release-commercial */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
+ };
+ name = "Release-commercial";
+ };
+ CAEBD75C0896974E0003461D /* Release-eval */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = (
+ ppc,
+ i386,
+ );
+ COPY_PHASE_STRIP = YES;
+ GCC_ENABLE_FIX_AND_CONTINUE = NO;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = InstallerPane_Prefix.pch;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Library/Bundles";
+ PREBINDING = NO;
+ PRODUCT_NAME = InstallerPane;
+ WRAPPER_EXTENSION = bundle;
+ ZERO_LINK = NO;
+ };
+ name = "Release-eval";
+ };
+ CAEBD75D0896974E0003461D /* Release-eval */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ OTHER_CFLAGS = "-DQT_EVAL";
+ SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
+ };
+ name = "Release-eval";
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ CA72A7AF0894D77F001196EE /* Build configuration list for PBXNativeTarget "InstallerPane" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ CA72A7B00894D77F001196EE /* Debug-commercial */,
+ CA1E6BC90897938F0079C491 /* Debug-eval */,
+ CA72A7B10894D77F001196EE /* Release-commercial */,
+ CAEBD75C0896974E0003461D /* Release-eval */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = "Debug-commercial";
+ };
+ CA72A7B30894D77F001196EE /* Build configuration list for PBXProject "InstallerPane" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ CA72A7B40894D77F001196EE /* Debug-commercial */,
+ CA1E6BCA0897938F0079C491 /* Debug-eval */,
+ CA72A7B50894D77F001196EE /* Release-commercial */,
+ CAEBD75D0896974E0003461D /* Release-eval */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = "Debug-commercial";
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 089C1669FE841209C02AAC07 /* Project object */;
+}
diff --git a/util/scripts/mac-binary/package/InstallerPane/InstallerPanePane.h b/util/scripts/mac-binary/package/InstallerPane/InstallerPanePane.h
new file mode 100644
index 0000000..e7ff301
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/InstallerPanePane.h
@@ -0,0 +1,68 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+/* InstallerPanePane */
+
+#import <InstallerPlugins/InstallerPane.h>
+#import <Cocoa/Cocoa.h>
+
+@interface InstallerPanePane : InstallerPane
+{
+ int licenseStatus;
+ BOOL nameCheckOK;
+ NSMutableString *fullLicenseKey;
+ IBOutlet NSTextField *LicenseField1;
+ IBOutlet NSTextField *LicenseField2;
+ IBOutlet NSTextField *LicenseField3;
+ IBOutlet NSTextField *LicenseField4;
+ IBOutlet NSTextField *LicenseField5;
+ IBOutlet NSTextField *LicenseField6;
+ IBOutlet NSTextField *LicenseField7;
+ IBOutlet NSTextField *nameField;
+ IBOutlet NSTextField *errorField;
+ NSString *initialLicensee;
+ NSString *initialLicenseKey;
+}
+- (void)checkLicense;
+- (void)checkName;
+- (void)tryEnable;
+- (void)manipulateEditorString:(NSTextField *)TextField;
+- (void)fillInForm;
+@end
diff --git a/util/scripts/mac-binary/package/InstallerPane/InstallerPanePane.mm b/util/scripts/mac-binary/package/InstallerPane/InstallerPanePane.mm
new file mode 100644
index 0000000..268d594
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/InstallerPanePane.mm
@@ -0,0 +1,250 @@
+#import "InstallerPanePane.h"
+#import "helpfulfunc.h"
+
+static BOOL checkForLicenseFile()
+{
+ static const int LICENSESIZE = 42;
+ int value = -1;
+ static NSString *qtLicense = [NSHomeDirectory() stringByAppendingPathComponent: @".qt-license"];
+ NSData *fileContents = [[NSFileManager defaultManager] contentsAtPath: qtLicense];
+ if (fileContents != nil) {
+ const char *charBuffer = (const char *)[fileContents bytes];
+ int length = [fileContents length];
+ char *location = strnstr(charBuffer, LicenseKeyExtString, length);
+ if (location) {
+ location += strlen(LicenseKeyExtString);
+ char licenseString[LICENSESIZE];
+ strncpy(licenseString, location, LICENSESIZE);
+ licenseString[LICENSESIZE - 1] = '\0';
+ while (location = strstr(licenseString, "\n"))
+ *location = '\0';
+ value = validateLicense(licenseString);
+ }
+ }
+ return value == LicenseOK;
+}
+
+@implementation InstallerPanePane
+- (NSString *)title
+{
+ return [[NSBundle bundleForClass:[self class]] localizedStringForKey:@"PaneTitle"
+ value:nil table:nil];
+}
+
+- (id)init
+{
+ self = [super init];
+ if (self) {
+ licenseStatus = InvalidLicense;
+ nameCheckOK = NO;
+ fullLicenseKey = [[NSMutableString alloc] initWithCapacity:35];
+ [self fillInForm];
+ }
+ return self;
+}
+
+- (void)fillInForm
+{
+ static NSString *qtLicense = [NSHomeDirectory() stringByAppendingPathComponent: @".qt-license"];
+ NSData *fileData = [[NSFileManager defaultManager] contentsAtPath: qtLicense];
+ NSString *fileContents = [[[NSString alloc] initWithData:fileData
+ encoding:NSUTF8StringEncoding] autorelease];
+ if (fileContents == nil)
+ return;
+ NSArray *array = [fileContents componentsSeparatedByString:@"\n"];
+ uint totalCount = [array count];
+ initialLicensee = nil;
+ initialLicenseKey = nil;
+ for (uint i = 0; i < totalCount; ++i) {
+ if (initialLicensee != nil && initialLicenseKey != nil)
+ break;
+ NSString *string = [array objectAtIndex:i];
+ if (initialLicenseKey == nil) {
+ NSRange range = [string rangeOfString:[NSString stringWithUTF8String:LicenseKeyExtString]];
+ if (range.location != NSNotFound && range.length != 0) {
+ initialLicenseKey = [string substringFromIndex:range.location + range.length];
+ [initialLicenseKey retain];
+ continue;
+ }
+ }
+ if (initialLicensee == nil) {
+ NSRange range = [string rangeOfString:[NSString stringWithUTF8String:LicenseeString]];
+ if (range.location != NSNotFound && range.length != 0) {
+ initialLicensee = [[string substringFromIndex:range.location + range.length]
+ stringByTrimmingCharactersInSet:
+ [NSCharacterSet characterSetWithCharactersInString:@"\""]];
+ [initialLicensee retain];
+ continue;
+ }
+ }
+ }
+}
+
+- (void)willEnterPane:(InstallerSectionDirection)dir
+{
+ NSString *string = [nameField stringValue];
+
+ if ((string == nil || [string length] == 0) && (initialLicensee != nil))
+ [nameField setStringValue:initialLicensee];
+ string = [LicenseField1 stringValue];
+ if ((string == nil || [string length] == 0 && (initialLicenseKey != nil))) {
+ NSArray *array = [initialLicenseKey componentsSeparatedByString:@"-"];
+ NSArray *licenseFieldArray = [NSArray arrayWithObjects:LicenseField1, LicenseField2,
+ LicenseField3, LicenseField4,
+ LicenseField5, LicenseField6, LicenseField7, nil];
+ uint count = [array count];
+ count = (count > 7) ? 7 : count;
+ for (uint i = 0; i < count; ++i)
+ [[licenseFieldArray objectAtIndex:i] setStringValue:[array objectAtIndex:i]];
+ }
+ [self checkLicense];
+}
+
+- (BOOL)shouldExitPane:(InstallerSectionDirection)dir
+{
+ if ((dir == InstallerDirectionForward)) {
+ if ((licenseStatus != LicenseOK) && !nameCheckOK)
+ return NO;
+
+ // Copy the file first
+ NSFileManager *fm = [NSFileManager defaultManager];
+ NSString *qtLicense = [NSHomeDirectory() stringByAppendingPathComponent: @".qt-license"];
+#if 0
+ if ([fm fileExistsAtPath:qtLicense]) {
+ NSMutableString *alternatePlace = [NSMutableString stringWithCapacity: 256];
+ [alternatePlace setString : [NSHomeDirectory() stringByAppendingPathComponent: @".qt-license.bak"]];
+ NSNumber *backNumber = [NSNumber numberWithInt:1];
+ int index = [alternatePlace length] - 1;
+
+ while ([fm fileExistsAtPath:alternatePlace]) {
+ [alternatePlace insertString:[backNumber stringValue] atIndex:index];
+ int foo = [backNumber intValue];
+ ++foo;
+ backNumber = [NSNumber numberWithInt:foo];
+ }
+ [fm copyPath:qtLicense toPath:alternatePlace handler:nil];
+ }
+#endif
+
+ NSMutableString *finalString = [NSMutableString stringWithCapacity:256];
+ NSMutableString *nameString = [NSMutableString stringWithCapacity:128];
+ [nameString appendString: [nameField stringValue]];
+ [nameString replaceOccurrencesOfString:@"\"" withString:@"'"
+ options:NSLiteralSearch range:NSMakeRange(0, [nameString length])];
+
+ [finalString appendString:[NSString stringWithUTF8String: LicenseeString]];
+ [finalString appendString:@"\""];
+ [finalString appendString:nameString];
+ [finalString appendString:@"\""];
+ [finalString appendString:@"\n"];
+ [finalString appendString:[NSString stringWithUTF8String: LicenseKeyExtString]];
+ [finalString appendString:fullLicenseKey];
+ [finalString appendString:@"\n"];
+
+ const char *finalFinalString = [finalString UTF8String];
+
+ NSData *data = [NSData dataWithBytes:finalFinalString length:strlen(finalFinalString)];
+ [fm createFileAtPath:qtLicense contents:data attributes:nil];
+ }
+ return YES;
+}
+
+- (void)didEnterPane:(InstallerSectionDirection)dir
+{
+ [self checkName];
+ [self checkLicense];
+ [nameField selectText:self];
+}
+
+- (void)manipulateEditorString:(NSTextField *) textField
+{
+ NSString *string = [[textField currentEditor] string];
+ NSRange range = [string rangeOfString:@"-"];
+ if (range.location == NSNotFound) {
+ return;
+ } else {
+ NSString *theBeginning = [string substringToIndex:range.location];
+ NSString *theRest = [string substringFromIndex:range.location + 1];
+ NSText *ed = [textField currentEditor];
+ [ed setString:theBeginning];
+ NSView *nextView = [textField nextValidKeyView];
+ if (nextView != nil && [nextView class] == [textField class]) {
+ NSTextField *nextTextField = (NSTextField *)nextView;
+ [[nextTextField window] makeFirstResponder: nextTextField];
+ ed = [nextTextField currentEditor];
+ [ed setString:theRest];
+ // Bubble this along to catch extra dashes
+ [self manipulateEditorString:nextTextField];
+ }
+ }
+}
+
+- (void)controlTextDidChange:(NSNotification *)aNotification
+{
+ NSTextField *itemThatChanged = [aNotification object];
+ if (itemThatChanged == nameField) {
+ [self checkName];
+ } else if (itemThatChanged != nil) {
+ [self manipulateEditorString: itemThatChanged];
+ [self checkLicense];
+ }
+}
+
+
+- (void)checkLicense
+{
+ int i;
+ [fullLicenseKey setString:@""];
+ NSTextField *theLicenseFields[] = { LicenseField1, LicenseField2, LicenseField3, LicenseField4,
+ LicenseField5, LicenseField6, LicenseField7 };
+
+ for (i = 0; i < sizeof(theLicenseFields) / sizeof(NSTextField*); ++i) {
+ NSString *part = [[theLicenseFields[i] stringValue]
+ stringByTrimmingCharactersInSet:[NSCharacterSet
+ whitespaceAndNewlineCharacterSet]];
+ if ([part length] <= 0) {
+ licenseStatus = InvalidLicense;
+ [self tryEnable];
+ return;
+ }
+ if (i != 0)
+ [fullLicenseKey appendString:@"-"];
+ [fullLicenseKey appendString:[part uppercaseString]];
+ }
+
+ licenseStatus = validateLicense([fullLicenseKey UTF8String]);
+ [self tryEnable];
+}
+
+- (void)checkName
+{
+ NSString *name = [nameField stringValue];
+ nameCheckOK = [name length] > 0;
+ [self tryEnable];
+}
+
+
+- (void)tryEnable
+{
+ [self setNextEnabled:(licenseStatus == LicenseOK) && nameCheckOK];
+ switch (licenseStatus) {
+ case LicenseOK:
+ case InvalidLicense:
+ [errorField setStringValue:@""];
+ break;
+ case InvalidType:
+ [errorField setStringValue:@"This license cannot be used with this version of Qt"];
+ break;
+ case InvalidPlatform:
+ [errorField setStringValue:@"This license cannot be used for this Qt Platform"];
+ break;
+ case LicenseExpired:
+ [errorField setStringValue:@"This license has expired for this product,\n contact sales@trolltech.com for an upgrade"];
+ break;
+ }
+}
+
+
+@end
+
+
diff --git a/util/scripts/mac-binary/package/InstallerPane/InstallerPane_Prefix.pch b/util/scripts/mac-binary/package/InstallerPane/InstallerPane_Prefix.pch
new file mode 100644
index 0000000..c0a0b78
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/InstallerPane_Prefix.pch
@@ -0,0 +1,8 @@
+//
+// Prefix header for all source files of the 'InstallerPlugin' target in the 'InstallerPlugin' project.
+//
+
+#ifdef __OBJC__
+ #import <Cocoa/Cocoa.h>
+ #import <InstallerPlugins/InstallerPlugins.h>
+#endif
diff --git a/util/scripts/mac-binary/package/InstallerPane/InstallerSecionSection.h b/util/scripts/mac-binary/package/InstallerPane/InstallerSecionSection.h
new file mode 100644
index 0000000..6b3abbe
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/InstallerSecionSection.h
@@ -0,0 +1,56 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//
+// InstallerSecionSection.h
+// InstallerPane
+//
+// Created by Trenton Schulz on 7/27/05.
+// Copyright 2005 __MyCompanyName__. All rights reserved.
+//
+
+#import <Cocoa/Cocoa.h>
+#include <InstallerPlugins/InstallerSection.h>
+
+@interface InstallerSecionSection : InstallerSection {
+
+}
+
+@end
diff --git a/util/scripts/mac-binary/package/InstallerPane/InstallerSecionSection.mm b/util/scripts/mac-binary/package/InstallerPane/InstallerSecionSection.mm
new file mode 100644
index 0000000..5d04a5e
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/InstallerSecionSection.mm
@@ -0,0 +1,46 @@
+//
+// InstallerSecionSection.mm
+// InstallerPane
+//
+// Created by Trenton Schulz on 7/27/05.
+// Copyright 2005 __MyCompanyName__. All rights reserved.
+//
+
+#import "InstallerSecionSection.h"
+#import "helpfulfunc.h"
+#import <stdio.h>
+#import <string.h>
+
+
+static BOOL checkForLicenseFile()
+{
+ static const int LICENSESIZE = 42;
+ int value = -1;
+ static NSString *qtLicense = [NSHomeDirectory() stringByAppendingPathComponent: @".qt-license"];
+ NSData *fileContents = [[NSFileManager defaultManager] contentsAtPath: qtLicense];
+ if (fileContents != nil) {
+ const char *charBuffer = (const char *)[fileContents bytes];
+ int length = [fileContents length];
+ char *location = strnstr(charBuffer, LicenseKeyExtString, length);
+ if (location) {
+ location += strlen(LicenseKeyExtString);
+ char licenseString[LICENSESIZE];
+ strncpy(licenseString, location, LICENSESIZE);
+ licenseString[LICENSESIZE - 1] = '\0';
+ while (location = strstr(licenseString, "\n"))
+ *location = '\0';
+ value = validateLicense(licenseString);
+ }
+ }
+ return value == LicenseOK;
+}
+
+
+@implementation InstallerSecionSection
+
+- (BOOL)shouldLoad
+{
+ return !checkForLicenseFile();
+}
+
+@end
diff --git a/util/scripts/mac-binary/package/InstallerPane/InstallerSections.plist b/util/scripts/mac-binary/package/InstallerPane/InstallerSections.plist
new file mode 100644
index 0000000..0a82f56
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/InstallerSections.plist
@@ -0,0 +1,16 @@
+<?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>SectionOrder</key>
+ <array>
+ <string>Introduction</string>
+ <string>ReadMe</string>
+ <string>License</string>
+ <string>InstallerPane.bundle</string>
+ <string>Target</string>
+ <string>PackageSelection</string>
+ <string>Install</string>
+ </array>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/InstallerPane/helpfulfunc.h b/util/scripts/mac-binary/package/InstallerPane/helpfulfunc.h
new file mode 100644
index 0000000..b774f60
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/helpfulfunc.h
@@ -0,0 +1,62 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+/*
+ * helpfulfunc.h
+ * InstallerPane
+ *
+ * Created by Trenton Schulz on 7/27/05.
+ * Copyright 2005 __MyCompanyName__. All rights reserved.
+ *
+ */
+
+#ifndef HELPFULFUNC_H
+#define HELPFULFUNC_H
+
+#import <stdio.h>
+
+extern const char LicenseeString[];
+extern const char LicenseKeyExtString[];
+
+enum LicenseValues { LicenseOK = 0, InvalidLicense, InvalidProduct, InvalidPlatform, InvalidType, LicenseExpired };
+
+int validateLicense(const char *string);
+
+#endif // HELPFULFUNC_H \ No newline at end of file
diff --git a/util/scripts/mac-binary/package/InstallerPane/helpfulfunc.mm b/util/scripts/mac-binary/package/InstallerPane/helpfulfunc.mm
new file mode 100644
index 0000000..35b877a
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/helpfulfunc.mm
@@ -0,0 +1,88 @@
+/*
+ * helpfulfunc.c
+ * InstallerPane
+ *
+ * Created by Trenton Schulz on 7/27/05.
+ * Copyright 2005 __MyCompanyName__. All rights reserved.
+ *
+ */
+
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include "helpfulfunc.h"
+#include "keydec.h"
+
+#include <Cocoa/Cocoa.h>
+
+const char LicenseKeyExtString[] = "LicenseKeyExt=";
+const char LicenseeString[] = "Licensee=";
+
+int validateLicense(const char *string)
+{
+ KeyDecoder key(string);
+ int ret = InvalidLicense;
+ int validSchema =
+#ifdef QT_EVAL
+ (KeyDecoder::SupportedEvaluation
+ | KeyDecoder::UnsupportedEvaluation | KeyDecoder::FullSourceEvaluation);
+#else
+ (KeyDecoder::FullSourceEvaluation | KeyDecoder::Academic
+ | KeyDecoder::Educational | KeyDecoder::FullCommercial);
+#endif
+ if (key.IsValid()) {
+ if (!(key.getProducts() & (KeyDecoder::QtUniversal | KeyDecoder::QtDesktop
+ | KeyDecoder::QtDesktopLight | KeyDecoder::QtConsole))) {
+ ret = InvalidProduct;
+ } else {
+ if (!(key.getPlatforms()
+ & (KeyDecoder::Mac | KeyDecoder::Embedded | KeyDecoder::WinCE))) {
+ ret = InvalidPlatform;
+ } else {
+
+ if (!(key.getLicenseSchema() & validSchema)) {
+ ret = InvalidType;
+ } else {
+ ret = LicenseOK;
+ }
+ }
+ }
+ }
+
+ if (ret == LicenseOK) {
+ // We need to check ourselves against the build date
+ // First read in the build date and then use it to compare with the
+ // Expiry Date if it's commercial or the current date if it's an eval.
+ CDate date = key.getExpiryDate();
+ NSCalendarDate *expiryDate = [NSCalendarDate dateWithYear:date.year()
+ month:date.month() day:date.day()
+ hour:23 minute:59 second:59
+ timeZone:[NSTimeZone systemTimeZone]];
+ NSCalendarDate *compareDay = 0;
+#ifdef QT_EVAL
+ compareDay = [NSCalendarDate calendarDate];
+#else
+ // There's a lot of bundles here, so we have to make sure we get the correct one
+ NSBundle *bundle = nil;
+ NSArray *bundles = [NSBundle allBundles];
+ for (uint i = 0; i < [bundles count]; ++i) {
+ NSBundle *bun = [bundles objectAtIndex: i];
+ NSRange location = [[bun bundleIdentifier] rangeOfString:@"com.trolltech.qt4."];
+ if (location.length == 0)
+ location = [[bun bundleIdentifier] rangeOfString:@"Trolltech Qt Packages"];
+
+ if (location.length != 0) {
+ bundle = bun;
+ break;
+ }
+
+ }
+ NSString *contents = [NSString stringWithContentsOfFile:[bundle pathForResource:@".package_date" ofType:nil]
+ encoding:NSUTF8StringEncoding error:0];
+ compareDay = [NSCalendarDate dateWithString: contents calendarFormat:@"%Y-%m-%d"];
+#endif
+ if ([expiryDate laterDate: compareDay] != expiryDate)
+ ret = LicenseExpired;
+ }
+ return ret;
+}
diff --git a/util/scripts/mac-binary/package/InstallerPane/keydec.cpp b/util/scripts/mac-binary/package/InstallerPane/keydec.cpp
new file mode 100644
index 0000000..e672187
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/keydec.cpp
@@ -0,0 +1,323 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "keydec.h"
+
+#define MAX_STRSIZE 256
+#define NUMBER_OF_PARTS 7
+
+const ushort KeyDecoder::crc_tbl[] = {
+ 0x0000, 0x1081, 0x2102, 0x3183,
+ 0x4204, 0x5285, 0x6306, 0x7387,
+ 0x8408, 0x9489, 0xa50a, 0xb58b,
+ 0xc60c, 0xd68d, 0xe70e, 0xf78f
+};
+
+const char KeyDecoder::Xalphabet[] = "WX9MUEC7AJH3KS6DB4YFG2L5PQRT8VNZ";
+const int KeyDecoder::XAlphabetSize = sizeof(Xalphabet) - 1;
+const CDate KeyDecoder::StartDate = CDate(2001, 1, 1);
+const uint KeyDecoder::MaxDays = 4000;
+
+const char *KeyDecoder::Products[] = {
+ "Qt Universal",
+ "Qt Desktop",
+ "Qt Desktop Light",
+ "Qt Console",
+ "Qt Designer Only",
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+
+ "Qtopia PDA",
+ "Qtopia Phone",
+ "Qtopia Reference Board",
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+
+ "Teambuilder",
+ "Solutions",
+ "QSA",
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0
+};
+
+const char *KeyDecoder::Platforms[] = {
+ "X11",
+ "Embedded",
+ "Windows",
+ "Mac",
+ "Windows CE"
+};
+
+const char *KeyDecoder::LicenseSchemas[] = {
+ "Supported Evaluation",
+ "Unsupported Evaluation",
+ "Full Source Evaluation",
+ "Full Commercial",
+ "Academic",
+ "Educational"
+};
+
+const char *KeyDecoder::LicenseFeatures[] = {
+ "US Customer",
+ "Floating License",
+ 0,
+ 0
+};
+
+const int KeyDecoder::NumberOfProducts = sizeof(Products) / sizeof(char *);
+const int KeyDecoder::NumberOfPlatforms = sizeof(Platforms) / sizeof(char *);
+const int KeyDecoder::NumberOfLicenseSchemas = sizeof(LicenseSchemas) / sizeof(char *);
+const int KeyDecoder::NumberOfLicenseFeatures = sizeof(LicenseFeatures) / sizeof(char *);
+
+CDate::CDate() : m_jd(0)
+{
+}
+
+CDate::CDate(int y, int m, int d)
+{
+ m_jd = gregorianToJulian(y, m, d);
+}
+
+CDate::CDate(CDate *d)
+{
+ m_jd = d->m_jd;
+}
+
+CDate::CDate(uint julianDays)
+{
+ m_jd = julianDays;
+}
+
+int CDate::year() const
+{
+ int y, m, d;
+ julianToGregorian(m_jd, y, m, d);
+ return y;
+}
+
+int CDate::month() const
+{
+ int y, m, d;
+ julianToGregorian(m_jd, y, m, d);
+ return m;
+}
+
+int CDate::day() const
+{
+ int y, m, d;
+ julianToGregorian(m_jd, y, m, d);
+ return d;
+}
+
+uint CDate::gregorianToJulian(int y, int m, int d) const
+{
+ uint c, ya;
+ if (y <= 99)
+ y += 1900;
+ if (m > 2) {
+ m -= 3;
+ } else {
+ m += 9;
+ y--;
+ }
+ c = y; // NOTE: Sym C++ 6.0 bug
+ c /= 100;
+ ya = y - 100*c;
+ return 1721119 + d + (146097*c)/4 + (1461*ya)/4 + (153*m+2)/5;
+}
+
+void CDate::julianToGregorian(uint jd, int &y, int &m, int &d) const
+{
+ uint x;
+ uint j = jd - 1721119;
+ y = (j*4 - 1)/146097;
+ j = j*4 - 146097*y - 1;
+ x = j/4;
+ j = (x*4 + 3) / 1461;
+ y = 100*y + j;
+ x = (x*4) + 3 - 1461*j;
+ x = (x + 4)/4;
+ m = (5*x - 3)/153;
+ x = 5*x - 3 - 153*m;
+ d = (x + 5)/5;
+ if (m < 10) {
+ m += 3;
+ } else {
+ m -= 9;
+ y++;
+ }
+}
+
+void KeyDecoder::encodeBaseX(uint k, char *str)
+{
+ memset(str, 0, MAX_STRSIZE);
+
+ do {
+ str[strlen(str)] = Xalphabet[ k % XAlphabetSize ];
+ k /= XAlphabetSize;
+ } while (k > 0u);
+}
+
+uint KeyDecoder::decodeBaseX(const char *str)
+{
+ uint k = 0;
+ int i = (int)strlen(str);
+ while (i > 0) {
+ i--;
+ const char *p = strchr(Xalphabet, str[i]);
+ if (p == 0) {
+ return 0;
+ } else {
+ k = (k * XAlphabetSize) + (p - Xalphabet);
+ }
+ }
+ return k;
+}
+
+void KeyDecoder::encodedExpiryDate(const CDate &date, char *str)
+{
+ encodeBaseX(date.julianDate() ^ ExpiryDateMagic, str);
+}
+
+CDate KeyDecoder::decodedExpiryDate(const char *encodedDate)
+{
+ uint y = decodeBaseX(encodedDate);
+ uint x = y ^ ExpiryDateMagic;
+
+ CDate date(x);
+
+ char str[MAX_STRSIZE];
+ encodedExpiryDate(date, str);
+
+ if (strcmp(encodedDate, str) != 0)
+ return CDate();
+ return date;
+}
+
+ushort KeyDecoder::qChecksum(const char *data, uint len)
+{
+ ushort crc = 0xffff;
+ uchar c;
+ const uchar *p = reinterpret_cast<const uchar *>(data);
+ while (len--) {
+ c = *p++;
+ crc = ((crc >> 4) & 0x0fff) ^ crc_tbl[((crc ^ c) & 15)];
+ c >>= 4;
+ crc = ((crc >> 4) & 0x0fff) ^ crc_tbl[((crc ^ c) & 15)];
+ }
+ return ~crc & 0xffff;
+}
+
+KeyDecoder::KeyDecoder(const char *clicenseKey)
+ : products(0), platforms(0), licenseSchema(0), licenseFeatures(0), licenseID(0), m_valid(false)
+{
+ static const int MAXCHARS = 7;
+ static const char * const SEP = "-";
+
+#ifndef _WIN32_WCE
+ char *buffer = strdup(clicenseKey);
+#else
+ char *buffer = (char*) malloc(strlen(clicenseKey) + 1);
+ strcpy(buffer, clicenseKey);
+#endif
+ char *licenseParts[NUMBER_OF_PARTS];
+ int partNumber = 0;
+
+ for (char *part = strtok(buffer, SEP); part != 0; part = strtok(0, SEP))
+ licenseParts[partNumber++] = part;
+
+ if (partNumber < (NUMBER_OF_PARTS-1)) {
+ free(buffer);
+ return; //invalid key
+ }
+
+ int crcPeices = NUMBER_OF_PARTS - 1;
+ char *crcCheckKey = (char*)calloc(crcPeices * MAXCHARS + crcPeices, sizeof(char));
+ for (int i = 0; i < crcPeices; ++i) {
+ if (i != 0)
+ strncat(crcCheckKey, SEP, 1);
+ strncat(crcCheckKey, licenseParts[i], MAXCHARS);
+ }
+
+ int crc = qChecksum(crcCheckKey, (uint)strlen(crcCheckKey));
+
+ char checksumVerification[5];
+#if defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__) || defined(WIN64) || defined(_WIN64) || defined(__WIN64__)
+ _snprintf(checksumVerification, 5, "%.2X%.2X", (crc & 0xff), (crc >> 8 & 0xff));
+#else
+ snprintf(checksumVerification, 5, "%.2X%.2X", (crc & 0xff), (crc >> 8 & 0xff));
+#endif
+
+ if (strncmp(checksumVerification, licenseParts[6], 5) != 0) {
+ free(buffer);
+ free(crcCheckKey);
+ return; //invalid checksum
+ }
+
+ products = decodeBaseX(licenseParts[0]) ^ ProductMagic;
+ platforms = decodeBaseX(licenseParts[1]) ^ PlatformMagic;
+ licenseSchema = decodeBaseX(licenseParts[2]) ^ LicenseSchemaMagic;
+ licenseFeatures = decodeBaseX(licenseParts[3]) ^ FeatureMagic;
+ licenseID = decodeBaseX(licenseParts[4]) ^ LicenseIDMagic;
+ expiryDate = decodedExpiryDate(licenseParts[5]);
+
+ m_valid = true;
+ free(buffer);
+ free(crcCheckKey);
+}
diff --git a/util/scripts/mac-binary/package/InstallerPane/keydec.h b/util/scripts/mac-binary/package/InstallerPane/keydec.h
new file mode 100644
index 0000000..ef1db96
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/keydec.h
@@ -0,0 +1,197 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#ifndef KEYDEC_H
+#define KEYDEC_H
+
+typedef unsigned int uint;
+typedef unsigned short ushort;
+typedef unsigned char uchar;
+
+class CDate
+{
+public:
+ CDate();
+ CDate(int y, int m, int d);
+ CDate(CDate *d);
+ CDate(uint julianDays);
+
+ int year() const;
+ int month() const;
+ int day() const;
+ uint julianDate() const { return m_jd; }
+
+private:
+ uint gregorianToJulian(int y, int m, int d) const;
+ void julianToGregorian(uint jd, int &y, int &m, int &d) const;
+ uint m_jd;
+};
+
+class KeyDecoder
+{
+private:
+ static const ushort crc_tbl[16];
+ static const CDate StartDate;
+ static const uint MaxDays;
+
+ void encodeBaseX(uint k, char *str);
+ uint decodeBaseX(const char *str);
+
+ void encodedExpiryDate(const CDate &date, char *str);
+ CDate decodedExpiryDate(const char *encodedDate);
+
+ ushort qChecksum(const char *data, uint len);
+
+ uint products;
+ uint platforms;
+ uint licenseSchema;
+ uint licenseFeatures;
+ uint licenseID;
+ CDate expiryDate;
+ bool m_valid;
+
+public:
+ // Magic values
+ enum {
+ ProductMagic = 0xB292,
+ PlatformMagic = 0x5C7E,
+ LicenseSchemaMagic = 0xE3B,
+ LicenseIDMagic = 0xCE57,
+ FeatureMagic = 0x4D5,
+ ExpiryDateMagic = 0x5B7EC4
+ };
+ static const char Xalphabet[];
+ static const int XAlphabetSize;
+
+ // Products
+ enum {
+ // the first 10 bits are reserved for Qt editions
+ QtUniversal = 0x00000001,
+ QtDesktop = 0x00000002,
+ QtDesktopLight = 0x00000004,
+ QtConsole = 0x00000008,
+ QtDesignerOnly = 0x00000010,
+ QtReserved1 = 0x00000020,
+ QtReserved2 = 0x00000040,
+ QtReserved3 = 0x00000080,
+ QtReserved4 = 0x00000100,
+ QtReserved5 = 0x00000200,
+
+ // the next 10 bits are reserved for Qtopia editions
+ QtopiaPDA = 0x00000400,
+ QtopiaPhone = 0x00000800,
+ QtopiaRefboard = 0x00001000,
+ QtopiaReserved1 = 0x00002000,
+ QtopiaReserved2 = 0x00004000,
+ QtopiaReserved3 = 0x00008000,
+ QtopiaReserved4 = 0x00010000,
+ QtopiaReserved5 = 0x00020000,
+ QtopiaReserved6 = 0x00040000,
+ QtopiaReserved7 = 0x00080000,
+
+ // other products get the upper 12 bits
+ Teambuilder = 0x00100000,
+ Solutions = 0x00200000,
+ QSA = 0x00400000,
+ OtherReserved1 = 0x00800000,
+ OtherReserved2 = 0x01000000,
+ OtherReserved3 = 0x02000000,
+ OtherReserved4 = 0x04000000,
+ OtherReserved5 = 0x08000000,
+ OtherReserved6 = 0x10000000,
+ OtherReserved7 = 0x20000000,
+ OtherReserved8 = 0x40000000,
+ OtherReserved9 = 0x80000000
+ };
+
+ static const char *Products[];
+
+ // Platforms
+ enum {
+ X11 = 0x0001,
+ Embedded = 0x0002,
+ Windows = 0x0004,
+ Mac = 0x0008,
+ WinCE = 0x0010,
+ // Symbian = 0x0020,
+
+ // Everything
+ AllOS = X11 | Embedded | Windows | Mac | WinCE // | Symbian
+ };
+ static const char *Platforms[];
+
+ // License Schema
+ enum {
+ SupportedEvaluation = 0x0001,
+ UnsupportedEvaluation = 0x0002,
+ FullSourceEvaluation = 0x0004,
+ AnyEvaluation = SupportedEvaluation | UnsupportedEvaluation | FullSourceEvaluation,
+
+ FullCommercial = 0x0008,
+ Academic = 0x0010,
+ Educational = 0x0020
+ };
+ static const char *LicenseSchemas[];
+
+ // License Feature
+ enum {
+ USCustomer = 0x0001,
+ FloatingLicense = 0x0002
+ };
+ static const char *LicenseFeatures[];
+
+ static const int NumberOfProducts;
+ static const int NumberOfPlatforms;
+ static const int NumberOfLicenseSchemas;
+ static const int NumberOfLicenseFeatures;
+
+ KeyDecoder(const char *licenseKey);
+
+ uint getProducts() {return products;}
+ uint getPlatforms() {return platforms;}
+ uint getLicenseSchema() {return licenseSchema;}
+ uint getLicenseFeatures() {return licenseFeatures;}
+ uint getLicenseID() {return licenseID;}
+ CDate getExpiryDate() {return expiryDate;}
+
+ bool IsValid() { return m_valid; }
+};
+
+#endif //KEYDEC_H
diff --git a/util/scripts/mac-binary/package/InstallerPane/version.plist b/util/scripts/mac-binary/package/InstallerPane/version.plist
new file mode 100644
index 0000000..bab2922
--- /dev/null
+++ b/util/scripts/mac-binary/package/InstallerPane/version.plist
@@ -0,0 +1,14 @@
+<?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>BuildVersion</key>
+ <string>43</string>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+ <key>ProjectName</key>
+ <string>DevToolsWizardTemplates</string>
+ <key>SourceVersion</key>
+ <string>3670000</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/MetaPackage/Info.plist b/util/scripts/mac-binary/package/MetaPackage/Info.plist
new file mode 100644
index 0000000..a348db5
--- /dev/null
+++ b/util/scripts/mac-binary/package/MetaPackage/Info.plist
@@ -0,0 +1,30 @@
+<?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>CFBundleGetInfoString</key>
+ <string>Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$.$VERSION_PATCH$</string>
+ <key>CFBundleIdentifier</key>
+ <string>Trolltech Qt Packages</string>
+ <key>CFBundleName</key>
+ <string>Qt by Trolltech</string>
+ <key>CFBundleShortVersionString</key>
+ <string>Qt$VERSION_MAJOR$.$VERSION_MINOR$</string>
+ <key>IFMajorVersion</key>
+ <integer>$VERSION_MAJOR$</integer>
+ <key>IFPkgFlagAuthorizationAction</key>
+ <string>AdminAuthorization</string>
+ <key>IFPkgFlagFollowLinks</key>
+ <true/>
+ <key>IFMinorVersion</key>
+ <integer>$VERSION_MINOR$</integer>
+ <key>IFPkgFlagComponentDirectory</key>
+ <string>../packages</string>
+ <key>IFPkgFlagPackageList</key>
+ <array>
+ <!-- PACKAGE_DICT -->
+ </array>
+ <key>IFPkgFormatVersion</key>
+ <real>0.10000000149011612</real>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/MetaPackage/PkgInfo b/util/scripts/mac-binary/package/MetaPackage/PkgInfo
new file mode 100644
index 0000000..4cd3119
--- /dev/null
+++ b/util/scripts/mac-binary/package/MetaPackage/PkgInfo
@@ -0,0 +1 @@
+pmkrpkg1 \ No newline at end of file
diff --git a/util/scripts/mac-binary/package/MetaPackage/Resources/Description.plist b/util/scripts/mac-binary/package/MetaPackage/Resources/Description.plist
new file mode 100644
index 0000000..efcf4ce
--- /dev/null
+++ b/util/scripts/mac-binary/package/MetaPackage/Resources/Description.plist
@@ -0,0 +1,14 @@
+<?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>IFPkgDescriptionDeleteWarning</key>
+ <string></string>
+ <key>IFPkgDescriptionDescription</key>
+ <string>Qt by Trolltech</string>
+ <key>IFPkgDescriptionTitle</key>
+ <string>Qt</string>
+ <key>IFPkgDescriptionVersion</key>
+ <string>Trolltech Qt$VERSION_MAJOR$.$VERSION_MINOR$</string>
+</dict>
+</plist>
diff --git a/util/scripts/mac-binary/package/MetaPackage/Resources/Qt.info b/util/scripts/mac-binary/package/MetaPackage/Resources/Qt.info
new file mode 100644
index 0000000..d294490
--- /dev/null
+++ b/util/scripts/mac-binary/package/MetaPackage/Resources/Qt.info
@@ -0,0 +1,16 @@
+Title Qt
+Version Trolltech Qt $VERSION_MAJOR$.$VERSION_MINOR$
+Description Qt by Trolltech
+DefaultLocation (null)
+DeleteWarning
+
+### Package Flags
+
+NeedsAuthorization NO
+Required NO
+Relocatable NO
+RequiresReboot NO
+UseUserMask YES
+OverwritePermissions NO
+InstallFat NO
+RootVolumeOnly NO
diff --git a/util/scripts/mac-binary/package/Resources/InstallationCheck b/util/scripts/mac-binary/package/Resources/InstallationCheck
new file mode 100755
index 0000000..d0df5cd
--- /dev/null
+++ b/util/scripts/mac-binary/package/Resources/InstallationCheck
@@ -0,0 +1,96 @@
+#!/bin/sh
+
+# We need to do things differently on different platforms
+# <10.3.9 Can't install
+# =10.3.9 Can install, but must check license manually
+# >=10.4 Just jump out
+
+os_version=`sysctl kern.osrelease | awk '{ print $3 }'`
+os_major=`echo $os_version | cut -d . -f 1`
+os_minor=`echo $os_version | cut -d . -f 2`
+
+if [ $os_major -lt 7 -o $os_major -eq 7 -a $os_minor -lt 9 ]; then
+ exit $((96+19))
+elif [ $os_major -eq 7 -a $os_minor -eq 9 ]; then
+ [ -f $HOME/.qt-license ] || exit $((96+16));
+
+ . $HOME/.qt-license >/dev/null 2>&1
+ [ -z "$LicenseKeyExt" -o -z "$Licensee" ] && exit $((96+17))
+
+ grep "Evaluation" "$1/Contents/Resources/Welcome.rtf" 2>&1 >/dev/null && LicenseType="Evaluation" || LicenseType="Commercial"
+
+ # License key format is incorrect.
+ echo $LicenseKeyExt | grep ".....*-....*-....*-....*-.....*-.....*-...." 2>&1 >/dev/null || exit $((96+17))
+
+ #Test the key is correct.
+ productTest=`echo $LicenseKeyExt | cut -f 1 -d - | cut -b 1`
+ platformTest=`echo $LicenseKeyExt | cut -f 2 -d - | cut -b 1`
+ licenseFeatureTest=`echo $LicenseKeyExt | cut -f 4 -d - | cut -b 1`
+ licenseTypeTest=`echo $LicenseKeyExt | cut -f 3 -d - | cut -b 1`
+
+ case $productTest in
+ F)
+ # Universal
+ ProductType="Universal"
+ ;;
+ B)
+ # Desktop
+ ProductType="Desktop"
+ ;;
+ L)
+ # Desktop Lite
+ ProductType="Desktop Light"
+ ;;
+ R)
+ # Console
+ ProductType="Console"
+ ;;
+ *)
+ exit $((96+18)) ;;
+ esac
+
+ #check the palatform.
+ case $platformTest in
+ 4|L|5|G|Y|2|F|B)
+ # Qt/Mac
+ ;;
+ *)
+ exit $((96+18)) ;;
+ esac
+
+ case $licenseTypeTest in
+ F|T|3)
+ licenseTest=Commercial
+ ;;
+ Z|R|Q)
+ licenseTest=Evaluation
+ ;;
+ *)
+ ;;
+ esac
+
+ [ "$licenseTest" != "$LicenseType" ] && exit $((96+18))
+
+ expiryDate=`"$1/Contents/Resources/keydecoder" $LicenseKeyExt | sed -e s,-,,g`
+ if [ -z "$expiryDate" ]; then
+ exit $((96+18))
+ fi
+
+ packageDate=`cat "$1/Contents/Resources/.package_date" | sed -e s,-,,g`
+ today=`date +%Y%m%d`
+
+ case $licenseTest in
+ Commercial)
+ if [ $packageDate -gt $expiryDate ]; then
+ exit $((96+20))
+ fi
+ ;;
+ Evaluation)
+ if [ $today -gt $expiryDate ]; then
+ exit $((96+21))
+ fi
+ ;;
+ esac
+fi
+
+exit 0
diff --git a/util/scripts/mac-binary/package/Resources/InstallationCheck.strings b/util/scripts/mac-binary/package/Resources/InstallationCheck.strings
new file mode 100644
index 0000000..0ddbcd2
--- /dev/null
+++ b/util/scripts/mac-binary/package/Resources/InstallationCheck.strings
Binary files differ
diff --git a/util/scripts/mac-binary/package/Resources/background.jpg b/util/scripts/mac-binary/package/Resources/background.jpg
new file mode 100644
index 0000000..0b0840f
--- /dev/null
+++ b/util/scripts/mac-binary/package/Resources/background.jpg
Binary files differ
diff --git a/util/scripts/mac-binary/package/Welcome-commercial.rtf b/util/scripts/mac-binary/package/Welcome-commercial.rtf
new file mode 100644
index 0000000..c217aa6
--- /dev/null
+++ b/util/scripts/mac-binary/package/Welcome-commercial.rtf
@@ -0,0 +1,25 @@
+{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf420
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;\f1\fswiss\fcharset77 Helvetica-Bold;}
+{\colortbl;\red255\green255\blue255;}
+{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid1}}
+{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}}
+\margl1440\margr1440\vieww7840\viewh7700\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Welcome to the Qt installer! This will guide you through the steps to getting \ul Qt $VERSION_MAJOR$.$VERSION_MINOR$\ulnone Commercial Edition installed on your machine! \
+\
+After a successful install, you can find most new things in /Developer. Specifically things will be located in the following places:\
+\
+\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural
+\ls1\ilvl0\cf0 {\listtext \'a5 }Qt Designer, Qt Linguist: /Developer/Applications/Qt\
+{\listtext \'a5 }Qt Documentation: /Developer/Documentation/Qt\
+{\listtext \'a5 }Qt Examples: /Developer/Examples/Qt\
+{\listtext \'a5 }Qt Plugins: /Developer/Applications/Plugins\
+{\listtext \'a5 }Qt Frameworks: /Library/Frameworks\
+{\listtext \'a5 }Qt Libraries: /usr/lib\
+{\listtext \'a5 }qmake, moc, uic, etc.: /Developer/Tools (symlink to /usr/bin)\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+\cf0 \
+Please contact
+\f1\b support@trolltech.com
+\f0\b0 for any issues you have with this release of Qt/Mac.} \ No newline at end of file
diff --git a/util/scripts/mac-binary/package/Welcome-eval.rtf b/util/scripts/mac-binary/package/Welcome-eval.rtf
new file mode 100644
index 0000000..e720beb
--- /dev/null
+++ b/util/scripts/mac-binary/package/Welcome-eval.rtf
@@ -0,0 +1,28 @@
+{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf420
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;\f1\fswiss\fcharset77 Helvetica-Bold;}
+{\colortbl;\red255\green255\blue255;}
+{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid1}}
+{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}}
+\margl1440\margr1440\vieww7820\viewh6620\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Welcome to the Qt installer! This will guide you through the steps to getting \ul Qt $VERSION_MAJOR$.$VERSION_MINOR$\ulnone Evaluation Edition installed on your machine! \
+\
+After a successful install, you can find most new things in /Developer. Specifically things will be located in the following places:\
+\
+\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural
+\ls1\ilvl0\cf0 {\listtext \'a5 }Qt Designer, Qt Linguist: /Developer/Applications/Qt\
+{\listtext \'a5 }Qt Documentation: /Developer/Documentation/Qt\
+{\listtext \'a5 }Qt Examples: /Developer/Examples/Qt\
+{\listtext \'a5 }Qt Plugins: /Developer/Applications/Plugins\
+{\listtext \'a5 }Qt Frameworks: /Library/Frameworks\
+{\listtext \'a5 }Qt Libraries: /usr/lib\
+{\listtext \'a5 }qmake, moc, uic, etc.: /Developer/Tools (symlink to /usr/bin)\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+\cf0 \
+Please use the bug report form located at\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f1\b \cf0 http://qtsoftware.com/bugreport-form
+\f0\b0 \
+if you have any issues.} \ No newline at end of file
diff --git a/util/scripts/mac-binary/package/Welcome-opensource.rtf b/util/scripts/mac-binary/package/Welcome-opensource.rtf
new file mode 100644
index 0000000..27b0617
--- /dev/null
+++ b/util/scripts/mac-binary/package/Welcome-opensource.rtf
@@ -0,0 +1,28 @@
+{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf420
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;\f1\fswiss\fcharset77 Helvetica-Bold;}
+{\colortbl;\red255\green255\blue255;}
+{\*\listtable{\list\listtemplateid1\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid1}}
+{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}}
+\margl1440\margr1440\vieww7840\viewh7700\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f0\fs24 \cf0 Welcome to the Qt installer! This will guide you through the steps to getting \ul Qt $VERSION_MAJOR$.$VERSION_MINOR$\ulnone Opensource Edition installed on your machine! \
+\
+After a successful install, you can find most new things in /Developer. Specifically things will be located in the following places:\
+\
+\pard\tx220\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\li720\fi-720\ql\qnatural
+\ls1\ilvl0\cf0 {\listtext \'a5 }Qt Designer, Qt Linguist: /Developer/Applications/Qt\
+{\listtext \'a5 }Qt Documentation: /Developer/Documentation/Qt\
+{\listtext \'a5 }Qt Examples: /Developer/Examples/Qt\
+{\listtext \'a5 }Qt Plugins: /Developer/Applications/Plugins\
+{\listtext \'a5 }Qt Frameworks: /Library/Frameworks\
+{\listtext \'a5 }Qt Libraries: /usr/lib\
+{\listtext \'a5 }qmake, moc, uic, etc.: /Developer/Tools (symlink to /usr/bin)\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+\cf0 \
+Please use the bug report form located at\
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+
+\f1\b \cf0 http://qtsoftware.com/bugreport-form
+\f0\b0 \
+if you have any issues.} \ No newline at end of file
diff --git a/util/scripts/mac-binary/package/backgrounds/DiskImage-Commercial.png b/util/scripts/mac-binary/package/backgrounds/DiskImage-Commercial.png
new file mode 100644
index 0000000..8174ff4
--- /dev/null
+++ b/util/scripts/mac-binary/package/backgrounds/DiskImage-Commercial.png
Binary files differ
diff --git a/util/scripts/mac-binary/package/backgrounds/DiskImage-Eval.png b/util/scripts/mac-binary/package/backgrounds/DiskImage-Eval.png
new file mode 100644
index 0000000..0abcd3d
--- /dev/null
+++ b/util/scripts/mac-binary/package/backgrounds/DiskImage-Eval.png
Binary files differ
diff --git a/util/scripts/mac-binary/package/backgrounds/DiskImage-Opensource.png b/util/scripts/mac-binary/package/backgrounds/DiskImage-Opensource.png
new file mode 100644
index 0000000..4a60a81
--- /dev/null
+++ b/util/scripts/mac-binary/package/backgrounds/DiskImage-Opensource.png
Binary files differ
diff --git a/util/scripts/mac-binary/package/backgrounds/DriveIcon.icns b/util/scripts/mac-binary/package/backgrounds/DriveIcon.icns
new file mode 100644
index 0000000..72fbe63
--- /dev/null
+++ b/util/scripts/mac-binary/package/backgrounds/DriveIcon.icns
Binary files differ
diff --git a/util/scripts/mac-binary/package/keydecoder/main.cpp b/util/scripts/mac-binary/package/keydecoder/main.cpp
new file mode 100644
index 0000000..3aa37f9
--- /dev/null
+++ b/util/scripts/mac-binary/package/keydecoder/main.cpp
@@ -0,0 +1,54 @@
+/****************************************************************************
+**
+** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: Qt Software Information (qt-info@nokia.com)
+**
+** This file is part of the utils of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the either Technology Preview License Agreement or the
+** Beta Release License Agreement.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain
+** additional rights. These rights are described in the Nokia Qt LGPL
+** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+** package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at qt-sales@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#include <cstdio>
+#include "../InstallerPane/keydec.h"
+
+int main(int argc, char **argv)
+{
+ if (argc != 2)
+ return 1;
+ KeyDecoder key(argv[1]);
+ if (!key.IsValid())
+ return 2;
+ CDate date = key.getExpiryDate();
+ fprintf(stdout, "%04d-%02d-%02d\n", date.year(), date.month(), date.day());
+ return 0;
+}
diff --git a/util/scripts/mac-binary/package/make-model-ds_store.applescript b/util/scripts/mac-binary/package/make-model-ds_store.applescript
new file mode 100644
index 0000000..757a3fd
--- /dev/null
+++ b/util/scripts/mac-binary/package/make-model-ds_store.applescript
@@ -0,0 +1,41 @@
+(* This script works by using FileStorm to create a disk image that you can then use as a model .DS_Store file in
+ the disk image. Here's what you need to do:
+
+ Run this script, adjusting the path to the items and versions as necessary. If all items don't exist,
+ then it won't finish correctly.
+
+ Afterwords, mount the final disk image and make sure that it looks OK, sometimes FileStorm
+ messes this up.
+
+ If it's OK, copy /Volumes/Qt-x.y.z/.DS_Store to safe location (call it model-DS_Store.x.y.z)
+
+ Edit this file and replace all occurences of backgroundXXXXXXXXXXXX (21 chars) with
+ findersbackground.png.
+
+ Save the file and you should be ready to go.
+
+ I believe this is as automated as I can get it.
+
+ FileStorm 1.9.1 has some new issues:
+ * The file is invisible as well, you can use '/Developer/Tools/SetFile -a v' to make
+ it visible if you need to use a GUI app to edit it.
+*)
+
+tell application "FileStorm"
+ activate
+ make new document at before first document with properties {name:"diskimage"}
+
+ tell first document
+ set disk image name to "/Users/twschulz/Desktop/qt-mac-commercial-4.4.5.dmg"
+ set {volume name} to {"Qt 4.4.5"}
+ set icon path to "/Users/twschulz/troll/qt/4.4/util/scripts/mac-binary/package/backgrounds/DriveIcon.icns"
+ set background image path to "/Users/twschulz/troll/qt/4.4/util/scripts/mac-binary/package/backgrounds/DiskImage-Commercial.png"
+ set height to 660
+ make new file at before first file with properties {file path:"/Users/twschulz/Desktop/foo/Qt.mpkg", left position:85, top position:117}
+ make new file at before first file with properties {file path:"//Users/twschulz/Desktop/foo/ReadMe.txt", left position:85, top position:297}
+ make new file at before first file with properties {file path:"/Users/twschulz/Desktop/foo/packages", left position:150, top position:640}
+ tell application "FileStorm" to set bounds of window "diskimage" to {100, 100, 640, 660}
+ finalize image with rebuilding
+ end tell
+
+end tell
diff --git a/util/scripts/mac-binary/package/mkcommercialpackage b/util/scripts/mac-binary/package/mkcommercialpackage
new file mode 100755
index 0000000..ca8747f
--- /dev/null
+++ b/util/scripts/mac-binary/package/mkcommercialpackage
@@ -0,0 +1,24 @@
+#!/bin/sh
+# This is a simple press-one-button-to-build-a-binary-package script.
+# You specify your version number, and it will download the source package
+# from the web and build a binary from it.
+#
+# Usage: mkcommersialpackage [version]
+# Where version is for example 4.1.0
+#
+
+BASE_URL=http://releases.dev.troll.no/~espenr/packages/
+PACKAGE_NAME=qt-mac-commercial-src-
+SUFFIX=.tar.gz
+
+PACKAGE_FILE_NAME=${PACKAGE_NAME}${1}${SUFFIX}
+COMPLETE_URL=${BASE_URL}${PACKAGE_FILE_NAME}
+
+DOWNLOAD_COMMAND="curl -O "${COMPLETE_URL}
+echo Running ${DOWNLOAD_COMMAND}
+$DOWNLOAD_COMMAND
+
+MKPACKAGE_LOCATION=${PWD}/`dirname $0`/mkpackage
+MKPACKAGE_COMMAND=${MKPACKAGE_LOCATION}" -qtpackage "${PWD}/${PACKAGE_FILE_NAME}
+echo Running $MKPACKAGE_COMMAND
+$MKPACKAGE_COMMAND \ No newline at end of file
diff --git a/util/scripts/mac-binary/package/mkpackage b/util/scripts/mac-binary/package/mkpackage
new file mode 100755
index 0000000..21a2eaa
--- /dev/null
+++ b/util/scripts/mac-binary/package/mkpackage
@@ -0,0 +1,842 @@
+#!/bin/sh
+
+#options
+export MACOSX_DEPLOYMENT_TARGET=10.3
+OUTPUT_DIR=`pwd`/outputs
+cd `dirname $0` #now we live in the mkpackage location
+USE_SEPARATE=no
+TMP_DIR=/tmp/qt-stuff
+PACKAGE_DIR=`(cd ../install && pwd)`
+PACKAGE_OPTIONS=
+PACKAGES=
+COMMAND_PAX="/System/Library/PrivateFrameworks/Installation.framework/Resources/pax" #yes that pax, don't ask!
+README=
+LICENSE_EMBEDDED=
+LICENSE_EMBEDDED_US=
+LICENSE_ALLOS=
+LICENSE_ALLOS_US=
+LICENSE= # This is now the Desktop License (or Open Source)
+LICENSE_US= # Also abused for GPL3
+LICENSETYPE=
+MAKE_META=
+MAKE_IMAGE=
+DO_CLEANUP=yes
+
+#versioning
+QT_SET_VERSION=no
+QT_MAJOR_VERSION=4
+QT_MINOR_VERSION=0
+QT_PATCH_VERSION=0
+QT_VERSION_STRING=${QT_MAJOR_VERSION}.${QT_MINOR_VERSION}.${QT_PATCH_VERSION}
+
+# Build Date
+QT_PACKAGEDATE_STRING=`date +%F`
+
+#QTDIR stuff
+BINARY_DIR=
+SOURCE_DIR=
+SOURCE_PACKAGE=
+EVAL_PATCHES=
+CONFIGURE_ARGS="-qt-libpng -qt-libjpeg -plugin-sql-sqlite -plugin-sql-odbc -plugin-sql-psql -framework -confirm-license -no-rpath -I/usr/local/pgsql/include -L/usr/local/pgsql/lib -universal -sdk /Developer/SDKs/MacOSX10.4u.sdk -optimized-qmake"
+
+doStringReplace()
+{
+ sed -e "s,\\\$VERSION_MAJOR\\\$,$QT_MAJOR_VERSION,g" -e "s,\\\$VERSION_MINOR\\\$,$QT_MINOR_VERSION,g" \
+ -e "s,\\\$VERSION_PATCH\\\$,$QT_PATCH_VERSION,g" "$1" >tmp.out
+
+ mv -f tmp.out "$2"
+}
+
+createLicenseRTF()
+{
+ rm -f "$2"
+ cat >>"$2" <<EOF
+{\rtf1\mac\ansicpg10000\cocoartf102
+{\fonttbl\f0\fswiss\fcharset77 Helvetica;\f1\fswiss\fcharset77 Helvetica-Oblique;\f2\fswiss\fcharset77 Helvetica-Bold;
+}
+{\colortbl;\red255\green255\blue255;}
+\margl1440\margr1440\vieww9000\viewh9000\viewkind0
+\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
+EOF
+ sed -e 's,\(^[A-Z][A-Z :-]*$\),\\f2\\b \1 \\f0\\b0,g' \
+ -e 's,^\(Qt COMMERCIAL\) \(LICENSE AGREEMENT\)$,\\f0\\fs24 \\cf0 \\ul \\ulc0 \1 \\ulnone \2 \\f0\\i0,g' \
+ -e 's,^\([0-9]*\)\. ,\\f2\\b \1 \\f0\\b0. ,g' \
+ -e 's,\(^Agreement version [0-9].[0-9]$\),\\f1\\i \1 \\f0\\i0,g' \
+ -e 's,^\(.*\)$,\1\\,g' \
+ "$1" >>"$2"
+ echo "}" >>"$2"
+
+}
+
+while [ -n "$1" ]; do
+ CACHE_1="$1"
+ OPTION=
+ ARG=
+ case $1 in
+ -*=*) #gnu style
+ OPTION=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\1,'`
+ ARG=`echo $1 | sed 's,-\([^=]*\)=\(.*\),\2,'`
+ ;;
+ -output|-packages|-qtbins|-qtsrcs|-qtdir|-qtpackage|-version|-license|-licensetype|-license_us|-license_allos_us|-license_allos|license_embedded_us|license_embedded|-readme|-evalpatches) #second arg style
+ OPTION=`echo $1 | sed 's,-\([^=]*\),\1,'`
+ shift
+ ARG=$1
+ ;;
+ -no-*) #no style
+ OPTION=`echo $1 | sed 's,-no-\([^=]*\),\1,'`
+ ARG=no
+ ;;
+ -*) #yes style
+ OPTION=`echo $1 | sed 's,-\([^=]*\),\1,'`
+ ARG=yes
+ ;;
+ *) #other
+ OPTION=package
+ ARG="$1"
+ ;;
+ esac
+ shift
+ case "$OPTION" in
+ help)
+ if [ "$ARG" = "yes" ]; then
+ echo "$0 <options> <packages>"
+ echo
+ echo " -output <directory> Where to write the generated files to"
+ echo " -packages <directory> Where to find packages to create"
+ echo " -qtbins <directory> Where your Qt binaries live"
+ echo " -qtsrcs <directory> Where to find our Qt sources (if -qtbins not set defaults to same)"
+ echo " -qtpackage <package> Given a package it will be untar'd configured and built and used."
+ echo " -version <version> What version the package is creating for (falls back to qglobal.h)"
+ echo " -license <license> Where your desktop license (or opensource) file lives"
+ echo " -license_us <license> Where your U.S. desktop (or GPLv3) license file lives"
+ echo " -license_allos <license> Where your All-OS license file lives"
+ echo " -license_allos_us <license> Where your U.S. All-OS license file lives"
+ echo " -license_embedded <license> Where your Embedded license file lives"
+ echo " -license_embedded_us <license> Where your U.S. Embedded license file lives"
+ echo " -licensetype <commercial|eval|opensource|preview-commercial|preview-opensource> The license for the package you are building"
+ echo " -readme <readme> Where your readme file lives"
+ echo " -image Create a disk image of the outputs"
+ echo " -meta Create a meta package for all the outputs"
+ echo " -evalpatches <evalpatches> Eval patches can be found here"
+ echo " -no-cleanup Don't remove files (can be used to restart a previous run)"
+ exit 0
+ fi
+ ;;
+ readme) README="$ARG" ;;
+ license) LICENSE="$ARG" ;;
+ licensetype) LICENSETYPE="$ARG" ;;
+ all) USE_SEPARATE="$ARG" ;;
+ qtpackage) SOURCE_PACKAGE="$ARG" ;;
+ qtsrcs) SOURCE_DIR="$ARG" ;;
+ qtbins|qtdir) BINARY_DIR="$ARG" ;;
+ output) OUTPUT_DIR="$ARG" ;;
+ packages) PACKAGE_DIR="$ARG" ;;
+ meta) MAKE_META="$ARG" ;;
+ package) PACKAGES="$PACKAGES $ARG" ;;
+ image) MAKE_IMAGE="$ARG" ;;
+ evalpatches) EVAL_PATCHES="$ARG" ;;
+ cleanup) DO_CLEANUP="$ARG" ;;
+ version)
+ VERSION="$ARG"
+ MAJOR=`echo $VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\1,'`
+ if [ -n "$MAJOR" ]; then
+ MINOR=`echo $VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\2,'`
+ [ -z "$MINOR" ] && MINOR=0
+ PATCH=`echo $VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\3,'`
+ [ -z "$PATCH" ] && PATCH=0
+ QT_SET_VERSION=yes
+ QT_VERSION_STRING="$VERSION"
+ QT_MAJOR_VERSION="$MAJOR"
+ QT_MINOR_VERSION="$MINOR"
+ QT_PATCH_VERSION="$PATCH"
+ else
+ echo "Invalid version: $VERSION"
+ fi
+ ;;
+ help|*)
+ [ "$OPTION" = "help" ] || echo "Unknown option $CACHE_1!"
+ echo "Help!!"
+ exit 888;
+ ;;
+ esac
+done
+
+# No license type specified, so try to get it from the package. If we don't have a package,
+# default to commercial
+if [ -z "$LICENSETYPE" ]; then
+ if [ ! -z "$SOURCE_PACKAGE" ]; then
+ LICENSETYPE=`basename "$SOURCE_PACKAGE" | cut -d - -f 3`
+ else
+ LICENSETYPE="commercial"
+ fi
+fi
+
+# If it's a preview license strip the preview out because there are some things
+# that are exactly the same to what we do in the non-preview case, since the
+# "preview" variant can be a "child" of the main license, we'll call it the
+# parent license.
+PARENTLICENSE=$LICENSETYPE
+if [ "$LICENSETYPE" = "preview-commercial" ]; then
+ PARENTLICENSE="commercial"
+elif [ "$LICENSETYPE" = "preview-opensource" ]; then
+ PARENTLICENSE="opensource"
+fi
+
+#get the QTDIR setup
+[ -z "$BINARY_DIR" ] && [ -z "$SOURCE_PACKAGE" ] && BINARY_DIR="$QTDIR"
+if [ ! -z "$BINARY_DIR" ] && [ -z "$SOURCE_PACKAGE" ]; then
+ if [ -z "$SOURCE_DIR" ]; then
+ if [ -e "$BINARY_DIR/.qmake.cache" ]; then
+ SOURCE_DIR=`perl -n -e 'next unless /^QT_SOURCE_TREE *= *(.*)/;
+ s/\$\$quote\((.*)\)/\1/;
+ print "$1\n"; exit' "$BINARY_DIR/.qmake.cache"`
+ else
+ SOURCE_DIR="$BINARY_DIR"
+ fi
+ fi
+elif [ ! -z "$SOURCE_PACKAGE" ]; then
+ if [ "$DO_CLEANUP" = "yes" ]; then
+ rm -rf "$TMP_DIR/source"
+ mkdir -p "$TMP_DIR/source"
+ fi
+ PACKAGE_NAME=`basename "$SOURCE_PACKAGE"`
+ CHECKLICENSETYPE=$PARENTLICENSE
+ if [ "$LICENSETYPE" = "eval" ]; then
+ CHECKLICENSETYPE="commercial"
+ fi
+
+ if [ -z `echo $PACKAGE_NAME | grep $CHECKLICENSETYPE` ]; then
+ echo "I must have the $CHECKLICENSETYPE package, you gave me $SOURCE_PACKAGE"
+ rm -rf "$TMP_DIR"
+ exit 7
+ fi
+ EXTENSION=`echo "$PACKAGE_NAME" | sed -e 's,.*\.tar\.\(.*\),\1,'`
+ PACKAGE_DEST=`echo "$PACKAGE_NAME" | sed -e 's,\(.*\)\.tar.*,\1,'`
+ if [ "$LICENSETYPE" = "eval" ]; then
+ CONFIGURE_ARGS="$CONFIGURE_ARGS -DQT_EVAL -release"
+ # If you didn't set the eval patches, I'll try in the same place as the package
+ if [ -z "$EVAL_PATCHES" ]; then
+ PACKAGE_VERSION=`echo $PACKAGE_DEST | sed -e 's,.*src-\(.*\),\1,'`
+ EVAL_PATCHES=`dirname "$SOURCE_PACKAGE"`/qt-mac-evalpatches-src-$PACKAGE_VERSION.tar.$EXTENSION
+ fi
+ # unzip the eval patches first since it _shouldn't_ matter.
+ (cd "$TMP_DIR/source" && gunzip -c "$EVAL_PATCHES" | tar xf -);
+ fi
+
+ export QTDIR=$TMP_DIR/source/$PACKAGE_DEST
+ export DYLD_LIBRARY_PATH=$QTDIR/lib:$DYLD_LIBRARY_PATH
+ export DYLD_FRAMEWORK_PATH=$QTDIR/lib:$DYLD_FRAMEWORK_PATH
+ export PATH=$QTDIR/bin:$PATH
+ if [ "$DO_CLEANUP" = "yes" ]; then
+ if (cd "$TMP_DIR/source" && gunzip -c "$SOURCE_PACKAGE" | tar xf -); then
+ realUsageReporter="$QTDIR/bin/qtusagereporter"
+ tmpUsageReporter="$TMP_DIR/qtusagereporter"
+ if [ -e "$realUsageReporter" ]; then
+ cp "$realUsageReporter" "$tmpUsageReporter"
+ fi
+ if (cd "$QTDIR" && ./configure $CONFIGURE_ARGS); then
+ if [ -e "$tmpUsageReporter" ]; then
+ mv "$tmpUsageReporter" "$realUsageReporter"
+ fi
+ else
+ echo "Configure error"
+ exit 1
+ fi
+ if !(cd "$QTDIR" && make); then
+ echo "Build error"
+ exit 2
+ fi
+ fi
+ fi
+ SOURCE_DIR="$QTDIR"
+ BINARY_DIR="$SOURCE_DIR"
+else
+ echo "Only a source package or a source/binary directory can be specified!"
+ exit 3
+fi
+
+
+#License Stuff.
+
+if [ "$LICENSETYPE" = "eval" ]; then
+ if [ -z "$LICENSE" ]; then
+ DEPOT_LICENSE="$SOURCE_DIR/dist/eval/LICENSE-EVALUATION"
+ PACKAGE_LICENSE="$SOURCE_DIR/.LICENSE-EVALUATION"
+ if [ -e "$DEPOT_LICENSE" ]; then
+ LICENSE=$DEPOT_LICENSE
+ elif [ -e "$PACKAGE_LICENSE" ]; then
+ LICENSE="$PACKAGE_LICENSE"
+ fi
+ fi
+
+ if [ -z "$LICENSE_US" ]; then
+ DEPOT_LICENSE_US="$SOURCE_DIR/dist/eval/LICENSE-EVALUATION-US"
+ PACKAGE_LICENSE_US="$SOURCE_DIR/.LICENSE-EVALUATION-US"
+ if [ -e "$DEPOT_LICENSE_US" ]; then
+ LICENSE_US=$DEPOT_LICENSE_US
+ elif [ -e "$PACKAGE_LICENSE_US" ]; then
+ LICENSE_US="$PACKAGE_LICENSE_US"
+ fi
+ fi
+elif [ "$LICENSETYPE" = "opensource" ]; then
+ DEPOT_LICENSE="$SOURCE_DIR/dist/opensource/LICENSE.GPL2"
+ PACKAGE_LICENSE="$SOURCE_DIR/LICENSE.GPL2"
+ if [ -e "$DEPOT_LICENSE" ]; then
+ LICENSE=$DEPOT_LICENSE
+ elif [ -e "$PACKAGE_LICENSE" ]; then
+ LICENSE="$PACKAGE_LICENSE"
+ fi
+
+ if [ -z "$LICENSE_US" ]; then
+ DEPOT_LICENSE_US="$SOURCE_DIR/dist/opensource/LICENSE.GPL3"
+ PACKAGE_LICENSE_US="$SOURCE_DIR/LICENSE.GPL3"
+ if [ -e "$DEPOT_LICENSE_US" ]; then
+ LICENSE_US=$DEPOT_LICENSE_US
+ elif [ -e "$PACKAGE_LICENSE_US" ]; then
+ LICENSE_US="$PACKAGE_LICENSE_US"
+ elif [ -e "../../../../dist/opensource/LICENSE.GPL3" ]; then
+ LICENSE_US="../../../../dist/opensource/LICENSE.GPL3"
+ fi
+ fi
+elif [ "$LICENSETYPE" = "commercial" ]; then
+#Find the All-OS and Embedded License for commercial
+ LICENSE="$SOURCE_DIR/.LICENSE"
+ if [ -e "$LICENSE" ]; then
+ # Generic license
+ LICENSE_US="${LICENSE}-US"
+ LICENSE_ALLOS=
+ LICENSE_ALLOS_US=
+ LICENSE_EMBEDDED=
+ LICENSE_EMBEDDED_US=
+ else
+ DEPOT_LICENSE="$SOURCE_DIR/dist/commercial/LICENSE-DESKTOP"
+ PACKAGE_LICENSE="$SOURCE_DIR/.LICENSE-DESKTOP"
+ if [ -e "$DEPOT_LICENSE" ]; then
+ LICENSE=$DEPOT_LICENSE
+ elif [ -e "$PACKAGE_LICENSE" ]; then
+ LICENSE="$PACKAGE_LICENSE"
+ fi
+
+ if [ -z "$LICENSE_US" ]; then
+ DEPOT_LICENSE_US="$SOURCE_DIR/dist/commercial/LICENSE-DESKTOP-US"
+ PACKAGE_LICENSE_US="$SOURCE_DIR/.LICENSE-DESKTOP-US"
+ if [ -e "$DEPOT_LICENSE_US" ]; then
+ LICENSE_US=$DEPOT_LICENSE_US
+ elif [ -e "$PACKAGE_LICENSE_US" ]; then
+ LICENSE_US="$PACKAGE_LICENSE_US"
+ elif [ -e "../../../../dist/commercial/LICENSE-US" ]; then
+ LICENSE_US="../../../../dist/commercial/LICENSE-US"
+ fi
+ fi
+ if [ -z "$LICENSE_ALLOS" ]; then
+ DEPOT_LICENSE_ALLOS="$SOURCE_DIR/dist/commercial/LICENSE-ALLOS"
+ PACKAGE_LICENSE_ALLOS="$SOURCE_DIR/.LICENSE-ALLOS"
+ if [ -e "$DEPOT_LICENSE_ALLOS" ]; then
+ LICENSE_ALLOS=$DEPOT_LICENSE_ALLOS
+ elif [ -e "$PACKAGE_LICENSE_ALLOS" ]; then
+ LICENSE_ALLOS="$PACKAGE_LICENSE_ALLOS"
+ fi
+ fi
+ if [ -z "$LICENSE_ALLOS_US" ]; then
+ DEPOT_LICENSE_ALLOS_US="$SOURCE_DIR/dist/commercial/LICENSE-ALLOS-US"
+ PACKAGE_LICENSE_ALLOS_US="$SOURCE_DIR/.LICENSE-ALLOS-US"
+ if [ -e "$DEPOT_LICENSE_ALLOS_US" ]; then
+ LICENSE_ALLOS_US=$DEPOT_LICENSE_ALLOS_US
+ elif [ -e "$PACKAGE_LICENSE_ALLOS_US" ]; then
+ LICENSE_ALLOS_US="$PACKAGE_LICENSE_ALLOS_US"
+ fi
+ fi
+ if [ -z "$LICENSE_EMBEDDED" ]; then
+ DEPOT_LICENSE_EMBEDDED="$SOURCE_DIR/dist/commercial/LICENSE-EMBEDDED"
+ PACKAGE_LICENSE_EMBEDDED="$SOURCE_DIR/.LICENSE-EMBEDDED"
+ if [ -e "$DEPOT_LICENSE_EMBEDDED" ]; then
+ LICENSE_EMBEDDED=$DEPOT_LICENSE_EMBEDDED
+ elif [ -e "$PACKAGE_LICENSE_EMBEDDED" ]; then
+ LICENSE_EMBEDDED="$PACKAGE_LICENSE_EMBEDDED"
+ fi
+ fi
+ if [ -z "$LICENSE_EMBEDDED_US" ]; then
+ DEPOT_LICENSE_EMBEDDED_US="$SOURCE_DIR/dist/commercial/LICENSE-EMBEDDED-US"
+ PACKAGE_LICENSE_EMBEDDED_US="$SOURCE_DIR/.LICENSE-EMBEDDED-US"
+ if [ -e "$DEPOT_LICENSE_EMBEDDED_US" ]; then
+ LICENSE_EMBEDDED_US=$DEPOT_LICENSE_EMBEDDED_US
+ elif [ -e "$PACKAGE_LICENSE_EMBEDDED_US" ]; then
+ LICENSE_EMBEDDED_US="$PACKAGE_LICENSE_EMBEDDED_US"
+ fi
+ fi
+ fi
+fi
+
+#find the README
+if [ -z "$README" ]; then
+ DEPOT_README="$SOURCE_DIR/dist/README"
+ PACKAGE_README="$SOURCE_DIR/README"
+ if [ -e "$DEPOT_README" ]; then
+ README="$DEPOT_README"
+ elif [ -e "$PACKAGE_README" ]; then
+ README="$PACKAGE_README"
+ elif [ -e "../../../../dist/README" ]; then
+ README="../../../../dist/README"
+ fi
+fi
+
+#find the version from the source package
+if [ "$QT_SET_VERSION" = "no" ] && [ ! -z "$SOURCE_DIR" ]; then
+ VERSION=`grep '^# *define *QT_VERSION_STR' $SOURCE_DIR/src/corelib/global/qglobal.h`
+ if [ -n "$VERSION" ]; then
+ VERSION=`echo $VERSION | sed 's,^# *define *QT_VERSION_STR "*\([^ ]*\)"$,\1,'`
+ MAJOR=`echo $VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\1,'`
+ if [ -n "$MAJOR" ]; then
+ MINOR=`echo $VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\2,'`
+ [ -z "$MINOR" ] && MINOR=0
+ PATCH=`echo $VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\3,'`
+ [ -z "$PATCH" ] && PATCH=0
+ QT_VERSION_STRING="$VERSION"
+ QT_MAJOR_VERSION="$MAJOR"
+ QT_MINOR_VERSION="$MINOR"
+ QT_PATCH_VERSION="$PATCH"
+ else
+ echo "Cannot process version from qglobal.h: $VERSION"
+ fi
+ fi
+fi
+
+if [ "$LICENSETYPE" != "opensource" ]; then
+ if [ ! -z "$SOURCE_DIR" ]; then
+ PACKAGEDATE=`grep '^# *define *QT_PACKAGEDATE_STR' $SOURCE_DIR/src/corelib/global/qglobal.h`
+ if [ -n "$PACKAGEDATE" ]; then
+ PACKAGEDATE=`echo $PACKAGEDATE | sed 's,^# *define *QT_PACKAGEDATE_STR "*\([^ ]*\)"$,\1,'`
+ QT_PACKAGEDATE_STRING=$PACKAGEDATE
+ else
+ echo "Cannot process date information from qglobal.h: $PACKAGEDATE"
+ fi
+ fi
+fi
+
+# Put the date in a little file so we can access in later
+PACKAGEDATE_FILE="Resources/.package_date"
+if [ -e "$PACKAGEDATE_FILE" ]; then
+ rm -rf "$PACKAGEDATE_FILE"
+fi
+
+echo $QT_PACKAGEDATE_STRING > $PACKAGEDATE_FILE
+
+#just do all the packages
+if [ -z "$PACKAGES" ]; then
+ [ -z "$MAKE_META" ] && MAKE_META=yes
+ [ -z "$MAKE_IMAGE" ] && MAKE_IMAGE=yes
+ for a in $PACKAGE_DIR/*; do
+ if [ -d "$a" ]; then
+ package=`basename $a`
+ [ "$USE_SEPARATE" = "no" ] && [ -e "$a/.build_separate" ] && continue
+ PACKAGES="$PACKAGES $package"
+ fi
+ done
+fi
+
+#setup some default package options
+[ -z "$SOURCE_PACKAGE" ] || PACKAGE_OPTIONS="$PACKAGE_OPTIONS --qtpackage=${SOURCE_PACKAGE}"
+[ -z "$SOURCE_DIR" ] || PACKAGE_OPTIONS="$PACKAGE_OPTIONS --qtsrc=${SOURCE_DIR}"
+[ -z "$BINARY_DIR" ] || PACKAGE_OPTIONS="$PACKAGE_OPTIONS --qtbin=${BINARY_DIR}"
+PACKAGE_OPTIONS="$PACKAGE_OPTIONS --debug=yes"
+
+mkdir -p "$TMP_DIR"
+find .. -name '*~' -exec rm {} \; #just get rid of these before they end up in my package
+
+#create the license information
+if [ -e "$LICENSE" ]; then
+ mkdir -p "$TMP_DIR/licenses"
+
+ echo "Creating desktop license richtext for rest of the world"
+ createLicenseRTF "$LICENSE" "$TMP_DIR/licenses/License.rtf"
+else
+ echo "No license file found!"
+ exit 4
+fi
+
+if [ -e "$LICENSE_US" ]; then
+ echo "Creating desktop license richtext for U.S. (GPL3 for opensource)"
+ createLicenseRTF "$LICENSE_US" "$TMP_DIR/licenses/License-US.rtf"
+else
+ echo "No U.S. (GPL3 for opensource) license file found!"
+ exit 5
+fi
+
+if [ "$LICENSETYPE" = "commercial" ] && [ -n "$LICENSE_ALLOS" ]; then
+ if [ -e "$LICENSE_ALLOS" ]; then
+ mkdir -p "$TMP_DIR/licenses"
+
+ echo "Creating all OS license richtext for rest of the world"
+ createLicenseRTF "$LICENSE_ALLOS" "$TMP_DIR/licenses/License-AllOS.rtf"
+ else
+ echo "No all OS license file found!"
+ exit 6
+ fi
+
+ if [ -e "$LICENSE_ALLOS_US" ]; then
+ echo "Creating desktop license richtext for U.S. (GPL3 for opensource)"
+ createLicenseRTF "$LICENSE_ALLOS_US" "$TMP_DIR/licenses/License-AllOS-US.rtf"
+ else
+ echo "No U.S. all OS license file found!"
+ exit 7
+ fi
+
+ if [ -e "$LICENSE_EMBEDDED" ]; then
+ mkdir -p "$TMP_DIR/licenses"
+
+ echo "Creating embedded license richtext for rest of the world"
+ createLicenseRTF "$LICENSE_EMBEDDED" "$TMP_DIR/licenses/License-Embedded.rtf"
+ else
+ echo "No embedded license file found!"
+ exit 8
+ fi
+
+ if [ -e "$LICENSE_EMBEDDED_US" ]; then
+ echo "Creating embedded license richtext for U.S. (GPL3 for opensource)"
+ createLicenseRTF "$LICENSE_EMBEDDED_US" "$TMP_DIR/licenses/License-Embedded-US.rtf"
+ else
+ echo "No U.S. embedded license file found!"
+ exit 9
+ fi
+fi
+
+# Build our license checking plugin!
+if [ "$PARENTLICENSE" = "commercial" ] || [ "$PARENTLICENSE" = "eval" ]; then
+ # build the InstallerPane plugin
+ INSTALLERPANE_PATH=InstallerPane
+ INSTALLERPANE_CONFIGURATION="Release-$PARENTLICENSE"
+ INSTALLERPANE_BUILDPARAMS="-project ""$INSTALLERPANE_PATH/InstallerPane.xcodeproj"" -configuration ""$INSTALLERPANE_CONFIGURATION"
+
+ echo "/usr/bin/xcodebuild $INSTALLERPANE_BUILDPARAMS"
+ if !(/usr/bin/xcodebuild $INSTALLERPANE_BUILDPARAMS || grep '** BUILD SUCCEEDED **'); then
+ echo "Could not build installer pane plugin"
+ exit 100;
+ fi
+
+ # Create the key decoder for the script version
+ BUILD_LINE="keydecoder/main.cpp $INSTALLERPANE_PATH/keydec.cpp -o Resources/keydecoder -arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk"
+ /usr/bin/g++-4.0 $BUILD_LINE
+fi
+
+#create the packages
+PKG_CREATED=
+for package in $PACKAGES; do
+ if [ "$LICENSETYPE" = "eval" ] && [ "$package" = "debuglibraries" ]; then
+ continue
+ fi
+
+ [ "$package" = "none" ] && continue
+ if [ ! -e "$PACKAGE_DIR/$package/Info.plist" ]; then
+ echo "$package is not a valid package!!"
+ continue
+ fi
+ rm -rf "$TMP_DIR/package" #cleanup
+
+ #create files
+ echo "Creating package [$package]..."
+ mkdir -p "$TMP_DIR/package"
+ if [ -x "$PACKAGE_DIR/$package/create_package.sh" ]; then
+ if (cd $PACKAGE_DIR/$package/ && VERSION_MAJOR="$QT_MAJOR_VERSION" VERSION_MINOR="$QT_MINOR_VERSION" VERSION_STRING="$QT_VERSION_STRING" VERSION_PATCH="$QT_PATCH_VERSION" "$PACKAGE_DIR/$package/create_package.sh" $PACKAGE_OPTIONS --outdir="$TMP_DIR/package"); then
+ true
+ # Copy the uninstall script in for all of the packages
+ mkdir -p "$TMP_DIR/package/Developer/Tools"
+ cp "uninstall-qt.py" "$TMP_DIR/package/Developer/Tools"
+ else
+ echo " Package failed"
+ continue
+ fi
+ fi
+
+ #create .pkg
+ package_dir="$OUTPUT_DIR/packages/Qt_${package}.pkg"
+ rm -rf "$package_dir"
+ mkdir -p "$package_dir"
+ echo " Creating installation.. ($package_dir)"
+ doStringReplace "$PACKAGE_DIR/$package/Info.plist" "$TMP_DIR/Info.plist"
+ if !(/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker --root "$TMP_DIR/package" --out "$package_dir" --info "$TMP_DIR/Info.plist" --filter '\.DS_Store' -v); then
+ echo " Error creating package ($package_dir)"
+ continue
+ fi
+
+ sed '/IFPkgPathMappings/,${/[[:space:]]/d;}' $package_dir/Contents/Info.plist > cleaned
+ mv cleaned $package_dir/Contents/Info.plist
+
+ rm -rf "$TMP_DIR/Info.plist"
+ rm -rf $package_dir/Contents/Resources/*.lproj
+ #merge resources
+ cp -R Resources/* "$package_dir/Contents/Resources"
+ cp -R "$PACKAGEDATE_FILE" "$package_dir/Contents/Resources"
+ cp -R $PACKAGE_DIR/$package/Resources/* "$package_dir/Contents/Resources"
+ cp "Welcome-$PARENTLICENSE.rtf" "$package_dir/Contents/Resources/Welcome.rtf"
+ cp "$README" "$package_dir/Contents/Resources/ReadMe.txt"
+ if [ -n "$LICENSE_ALLOS" ] && [ "$PARENTLICENSE" = "commercial" ] || [ "$PARENTLICENSE" = "eval" ]; then
+ # Release licenses
+ for lang in "Desktop North and South America" "Desktop rest of the world" "All OS North and South America" "All OS rest of the World" "Embedded North and South America" "Embedded rest of the world"; do
+ LOCALDIR="$package_dir/Contents/Resources/${lang}.lproj"
+ if [ "$lang" = "Desktop North and South America" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-US.rtf"
+ elif [ "$lang" = "All OS North and South America" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-AllOS.rtf"
+ elif [ "$lang" = "Embedded North and South America" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-Embedded.rtf"
+ elif [ "$lang" = "All OS rest of the world" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-AllOS.rtf"
+ elif [ "$lang" = "Embedded rest of the world" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-Embedded.rtf"
+ else
+ LOCALLICENSE="$TMP_DIR/licenses/License.rtf"
+ fi
+
+ if [ -e "$LOCALLICENSE" ]; then
+ mkdir -p "$LOCALDIR"
+ cp "$LOCALLICENSE" "$LOCALDIR/License.rtf"
+ fi
+ done
+ elif [ "$PARENTLICENSE" = "commercial" ]; then
+ # Non-release license
+ for lang in "North and South America" "Rest of the world"; do
+ LOCALDIR="$package_dir/Contents/Resources/${lang}.lproj"
+ mkdir -p "$LOCALDIR"
+ if [ "$lang" = "North and South America" ]; then
+ cp "$TMP_DIR/licenses/License-US.rtf" "$LOCALDIR/License.rtf"
+ else
+ cp "$TMP_DIR/licenses/License.rtf" "$LOCALDIR"
+ fi
+ done
+ elif [ "$PARENTLICENSE" = "opensource" ]; then
+ for lang in "GNU Lesser General Public License Version 2.1" "GNU General Public License Version 3"; do
+ LOCALDIR="$package_dir/Contents/Resources/${lang}.lproj"
+ mkdir -p "$LOCALDIR"
+ if [ "$lang" = "GNU General Public License Version 3" ]; then
+ cp "$TMP_DIR/licenses/License-US.rtf" "$LOCALDIR/License.rtf"
+ else
+ cp "$TMP_DIR/licenses/License.rtf" "$LOCALDIR"
+ fi
+ done
+ rm -f "$package_dir/Contents/Resources/InstallationCheck"
+ rm -f "$package_dir/Contents/Resources/InstallationCheck.strings"
+ cp opensourceStuff/InstallationCheck "$package_dir/Contents/Resources"
+ cp opensourceStuff/InstallationCheck.strings "$package_dir/Contents/Resources"
+ if [ "$package" = "libraries" ] || [ "$package" = "tools" ] || [ "$package" = "headers" ] || [ "$package" = "debuglibraries" ]; then
+ rm -f "$package_dir/Contents/Resources/postflight"
+ fi
+
+ fi
+ for a in $package_dir/Contents/Resources/*.plist $package_dir/Contents/Resources/*.info $package_dir/Contents/Resources/*flight $package_dir/Contents/Resources/*.rtf; do
+ [ -e "$a" ] && doStringReplace "$a" "$a"
+ done
+ if [ -e "$package_dir/Contents/Resources/$package.info" ]; then
+ cp "$package_dir/Contents/Resources/$package.info" "$package_dir/Contents/Resources/Qt_${package}.info"
+ fi
+ for a in $package_dir/Contents/Resources/*flight; do
+ [ -e "$a" ] && chmod a+x $a #exe
+ done
+ for a in $package_dir/Contents/Resources/*Check; do
+ if [ -e "$a" ]; then
+ chmod a+x "$a"
+ if false && [ -e "${a}.strings" ]; then
+ for lang in English Norwegian French German Spanish; do
+ LOCALDIR="$package_dir/Contents/Resources/${lang}.lproj"
+ mkdir -p "$LOCALDIR"
+ cp "${a}.strings" "$LOCALDIR"
+ done
+ #rm -f "${a}.strings"
+ fi
+ fi
+ done
+ if [ "$PARENTLICENSE" = "commercial" ] || [ "$PARENTLICENSE" = "eval" ]; then
+ # Copy over the plugin
+ plugin_dir="$package_dir/Contents/Plugins"
+ mkdir "$plugin_dir"
+ cp -r "$INSTALLERPANE_PATH/build/$INSTALLERPANE_CONFIGURATION/InstallerPane.bundle" "$plugin_dir"
+ cp "$INSTALLERPANE_PATH/InstallerSections.plist" "$plugin_dir"
+
+ fi
+
+ if [ "$package" != "debuglibraries" ]; then
+ PKG_CREATED="$PKG_CREATED $package_dir"
+ fi
+done
+if [ -z "$PKG_CREATED" ] && [ "$PACKAGES" = " none" ]; then
+ if [ "$MAKE_META" = "yes" ] || [ "$MAKE_IMAGE" = "yes" ]; then
+ PKG_CREATED=$OUTPUT_DIR/packages/*.pkg
+ [ -z "$MAKE_META" ] && MAKE_META=yes
+ fi
+fi
+
+#create meta package
+if [ "$MAKE_META" = "yes" ]; then
+ echo "Creating meta package.."
+ rm -rf "$OUTPUT_DIR/Qt.mpkg/"
+ mkdir -p "$OUTPUT_DIR/Qt.mpkg/"
+ cp -R "MetaPackage" "$OUTPUT_DIR/Qt.mpkg/Contents"
+
+ if [ "$PARENTLICENSE" = "commercial" ] || [ "$PARENTLICENSE" = "eval" ]; then
+ # Copy over the plugin
+ plugin_dir="$OUTPUT_DIR/Qt.mpkg/Contents/Plugins"
+ mkdir -p "$plugin_dir"
+ cp -r "$INSTALLERPANE_PATH/build/$INSTALLERPANE_CONFIGURATION/InstallerPane.bundle" "$plugin_dir"
+ cp "$INSTALLERPANE_PATH/InstallerSections.plist" "$plugin_dir"
+ fi
+
+ mkdir -p "$OUTPUT_DIR/Qt.mpkg/Contents/Resources"
+ cp -R Resources/* "$OUTPUT_DIR/Qt.mpkg/Contents/Resources"
+ cp -R "$PACKAGEDATE_FILE" "$OUTPUT_DIR/Qt.mpkg/Contents/Resources"
+ cp "Welcome-${PARENTLICENSE}.rtf" "$OUTPUT_DIR/Qt.mpkg/Contents/Resources/Welcome.rtf"
+ cp "$README" "$OUTPUT_DIR/Qt.mpkg/Contents/Resources/ReadMe.txt"
+ if [ -n "$LICENSE_ALLOS" ] && [ "$PARENTLICENSE" = "commercial" ] || [ "$PARENTLICENSE" = "eval" ]; then
+ # Release licenses
+ for lang in "Desktop North and South America" "Desktop rest of the world" "All OS North and South America" "All OS rest of the World" "Embedded North and South America" "Embedded rest of the world"; do
+ LOCALDIR="$OUTPUT_DIR/Qt.mpkg/Contents/Resources/${lang}.lproj"
+ if [ "$lang" = "Desktop North and South America" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-US.rtf"
+ elif [ "$lang" = "All OS North and South America" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-AllOS.rtf"
+ elif [ "$lang" = "Embedded North and South America" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-Embedded.rtf"
+ elif [ "$lang" = "All OS rest of the world" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-AllOS.rtf"
+ elif [ "$lang" = "Embedded rest of the world" ]; then
+ LOCALLICENSE="$TMP_DIR/licenses/License-Embedded.rtf"
+ else
+ LOCALLICENSE="$TMP_DIR/licenses/License.rtf"
+ fi
+
+ if [ -e "$LOCALLICENSE" ]; then
+ mkdir -p "$LOCALDIR"
+ cp "$LOCALLICENSE" "$LOCALDIR/License.rtf"
+ fi
+ done
+ elif [ "$PARENTLICENSE" = "commercial" ]; then
+ # Non-release license
+ for lang in "North and South America" "Rest of the world"; do
+ LOCALDIR="$OUTPUT_DIR/Qt.mpkg/Contents/Resources/${lang}.lproj"
+ mkdir -p "$LOCALDIR"
+ if [ "$lang" = "North and South America" ]; then
+ cp "$TMP_DIR/licenses/License-US.rtf" "$LOCALDIR/License.rtf"
+ else
+ cp "$TMP_DIR/licenses/License.rtf" "$LOCALDIR"
+ fi
+ done
+ elif [ "$PARENTLICENSE" = "opensource" ]; then
+ for lang in "GNU General Public License Version 2" "GNU General Public License Version 3"; do
+ LOCALDIR="$OUTPUT_DIR/Qt.mpkg/Contents/Resources/${lang}.lproj"
+ mkdir -p "$LOCALDIR"
+ if [ "$lang" = "GNU General Public License Version 3" ]; then
+ cp "$TMP_DIR/licenses/License-US.rtf" "$LOCALDIR/License.rtf"
+ else
+ cp "$TMP_DIR/licenses/License.rtf" "$LOCALDIR"
+ fi
+ done
+ rm -f "$OUTPUT_DIR/Qt.mpkg/Contents/Resources/InstallationCheck"
+ rm -f "$OUTPUT_DIR/Qt.mpkg/Contents/Resources/InstallationCheck.strings"
+ cp opensourceStuff/InstallationCheck "$OUTPUT_DIR/Qt.mpkg/Contents/Resources"
+ cp opensourceStuff/InstallationCheck.strings "$OUTPUT_DIR/Qt.mpkg/Contents/Resources"
+ fi
+ for a in $OUTPUT_DIR/Qt.mpkg/Contents/*.plist $OUTPUT_DIR/Qt.mpkg/Contents/Resources/*.info $OUTPUT_DIR/Qt.mpkg/Contents/Resources/*.plist $OUTPUT_DIR/Qt.mpkg/Contents/Resources/*.rtf; do
+ doStringReplace "$a" "$a"
+ done
+ for a in $OUTPUT_DIR/Qt.mpkg/Contents/Resources/*Check; do
+ if [ -e "$a" ]; then
+ chmod a+x "$a"
+ if false && [ -e "${a}.strings" ]; then
+ for lang in English Norwegian French German Spanish; do
+ LOCALDIR="$OUTPUT_DIR/Qt.mpkg/Contents/Resources/${lang}.lproj"
+ mkdir -p "$LOCALDIR"
+ cp "${a}.strings" "$LOCALDIR"
+ done
+ #rm -f "${a}.strings"
+ fi
+ fi
+ done
+
+ PACKAGE_DICT="$TMP_DIR/pkg.dict"
+ >"$PACKAGE_DICT"
+ for package in $PKG_CREATED; do
+ package_name=`basename $package`
+ package_type=selected
+ if [ "$package_name" = "Qt_libraries.pkg" ] || [ "$package_name" = "Qt_tools.pkg" ]; then
+ package_type=required
+ fi
+ cat >"${PACKAGE_DICT}.tmp" <<EOF
+ <dict>
+ <key>IFPkgFlagPackageLocation</key>
+ <string>${package_name}</string>
+ <key>IFPkgFlagPackageSelection</key>
+ <string>${package_type}</string>
+ </dict>
+EOF
+ if [ "$package_type" = "required" ]; then
+ cat "${PACKAGE_DICT}.tmp" "$PACKAGE_DICT" >"$TMP_DIR/dict.combined"
+ mv "$TMP_DIR/dict.combined" "$PACKAGE_DICT"
+ else
+ cat "${PACKAGE_DICT}.tmp" >>"$PACKAGE_DICT"
+ fi
+ rm -f "${PACKAGE_DICT}.tmp"
+ done
+ sed "/PACKAGE_DICT/r $PACKAGE_DICT" "$OUTPUT_DIR/Qt.mpkg/Contents/Info.plist" >"${TMP_DIR}/Info.plist"
+ chflags nouchg "$OUTPUT_DIR/Qt.mpkg/Contents/Info.plist"
+ rm -f "$OUTPUT_DIR/Qt.mpkg/Contents/Info.plist"
+ cp "${TMP_DIR}/Info.plist" "$OUTPUT_DIR/Qt.mpkg/Contents/Info.plist"
+ rm -f "${TMP_DIR}/Info.plist"
+
+ PKG_CREATED="$PKG_CREATED $OUTPUT_DIR/Qt.mpkg"
+fi
+
+#create disk image
+if [ "$MAKE_IMAGE" = "yes" ] && [ ! -z "$PKG_CREATED" ]; then
+ echo "Creating disk image..."
+ IMAGE_NAME="Qt ${QT_VERSION_STRING}"
+ IMAGE="$OUTPUT_DIR/qt-mac-${PARENTLICENSE}-${QT_VERSION_STRING}.dmg"
+ TMPIMAGE="$OUTPUT_DIR/qt-mac-${PARENTLICENSE}-${QT_VERSION_STRING}-RW.dmg"
+ rm -f "$IMAGE" #remove old
+
+ #copy
+ echo " Copying..."
+ DISKIMAGE="$TMP_DIR/diskimage"
+ mkdir -p "$DISKIMAGE/.background"
+ cp "backgrounds/DiskImage-${PARENTLICENSE}.png" "$DISKIMAGE/.background/findersbackground.png"
+ cp model-DS_Store-${QT_VERSION_STRING} "$DISKIMAGE/.DS_Store"
+ chmod 755 "$DISKIMAGE/.DS_Store"
+ cp "backgrounds/DriveIcon.icns" "$DISKIMAGE/.VolumeIcon.icns"
+
+ for package in $PKG_CREATED; do
+ [ -z "$package" ] && continue
+ OUT_PACKAGE=`echo $package | sed "s,^$OUTPUT_DIR,$DISKIMAGE/,"`
+ mkdir -p "`dirname "$OUT_PACKAGE"`"
+ cp -R "$package" "$OUT_PACKAGE"
+ done
+ [ -e "$README" ] && cp "$README" "$DISKIMAGE/ReadMe.txt"
+
+ echo -n " Creating Image..."
+ hdiutil create -format UDRW -volname "$IMAGE_NAME" -srcfolder "$DISKIMAGE" "$TMPIMAGE" | grep -v ^created:
+ mountpoint=`hdiutil attach "$TMPIMAGE" | grep '/Volumes' | cut -f 3`
+ /Developer/Tools/SetFile -a C "$mountpoint"
+ hdiutil detach "$mountpoint"
+ hdiutil convert "$TMPIMAGE" -format UDZO -o "$IMAGE" -imagekey zlib-level=9 | grep -v ^created:
+ rm "$TMPIMAGE"
+ echo " done!"
+fi
+
+# Create the disk image for the debug libraries too
+if [ "$MAKE_IMAGE" = "yes" ] && [ "$PARENTLICENSE" != "eval" ]; then
+ echo "Creating the debug libraries disk image..."
+ IMAGE_NAME="Qt ${QT_VERSION_STRING} Debug Libraries"
+ IMAGE="$OUTPUT_DIR/qt-mac-${PARENTLICENSE}-${QT_VERSION_STRING}-debug-libs.dmg"
+ DISKIMAGE="$TMP_DIR/diskimage"
+
+ #remove the old stuff
+ rm -f "$IMAGE"
+ rm -rf "$DISKIMAGE"
+ mkdir -p "$DISKIMAGE"
+ cp -R "$OUTPUT_DIR/packages/Qt_debuglibraries.pkg" "$DISKIMAGE"
+ hdiutil create -srcfolder "$DISKIMAGE" -o "$IMAGE" -volname "$IMAGE_NAME" -imagekey zlib-level=9
+ echo " done!"
+fi
+
+
+#cleanup
+if [ "$DO_CLEANUP" = "yes" ]; then
+ rm -rf "$TMP_DIR"
+fi
+echo "Done!"
diff --git a/util/scripts/mac-binary/package/model-DS_Store b/util/scripts/mac-binary/package/model-DS_Store
new file mode 100644
index 0000000..c9ffdf2
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.0.0 b/util/scripts/mac-binary/package/model-DS_Store-4.0.0
new file mode 100755
index 0000000..2b78907
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.0.0
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.0.1 b/util/scripts/mac-binary/package/model-DS_Store-4.0.1
new file mode 100644
index 0000000..8d6cf56
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.0.1
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.1.0 b/util/scripts/mac-binary/package/model-DS_Store-4.1.0
new file mode 100644
index 0000000..1ca8894
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.1.0
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.1.1 b/util/scripts/mac-binary/package/model-DS_Store-4.1.1
new file mode 100644
index 0000000..e470afb
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.1.1
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.1.2 b/util/scripts/mac-binary/package/model-DS_Store-4.1.2
new file mode 100644
index 0000000..b40119e
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.1.2
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.1.3 b/util/scripts/mac-binary/package/model-DS_Store-4.1.3
new file mode 100644
index 0000000..baa4439
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.1.3
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.1.4 b/util/scripts/mac-binary/package/model-DS_Store-4.1.4
new file mode 100644
index 0000000..63b76b0
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.1.4
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.1.5 b/util/scripts/mac-binary/package/model-DS_Store-4.1.5
new file mode 100644
index 0000000..bc5d42f
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.1.5
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.1.6 b/util/scripts/mac-binary/package/model-DS_Store-4.1.6
new file mode 100644
index 0000000..7102dfa
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.1.6
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.2.0 b/util/scripts/mac-binary/package/model-DS_Store-4.2.0
new file mode 100644
index 0000000..8cd1ef7
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.2.0
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.2.0-rc1 b/util/scripts/mac-binary/package/model-DS_Store-4.2.0-rc1
new file mode 100644
index 0000000..eb7b463
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.2.0-rc1
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.2.1 b/util/scripts/mac-binary/package/model-DS_Store-4.2.1
new file mode 100644
index 0000000..32ce427
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.2.1
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.2.2 b/util/scripts/mac-binary/package/model-DS_Store-4.2.2
new file mode 100644
index 0000000..711c8a1
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.2.2
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.2.3 b/util/scripts/mac-binary/package/model-DS_Store-4.2.3
new file mode 100644
index 0000000..d7f36f6
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.2.3
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.2.4 b/util/scripts/mac-binary/package/model-DS_Store-4.2.4
new file mode 100644
index 0000000..29bc0da
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.2.4
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.2.5 b/util/scripts/mac-binary/package/model-DS_Store-4.2.5
new file mode 100644
index 0000000..3e261a1
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.2.5
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.3.0 b/util/scripts/mac-binary/package/model-DS_Store-4.3.0
new file mode 100644
index 0000000..9bb3bf2
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.3.0
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.3.1 b/util/scripts/mac-binary/package/model-DS_Store-4.3.1
new file mode 100644
index 0000000..1a9e331
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.3.1
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.3.2 b/util/scripts/mac-binary/package/model-DS_Store-4.3.2
new file mode 100644
index 0000000..17e267c
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.3.2
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.3.3 b/util/scripts/mac-binary/package/model-DS_Store-4.3.3
new file mode 100644
index 0000000..ded1369
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.3.3
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.3.4 b/util/scripts/mac-binary/package/model-DS_Store-4.3.4
new file mode 100644
index 0000000..15e0d99
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.3.4
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.3.5 b/util/scripts/mac-binary/package/model-DS_Store-4.3.5
new file mode 100644
index 0000000..6ac254a
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.3.5
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.4.0 b/util/scripts/mac-binary/package/model-DS_Store-4.4.0
new file mode 100644
index 0000000..fee7663
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.4.0
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.4.0-rc1 b/util/scripts/mac-binary/package/model-DS_Store-4.4.0-rc1
new file mode 100644
index 0000000..367faae
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.4.0-rc1
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.4.1 b/util/scripts/mac-binary/package/model-DS_Store-4.4.1
new file mode 100644
index 0000000..b891927
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.4.1
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.4.2 b/util/scripts/mac-binary/package/model-DS_Store-4.4.2
new file mode 100644
index 0000000..c781394
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.4.2
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.4.3 b/util/scripts/mac-binary/package/model-DS_Store-4.4.3
new file mode 100644
index 0000000..c326d4a
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.4.3
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.4.4 b/util/scripts/mac-binary/package/model-DS_Store-4.4.4
new file mode 100644
index 0000000..5145329
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.4.4
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.4.5 b/util/scripts/mac-binary/package/model-DS_Store-4.4.5
new file mode 100644
index 0000000..22eeb4e
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.4.5
Binary files differ
diff --git a/util/scripts/mac-binary/package/model-DS_Store-4.5.0 b/util/scripts/mac-binary/package/model-DS_Store-4.5.0
new file mode 100644
index 0000000..4ac1714
--- /dev/null
+++ b/util/scripts/mac-binary/package/model-DS_Store-4.5.0
Binary files differ
diff --git a/util/scripts/mac-binary/package/opensourceStuff/InstallationCheck b/util/scripts/mac-binary/package/opensourceStuff/InstallationCheck
new file mode 100755
index 0000000..f1cd8ad
--- /dev/null
+++ b/util/scripts/mac-binary/package/opensourceStuff/InstallationCheck
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+# We need to do things differently on different platforms
+# <10.3.9 Can't install
+# =10.3.9 Can install, but must check license manually
+# >=10.4 Just jump out
+
+os_version=`sysctl kern.osrelease | awk '{ print $3 }'`
+os_major=`echo $os_version | cut -d . -f 1`
+os_minor=`echo $os_version | cut -d . -f 2`
+
+if [ $os_major -lt 7 -o $os_major -eq 7 -a $os_minor -lt 9 ]; then
+ exit $((96+19))
+fi
+exit 0
diff --git a/util/scripts/mac-binary/package/opensourceStuff/InstallationCheck.strings b/util/scripts/mac-binary/package/opensourceStuff/InstallationCheck.strings
new file mode 100644
index 0000000..4b82b30
--- /dev/null
+++ b/util/scripts/mac-binary/package/opensourceStuff/InstallationCheck.strings
Binary files differ
diff --git a/util/scripts/mac-binary/package/uninstall-qt.py b/util/scripts/mac-binary/package/uninstall-qt.py
new file mode 100755
index 0000000..2e5cfdc
--- /dev/null
+++ b/util/scripts/mac-binary/package/uninstall-qt.py
@@ -0,0 +1,154 @@
+#!/usr/bin/env python
+
+#############################################################################
+##
+## Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+## Contact: Qt Software Information (qt-info@nokia.com)
+##
+## This file is part of the $MODULE$ of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL$
+## No Commercial Usage
+## This file contains pre-release code and may not be distributed.
+## You may use this file in accordance with the terms and conditions
+## contained in the either Technology Preview License Agreement or the
+## Beta Release License Agreement.
+##
+## GNU Lesser General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU Lesser
+## General Public License version 2.1 as published by the Free Software
+## Foundation and appearing in the file LICENSE.LGPL included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU Lesser General Public License version 2.1 requirements
+## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+##
+## In addition, as a special exception, Nokia gives you certain
+## additional rights. These rights are described in the Nokia Qt LGPL
+## Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
+## package.
+##
+## GNU General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU
+## General Public License version 3.0 as published by the Free Software
+## Foundation and appearing in the file LICENSE.GPL included in the
+## packaging of this file. Please review the following information to
+## ensure the GNU General Public License version 3.0 requirements will be
+## met: http://www.gnu.org/copyleft/gpl.html.
+##
+## If you are unsure which license is appropriate for your use, please
+## contact the sales department at qt-sales@nokia.com.
+## $QT_END_LICENSE$
+##
+## This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+## WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+##
+#############################################################################
+
+import commands, sys, os, shutil, glob
+
+trace = False
+justTest = False
+# Globals
+AllPackages = ['docs', 'headers', 'examples', 'plugins', 'tools', 'libraries', 'debuglibraries', 'translations' ]
+
+packagesToRemove = AllPackages
+
+# Travese the list and remove values that won't work.
+def realPackagesToRemove(packageList):
+ for package in packageList:
+ if package not in AllPackages:
+ print "%s is NOT a valid package, removing it from the list" % (package)
+ packageList.remove(package)
+ return packageList
+
+#Remove the files in the list
+def removeFiles(fileList, helperFunc=0):
+ directories = []
+ for file in fileList:
+ file = file[1:]
+ if not os.path.islink(file) and os.path.isdir(file):
+ directories.append(file)
+ elif len(file) > 0:
+ if os.path.exists(file) or os.path.islink(file):
+ if trace:
+ print "remove file: " + file
+ if not justTest:
+ os.remove(file)
+ else:
+ print "file: %s does not exist, skipping" % file
+
+
+ # Now remove any empty directories
+ directories.reverse()
+ for dir in directories:
+ if helperFunc:
+ helperFunc(dir)
+ if (os.path.exists(dir)) and len(os.listdir(dir)) == 0:
+ if trace:
+ print "remove dir: " + dir
+ if not justTest:
+ os.rmdir(dir)
+ elif trace and os.path.exists(dir):
+ print "NOT removing " + dir
+
+def removeExampleGeneratedFiles(dir):
+ extraList = []
+ extraList.append(os.path.join(dir, "Info.plist"))
+ extraList.append(os.path.join(dir, ".DS_Store"))
+ extraList.append(os.path.join(dir, ".qmake.cache"))
+ extraList.append(os.path.join(dir, "Makefile"))
+ extraList.append(os.path.join(dir, ".obj"))
+ extraList.append(os.path.join(dir, ".moc"))
+
+ xcodeprojects = glob.glob(dir + "/*" + os.path.basename(dir) + "*.xcode*")
+ xcodeprojects += glob.glob(dir + "/.xcode*") # Grab the items from qmake mess-up in 4.0.1
+
+ for file in xcodeprojects:
+ if trace:
+ print " removing the tree in " + file
+ shutil.rmtree(file)
+
+ for file in extraList:
+ if os.path.exists(file):
+ if trace:
+ print " removing the file in " + file
+ if os.path.isdir(file):
+ shutil.rmtree(file)
+ else:
+ os.remove(file)
+
+
+# Remove the package
+def removePackage(package):
+ print "removing package " + package
+ realPackageName = "/Library/Receipts/Qt_" + package + ".pkg"
+ bomLocation = os.path.join(realPackageName, "Contents/Archive.bom")
+ if os.path.exists(realPackageName) and os.path.isdir(realPackageName):
+ fileList = commands.getoutput("/usr/bin/lsbom -f -p f -d -l " + bomLocation).split()
+ if len(fileList) > 0:
+ if (package == "examples"):
+ removeFiles(fileList, removeExampleGeneratedFiles)
+ else:
+ removeFiles(fileList)
+ shutil.rmtree(realPackageName)
+ else:
+ print "%s is not installed, skipping." % package
+
+
+################# Here's where the actual script starts ########################################
+if os.getuid() != 0:
+ print sys.argv[0] + ": This script must be run as root or with sudo, exiting now."
+ sys.exit(-1)
+
+# Take the names of packages on the command-line
+if len(sys.argv) > 1:
+ packagesToRemove = sys.argv[1:]
+
+packagesToRemove = realPackagesToRemove(packagesToRemove)
+
+if len(packagesToRemove) < 1:
+ print "\nNo valid packages to uninstall.\nusage: %s [package ...]" % (sys.argv[0])
+ sys.exit(1)
+
+for package in packagesToRemove:
+ removePackage(package)