diff --git a/clientgui/mac/SetVersion.cpp b/clientgui/mac/SetVersion.cpp index 4e7f84f81e4..03106e92fb7 100644 --- a/clientgui/mac/SetVersion.cpp +++ b/clientgui/mac/SetVersion.cpp @@ -68,6 +68,8 @@ int main(int argc, char** argv) { printf("%s\n", myPath); // For debugging #endif + chdir(getenv("SRCROOT")); + if (!file_exists("./English.lproj")) { retval = mkdir("./English.lproj", 0755); if (retval) { diff --git a/lib/hostinfo.cpp b/lib/hostinfo.cpp index c1fde8a348f..0cd5fd2d375 100644 --- a/lib/hostinfo.cpp +++ b/lib/hostinfo.cpp @@ -378,7 +378,7 @@ const char* docker_type_str(DOCKER_TYPE type) { const char* docker_cmd_prefix(DOCKER_TYPE type) { static char buf[256]; if (type == PODMAN) { - const char* dir = "/Library/Application\ Support/BOINC\ Data/podman"; + const char* dir = "/Library/Application Support/BOINC Data/podman"; // must end w/ space snprintf(buf, sizeof(buf), "env XDG_CONFIG_HOME=\"%s\" XDG_DATA_HOME=\"%s\" ", diff --git a/mac_build/BuildMacBOINC.sh b/mac_build/BuildMacBOINC.sh index 8ab3a4e6074..96177bf4109 100644 --- a/mac_build/BuildMacBOINC.sh +++ b/mac_build/BuildMacBOINC.sh @@ -220,9 +220,18 @@ done ## That is why all the other xcodebuild calls are invoked this way. if [ "${buildall}" = "1" ] || [ "${buildlibs}" = "1" ] || [ "${buildclient}" = "1" ] || [ "x${targets}" != "x" ]; then - # build all or specified targets from the boinc.xcodeproj project for -all, -libs, -client, or -target - eval "xcodebuild -project boinc.xcodeproj ${targets} -configuration ${style} -sdk \"${SDKPATH}\" ${doclean} build ${uselibcplusplus} ${theSettings}" + + echo "" + ## Apparently xcodebuild ignores build pre-actions, so we do this explicitly + source "./Update_Info_Plists.sh" result=$? + echo "" + + if [ $result -eq 0 ]; then + # build all or specified targets from the boinc.xcodeproj project for -all, -libs, -client, or -target + eval "xcodebuild -project boinc.xcodeproj ${targets} -configuration ${style} -sdk \"${SDKPATH}\" ${doclean} build ${uselibcplusplus} ${theSettings}" + result=$? + fi fi if [ $result -eq 0 ]; then diff --git a/mac_build/Update_Info_Plists.sh b/mac_build/Update_Info_Plists.sh new file mode 100644 index 00000000000..054e8cbe83d --- /dev/null +++ b/mac_build/Update_Info_Plists.sh @@ -0,0 +1,65 @@ +#!/bin/bash + +# This file is part of BOINC. +# http://boinc.berkeley.edu +# Copyright (C) 2025 University of California +# +# BOINC is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License +# as published by the Free Software Foundation, +# either version 3 of the License, or (at your option) any later version. +# +# BOINC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with BOINC. If not, see . +# +# +# Update_Info_Plists.sh +# by Charlie Fenton 7/11/25 +# + +## Called from pre-actions in BOINC Xcode project when compiling BOINC. +## Note that Xcode runs build pre-actions pnly for the currently selected +## build target, not for any dependent targets that may also be built along +## with the selected target. So this script is called only once for any +## build operation, even the build_all target. The ovehead of running this +## script is minimal, so rather than comparing all the Info.plist file's +## modification dates to that of version.h, we just run this script for +## every build operation. +## +## Usage: +## export WORKSPACE_PATH= +## source {path}/mac_build/Update_Info_Plists.sh +## Called from pre-actions as: +## source "$WORKSPACE_PATH/../../Update_Info_Plists.sh" +## +## +originalDir=`pwd` +directory=$(dirname "$WORKSPACE_PATH") +directory=$(dirname "$directory") +echo "Directory is " "$directory" +cd "$directory" +echo "About to check for " "$directory/build/Development/SetVersion" +echo "compared to " "$directory/../clientgui/mac/Setversion.cpp" +if [ ! -e "$directory/build/Development/SetVersion" ] || [ "$directory/../clientgui/mac/Setversion.cpp" -nt "$directory/build/Development/SetVersion" ]; then + echo "About to run xcodebuild" + xcodebuild -project boinc.xcodeproj -target SetVersion -configuration Development + if [ $? -ne 0 ]; then + echo "ERROR: xcodebuild failed" + cd "${originalDir}" + return 1 + fi + echo "After xcodebuild, about to check for " "$directory/build/Development/SetVersion" + if [ ! -e "$directory/build/Development/SetVersion" ]; then + return 1 + fi +fi +###$directory="$directory/build/Development" +echo "Running SetVersion" +"$directory/build/Development/SetVersion" +cd "${originalDir}" +return 0 diff --git a/mac_build/boinc.xcodeproj/project.pbxproj b/mac_build/boinc.xcodeproj/project.pbxproj index 506eadd105b..f03225bbb0d 100644 --- a/mac_build/boinc.xcodeproj/project.pbxproj +++ b/mac_build/boinc.xcodeproj/project.pbxproj @@ -13,8 +13,10 @@ buildPhases = ( ); dependencies = ( + DDC04DA72E2908BC006AB01D /* PBXTargetDependency */, + DDC04D9F2E28C473006AB01D /* PBXTargetDependency */, + DDC04D9D2E28C44B006AB01D /* PBXTargetDependency */, DD67F1A32D5A2C3700A78699 /* PBXTargetDependency */, - DDF9EC15144EB36E005D6144 /* PBXTargetDependency */, DDF9EC11144EB36E005D6144 /* PBXTargetDependency */, DDF9EC17144EB36E005D6144 /* PBXTargetDependency */, DDF9EC0F144EB34E005D6144 /* PBXTargetDependency */, @@ -620,13 +622,6 @@ remoteGlobalIDString = DD1277B2081F3D67007B5DE1; remoteInfo = Installer; }; - DD1AFEA60A512D8700EE5B82 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; - }; DD1E45C92567FACC005B4EE7 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; @@ -634,13 +629,6 @@ remoteGlobalIDString = DD407A4907D2FB1200163EF5; remoteInfo = libboinc; }; - DD25E20C220438090040366F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; - }; DD3D127A29B6243800F89058 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; @@ -648,13 +636,6 @@ remoteGlobalIDString = DDEED38529ADFD7000DC3E5D; remoteInfo = boinc_finish_install; }; - DD3E14D50A774397007E0084 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; - }; DD3E14D70A774397007E0084 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; @@ -739,13 +720,6 @@ remoteGlobalIDString = DDEED38529ADFD7000DC3E5D; remoteInfo = boinc_finish_install; }; - DD805B2B2D7C4BDF004E89F8 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; - }; DD81C823144D904D000BE61A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; @@ -760,13 +734,6 @@ remoteGlobalIDString = DD7748970A356C880025D05E; remoteInfo = SetUpSecurity; }; - DDAD19CE09090833004E7DD0 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; - }; DDB874660C850DB600E0DE1F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; @@ -795,47 +762,47 @@ remoteGlobalIDString = DD35353007E1E05C00C4718D; remoteInfo = api_libboinc; }; - DDD095500A3EE09900C95BA4 /* PBXContainerItemProxy */ = { + DDC04D9C2E28C44B006AB01D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; proxyType = 1; - remoteGlobalIDString = DDD0953E0A3EDD2500C95BA4; - remoteInfo = switcher; + remoteGlobalIDString = DDEED38529ADFD7000DC3E5D; + remoteInfo = boinc_finish_install; }; - DDD3370B106224FF00867C7D /* PBXContainerItemProxy */ = { + DDC04D9E2E28C473006AB01D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; proxyType = 1; - remoteGlobalIDString = DDD336F51062235D00867C7D; - remoteInfo = AddRemoveUser; + remoteGlobalIDString = B13E2D0E265564D100D5C977; + remoteInfo = detect_rosetta_cpu; }; - DDD4D96415A6FE0000612460 /* PBXContainerItemProxy */ = { + DDC04DA62E2908BC006AB01D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; proxyType = 1; - remoteGlobalIDString = DD81C799144D8DA9000BE61A; - remoteInfo = jpeg; + remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; + remoteInfo = SetVersion; }; - DDE382002200806D0077E85A /* PBXContainerItemProxy */ = { + DDD095500A3EE09900C95BA4 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; + remoteGlobalIDString = DDD0953E0A3EDD2500C95BA4; + remoteInfo = switcher; }; - DDED8BBB2569358C005F4C8E /* PBXContainerItemProxy */ = { + DDD3370B106224FF00867C7D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; + remoteGlobalIDString = DDD336F51062235D00867C7D; + remoteInfo = AddRemoveUser; }; - DDEED39629ADFD9900DC3E5D /* PBXContainerItemProxy */ = { + DDD4D96415A6FE0000612460 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; + remoteGlobalIDString = DD81C799144D8DA9000BE61A; + remoteInfo = jpeg; }; DDF9EC0C144EB338005D6144 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; @@ -858,13 +825,6 @@ remoteGlobalIDString = DDD74D8607CF482E0065AC9D; remoteInfo = BOINC_Client; }; - DDF9EC14144EB36E005D6144 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; - proxyType = 1; - remoteGlobalIDString = DDAEC9E007FA583B00A7BC36; - remoteInfo = SetVersion; - }; DDF9EC16144EB36E005D6144 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 20286C28FDCF999611CA2CEA /* Project object */; @@ -2299,7 +2259,6 @@ buildRules = ( ); dependencies = ( - DD805B2C2D7C4BDF004E89F8 /* PBXTargetDependency */, DD805B2A2D7C4BCF004E89F8 /* PBXTargetDependency */, ); name = PostInstall; @@ -2320,7 +2279,6 @@ buildRules = ( ); dependencies = ( - DD1AFEA50A512D8700EE5B82 /* PBXTargetDependency */, ); name = Install_BOINC; productName = Installer; @@ -2359,7 +2317,6 @@ buildRules = ( ); dependencies = ( - DD3E14D40A774397007E0084 /* PBXTargetDependency */, DD3E14D60A774397007E0084 /* PBXTargetDependency */, ); name = mgr_boinc; @@ -2399,7 +2356,6 @@ ); dependencies = ( DD3D127B29B6243800F89058 /* PBXTargetDependency */, - DDE382012200806D0077E85A /* PBXTargetDependency */, ); name = Uninstaller; productName = Uninstaller; @@ -2428,6 +2384,7 @@ isa = PBXNativeTarget; buildConfigurationList = DD67F1992D5A24FD00A78699 /* Build configuration list for PBXNativeTarget "Fix_BOINC_Users" */; buildPhases = ( + DDC04DA12E28C8CC006AB01D /* ShellScript */, DD67F1912D5A24FD00A78699 /* Sources */, DD67F1922D5A24FD00A78699 /* Frameworks */, DD67F1932D5A24FD00A78699 /* CopyFiles */, @@ -2454,7 +2411,6 @@ buildRules = ( ); dependencies = ( - DDED8BBC2569358C005F4C8E /* PBXTargetDependency */, DD1E45CA2567FACC005B4EE7 /* PBXTargetDependency */, ); name = cmd_boinc; @@ -2531,7 +2487,6 @@ buildRules = ( ); dependencies = ( - DDAD19CF09090833004E7DD0 /* PBXTargetDependency */, DDFA60DD0CB338940037B88C /* PBXTargetDependency */, DD5F654F2360648D009ED2A2 /* PBXTargetDependency */, ); @@ -2626,7 +2581,6 @@ ); dependencies = ( B1A32E55265D206800896566 /* PBXTargetDependency */, - DD25E20D220438090040366F /* PBXTargetDependency */, DD7C3B112ABC3F85000C307D /* PBXTargetDependency */, DD7C3B132ABC3F85000C307D /* PBXTargetDependency */, ); @@ -2643,12 +2597,10 @@ DDEED38229ADFD7000DC3E5D /* Sources */, DDEED38329ADFD7000DC3E5D /* Frameworks */, DDEED38429ADFD7000DC3E5D /* Resources */, - DD805B322D7C666F004E89F8 /* ShellScript */, ); buildRules = ( ); dependencies = ( - DDEED39729ADFD9900DC3E5D /* PBXTargetDependency */, ); name = boinc_finish_install; productName = boinc_finish_installl_app; @@ -3368,26 +3320,6 @@ shellPath = /bin/sh; shellScript = "source \"${PROJECT_DIR}/checkDependentLibraryVersions.sh\"\nexit $?\n"; }; - DD805B322D7C666F004E89F8 /* ShellScript */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "$(SRCROOT)/Finish_install-Info.plist", - ); - outputFileListPaths = ( - ); - outputPaths = ( - "${BUILT_PRODUCTS_DIR}/BOINC_Finish_install.app/Contents/info.plist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# Due to Xcode parallelizing builds, a race condition this\n# target is built before the updated Finish_Install-Info\n# has been built. This is a workaround for that.\n\"${BUILT_PRODUCTS_DIR}/SetVersion\"\ncp \"${SRCROOT}/Finish_install-Info.plist\" ${BUILT_PRODUCTS_DIR}/BOINC_Finish_install.app/Contents/info.plist\n\n"; - }; DD818296245EDA220076E5D0 /* ShellScript */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; @@ -3445,7 +3377,25 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "# echo \"BuiltProductsDir = ${BUILT_PRODUCTS_DIR}\"\n# echo \"CONFIGURATIONTEMPDIR = ${CONFIGURATION_TEMP_DIR}\"\n# echo \"SRC ROOT = ${SRCROOT}\"\n# echo \"architecture = ${ARCHS}\"\n# echo \"native architecture = ${ARCHS}\"\n codesign -f -o runtime -s - \"${BUILT_PRODUCTS_DIR}/SetVersion\"\n # Unfortunately, this does not work because other targets that\n # have SetVersion as a dependency only wait for SetVersion to\n # be built, not for its scripts to finish.\n# Run SetVersion in background so we can wait for it to finish running\n\"${BUILT_PRODUCTS_DIR}/SetVersion\"\nwait\n\n"; + shellScript = "# echo \"BuiltProductsDir = ${BUILT_PRODUCTS_DIR}\"\n# echo \"CONFIGURATIONTEMPDIR = ${CONFIGURATION_TEMP_DIR}\"\n# echo \"SRC ROOT = ${SRCROOT}\"\n# echo \"architecture = ${ARCHS}\"\n# echo \"native architecture = ${ARCHS}\"\n codesign -f -o runtime -s - \"${BUILT_PRODUCTS_DIR}/SetVersion\"\n # Unfortunately, this does not work because other targets that\n # have SetVersion as a dependency only wait for SetVersion to\n # be built, not for its scripts to finish.\n# Run SetVersion in background so we can wait for it to finish running\n##\"${BUILT_PRODUCTS_DIR}/SetVersion\"\nwait\n\n"; + }; + DDC04DA12E28C8CC006AB01D /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "source \"${PROJECT_DIR}/checkDependentLibraryVersions.sh\"\nexit $?\n"; }; DDC8FB2B1F6D398700BE55B8 /* ShellScript */ = { isa = PBXShellScriptBuildPhase; @@ -4223,31 +4173,16 @@ target = DD1277B2081F3D67007B5DE1 /* PostInstall */; targetProxy = DD127876081F44E5007B5DE1 /* PBXContainerItemProxy */; }; - DD1AFEA50A512D8700EE5B82 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DD1AFEA60A512D8700EE5B82 /* PBXContainerItemProxy */; - }; DD1E45CA2567FACC005B4EE7 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = DD407A4907D2FB1200163EF5 /* libboinc */; targetProxy = DD1E45C92567FACC005B4EE7 /* PBXContainerItemProxy */; }; - DD25E20D220438090040366F /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DD25E20C220438090040366F /* PBXContainerItemProxy */; - }; DD3D127B29B6243800F89058 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = DDEED38529ADFD7000DC3E5D /* boinc_finish_install */; targetProxy = DD3D127A29B6243800F89058 /* PBXContainerItemProxy */; }; - DD3E14D40A774397007E0084 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DD3E14D50A774397007E0084 /* PBXContainerItemProxy */; - }; DD3E14D60A774397007E0084 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = DDD74D8607CF482E0065AC9D /* BOINC_Client */; @@ -4308,11 +4243,6 @@ target = DDEED38529ADFD7000DC3E5D /* boinc_finish_install */; targetProxy = DD805B292D7C4BCF004E89F8 /* PBXContainerItemProxy */; }; - DD805B2C2D7C4BDF004E89F8 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DD805B2B2D7C4BDF004E89F8 /* PBXContainerItemProxy */; - }; DD81C824144D904D000BE61A /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = DD81C799144D8DA9000BE61A /* jpeg */; @@ -4323,11 +4253,6 @@ target = DD7748970A356C880025D05E /* SetUpSecurity */; targetProxy = DDA12AD00A369DEC00FBDD12 /* PBXContainerItemProxy */; }; - DDAD19CF09090833004E7DD0 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DDAD19CE09090833004E7DD0 /* PBXContainerItemProxy */; - }; DDB874670C850DB600E0DE1F /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = DDB873E90C850BC800E0DE1F /* gfx2libboinc */; @@ -4348,6 +4273,21 @@ target = DD35353007E1E05C00C4718D /* api_libboinc */; targetProxy = DDBD681407FA830E0082C20D /* PBXContainerItemProxy */; }; + DDC04D9D2E28C44B006AB01D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DDEED38529ADFD7000DC3E5D /* boinc_finish_install */; + targetProxy = DDC04D9C2E28C44B006AB01D /* PBXContainerItemProxy */; + }; + DDC04D9F2E28C473006AB01D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = B13E2D0E265564D100D5C977 /* detect_rosetta_cpu */; + targetProxy = DDC04D9E2E28C473006AB01D /* PBXContainerItemProxy */; + }; + DDC04DA72E2908BC006AB01D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; + targetProxy = DDC04DA62E2908BC006AB01D /* PBXContainerItemProxy */; + }; DDD095510A3EE09900C95BA4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = DDD0953E0A3EDD2500C95BA4 /* switcher */; @@ -4363,21 +4303,6 @@ target = DD81C799144D8DA9000BE61A /* jpeg */; targetProxy = DDD4D96415A6FE0000612460 /* PBXContainerItemProxy */; }; - DDE382012200806D0077E85A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DDE382002200806D0077E85A /* PBXContainerItemProxy */; - }; - DDED8BBC2569358C005F4C8E /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DDED8BBB2569358C005F4C8E /* PBXContainerItemProxy */; - }; - DDEED39729ADFD9900DC3E5D /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DDEED39629ADFD9900DC3E5D /* PBXContainerItemProxy */; - }; DDF9EC0D144EB338005D6144 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = DD81C799144D8DA9000BE61A /* jpeg */; @@ -4393,11 +4318,6 @@ target = DDD74D8607CF482E0065AC9D /* BOINC_Client */; targetProxy = DDF9EC10144EB36E005D6144 /* PBXContainerItemProxy */; }; - DDF9EC15144EB36E005D6144 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DDAEC9E007FA583B00A7BC36 /* SetVersion */; - targetProxy = DDF9EC14144EB36E005D6144 /* PBXContainerItemProxy */; - }; DDF9EC17144EB36E005D6144 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = DDFA60C90CB337D40037B88C /* gfx_switcher */; diff --git a/mac_build/boinc.xcodeproj/xcshareddata/xcschemes/BOINC_Client.xcscheme b/mac_build/boinc.xcodeproj/xcshareddata/xcschemes/BOINC_Client.xcscheme index f91199fe1bc..2f274d068f1 100644 --- a/mac_build/boinc.xcodeproj/xcshareddata/xcschemes/BOINC_Client.xcscheme +++ b/mac_build/boinc.xcodeproj/xcshareddata/xcschemes/BOINC_Client.xcscheme @@ -5,6 +5,15 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mac_build/boinc.xcodeproj/xcshareddata/xcschemes/Install_BOINC.xcscheme b/mac_build/boinc.xcodeproj/xcshareddata/xcschemes/Install_BOINC.xcscheme index 1b193085990..f1ea450db52 100644 --- a/mac_build/boinc.xcodeproj/xcshareddata/xcschemes/Install_BOINC.xcscheme +++ b/mac_build/boinc.xcodeproj/xcshareddata/xcschemes/Install_BOINC.xcscheme @@ -5,6 +5,15 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +