Skip to content

Commit aa36e3c

Browse files
committed
Completely overhaul code signing practices
Redesign the code signing from the ground up. Now all bundles and their embedded frameworks import the Shared.xcconfig file and enable its settings, so they may be signed with Apple Development instead of sign to run locally. This apparently isn't necessary for frameworks which are embedded in the main app bundle directly, only for the bundles and their frameworks. Signed-off-by: Christopher Snowhill <kode54@gmail.com>
1 parent da8a4df commit aa36e3c

File tree

54 files changed

+1023
-533
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+1023
-533
lines changed

Audio/CogAudio.xcodeproj/project.pbxproj

+1-10
Original file line numberDiff line numberDiff line change
@@ -658,8 +658,7 @@
658658
LastUpgradeCheck = 1400;
659659
TargetAttributes = {
660660
8DC2EF4F0486A6940098B216 = {
661-
DevelopmentTeam = "";
662-
ProvisioningStyle = Automatic;
661+
ProvisioningStyle = Manual;
663662
};
664663
};
665664
};
@@ -743,12 +742,9 @@
743742
1DEB91AE08733DA50010E9CD /* Debug */ = {
744743
isa = XCBuildConfiguration;
745744
buildSettings = {
746-
CODE_SIGN_IDENTITY = "";
747-
CODE_SIGN_STYLE = Automatic;
748745
COMBINE_HIDPI_IMAGES = YES;
749746
COPY_PHASE_STRIP = NO;
750747
DEAD_CODE_STRIPPING = YES;
751-
DEVELOPMENT_TEAM = "";
752748
DYLIB_COMPATIBILITY_VERSION = 1;
753749
DYLIB_CURRENT_VERSION = 1;
754750
FRAMEWORK_VERSION = A;
@@ -769,7 +765,6 @@
769765
OTHER_LDFLAGS = "";
770766
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.cogaudio;
771767
PRODUCT_NAME = CogAudio;
772-
PROVISIONING_PROFILE_SPECIFIER = "";
773768
SDKROOT = macosx;
774769
SKIP_INSTALL = YES;
775770
WARNING_LDFLAGS = "";
@@ -781,11 +776,8 @@
781776
1DEB91AF08733DA50010E9CD /* Release */ = {
782777
isa = XCBuildConfiguration;
783778
buildSettings = {
784-
CODE_SIGN_IDENTITY = "";
785-
CODE_SIGN_STYLE = Automatic;
786779
COMBINE_HIDPI_IMAGES = YES;
787780
DEAD_CODE_STRIPPING = YES;
788-
DEVELOPMENT_TEAM = "";
789781
DYLIB_COMPATIBILITY_VERSION = 1;
790782
DYLIB_CURRENT_VERSION = 1;
791783
FRAMEWORK_VERSION = A;
@@ -803,7 +795,6 @@
803795
OTHER_LDFLAGS = "";
804796
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.cogaudio;
805797
PRODUCT_NAME = CogAudio;
806-
PROVISIONING_PROFILE_SPECIFIER = "";
807798
SDKROOT = macosx;
808799
SKIP_INSTALL = YES;
809800
WARNING_LDFLAGS = "";

Cog.xcodeproj/project.pbxproj

+3-3
Original file line numberDiff line numberDiff line change
@@ -2055,7 +2055,7 @@
20552055
83978E15285C58190076ED21 /* FirebaseCrashlytics */,
20562056
83978E25285C596F0076ED21 /* FirebaseAnalytics */,
20572057
);
2058-
productInstallPath = "/Applications";
2058+
productInstallPath = /Applications;
20592059
productName = Cog;
20602060
productReference = 1770424E0B8BC41800B86321 /* Cog.app */;
20612061
productType = "com.apple.product-type.application";
@@ -2964,7 +2964,7 @@
29642964
GCC_OPTIMIZATION_LEVEL = 0;
29652965
HEADER_SEARCH_PATHS = ThirdParty/avif/include;
29662966
INFOPLIST_FILE = Info.plist;
2967-
INSTALL_PATH = "/Applications";
2967+
INSTALL_PATH = /Applications;
29682968
LD_RUNPATH_SEARCH_PATHS = (
29692969
"$(inherited)",
29702970
"@executable_path/../Frameworks",
@@ -3016,7 +3016,7 @@
30163016
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
30173017
HEADER_SEARCH_PATHS = ThirdParty/avif/include;
30183018
INFOPLIST_FILE = Info.plist;
3019-
INSTALL_PATH = "/Applications";
3019+
INSTALL_PATH = /Applications;
30203020
LD_RUNPATH_SEARCH_PATHS = (
30213021
"$(inherited)",
30223022
"@executable_path/../Frameworks",

Frameworks/AdPlug/libAdPlug.xcodeproj/project.pbxproj

+20-12
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
/* Begin PBXBuildFile section */
1010
830E1DA1263B90CB005B01D2 /* rad2.h in Headers */ = {isa = PBXBuildFile; fileRef = 830E1D9F263B90CB005B01D2 /* rad2.h */; };
1111
830E1DA2263B90CB005B01D2 /* rad2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 830E1DA0263B90CB005B01D2 /* rad2.cpp */; };
12+
83747B7C2862D4B70021245F /* Shared.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 83747B7A2862D4B70021245F /* Shared.xcconfig */; };
13+
83747B7D2862D4B70021245F /* DEVELOPMENT_TEAM.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 83747B7B2862D4B70021245F /* DEVELOPMENT_TEAM.xcconfig */; };
1214
83D3C578201C66E3005564CB /* adplug.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83D3C505201C66C1005564CB /* adplug.cpp */; };
1315
83D3C579201C66E3005564CB /* mtk.h in Headers */ = {isa = PBXBuildFile; fileRef = 83D3C506201C66C2005564CB /* mtk.h */; };
1416
83D3C57A201C66E3005564CB /* psi.h in Headers */ = {isa = PBXBuildFile; fileRef = 83D3C507201C66C2005564CB /* psi.h */; };
@@ -150,6 +152,8 @@
150152
/* Begin PBXFileReference section */
151153
830E1D9F263B90CB005B01D2 /* rad2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rad2.h; path = adplug/src/rad2.h; sourceTree = "<group>"; };
152154
830E1DA0263B90CB005B01D2 /* rad2.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = rad2.cpp; path = adplug/src/rad2.cpp; sourceTree = "<group>"; };
155+
83747B7A2862D4B70021245F /* Shared.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Shared.xcconfig; sourceTree = "<group>"; };
156+
83747B7B2862D4B70021245F /* DEVELOPMENT_TEAM.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = DEVELOPMENT_TEAM.xcconfig; sourceTree = "<group>"; };
153157
83D3C4D4201C654F005564CB /* libAdPlug.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = libAdPlug.framework; sourceTree = BUILT_PRODUCTS_DIR; };
154158
83D3C4D8201C6550005564CB /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
155159
83D3C505201C66C1005564CB /* adplug.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = adplug.cpp; path = adplug/src/adplug.cpp; sourceTree = "<group>"; };
@@ -285,9 +289,20 @@
285289
/* End PBXFrameworksBuildPhase section */
286290

287291
/* Begin PBXGroup section */
292+
83747B792862D4B70021245F /* Xcode-config */ = {
293+
isa = PBXGroup;
294+
children = (
295+
83747B7A2862D4B70021245F /* Shared.xcconfig */,
296+
83747B7B2862D4B70021245F /* DEVELOPMENT_TEAM.xcconfig */,
297+
);
298+
name = "Xcode-config";
299+
path = "../../Xcode-config";
300+
sourceTree = "<group>";
301+
};
288302
83D3C4CA201C654F005564CB = {
289303
isa = PBXGroup;
290304
children = (
305+
83747B792862D4B70021245F /* Xcode-config */,
291306
83D3C4D6201C654F005564CB /* AdPlug */,
292307
83D3C609201C6788005564CB /* Frameworks */,
293308
83D3C4D5201C654F005564CB /* Products */,
@@ -550,8 +565,7 @@
550565
ORGANIZATIONNAME = "Christopher Snowhill";
551566
TargetAttributes = {
552567
83D3C4D3201C654F005564CB = {
553-
DevelopmentTeam = "";
554-
ProvisioningStyle = Automatic;
568+
ProvisioningStyle = Manual;
555569
};
556570
};
557571
};
@@ -594,6 +608,8 @@
594608
isa = PBXResourcesBuildPhase;
595609
buildActionMask = 2147483647;
596610
files = (
611+
83747B7C2862D4B70021245F /* Shared.xcconfig in Resources */,
612+
83747B7D2862D4B70021245F /* DEVELOPMENT_TEAM.xcconfig in Resources */,
597613
);
598614
runOnlyForDeploymentPostprocessing = 0;
599615
};
@@ -678,6 +694,7 @@
678694
/* Begin XCBuildConfiguration section */
679695
83D3C4DA201C6550005564CB /* Debug */ = {
680696
isa = XCBuildConfiguration;
697+
baseConfigurationReference = 83747B7A2862D4B70021245F /* Shared.xcconfig */;
681698
buildSettings = {
682699
ALWAYS_SEARCH_USER_PATHS = NO;
683700
CLANG_ANALYZER_NONNULL = YES;
@@ -708,7 +725,6 @@
708725
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
709726
CLANG_WARN_UNREACHABLE_CODE = YES;
710727
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
711-
CODE_SIGN_IDENTITY = "Mac Developer";
712728
COPY_PHASE_STRIP = NO;
713729
CURRENT_PROJECT_VERSION = 1;
714730
DEAD_CODE_STRIPPING = YES;
@@ -741,6 +757,7 @@
741757
};
742758
83D3C4DB201C6550005564CB /* Release */ = {
743759
isa = XCBuildConfiguration;
760+
baseConfigurationReference = 83747B7A2862D4B70021245F /* Shared.xcconfig */;
744761
buildSettings = {
745762
ALWAYS_SEARCH_USER_PATHS = NO;
746763
CLANG_ANALYZER_NONNULL = YES;
@@ -771,7 +788,6 @@
771788
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
772789
CLANG_WARN_UNREACHABLE_CODE = YES;
773790
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
774-
CODE_SIGN_IDENTITY = "Mac Developer";
775791
COPY_PHASE_STRIP = NO;
776792
CURRENT_PROJECT_VERSION = 1;
777793
DEAD_CODE_STRIPPING = YES;
@@ -798,11 +814,8 @@
798814
83D3C4DD201C6550005564CB /* Debug */ = {
799815
isa = XCBuildConfiguration;
800816
buildSettings = {
801-
CODE_SIGN_IDENTITY = "";
802-
CODE_SIGN_STYLE = Automatic;
803817
COMBINE_HIDPI_IMAGES = YES;
804818
DEAD_CODE_STRIPPING = YES;
805-
DEVELOPMENT_TEAM = "";
806819
DYLIB_COMPATIBILITY_VERSION = 1;
807820
DYLIB_CURRENT_VERSION = 1;
808821
FRAMEWORK_VERSION = A;
@@ -820,19 +833,15 @@
820833
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
821834
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.libAdPlug;
822835
PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
823-
PROVISIONING_PROFILE_SPECIFIER = "";
824836
SKIP_INSTALL = YES;
825837
};
826838
name = Debug;
827839
};
828840
83D3C4DE201C6550005564CB /* Release */ = {
829841
isa = XCBuildConfiguration;
830842
buildSettings = {
831-
CODE_SIGN_IDENTITY = "";
832-
CODE_SIGN_STYLE = Automatic;
833843
COMBINE_HIDPI_IMAGES = YES;
834844
DEAD_CODE_STRIPPING = YES;
835-
DEVELOPMENT_TEAM = "";
836845
DYLIB_COMPATIBILITY_VERSION = 1;
837846
DYLIB_CURRENT_VERSION = 1;
838847
FRAMEWORK_VERSION = A;
@@ -846,7 +855,6 @@
846855
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
847856
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.libAdPlug;
848857
PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
849-
PROVISIONING_PROFILE_SPECIFIER = "";
850858
SKIP_INSTALL = YES;
851859
};
852860
name = Release;

Frameworks/File_Extractor/File_Extractor.xcodeproj/project.pbxproj

+20-10
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,8 @@
129129
8359008D17FEF40E0060F3ED /* unrar_misc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8359000117FEF40E0060F3ED /* unrar_misc.cpp */; };
130130
8359009F17FF073E0060F3ED /* 7zStream.c in Sources */ = {isa = PBXBuildFile; fileRef = 8359009E17FF073E0060F3ED /* 7zStream.c */; };
131131
8359FF4A17FEF39F0060F3ED /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8359FF4817FEF39F0060F3ED /* InfoPlist.strings */; };
132+
83747BE32862D78F0021245F /* Shared.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 83747BE12862D78E0021245F /* Shared.xcconfig */; };
133+
83747BE42862D78F0021245F /* DEVELOPMENT_TEAM.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 83747BE22862D78E0021245F /* DEVELOPMENT_TEAM.xcconfig */; };
132134
83756F621D23A95B003A7676 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 83756F611D23A95B003A7676 /* CoreServices.framework */; };
133135
83C2109719CD81F50093C461 /* headers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 83C2108E19CD81F50093C461 /* headers.cpp */; };
134136
83C2109819CD81F50093C461 /* headers5.hpp in Headers */ = {isa = PBXBuildFile; fileRef = 83C2108F19CD81F50093C461 /* headers5.hpp */; };
@@ -270,6 +272,8 @@
270272
8359FFFB17FEF40E0060F3ED /* unpack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unpack.cpp; sourceTree = "<group>"; };
271273
8359FFFC17FEF40E0060F3ED /* unpack.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = unpack.hpp; sourceTree = "<group>"; };
272274
8359FFFF17FEF40E0060F3ED /* unrar.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unrar.cpp; sourceTree = "<group>"; };
275+
83747BE12862D78E0021245F /* Shared.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Shared.xcconfig; sourceTree = "<group>"; };
276+
83747BE22862D78E0021245F /* DEVELOPMENT_TEAM.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = DEVELOPMENT_TEAM.xcconfig; sourceTree = "<group>"; };
273277
83756F611D23A95B003A7676 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = System/Library/Frameworks/CoreServices.framework; sourceTree = SDKROOT; };
274278
83C2108E19CD81F50093C461 /* headers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = headers.cpp; sourceTree = "<group>"; };
275279
83C2108F19CD81F50093C461 /* headers5.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = headers5.hpp; sourceTree = "<group>"; };
@@ -301,6 +305,7 @@
301305
8359FF3217FEF39F0060F3ED = {
302306
isa = PBXGroup;
303307
children = (
308+
83747BE02862D78E0021245F /* Xcode-config */,
304309
8359FF4517FEF39F0060F3ED /* File_Extractor */,
305310
8359FF3E17FEF39F0060F3ED /* Frameworks */,
306311
8359FF3D17FEF39F0060F3ED /* Products */,
@@ -513,6 +518,16 @@
513518
path = unrar;
514519
sourceTree = "<group>";
515520
};
521+
83747BE02862D78E0021245F /* Xcode-config */ = {
522+
isa = PBXGroup;
523+
children = (
524+
83747BE12862D78E0021245F /* Shared.xcconfig */,
525+
83747BE22862D78E0021245F /* DEVELOPMENT_TEAM.xcconfig */,
526+
);
527+
name = "Xcode-config";
528+
path = "../../Xcode-config";
529+
sourceTree = "<group>";
530+
};
516531
/* End PBXGroup section */
517532

518533
/* Begin PBXHeadersBuildPhase section */
@@ -623,8 +638,7 @@
623638
ORGANIZATIONNAME = "Christopher Snowhill";
624639
TargetAttributes = {
625640
8359FF3B17FEF39F0060F3ED = {
626-
DevelopmentTeam = "";
627-
ProvisioningStyle = Automatic;
641+
ProvisioningStyle = Manual;
628642
};
629643
};
630644
};
@@ -653,7 +667,9 @@
653667
buildActionMask = 2147483647;
654668
files = (
655669
8359004817FEF40E0060F3ED /* readme.txt in Resources */,
670+
83747BE42862D78F0021245F /* DEVELOPMENT_TEAM.xcconfig in Resources */,
656671
8359FF4A17FEF39F0060F3ED /* InfoPlist.strings in Resources */,
672+
83747BE32862D78F0021245F /* Shared.xcconfig in Resources */,
657673
);
658674
runOnlyForDeploymentPostprocessing = 0;
659675
};
@@ -746,6 +762,7 @@
746762
/* Begin XCBuildConfiguration section */
747763
8359FF6217FEF39F0060F3ED /* Debug */ = {
748764
isa = XCBuildConfiguration;
765+
baseConfigurationReference = 83747BE12862D78E0021245F /* Shared.xcconfig */;
749766
buildSettings = {
750767
ALWAYS_SEARCH_USER_PATHS = NO;
751768
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
@@ -801,6 +818,7 @@
801818
};
802819
8359FF6317FEF39F0060F3ED /* Release */ = {
803820
isa = XCBuildConfiguration;
821+
baseConfigurationReference = 83747BE12862D78E0021245F /* Shared.xcconfig */;
804822
buildSettings = {
805823
ALWAYS_SEARCH_USER_PATHS = NO;
806824
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
@@ -849,11 +867,8 @@
849867
8359FF6517FEF39F0060F3ED /* Debug */ = {
850868
isa = XCBuildConfiguration;
851869
buildSettings = {
852-
CODE_SIGN_IDENTITY = "";
853-
CODE_SIGN_STYLE = Automatic;
854870
COMBINE_HIDPI_IMAGES = YES;
855871
DEAD_CODE_STRIPPING = YES;
856-
DEVELOPMENT_TEAM = "";
857872
DYLIB_COMPATIBILITY_VERSION = 1;
858873
DYLIB_CURRENT_VERSION = 1;
859874
FRAMEWORK_VERSION = A;
@@ -867,7 +882,6 @@
867882
INSTALL_PATH = "@rpath";
868883
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.fileextractor;
869884
PRODUCT_NAME = "$(TARGET_NAME)";
870-
PROVISIONING_PROFILE_SPECIFIER = "";
871885
SDKROOT = macosx;
872886
SKIP_INSTALL = YES;
873887
WRAPPER_EXTENSION = framework;
@@ -877,11 +891,8 @@
877891
8359FF6617FEF39F0060F3ED /* Release */ = {
878892
isa = XCBuildConfiguration;
879893
buildSettings = {
880-
CODE_SIGN_IDENTITY = "";
881-
CODE_SIGN_STYLE = Automatic;
882894
COMBINE_HIDPI_IMAGES = YES;
883895
DEAD_CODE_STRIPPING = YES;
884-
DEVELOPMENT_TEAM = "";
885896
DYLIB_COMPATIBILITY_VERSION = 1;
886897
DYLIB_CURRENT_VERSION = 1;
887898
FRAMEWORK_VERSION = A;
@@ -895,7 +906,6 @@
895906
INSTALL_PATH = "@rpath";
896907
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.fileextractor;
897908
PRODUCT_NAME = "$(TARGET_NAME)";
898-
PROVISIONING_PROFILE_SPECIFIER = "";
899909
SDKROOT = macosx;
900910
SKIP_INSTALL = YES;
901911
WRAPPER_EXTENSION = framework;

0 commit comments

Comments
 (0)