# HG changeset patch # User koda # Date 1247601727 0 # Node ID 57e99c908e7c377b571e1d8a8f99acfbdfa1b024 # Parent 31756e21c436f939d1f61339f436aec195dd336e a lot of stuff: - added an autoupdater option * works in mac osx only * the xml file should be hosted on official webserver * checkbox could be moved in a "updates section" of the option page * only english and italian translation provided for new option - reverted openalbridge type for compatibility - german translation fix diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/CMakeLists.txt --- a/QTfrontend/CMakeLists.txt Sun Jul 12 19:12:08 2009 +0000 +++ b/QTfrontend/CMakeLists.txt Tue Jul 14 20:02:07 2009 +0000 @@ -137,6 +137,12 @@ bgwidget.h ) +if(APPLE) +find_package(Sparkle REQUIRED) +set(hwfr_src ${hwfr_src} AutoUpdater.cpp CocoaInitializer.mm SparkleAutoUpdater.mm) +#set(hwfr_moc_hdrs ${hwfr_moc_hdrs} AutoUpdater.h CocoaInitializer.h SparkleAutoUpdater.h) +endif(APPLE) + set(hwfr_hdrs binds.h ui_hwform.h @@ -183,6 +189,7 @@ ${OGG_LIBRARY} ${VORBIS_LIBRARY} ${HW_LINK_LIBS} + ${SPARKLE_LIBRARY} ) endif(APPLE) diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/CocoaInitializer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/CocoaInitializer.h Tue Jul 14 20:02:07 2009 +0000 @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2008 Remko Troncon + */ + +#ifndef COCOAINITIALIZER_H +#define COCOAINITIALIZER_H + +class CocoaInitializer +{ + public: + CocoaInitializer(); + ~CocoaInitializer(); + + private: + class Private; + Private* d; +}; + +#endif diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/CocoaInitializer.mm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/CocoaInitializer.mm Tue Jul 14 20:02:07 2009 +0000 @@ -0,0 +1,28 @@ +/* + * Copyright (C) 2008 Remko Troncon + */ + +#include "CocoaInitializer.h" + +#include +#include +#include + +class CocoaInitializer::Private +{ + public: + NSAutoreleasePool* autoReleasePool_; +}; + +CocoaInitializer::CocoaInitializer() +{ + d = new CocoaInitializer::Private(); + NSApplicationLoad(); + d->autoReleasePool_ = [[NSAutoreleasePool alloc] init]; +} + +CocoaInitializer::~CocoaInitializer() +{ + [d->autoReleasePool_ release]; + delete d; +} diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/SparkleAutoUpdater.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/SparkleAutoUpdater.h Tue Jul 14 20:02:07 2009 +0000 @@ -0,0 +1,25 @@ +/* + * Copyright (C) 2008 Remko Troncon + */ + +#ifndef SPARKLEAUTOUPDATER_H +#define SPARKLEAUTOUPDATER_H + +#include + +#include "AutoUpdater.h" + +class SparkleAutoUpdater : public AutoUpdater +{ + public: + SparkleAutoUpdater(const QString& url); + ~SparkleAutoUpdater(); + + void checkForUpdates(); + + private: + class Private; + Private* d; +}; + +#endif diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/SparkleAutoUpdater.mm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/SparkleAutoUpdater.mm Tue Jul 14 20:02:07 2009 +0000 @@ -0,0 +1,37 @@ +/* + * Copyright (C) 2008 Remko Troncon + */ + +#include "SparkleAutoUpdater.h" + +#include +#include + +class SparkleAutoUpdater::Private +{ + public: + SUUpdater* updater; +}; + +SparkleAutoUpdater::SparkleAutoUpdater(const QString& aUrl) +{ + d = new Private; + + d->updater = [SUUpdater sharedUpdater]; + [d->updater retain]; + + NSURL* url = [NSURL URLWithString: + [NSString stringWithUTF8String: aUrl.toUtf8().data()]]; + [d->updater setFeedURL: url]; +} + +SparkleAutoUpdater::~SparkleAutoUpdater() +{ + [d->updater release]; + delete d; +} + +void SparkleAutoUpdater::checkForUpdates() +{ + [d->updater checkForUpdatesInBackground]; +} diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/gameuiconfig.cpp --- a/QTfrontend/gameuiconfig.cpp Sun Jul 12 19:12:08 2009 +0000 +++ b/QTfrontend/gameuiconfig.cpp Tue Jul 14 20:02:07 2009 +0000 @@ -64,7 +64,12 @@ Form->ui.pageOptions->CBAltDamage->setChecked(value("misc/altdamage", false).toBool()); Form->ui.pageOptions->CBNameWithDate->setChecked(value("misc/appendTimeToRecords", false).toBool()); - + +#ifdef __APPLE__ + //autoupdate + Form->ui.pageOptions->CBAutoUpdate->setChecked(value("misc/autoUpdate", true).toBool()); +#endif + depth = QApplication::desktop()->depth(); if (depth < 16) depth = 16; else if (depth > 16) depth = 32; @@ -120,6 +125,11 @@ setValue("misc/altdamage", isAltDamageEnabled()); setValue("misc/appendTimeToRecords", appendDateTimeToRecordName()); + +#ifdef __APPLE__ + //autoupdate + setValue("misc/autoUpdate", isAutoUpdateEnabled()); +#endif } QRect GameUIConfig::vid_Resolution() @@ -178,6 +188,14 @@ return Form->ui.pageOptions->CBNameWithDate->isChecked(); } +#ifdef __APPLE__ +//autoupdate +bool GameUIConfig::isAutoUpdateEnabled() +{ + return Form->ui.pageOptions->CBAutoUpdate->isChecked(); +} +#endif + quint8 GameUIConfig::timerInterval() { return 35 - Form->ui.pageOptions->fpsedit->value(); diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/gameuiconfig.h --- a/QTfrontend/gameuiconfig.h Sun Jul 12 19:12:08 2009 +0000 +++ b/QTfrontend/gameuiconfig.h Tue Jul 14 20:02:07 2009 +0000 @@ -48,7 +48,12 @@ bool isFrontendEffects() const; bool isFrontendFullscreen() const; void resizeToConfigValues(); - + +#ifdef __APPLE__ + //autoupdate + bool isAutoUpdateEnabled(); +#endif + signals: void frontendFullscreen(bool value); diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/hwform.cpp --- a/QTfrontend/hwform.cpp Sun Jul 12 19:12:08 2009 +0000 +++ b/QTfrontend/hwform.cpp Tue Jul 14 20:02:07 2009 +0000 @@ -55,6 +55,12 @@ #include "ammoSchemeModel.h" #include "bgwidget.h" +#ifdef __APPLE__ +//autoupdate +#include "CocoaInitializer.h" +#include "SparkleAutoUpdater.h" +#endif + // I started handing this down to each place it touches, but it was getting ridiculous // and this one flag does not warrant a static class bool frontendEffects = true; @@ -74,7 +80,16 @@ config = new GameUIConfig(this, cfgdir->absolutePath() + "/hedgewars.ini"); namegen = new HWNamegen(); - + +#ifdef __APPLE__ + //autoupdate + AutoUpdater* updater; + CocoaInitializer initializer; + updater = new SparkleAutoUpdater("http://files.getdropbox.com/u/24468/appcast.xml"); //this has to change before release!!! + if(updater && config->isAutoUpdateEnabled()) + updater->checkForUpdates(); +#endif + UpdateTeamsLists(); UpdateWeapons(); diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/main.cpp --- a/QTfrontend/main.cpp Sun Jul 12 19:12:08 2009 +0000 +++ b/QTfrontend/main.cpp Tue Jul 14 20:02:07 2009 +0000 @@ -24,6 +24,8 @@ #include #include + + #include "hwform.h" #include "hwconsts.h" @@ -44,7 +46,7 @@ int main(int argc, char *argv[]) { - QApplication app(argc, argv); + QApplication app(argc, argv); QStringList arguments = app.arguments(); QMap parsedArgs; @@ -286,6 +288,8 @@ cfgdir->setPath(cfgdir->homePath()); #ifdef __APPLE__ + + if (checkForDir(cfgdir->absolutePath() + "/Library/Application Support/Hedgewars")) { checkForDir(cfgdir->absolutePath() + "/Library/Application Support/Hedgewars/Demos"); @@ -336,6 +340,8 @@ mapList = new QStringList(tmpdir.entryList(QStringList("*"))); HWForm *Form = new HWForm(); + + Form->show(); return app.exec(); } diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/pages.cpp --- a/QTfrontend/pages.cpp Sun Jul 12 19:12:08 2009 +0000 +++ b/QTfrontend/pages.cpp Tue Jul 14 20:02:07 2009 +0000 @@ -389,11 +389,12 @@ { AGGroupBox = new IconedGroupBox(this); AGGroupBox->setIcon(QIcon(":/res/graphicsicon.png")); - AGGroupBox->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); + AGGroupBox->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed); AGGroupBox->setTitle(QGroupBox::tr("Audio/Graphic options")); QVBoxLayout * GBAlayout = new QVBoxLayout(AGGroupBox); QHBoxLayout * GBAreslayout = new QHBoxLayout(0); + QLabel * resolution = new QLabel(AGGroupBox); resolution->setText(QLabel::tr("Resolution")); GBAreslayout->addWidget(resolution); @@ -444,7 +445,6 @@ volumeBox->setSingleStep(5); volumeBox->setEnabled(openal_ready()); GBAvollayout->addWidget(volumeBox); - CBShowFPS = new QCheckBox(AGGroupBox); CBShowFPS->setText(QCheckBox::tr("Show FPS")); @@ -458,9 +458,16 @@ CBNameWithDate->setText(QCheckBox::tr("Append date and time to record file name")); GBAlayout->addWidget(CBNameWithDate); - fpsedit = new FPSEdit(AGGroupBox); - GBAfpslayout->addWidget(fpsedit); - gbTBLayout->addWidget(AGGroupBox, 0, 1, 2, 1); +#ifdef __APPLE__ + //autoupdate + CBAutoUpdate = new QCheckBox(AGGroupBox); + CBAutoUpdate->setText(QCheckBox::tr("Check for updates at startup")); + GBAlayout->addWidget(CBAutoUpdate); +#endif + + fpsedit = new FPSEdit(AGGroupBox); + GBAfpslayout->addWidget(fpsedit); + gbTBLayout->addWidget(AGGroupBox, 0, 1, 2, 1); } BtnSaveOptions = addButton(":/res/Save.png", pageLayout, 2, 2, true); diff -r 31756e21c436 -r 57e99c908e7c QTfrontend/pages.h --- a/QTfrontend/pages.h Sun Jul 12 19:12:08 2009 +0000 +++ b/QTfrontend/pages.h Tue Jul 14 20:02:07 2009 +0000 @@ -221,6 +221,10 @@ QCheckBox *CBShowFPS; QCheckBox *CBAltDamage; QCheckBox *CBNameWithDate; +#ifdef __APPLE__ + QCheckBox *CBAutoUpdate; +#endif + FPSEdit *fpsedit; QPushButton *BtnSaveOptions; QLabel *labelNN; diff -r 31756e21c436 -r 57e99c908e7c cmake_modules/FindSparkle.cmake --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cmake_modules/FindSparkle.cmake Tue Jul 14 20:02:07 2009 +0000 @@ -0,0 +1,40 @@ +### SuperTux - Removed unused vorbisenc library + +# - Try to find the OggVorbis libraries +# Once done this will define +# +# OGGVORBIS_FOUND - system has OggVorbis +# OGGVORBIS_VERSION - set either to 1 or 2 +# OGGVORBIS_INCLUDE_DIR - the OggVorbis include directory +# OGGVORBIS_LIBRARIES - The libraries needed to use OggVorbis +# OGG_LIBRARY - The Ogg library +# VORBIS_LIBRARY - The Vorbis library +# VORBISFILE_LIBRARY - The VorbisFile library +# Copyright (c) 2006, Richard Laerkaeng, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +include (CheckLibraryExists) +find_path(SPARKLE_INCLUDE_DIR Sparkle.h) +find_library(SPARKLE_LIBRARY NAMES Sparkle) + +if (SPARKLE_INCLUDE_DIR AND SPARKLE_LIBRARY) + set(SPARKLE_FOUND TRUE) +else () + set(SPARKLE_FOUND FALSE) +endif () + +if (SPARKLE_FOUND) + if (NOT Sparkle_FIND_QUIETLY) + message(STATUS "Found Sparkle: ${SPARKLE_LIBRARY}") + endif () +else () + if (Sparkle_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Sparkle framework") + endif () + if (NOT Sparkle_FIND_QUIETLY) + message(STATUS "Could NOT find Sparkle framework") + endif () +endif () + diff -r 31756e21c436 -r 57e99c908e7c openalbridge/endianness.h --- a/openalbridge/endianness.h Sun Jul 12 19:12:08 2009 +0000 +++ b/openalbridge/endianness.h Tue Jul 14 20:02:07 2009 +0000 @@ -25,9 +25,7 @@ #ifdef __CPLUSPLUS extern "C" { #endif - -#pragma once - + int invert_endianness(uint32_t number); #ifdef __CPLUSPLUS diff -r 31756e21c436 -r 57e99c908e7c openalbridge/globals.h --- a/openalbridge/globals.h Sun Jul 12 19:12:08 2009 +0000 +++ b/openalbridge/globals.h Tue Jul 14 20:02:07 2009 +0000 @@ -22,7 +22,6 @@ #include #include #include -#include #include #ifndef _WIN32 @@ -102,8 +101,8 @@ #pragma pack() /*other defines*/ -#define FADE_IN true -#define FADE_OUT false +#define FADE_IN AL_TRUE +#define FADE_OUT AL_FALSE #ifdef __CPLUSPLUS } diff -r 31756e21c436 -r 57e99c908e7c openalbridge/openalwrap.c --- a/openalbridge/openalwrap.c Sun Jul 12 19:12:08 2009 +0000 +++ b/openalbridge/openalwrap.c Tue Jul 14 20:02:07 2009 +0000 @@ -16,7 +16,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ -#include "globals.h" +#include "openalwrap.h" #include "wrappers.h" #include "alc.h" #include "loaders.h" @@ -312,7 +312,7 @@ } - ALboolean openal_fade (uint32_t index, uint16_t quantity, bool direction) { + ALboolean openal_fade (uint32_t index, uint16_t quantity, ALboolean direction) { /*Fade in or out by calling a helper thread*/ #ifndef _WIN32 pthread_t thread; diff -r 31756e21c436 -r 57e99c908e7c openalbridge/openalwrap.h --- a/openalbridge/openalwrap.h Sun Jul 12 19:12:08 2009 +0000 +++ b/openalbridge/openalwrap.h Tue Jul 14 20:02:07 2009 +0000 @@ -18,26 +18,27 @@ #ifndef _OALB_INTERFACE_H #define _OALB_INTERFACE_H -#include + +#include "globals.h" #ifdef __CPLUSPLUS extern "C" { #endif - bool openal_init (unsigned int memorysize); - bool openal_close (void); - int openal_loadfile (const char *filename); - bool openal_toggleloop (unsigned int index); - bool openal_setposition (unsigned int index, float x, float y, float z); - bool openal_setvolume (unsigned int index, unsigned char percentage); - bool openal_setglobalvolume (unsigned char percentage); - bool openal_togglemute (void); - bool openal_fadeout (unsigned int index, unsigned short int quantity); - bool openal_fadein (unsigned int index, unsigned short int quantity); - bool openal_fade (unsigned int index, unsigned short int quantity, bool direction); - bool openal_playsound (unsigned int index); - bool openal_pausesound (unsigned int index); - bool openal_stopsound (unsigned int index); + ALboolean openal_init (unsigned int memorysize); + ALboolean openal_close (void); + ALint openal_loadfile (const char *filename); + ALboolean openal_toggleloop (unsigned int index); + ALboolean openal_setposition (unsigned int index, float x, float y, float z); + ALboolean openal_setvolume (unsigned int index, unsigned char percentage); + ALboolean openal_setglobalvolume (unsigned char percentage); + ALboolean openal_togglemute (void); + ALboolean openal_fadeout (unsigned int index, unsigned short int quantity); + ALboolean openal_fadein (unsigned int index, unsigned short int quantity); + ALboolean openal_fade (unsigned int index, unsigned short int quantity, ALboolean direction); + ALboolean openal_playsound (unsigned int index); + ALboolean openal_pausesound (unsigned int index); + ALboolean openal_stopsound (unsigned int index); #ifdef __CPLUSPLUS } diff -r 31756e21c436 -r 57e99c908e7c share/Info.plist.in --- a/share/Info.plist.in Sun Jul 12 19:12:08 2009 +0000 +++ b/share/Info.plist.in Tue Jul 14 20:02:07 2009 +0000 @@ -21,7 +21,7 @@ NSAppleScriptEnabled LSExecutableArchitectures - i386, ppc + i386 LSMinimumSystemVersion 10.4.0 LSRequiresNativeExecution diff -r 31756e21c436 -r 57e99c908e7c share/hedgewars/Data/Locale/de.txt --- a/share/hedgewars/Data/Locale/de.txt Sun Jul 12 19:12:08 2009 +0000 +++ b/share/hedgewars/Data/Locale/de.txt Tue Jul 14 20:02:07 2009 +0000 @@ -22,7 +22,7 @@ 00:19=Teleporter 00:20=Igel wechseln 00:21=Mörser -00:22=Stoßen +00:22=Peitsche 00:23=Kamikaze 00:24=Torte 00:25=Verführung @@ -93,4 +93,5 @@ 02:09=%1 sollte besser Zielen üben! 02:09=%1 scheint sich zu hassen. 02:09=%1 steht auf der falschen Seite! -02:09=%1 lebt gefährlich! \ No newline at end of file +02:09=%1 lebt gefährlich! + diff -r 31756e21c436 -r 57e99c908e7c share/hedgewars/Data/Locale/hedgewars_it.qm Binary file share/hedgewars/Data/Locale/hedgewars_it.qm has changed diff -r 31756e21c436 -r 57e99c908e7c share/hedgewars/Data/Locale/hedgewars_it.ts --- a/share/hedgewars/Data/Locale/hedgewars_it.ts Sun Jul 12 19:12:08 2009 +0000 +++ b/share/hedgewars/Data/Locale/hedgewars_it.ts Tue Jul 14 20:02:07 2009 +0000 @@ -1,5 +1,6 @@ + AmmoSchemeModel @@ -16,12 +17,10 @@ Mai - Every turn Ogni turno - Each %1 turn Ogni %1 turni @@ -177,7 +176,6 @@ HWNewNet - Error Errore @@ -237,7 +235,7 @@ SDL_ttf returned error while rendering text, most propably it is related to the bug in freetype2. It's recommended to update your freetype lib. - SDL_ttf ha ritornato un errore durante l'esecuzione del testo, probabilmente relativo ad un bug in freetype2. Si raccomanda di aggiornare le proprie librerie freetype. + SDL_ttf ha ritornato un errore durante il rendering del testo, probabilmente relativo ad un bug in freetype2. Si raccomanda di aggiornare le proprie librerie freetype. @@ -269,12 +267,10 @@ PageEditTeam - Discard Annulla - Save Salva @@ -316,42 +312,34 @@ PageMain - Single Player Giocatore Singolo - Multiplayer Multigiocatore - Net game Gioco in rete - Saved games Partite salvate - Demos Demo - Setup Impostazioni - About Crediti - Exit Esci @@ -369,7 +357,6 @@ PageMultiplayer - Back Indietro @@ -382,12 +369,10 @@ PageNet - Local Locale - Internet Internet @@ -436,12 +421,10 @@ Modifica squadra - Save Salva - Back Indietro @@ -618,7 +601,6 @@ PageSelectWeapon - Back Indietro @@ -633,7 +615,6 @@ Elimina - Save Salva @@ -641,27 +622,22 @@ PageSinglePlayer - Simple Game Partita semplice - Training Allenamento - Multiplayer Multigiocatore - Saved games Partite salvate - Demos Demo @@ -727,7 +703,6 @@ QCheckBox - Forts mode Modalità Fortino @@ -752,6 +727,11 @@ Mostra danno in maniera alternativa + + Check for updates at startup + Controlla aggiornamenti all'avvio + + Enable music Abilita musica @@ -762,22 +742,19 @@ Frontend schermo intero - Divide teams Dividi le squadre - + Append date and time to record file name Concatena data e ora di registrazione al nome file - Solid land Terreno solido - Add Border Aggiungi bordo @@ -805,27 +782,22 @@ Umano - Level 5 Livello 5 - Level 4 Livello 4 - Level 3 Livello 3 - Level 2 Livello 2 - Level 1 Livello 1 @@ -838,12 +810,10 @@ QGroupBox - Landscape Paesaggio - Game scheme Schema di gioco @@ -863,12 +833,10 @@ Associazione dei tasti - Grave Lapide - Team level Livello della squadra @@ -893,12 +861,10 @@ Armi - Net options Opzioni di rete - Servers list Lista dei server @@ -913,7 +879,6 @@ Squadre in gioco - Scheme options Opzioni di schema @@ -941,7 +906,6 @@ Mine - <h3>Version 0.9.2</h3> <h3>Versione 0.9.2</h3> @@ -971,12 +935,10 @@ Ringraziamenti speciali: - Turn time Tempo del turno - Initial health Salute iniziale @@ -986,12 +948,10 @@ Armi - <p>The best shot award was won by <b>%1</b> with <b>%2</b> pts.</p> <p>Il premio per il miglior colpo è vinto da <b>%1</b> , con <b>%2</b> punti.</p> - <p>A total of <b>%1</b> Hedgehog(s) were killed during this round.</p> <p>Un totale di <b>%1</b> Hedgehog(s) sono stati uccisi durante questo round.</p> @@ -1036,7 +996,6 @@ Versione - <p>The best shot award was won by <b>%1</b> with <b>%2</b> kills.</p> <p>Il premio per il miglior colpo è stato vinto da <b>%1</b> con <b>%2</b> hedgehog uccisi.</p> @@ -1046,12 +1005,10 @@ Suoni: - Turns before SD Turni prima del SD - Crate drops Caduta casse @@ -1081,7 +1038,6 @@ Timeout del sudden death - Case Probability Probabilità di casse @@ -1112,7 +1068,6 @@ QMainWindow - Hedgewars Hedgewars @@ -1190,7 +1145,6 @@ QPushButton - Waiting In attesa @@ -1235,7 +1189,6 @@ Specifica - Back Indietro @@ -1245,12 +1198,10 @@ Gioca - Simple Game Partita semplice - Training Allenamento @@ -1280,7 +1231,6 @@ Impostazioni - Join official server Entra nel server ufficiale diff -r 31756e21c436 -r 57e99c908e7c tools/CreateMacBundle.cmake.in --- a/tools/CreateMacBundle.cmake.in Sun Jul 12 19:12:08 2009 +0000 +++ b/tools/CreateMacBundle.cmake.in Tue Jul 14 20:02:07 2009 +0000 @@ -1,4 +1,4 @@ -execute_process(COMMAND ${macdeployqt_EXE} ${CMAKE_BINARY_DIR}/${bundle_name} OUTPUT_QUIET) +execute_process(COMMAND ${macdeployqt_EXE} ${CMAKE_BINARY_DIR}/${bundle_name} OUTPUT_QUIET ERROR_QUIET) execute_process(COMMAND cp -pPR /Library/Frameworks/SDL.framework/ ${CMAKE_BINARY_DIR}/${frameworks_dir}/SDL.framework) execute_process(COMMAND cp -pPR /Library/Frameworks/SDL_image.framework/ ${CMAKE_BINARY_DIR}/${frameworks_dir}/SDL_image.framework) @@ -6,7 +6,8 @@ execute_process(COMMAND cp -pPR /Library/Frameworks/SDL_ttf.framework/ ${CMAKE_BINARY_DIR}/${frameworks_dir}/SDL_ttf.framework) execute_process(COMMAND cp -pPR /Library/Frameworks/Ogg.framework/ ${CMAKE_BINARY_DIR}/${frameworks_dir}/Ogg.framework) execute_process(COMMAND cp -pPR /Library/Frameworks/Vorbis.framework/ ${CMAKE_BINARY_DIR}/${frameworks_dir}/Vorbis.framework) +execute_process(COMMAND cp -pPR /Library/Frameworks/Sparkle.framework/ ${CMAKE_BINARY_DIR}/${frameworks_dir}/Sparkle.framework) if(${HAVE_NETSERVER}) -execute_process(COMMAND cp -pPR /Library/Frameworks/SDL_ttf.framework/ ${CMAKE_BINARY_DIR}/${frameworks_dir}/GMP.framework) +execute_process(COMMAND cp -pPR /Library/Frameworks/GMP.framework/ ${CMAKE_BINARY_DIR}/${frameworks_dir}/GMP.framework) endif()