diff options
Diffstat (limited to 'util/scripts/mac-binary/install/xcode')
39 files changed, 1636 insertions, 0 deletions
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 Binary files differnew file mode 100644 index 0000000..466b976 --- /dev/null +++ b/util/scripts/mac-binary/install/xcode/integration/templates/Scripts/999-Qt/menuIcon.tiff 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"; + } +) |