From fb3d74c139df0e1916033e980a4da26bc54f827d Mon Sep 17 00:00:00 2001 From: brukie Date: Thu, 17 Nov 2011 11:09:44 -0900 Subject: [PATCH] mac fixes --- cockatrice/cockatrice.pro | 2 +- cockatrice/src/phasestoolbar.cpp | 32 ++++++++-------- cockatrice/src/phasestoolbar.h | 2 +- oracle/oracle.pro | 3 +- prepareMacRelease.sh | 63 ++++++++++++++++++++++++++++++++ 5 files changed, 83 insertions(+), 19 deletions(-) create mode 100644 prepareMacRelease.sh diff --git a/cockatrice/cockatrice.pro b/cockatrice/cockatrice.pro index 84b03663..2f53911a 100644 --- a/cockatrice/cockatrice.pro +++ b/cockatrice/cockatrice.pro @@ -202,6 +202,6 @@ win32 { } macx { ICON = resources/appicon.icns - CONFIG += x86_64 release + CONFIG += x86 ppc x86_64 release LIBS += -bind_at_load } diff --git a/cockatrice/src/phasestoolbar.cpp b/cockatrice/src/phasestoolbar.cpp index c510cb9b..49b21d75 100644 --- a/cockatrice/src/phasestoolbar.cpp +++ b/cockatrice/src/phasestoolbar.cpp @@ -167,31 +167,33 @@ void PhasesToolbar::paint(QPainter *painter, const QStyleOptionGraphicsItem * /* painter->fillRect(boundingRect(), QColor(50, 50, 50)); } +const double PhasesToolbar::marginSize = 3; + void PhasesToolbar::rearrangeButtons() { for (int i = 0; i < buttonList.size(); ++i) buttonList[i]->setWidth(symbolSize); nextTurnButton->setWidth(symbolSize); - double y = margin; - buttonList[0]->setPos(margin, y); - buttonList[1]->setPos(margin, y += symbolSize); - buttonList[2]->setPos(margin, y += symbolSize); + double y = marginSize; + buttonList[0]->setPos(marginSize, y); + buttonList[1]->setPos(marginSize, y += symbolSize); + buttonList[2]->setPos(marginSize, y += symbolSize); y += ySpacing; - buttonList[3]->setPos(margin, y += symbolSize); + buttonList[3]->setPos(marginSize, y += symbolSize); y += ySpacing; - buttonList[4]->setPos(margin, y += symbolSize); - buttonList[5]->setPos(margin, y += symbolSize); - buttonList[6]->setPos(margin, y += symbolSize); - buttonList[7]->setPos(margin, y += symbolSize); - buttonList[8]->setPos(margin, y += symbolSize); + buttonList[4]->setPos(marginSize, y += symbolSize); + buttonList[5]->setPos(marginSize, y += symbolSize); + buttonList[6]->setPos(marginSize, y += symbolSize); + buttonList[7]->setPos(marginSize, y += symbolSize); + buttonList[8]->setPos(marginSize, y += symbolSize); y += ySpacing; - buttonList[9]->setPos(margin, y += symbolSize); + buttonList[9]->setPos(marginSize, y += symbolSize); y += ySpacing; - buttonList[10]->setPos(margin, y += symbolSize); + buttonList[10]->setPos(marginSize, y += symbolSize); y += ySpacing; y += ySpacing; - nextTurnButton->setPos(margin, y += symbolSize); + nextTurnButton->setPos(marginSize, y += symbolSize); } void PhasesToolbar::setHeight(double _height) @@ -199,9 +201,9 @@ void PhasesToolbar::setHeight(double _height) prepareGeometryChange(); height = _height; - ySpacing = (height - 2 * margin) / (buttonCount * 5 + spaceCount); + ySpacing = (height - 2 * marginSize) / (buttonCount * 5 + spaceCount); symbolSize = ySpacing * 5; - width = symbolSize + 2 * margin; + width = symbolSize + 2 * marginSize; rearrangeButtons(); } diff --git a/cockatrice/src/phasestoolbar.h b/cockatrice/src/phasestoolbar.h index a6e6cffb..55620bb2 100644 --- a/cockatrice/src/phasestoolbar.h +++ b/cockatrice/src/phasestoolbar.h @@ -44,7 +44,7 @@ private: double width, height, ySpacing, symbolSize; static const int buttonCount = 12; static const int spaceCount = 6; - static const double margin = 3; + static const double marginSize; void rearrangeButtons(); public: PhasesToolbar(QGraphicsItem *parent = 0); diff --git a/oracle/oracle.pro b/oracle/oracle.pro index 652af19f..b2d1b41f 100644 --- a/oracle/oracle.pro +++ b/oracle/oracle.pro @@ -10,7 +10,6 @@ HEADERS += src/oracleimporter.h src/window_main.h ../cockatrice/src/carddatabase SOURCES += src/main.cpp src/oracleimporter.cpp src/window_main.cpp ../cockatrice/src/carddatabase.cpp ../cockatrice/src/settingscache.cpp macx { -# CONFIG += x86 ppc -CONFIG += x86_64 release + CONFIG += x86 ppc x86_64 release LIBS += -bind_at_load } diff --git a/prepareMacRelease.sh b/prepareMacRelease.sh new file mode 100644 index 00000000..c1cbf817 --- /dev/null +++ b/prepareMacRelease.sh @@ -0,0 +1,63 @@ +#!/bin/sh + +FRAMEWORKS="Core Gui Multimedia Network Svg Xml Script" +DATE=`date '+%Y%m%d'` +#QTDIR="/Users/brukie/QtSDK/Desktop/Qt/474/gcc" +QTLIB="/usr/local/Qt4.7/lib" +QTPLUGINS="/usr/local/Qt4.7/plugins" +DIR=cockatrice_mac_$DATE +if [ -d $DIR ]; then echo "delete old dir first"; exit 1; fi + +mkdir $DIR + +cp -R cockatrice/cockatrice.app $DIR +cp -R oracle/oracle.app $DIR +mkdir $DIR/decks +mkdir $DIR/pics +mkdir $DIR/Frameworks +cp -R sounds zonebg $DIR +cp -R $QTPLUGINS $DIR/PlugIns +for f in $FRAMEWORKS; do + cp -R $QTLIB/Qt"$f".framework $DIR/Frameworks +done +find $DIR/Frameworks -name '*debug*'|xargs -n 1 rm -f +find $DIR/Frameworks -name 'Headers'|xargs -n 1 rm -rf +find $DIR/PlugIns -name '*debug*'|xargs -n 1 rm -f + + +cd $DIR +for f in $FRAMEWORKS; do + echo "Framework $f" + echo "step 1" + install_name_tool -id @executable_path/../../../Frameworks/Qt"$f".framework/Versions/4/Qt"$f" Frameworks/Qt"$f".framework/Versions/4/Qt"$f" + for g in $FRAMEWORKS; do + install_name_tool -change $QTLIB/Qt"$f".framework/Versions/4/Qt"$f" @executable_path/../../../Frameworks/Qt"$f".framework/Versions/4/Qt"$f" Frameworks/Qt"$g".framework/Versions/4/Qt"$g" + done + echo "step 2" + for g in cockatrice oracle; do + install_name_tool -change $QTLIB/Qt"$f".framework/Versions/4/Qt"$f" @executable_path/../../../Frameworks/Qt"$f".framework/Versions/4/Qt"$f" "$g".app/Contents/MacOS/$g + done + echo "step 3" + for g in `find . -name '*.dylib'`; do + install_name_tool -change $QTLIB/Qt"$f".framework/Versions/4/Qt"$f" @executable_path/../../../Frameworks/Qt"$f".framework/Versions/4/Qt"$f" "$g" + done +done + +cd .. + +VOL=cockatrice_mac_${DATE} +DMG="tmp-$VOL.dmg" + +SIZE=`du -sk $DIR | cut -f1` +SIZE=$((${SIZE}/1000+10)) +hdiutil create "$DMG" -megabytes ${SIZE} -ov -type UDIF -fs HFS+ -volname "$VOL" + +hdid "$DMG" +cp -R "${DIR}" "/Volumes/$VOL" +hdiutil detach "/Volumes/$VOL" +#osascript -e "tell application "Finder" to eject disk "$VOL"" && + +# convert to compressed image, delete temp image +rm -f "${VOL}.dmg" +hdiutil convert "$DMG" -format UDZO -o "${VOL}.dmg" +rm -f "$DMG"