diff --git a/checkin_notes b/checkin_notes
index 51256e66e9..b29f5aa94b 100755
--- a/checkin_notes
+++ b/checkin_notes
@@ -674,3 +674,20 @@ David 20 Jan 2006
client/
http_curl.C
+
+Charlie 20 Jan 2006
+ -Mac: Changes for Grid Republic: remove BOINCManager from Dock;
+ different plist file for GR; new application icon for GR;
+ screensaver changes for GR.
+ Remove obsolete files from XCode project (net_xfer.C,h, http.C,h,
+ proxy.C,h)
+
+ mac_build/
+ Info.plist
+ GR_Info.plist (new)
+ client/
+ mac/
+ GR-icon_MAC.icns (new)
+ clientgui/
+ mac/
+ mac_saver_module.cpp
diff --git a/client/mac/GR-icon_MAC.icns b/client/mac/GR-icon_MAC.icns
new file mode 100644
index 0000000000..044ec4ce66
Binary files /dev/null and b/client/mac/GR-icon_MAC.icns differ
diff --git a/clientgui/mac/mac_saver_module.cpp b/clientgui/mac/mac_saver_module.cpp
index 794938e3b8..150ca129c6 100755
--- a/clientgui/mac/mac_saver_module.cpp
+++ b/clientgui/mac/mac_saver_module.cpp
@@ -46,9 +46,10 @@ OSStatus initBOINCApp(void);
int drawGraphics(GrafPtr aPort);
void drawPreview(GrafPtr aPort);
void closeBOINCSaver(void);
-void setBannerText(ConstStringPtr msg, GrafPtr aPort);
-void updateBannerText(ConstStringPtr msg, GrafPtr aPort);
+void setBannerText(const char *msg, GrafPtr aPort);
+void updateBannerText(char *msg, GrafPtr aPort);
void drawBanner(GrafPtr aPort);
+int GetBrandID(void);
void FlashIcon(void);
OSErr FindBOINCApplication(FSSpecPtr applicationFSSpecPtr);
pid_t FindProcessPID(char* name, pid_t thePID);
@@ -60,6 +61,18 @@ OSErr KillScreenSaver();
} // extern "C"
#endif
+// The science application can't display its graphics if, due to Fast User Switching,
+// Switching, the active user is not the one who launched BOINC. If we always display
+// the progress information as scrolled text whenever a science application is running,
+// then the progress text would appear in this case. The text would be covered up by
+// the graphics if they are displayed.
+// But displaying the scrolled progress info takes up too much CPU time. We need to
+// find a way to determine when Fast User Switching prevents graphics display and
+// display scrolled progress text only in that case.
+// Of course, we also display scrolled progress text when the science application does
+// not support graphics).
+#define ALWAYS_DISPLAY_PROGRESS_TEXT 0
+
// Flags for testing & debugging
#define SIMULATE_NO_GRAPHICS 0
#define CREATE_LOG 1
@@ -98,7 +111,7 @@ extern int gBlankingTime; // Delay in minutes before blanking the screen
static Boolean wasAlreadyRunning = false;
static pid_t CoreClientPID = nil;
-static unsigned char msgBuf[2048], bannerText[2048];
+static char msgBuf[2048], bannerText[2048];
static int bannerWidth;
static SaverState saverState = SaverState_Idle;
static StringPtr CurrentBannerMessage = 0;
@@ -109,21 +122,29 @@ MPTaskID gRPC_thread_id; // IDs of the thread we create
int gClientSaverStatus = 0; // status returned by get_screensaver_mode RPC
Boolean gQuitRPCThread = false; // Flag to tell RPC thread to exit gracefully
int gQuitCounter = 0;
+long gBrandId = 0;
+char * gBrandText = "BOINC";
+RGBColor gBrandColor = {0xFFFF, 0xFFFF, 0xFFFF};
+RGBColor gTextColor = {0xFFFF, 0xFFFF, 0xFFFF};
+RGBColor gWhiteTextColor = {0xFFFF, 0xFFFF, 0xFFFF};
+RGBColor gOrangeTextColor = {0xFFFF, 0x6262, 0x0000};
+RGBColor gGrayTextColor = {0x9999, 0x9999, 0x9999};
+
// Display first status update after 5 seconds
static int statusUpdateCounter = ((STATUSUPDATEINTERVAL-5) * BANNERFREQUENCY);
Boolean gStatusMessageUpdated = false;
-const ConstStringPtr CantLaunchCCMsg = "\pUnable to launch BOINC application.";
-const ConstStringPtr LaunchingCCMsg = "\pLaunching BOINC application.";
-const ConstStringPtr ConnectingCCMsg = "\pConnecting to BOINC application.";
-const ConstStringPtr BOINCSuspendedMsg = "\pBOINC is currently suspended.";
-const ConstStringPtr BOINCNoAppsExecutingMsg = "\pBOINC is currently idle.";
-const ConstStringPtr BOINCNoProjectsDetectedMsg = "\pBOINC is not attached to any projects. Please attach to projects using the BOINC Manager.";
-const ConstStringPtr BOINCNoGraphicAppsExecutingMsg = "\pBOINC is currently not executing any applications with graphics";
-const ConstStringPtr BOINCUnrecoverableErrorMsg = "\pSorry, an unrecoverable error occurred";
-const ConstStringPtr BOINCTestmodeMg = "\pThis BOINC screensaver does not support Test mode";
-//const ConstStringPtr BOINCExitedSaverMode = "\pBOINC is no longer in screensaver mode.";
+const char * CantLaunchCCMsg = "Unable to launch BOINC application.";
+const char * LaunchingCCMsg = "Launching BOINC application.";
+const char * ConnectingCCMsg = "Connecting to BOINC application.";
+const char * BOINCSuspendedMsg = "BOINC is currently suspended.";
+const char * BOINCNoAppsExecutingMsg = "BOINC is currently idle.";
+const char * BOINCNoProjectsDetectedMsg = "BOINC is not attached to any projects. Please attach to projects using the BOINC Manager.";
+const char * BOINCNoGraphicAppsExecutingMsg = "BOINC ";
+const char * BOINCUnrecoverableErrorMsg = "Sorry, an unrecoverable error occurred";
+const char * BOINCTestmodeMg = "This BOINC screensaver does not support Test mode";
+//const char * BOINCExitedSaverMode = "BOINC is no longer in screensaver mode.";
// Returns desired Animation Frequency (per second) or 0 for no change
@@ -155,6 +176,20 @@ int initBOINCSaver(Boolean ispreview) {
saverState = SaverState_ControlPanelTestMode;
}
+ gBrandId = GetBrandID();
+ switch(gBrandId) {
+ case 1:
+ gBrandText = "GridRepublic";
+ gBrandColor = gOrangeTextColor; // Orange
+ gTextColor = gGrayTextColor; // Gray
+ break;
+ default:
+ gBrandText = "BOINC";
+ gBrandColor = gWhiteTextColor; // White
+ gTextColor = gWhiteTextColor; // White
+ break;
+ }
+
// If there are multiple displays, initBOINCSaver may get called
// multiple times (once for each display), so we need to guard
// against launching multiple instances of the core client
@@ -289,12 +324,8 @@ int drawGraphics(GrafPtr aPort) {
switch (gClientSaverStatus) {
case 0:
break; // No status response yet from get_screensaver_mode RPC
- case SS_STATUS_ENABLED:
- default:
- setBannerText(0, aPort); // No text message
- // Let the science app draw over our window
- break;
case SS_STATUS_BLANKED:
+ default:
setBannerText(0, aPort); // No text message
break;
case SS_STATUS_BOINCSUSPENDED:
@@ -306,9 +337,15 @@ int drawGraphics(GrafPtr aPort) {
case SS_STATUS_NOPROJECTSDETECTED:
setBannerText(BOINCNoProjectsDetectedMsg, aPort);
break;
+ case SS_STATUS_ENABLED:
+#if ! ALWAYS_DISPLAY_PROGRESS_TEXT
+ setBannerText(0, aPort); // No text message
+ // Let the science app draw over our window
+ break;
+#endif
case SS_STATUS_NOGRAPHICSAPPSEXECUTING:
if (msgBuf[0] == 0) {
- PLstrcpy(msgBuf, BOINCNoGraphicAppsExecutingMsg);
+ strcpy(msgBuf, BOINCNoGraphicAppsExecutingMsg);
setBannerText(msgBuf, aPort);
}
if (gStatusMessageUpdated) {
@@ -359,7 +396,7 @@ int drawGraphics(GrafPtr aPort) {
void drawPreview(GrafPtr aPort) {
SetPort(aPort);
- setBannerText("\p BOINC", aPort);
+ setBannerText(" BOINC", aPort);
drawBanner(aPort);
}
@@ -458,12 +495,17 @@ OSStatus RPCThread(void* param) {
#if SIMULATE_NO_GRAPHICS /* FOR TESTING */
gClientSaverStatus = SS_STATUS_NOGRAPHICSAPPSEXECUTING;
#endif
- if (gClientSaverStatus == SS_STATUS_NOGRAPHICSAPPSEXECUTING) {
+ if ((gClientSaverStatus == SS_STATUS_NOGRAPHICSAPPSEXECUTING)
+#if ALWAYS_DISPLAY_PROGRESS_TEXT
+ || (gClientSaverStatus == SS_STATUS_ENABLED)
+#endif
+ )
+ {
if (statusUpdateCounter >= (STATUSUPDATEINTERVAL * BANNERFREQUENCY) ) {
statusUpdateCounter = 0;
if (! gStatusMessageUpdated) {
- PLstrcpy(msgBuf, BOINCNoGraphicAppsExecutingMsg);
+ strcpy(msgBuf, BOINCNoGraphicAppsExecutingMsg);
MPYield();
val = rpc->get_state(state);
@@ -487,11 +529,7 @@ OSStatus RPCThread(void* param) {
results.results.at(iIndex)->fraction_done * 100
);
- // Append C string to Pascal string
- if ((len + msgBuf[0] + 1) < sizeof(msgBuf)) {
- BlockMove(statusBuf, msgBuf+msgBuf[0]+1, len);
- msgBuf[0] += len;
- }
+ strlcat(msgBuf, statusBuf, sizeof(msgBuf));
} // end if (pProject != NULL)
} // end for() loop
gStatusMessageUpdated = true;
@@ -514,19 +552,20 @@ OSStatus RPCThread(void* param) {
}
-void setBannerText(ConstStringPtr msg, GrafPtr aPort) {
+void setBannerText(const char * msg, GrafPtr aPort) {
if (msg == 0)
bannerText[0] = 0;
- if ((ConstStringPtr)CurrentBannerMessage != msg)
- updateBannerText(msg, aPort);
+ if ((char *)CurrentBannerMessage != msg)
+ updateBannerText((char *)msg, aPort);
}
-void updateBannerText(ConstStringPtr msg, GrafPtr aPort) {
+void updateBannerText(char *msg, GrafPtr aPort) {
CGrafPtr savePort;
RGBColor saveBackColor;
Rect wRect;
+ char *p, *s;
CurrentBannerMessage = (StringPtr)msg;
@@ -544,10 +583,22 @@ void updateBannerText(ConstStringPtr msg, GrafPtr aPort) {
RGBBackColor(&saveBackColor);
if (msg) {
- BlockMove(msg, bannerText, msg[0]+1);
TextSize(24);
TextFace(bold);
- bannerWidth = StringWidth(bannerText) + BANNER_GAP;
+ s = msg;
+ bannerText[0] = '\0';
+ do {
+ p = strstr(s, "BOINC");
+ if (p == NULL) {
+ strcat(bannerText, s);
+ } else {
+ strncat(bannerText, s, p - s);
+ strcat(bannerText, gBrandText);
+ s = p + 5; // s = p + strlen("BOINC");
+ }
+ } while (p);
+
+ bannerWidth = TextWidth(bannerText, 0, strlen(bannerText)) + BANNER_GAP;
// Round up bannerWidth to an integral multiple of BANNERDELTA
bannerWidth = ((bannerWidth + BANNERDELTA - 1) / BANNERDELTA) * BANNERDELTA;
}
@@ -564,6 +615,7 @@ void drawBanner(GrafPtr aPort) {
Rect wRect;
FontInfo fInfo;
static short bannerPos;
+ char *p, *s;
if (aPort == NULL)
return;
@@ -573,7 +625,7 @@ void drawBanner(GrafPtr aPort) {
GetForeColor(&saveForeColor);
GetBackColor(&saveBackColor);
- ForeColor(whiteColor);
+ RGBForeColor(&gTextColor);
BackColor(blackColor);
GetPortBounds(aPort, &wRect);
if ( (bannerPos + bannerWidth) <= (wRect.left + BANNERDELTA) )
@@ -591,7 +643,20 @@ void drawBanner(GrafPtr aPort) {
do {
MoveTo(x, y);
- DrawString(bannerText);
+ s = bannerText;
+ do {
+ p = strstr(s, gBrandText);
+ if (p == NULL) {
+ DrawText(s, 0, strlen(s));
+ } else {
+ DrawText(s, 0, p - s);
+ RGBForeColor(&gBrandColor);
+ DrawText(gBrandText, 0, strlen(gBrandText));
+ s = p + strlen(gBrandText);
+ RGBForeColor(&gTextColor);
+ }
+ } while (p);
+
x+= bannerWidth;
} while (x < wRect.right);
@@ -602,6 +667,31 @@ void drawBanner(GrafPtr aPort) {
}
+int GetBrandID()
+{
+ char buf[1024];
+ long iBrandId;
+ OSErr err;
+
+ iBrandId = 0; // Default value
+
+ err = GetpathToBOINCManagerApp(buf, sizeof(buf));
+ if (err) // If we couldn't find BOINCManager.app, try default path
+ strcpy(buf, "/Applications/BOINCManager.app"); //
+
+ if (err == noErr) {
+ strcat(buf, "/Contents/Resources/Branding");
+ FILE *f = fopen(buf, "r");
+ if (f) {
+ fscanf(f, "BrandId=%ld\n", &iBrandId);
+ fclose(f);
+ }
+ }
+
+ return iBrandId;
+}
+
+
static char * PersistentFGets(char *buf, size_t buflen, FILE *f) {
char *p = buf;
size_t len = buflen;
diff --git a/mac_build/English.lproj/InfoPlist.strings b/mac_build/English.lproj/InfoPlist.strings
index 4826267bcf..8527d6bfbc 100755
--- a/mac_build/English.lproj/InfoPlist.strings
+++ b/mac_build/English.lproj/InfoPlist.strings
@@ -1,5 +1,5 @@
/* Localized versions of Info.plist keys */
CFBundleName = "BOINC";
-CFBundleShortVersionString = "BOINC version 5.3.9";
-CFBundleGetInfoString = "BOINC version 5.3.9, Copyright 2005 University of California.";
+CFBundleShortVersionString = "BOINC version 5.3.13";
+CFBundleGetInfoString = "BOINC version 5.3.13, Copyright 2005 University of California.";
diff --git a/mac_build/GR_Info.plist b/mac_build/GR_Info.plist
new file mode 100644
index 0000000000..4cb7e93838
--- /dev/null
+++ b/mac_build/GR_Info.plist
@@ -0,0 +1,24 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleExecutable
+ GridRepublic
+ CFBundleIconFile
+ GridRepublic.icns
+ CFBundleIdentifier
+ edu.berkeley.boinc
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundlePackageType
+ APPL
+ CFBundleSignature
+ BNC!
+ CFBundleVersion
+ 5.3.9
+ NSUIElement
+ 1
+
+
diff --git a/mac_build/Info.plist b/mac_build/Info.plist
index 553a058408..1837e7bf9f 100644
--- a/mac_build/Info.plist
+++ b/mac_build/Info.plist
@@ -17,6 +17,8 @@
CFBundleSignature
BNC!
CFBundleVersion
- 5.3.9
+ 5.3.13
+ NSUIElement
+ 1
diff --git a/mac_build/Installer-info.plist b/mac_build/Installer-info.plist
index c804622af3..cc2e758f32 100644
--- a/mac_build/Installer-info.plist
+++ b/mac_build/Installer-info.plist
@@ -15,6 +15,6 @@
CFBundleSignature
????
CFBundleVersion
- 5.3.9
+ 5.3.13
diff --git a/mac_build/ScreenSaver-Info.plist b/mac_build/ScreenSaver-Info.plist
index f71b45615c..64c42db100 100644
--- a/mac_build/ScreenSaver-Info.plist
+++ b/mac_build/ScreenSaver-Info.plist
@@ -17,7 +17,7 @@
CFBundleSignature
????
CFBundleVersion
- 5.3.9
+ 5.3.13
NSPrincipalClass
BOINC_Saver_ModuleView
diff --git a/mac_build/SystemMenu-Info.plist b/mac_build/SystemMenu-Info.plist
index 2632eac424..3b9aefd1e4 100644
--- a/mac_build/SystemMenu-Info.plist
+++ b/mac_build/SystemMenu-Info.plist
@@ -15,6 +15,6 @@
CFBundleSignature
????
CFBundleVersion
- 5.3.9
+ 5.3.13
diff --git a/mac_build/boinc.xcodeproj/project.pbxproj b/mac_build/boinc.xcodeproj/project.pbxproj
index a0d138d0e3..a4d4fe6084 100755
--- a/mac_build/boinc.xcodeproj/project.pbxproj
+++ b/mac_build/boinc.xcodeproj/project.pbxproj
@@ -201,7 +201,6 @@
DDD74DA607CF49030065AC9D /* main.C in Sources */ = {isa = PBXBuildFile; fileRef = DD344BCE07C5B0B80043025C /* main.C */; };
DDD74DA707CF49040065AC9D /* net_stats.C in Sources */ = {isa = PBXBuildFile; fileRef = F54B8FDA02AC0A0C01FB7237 /* net_stats.C */; };
DDD74DA907CF49090065AC9D /* pers_file_xfer.C in Sources */ = {isa = PBXBuildFile; fileRef = F51CCF1F02EFD37D018DB99A /* pers_file_xfer.C */; };
- DDD74DAA07CF490B0065AC9D /* proxy.C in Sources */ = {isa = PBXBuildFile; fileRef = DD344BFA07C5B1A80043025C /* proxy.C */; };
DDD74DAB07CF490C0065AC9D /* scheduler_op.C in Sources */ = {isa = PBXBuildFile; fileRef = F519F98D02C44A7501BDB3CA /* scheduler_op.C */; };
DDD74DAC07CF490D0065AC9D /* ss_logic.C in Sources */ = {isa = PBXBuildFile; fileRef = AA8B6B23046C366200A80164 /* ss_logic.C */; };
DDD74DAD07CF490E0065AC9D /* time_stats.C in Sources */ = {isa = PBXBuildFile; fileRef = F54B8FE402AC0A0C01FB7237 /* time_stats.C */; };
@@ -226,6 +225,8 @@
DDD7EF4707F0526E00BA3B90 /* SystemMenu.m in Sources */ = {isa = PBXBuildFile; fileRef = DD40CDFE07F038990096C645 /* SystemMenu.m */; };
DDD7F08007F0686100BA3B90 /* SystemMenu.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = DD40CDF907F0386A0096C645 /* SystemMenu.bundle */; };
DDDC35260909212D006076EC /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = F51BDF4903086C46012012A7 /* InfoPlist.strings */; };
+ DDEB3AD50980CD180087E200 /* GR_Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = DDEB3AD40980CD180087E200 /* GR_Info.plist */; };
+ DDEB3AE60980CF890087E200 /* GR-icon_MAC.icns in Resources */ = {isa = PBXBuildFile; fileRef = DDEB3AE50980CF890087E200 /* GR-icon_MAC.icns */; };
DDEF38900802B73500E87552 /* ViewStatistics.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DDEF388E0802B73500E87552 /* ViewStatistics.cpp */; };
DDF166AB08DF898A00C8C4A5 /* mac_backtrace.C in Sources */ = {isa = PBXBuildFile; fileRef = DDF166A908DF898A00C8C4A5 /* mac_backtrace.C */; };
DDF166C308DF8AEE00C8C4A5 /* mac_backtrace.C in Sources */ = {isa = PBXBuildFile; fileRef = DDF166A908DF898A00C8C4A5 /* mac_backtrace.C */; };
@@ -866,6 +867,8 @@
DDB8D5A5081FC8C700A5A1E8 /* postinstall */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.script.csh; name = postinstall; path = ../mac_installer/postinstall; sourceTree = SOURCE_ROOT; };
DDD74D8707CF482E0065AC9D /* boinc */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = boinc; sourceTree = BUILT_PRODUCTS_DIR; };
DDE2552B07C62F3E008E7D6E /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = ""; };
+ DDEB3AD40980CD180087E200 /* GR_Info.plist */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.xml; path = GR_Info.plist; sourceTree = ""; };
+ DDEB3AE50980CF890087E200 /* GR-icon_MAC.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = "GR-icon_MAC.icns"; path = "../client/mac/GR-icon_MAC.icns"; sourceTree = SOURCE_ROOT; };
DDEF388E0802B73500E87552 /* ViewStatistics.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = ViewStatistics.cpp; path = ../clientgui/ViewStatistics.cpp; sourceTree = SOURCE_ROOT; };
DDEF388F0802B73500E87552 /* ViewStatistics.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ViewStatistics.h; path = ../clientgui/ViewStatistics.h; sourceTree = SOURCE_ROOT; };
DDF166A908DF898A00C8C4A5 /* mac_backtrace.C */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = mac_backtrace.C; path = ../lib/mac_backtrace.C; sourceTree = SOURCE_ROOT; };
@@ -898,14 +901,10 @@
F54B8FCD02AC0A0C01FB7237 /* file_xfer.C */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = file_xfer.C; path = ../client/file_xfer.C; sourceTree = SOURCE_ROOT; };
F54B8FCE02AC0A0C01FB7237 /* file_xfer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = file_xfer.h; path = ../client/file_xfer.h; sourceTree = SOURCE_ROOT; };
F54B8FD302AC0A0C01FB7237 /* hostinfo_unix.C */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = hostinfo_unix.C; path = ../client/hostinfo_unix.C; sourceTree = SOURCE_ROOT; };
- F54B8FD402AC0A0C01FB7237 /* http.C */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = http.C; path = ../client/http.C; sourceTree = SOURCE_ROOT; };
- F54B8FD502AC0A0C01FB7237 /* http.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = http.h; path = ../client/http.h; sourceTree = SOURCE_ROOT; };
F54B8FD602AC0A0C01FB7237 /* log_flags.C */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = log_flags.C; path = ../client/log_flags.C; sourceTree = SOURCE_ROOT; };
F54B8FD702AC0A0C01FB7237 /* log_flags.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = log_flags.h; path = ../client/log_flags.h; sourceTree = SOURCE_ROOT; };
F54B8FDA02AC0A0C01FB7237 /* net_stats.C */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = net_stats.C; path = ../client/net_stats.C; sourceTree = SOURCE_ROOT; };
F54B8FDB02AC0A0C01FB7237 /* net_stats.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = net_stats.h; path = ../client/net_stats.h; sourceTree = SOURCE_ROOT; };
- F54B8FDC02AC0A0C01FB7237 /* net_xfer.C */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = net_xfer.C; path = ../client/net_xfer.C; sourceTree = SOURCE_ROOT; };
- F54B8FDD02AC0A0C01FB7237 /* net_xfer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = net_xfer.h; path = ../client/net_xfer.h; sourceTree = SOURCE_ROOT; };
F54B8FE402AC0A0C01FB7237 /* time_stats.C */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = time_stats.C; path = ../client/time_stats.C; sourceTree = SOURCE_ROOT; };
F54B8FE502AC0A0C01FB7237 /* time_stats.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = time_stats.h; path = ../client/time_stats.h; sourceTree = SOURCE_ROOT; };
F54B901502AC0A2201FB7237 /* parse.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = parse.h; path = ../lib/parse.h; sourceTree = SOURCE_ROOT; };
@@ -1055,6 +1054,8 @@
DD0C5A8A0816711400CEC5D7 /* boinc.tiff */,
DD48091E081A66F100A174AA /* BOINCSaver.nib */,
DD64E7D507D89DB800B176C8 /* Info.plist */,
+ DDEB3AD40980CD180087E200 /* GR_Info.plist */,
+ DDEB3AE50980CF890087E200 /* GR-icon_MAC.icns */,
DDF3028907CCCE2C00701169 /* BOINCMgr.icns */,
F51BDF4903086C46012012A7 /* InfoPlist.strings */,
);
@@ -1318,8 +1319,6 @@
DD344BC007C5AF280043025C /* hostinfo_network.C */,
DD344BC107C5AF280043025C /* hostinfo_network.h */,
F54B8FD302AC0A0C01FB7237 /* hostinfo_unix.C */,
- F54B8FD402AC0A0C01FB7237 /* http.C */,
- F54B8FD502AC0A0C01FB7237 /* http.h */,
DD33C70208B5BEDE00768630 /* http_curl.C */,
DD33C70308B5BEDE00768630 /* http_curl.h */,
F54B8FD602AC0A0C01FB7237 /* log_flags.C */,
@@ -1330,8 +1329,6 @@
F54B8FDB02AC0A0C01FB7237 /* net_stats.h */,
DD33C6FB08B5BC2600768630 /* net_xfer_curl.h */,
DD33C6FC08B5BC2600768630 /* net_xfer_curl.C */,
- F54B8FDC02AC0A0C01FB7237 /* net_xfer.C */,
- F54B8FDD02AC0A0C01FB7237 /* net_xfer.h */,
F51CCF1F02EFD37D018DB99A /* pers_file_xfer.C */,
F51CCF1E02EFD37D018DB99A /* pers_file_xfer.h */,
DD344BFA07C5B1A80043025C /* proxy.C */,
@@ -2056,6 +2053,8 @@
DD095EF407D87B1600362260 /* boinc in Resources */,
DD095F5A07D883E500362260 /* BOINCMgr.icns in Resources */,
DD095F5B07D883E600362260 /* InfoPlist.strings in Resources */,
+ DDEB3AD50980CD180087E200 /* GR_Info.plist in Resources */,
+ DDEB3AE60980CF890087E200 /* GR-icon_MAC.icns in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -2138,14 +2137,14 @@
files = (
);
inputPaths = (
- $BUILD_DIR/../../clientgui/mac/BOINCSaver.nib.sit,
+ "${BUILD_DIR}/../../clientgui/mac/BOINCSaver.nib.sit",
);
outputPaths = (
- $BUILD_DIR/../../clientgui/mac/BOINCSaver.nib,
+ "${BUILD_DIR}/../../clientgui/mac/BOINCSaver.nib",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "rm -dfR \"$BUILD_DIR/../../clientgui/mac/BOINCSaver.nib\"\nopen \"$BUILD_DIR/../../clientgui/mac/BOINCSaver.nib.sit\"\nsleep 6\ntouch \"$BUILD_DIR/../../clientgui/mac/BOINCSaver.nib\"";
+ shellScript = "if [ ! \"$BUILD_DIR/../../clientgui/mac/BOINCSaver.nib\" -nt \"$BUILD_DIR/../../clientgui/mac/BOINCSaver.nib.sit\" ]; then\nrm -dfR \"$BUILD_DIR/../../clientgui/mac/BOINCSaver.nib\"\nopen \"$BUILD_DIR/../../clientgui/mac/BOINCSaver.nib.sit\"\nsleep 6\ntouch \"$BUILD_DIR/../../clientgui/mac/BOINCSaver.nib\"\nfi\n";
};
/* End PBXShellScriptBuildPhase section */
@@ -2377,7 +2376,6 @@
DDD74DA607CF49030065AC9D /* main.C in Sources */,
DDD74DA707CF49040065AC9D /* net_stats.C in Sources */,
DDD74DA907CF49090065AC9D /* pers_file_xfer.C in Sources */,
- DDD74DAA07CF490B0065AC9D /* proxy.C in Sources */,
DDD74DAB07CF490C0065AC9D /* scheduler_op.C in Sources */,
DDD74DAC07CF490D0065AC9D /* ss_logic.C in Sources */,
DDD74DAD07CF490E0065AC9D /* time_stats.C in Sources */,