From c517cded3ea643d71a18e941874278c7b030c6ec Mon Sep 17 00:00:00 2001 From: Andreas Buff Date: Sat, 4 Dec 2021 10:29:54 +0100 Subject: [PATCH 1/3] IOS-2879 fixes: "Redefinition of module 'PEPObjCAdapter_iOS", forcing us to clean arfter every build --- pEpObjCAdapter.xcodeproj/project.pbxproj | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/pEpObjCAdapter.xcodeproj/project.pbxproj b/pEpObjCAdapter.xcodeproj/project.pbxproj index ef44ab59..acaa9816 100644 --- a/pEpObjCAdapter.xcodeproj/project.pbxproj +++ b/pEpObjCAdapter.xcodeproj/project.pbxproj @@ -771,6 +771,7 @@ isa = PBXNativeTarget; buildConfigurationList = 1543DC6F257943CF0041EFB5 /* Build configuration list for PBXNativeTarget "PEPObjCAdapter_iOS" */; buildPhases = ( + 15132437275B6AC3001182CA /* Delete module.modulemap - Workaround for "duplicate module definition" */, 1543DD3D257A3B620041EFB5 /* Headers */, 1543DC62257943CE0041EFB5 /* Sources */, 1543DC63257943CE0041EFB5 /* Frameworks */, @@ -998,6 +999,24 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ + 15132437275B6AC3001182CA /* Delete module.modulemap - Workaround for "duplicate module definition" */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Delete module.modulemap - Workaround for \"duplicate module definition\""; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "rm -f ${BUILT_PRODUCTS_DIR}/include/PEPObjCAdapter_iOS/module.modulemap\n"; + }; 151607E9257A4A9C00DD42E0 /* Copy artefacts to custom build dir */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; From 7666c3ef53f7aeb35b6e5939cbaec1e821476647 Mon Sep 17 00:00:00 2001 From: Andreas Buff Date: Mon, 6 Dec 2021 10:44:31 +0100 Subject: [PATCH 2/3] IOS-2879 nicer and more stabe approach (dont delete module map file before building, rename it afterwards instead) --- ...emap => pEpObjCAdapterModuleMap.modulemap} | 0 pEpObjCAdapter.xcodeproj/project.pbxproj | 22 +++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) rename PEPObjCAdapter_iOS/{module.modulemap => pEpObjCAdapterModuleMap.modulemap} (100%) diff --git a/PEPObjCAdapter_iOS/module.modulemap b/PEPObjCAdapter_iOS/pEpObjCAdapterModuleMap.modulemap similarity index 100% rename from PEPObjCAdapter_iOS/module.modulemap rename to PEPObjCAdapter_iOS/pEpObjCAdapterModuleMap.modulemap diff --git a/pEpObjCAdapter.xcodeproj/project.pbxproj b/pEpObjCAdapter.xcodeproj/project.pbxproj index acaa9816..6b32e483 100644 --- a/pEpObjCAdapter.xcodeproj/project.pbxproj +++ b/pEpObjCAdapter.xcodeproj/project.pbxproj @@ -3,11 +3,11 @@ archiveVersion = 1; classes = { }; - objectVersion = 52; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ - 15160690257A3E1900DD42E0 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1543DD8B257A3C9E0041EFB5 /* module.modulemap */; platformFilter = ios; }; + 15160690257A3E1900DD42E0 /* pEpObjCAdapterModuleMap.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1543DD8B257A3C9E0041EFB5 /* pEpObjCAdapterModuleMap.modulemap */; platformFilter = ios; }; 15160AF1257A58A000DD42E0 /* libpEpEngine.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64289E561B8B70E800FC617B /* libpEpEngine.a */; platformFilter = ios; }; 152A9C472010F50400F962ED /* PEPInternalSessionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 152A9C462010F50400F962ED /* PEPInternalSessionTest.m */; }; 152E48FE26A86327009BD3CE /* libpEpEngine_macOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1552DCBD2577E0B600A92F71 /* libpEpEngine_macOS.a */; }; @@ -291,7 +291,7 @@ dstSubfolderSpec = 16; files = ( 1543DC6B257943CF0041EFB5 /* PEPObjCAdapter_iOS.h in CopyFiles */, - 15160690257A3E1900DD42E0 /* module.modulemap in CopyFiles */, + 15160690257A3E1900DD42E0 /* pEpObjCAdapterModuleMap.modulemap in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -307,7 +307,7 @@ 1543DC66257943CE0041EFB5 /* libPEPObjCAdapter_iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPEPObjCAdapter_iOS.a; sourceTree = BUILT_PRODUCTS_DIR; }; 1543DC68257943CE0041EFB5 /* PEPObjCAdapter_iOS.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PEPObjCAdapter_iOS.h; sourceTree = ""; }; 1543DC69257943CF0041EFB5 /* PEPObjCAdapter_iOS.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PEPObjCAdapter_iOS.m; sourceTree = ""; }; - 1543DD8B257A3C9E0041EFB5 /* module.modulemap */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.module-map"; path = module.modulemap; sourceTree = ""; }; + 1543DD8B257A3C9E0041EFB5 /* pEpObjCAdapterModuleMap.modulemap */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.module-map"; path = pEpObjCAdapterModuleMap.modulemap; sourceTree = ""; }; 1552D93B2576602D00A92F71 /* libPEPObjCAdapter_macOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPEPObjCAdapter_macOS.a; sourceTree = BUILT_PRODUCTS_DIR; }; 1552D93D2576602D00A92F71 /* PEPObjCAdapter_macOS.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PEPObjCAdapter_macOS.h; sourceTree = ""; }; 1552D93F2576602D00A92F71 /* PEPObjCAdapter_macOS.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PEPObjCAdapter_macOS.m; sourceTree = ""; }; @@ -457,7 +457,7 @@ children = ( 1543DC68257943CE0041EFB5 /* PEPObjCAdapter_iOS.h */, 1543DC69257943CF0041EFB5 /* PEPObjCAdapter_iOS.m */, - 1543DD8B257A3C9E0041EFB5 /* module.modulemap */, + 1543DD8B257A3C9E0041EFB5 /* pEpObjCAdapterModuleMap.modulemap */, ); path = PEPObjCAdapter_iOS; sourceTree = ""; @@ -771,11 +771,11 @@ isa = PBXNativeTarget; buildConfigurationList = 1543DC6F257943CF0041EFB5 /* Build configuration list for PBXNativeTarget "PEPObjCAdapter_iOS" */; buildPhases = ( - 15132437275B6AC3001182CA /* Delete module.modulemap - Workaround for "duplicate module definition" */, 1543DD3D257A3B620041EFB5 /* Headers */, 1543DC62257943CE0041EFB5 /* Sources */, 1543DC63257943CE0041EFB5 /* Frameworks */, 1543DC64257943CE0041EFB5 /* CopyFiles */, + 15132437275B6AC3001182CA /* Rename Module Map File - Workaround for "duplicate module definition" - IOS-2879 */, 151607E9257A4A9C00DD42E0 /* Copy artefacts to custom build dir */, ); buildRules = ( @@ -999,8 +999,9 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 15132437275B6AC3001182CA /* Delete module.modulemap - Workaround for "duplicate module definition" */ = { + 15132437275B6AC3001182CA /* Rename Module Map File - Workaround for "duplicate module definition" - IOS-2879 */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -1008,14 +1009,15 @@ ); inputPaths = ( ); - name = "Delete module.modulemap - Workaround for \"duplicate module definition\""; + name = "Rename Module Map File - Workaround for \"duplicate module definition\" - IOS-2879"; outputFileListPaths = ( ); outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "rm -f ${BUILT_PRODUCTS_DIR}/include/PEPObjCAdapter_iOS/module.modulemap\n"; + shellScript = "mv ${BUILT_PRODUCTS_DIR}/include/PEPObjCAdapter_iOS/pEpObjCAdapterModuleMap.modulemap ${BUILT_PRODUCTS_DIR}/include/PEPObjCAdapter_iOS/module.modulemap\n"; + showEnvVarsInLog = 0; }; 151607E9257A4A9C00DD42E0 /* Copy artefacts to custom build dir */ = { isa = PBXShellScriptBuildPhase; @@ -1202,6 +1204,7 @@ "$(PROJECT_DIR)/Subprojects/PEPObjCTypeUtils/build/include", ); IPHONEOS_DEPLOYMENT_TARGET = "${inherited}"; + MODULEMAP_FILE = ""; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1231,6 +1234,7 @@ "$(PROJECT_DIR)/Subprojects/PEPObjCTypeUtils/build/include", ); IPHONEOS_DEPLOYMENT_TARGET = "${inherited}"; + MODULEMAP_FILE = ""; MTL_FAST_MATH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; From 7b42b5bc48d457f0083464f4b1b376bc28f7157c Mon Sep 17 00:00:00 2001 From: Andreas Buff Date: Mon, 6 Dec 2021 15:00:38 +0100 Subject: [PATCH 3/3] Fixes: duplicated symbols as PEPObjCTypeUtils are linked to lib _and_ client of lib --- .../PEPObjCTypeUtils/PEPObjCTypeUtils.xcodeproj/project.pbxproj | 2 -- 1 file changed, 2 deletions(-) diff --git a/Subprojects/PEPObjCTypeUtils/PEPObjCTypeUtils.xcodeproj/project.pbxproj b/Subprojects/PEPObjCTypeUtils/PEPObjCTypeUtils.xcodeproj/project.pbxproj index d86c3c86..23fa266b 100644 --- a/Subprojects/PEPObjCTypeUtils/PEPObjCTypeUtils.xcodeproj/project.pbxproj +++ b/Subprojects/PEPObjCTypeUtils/PEPObjCTypeUtils.xcodeproj/project.pbxproj @@ -25,7 +25,6 @@ 43B0EAC4274D1EA700F5D076 /* PEPMessage+ASN1.h in Headers */ = {isa = PBXBuildFile; fileRef = 43B0EAC2274D1EA700F5D076 /* PEPMessage+ASN1.h */; }; 43B0EAD5274D21E100F5D076 /* libPEPObjCTypeUtils_macOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1585EA7C26984C4300B822E1 /* libPEPObjCTypeUtils_macOS.a */; }; 43B0EAE0274D222000F5D076 /* PEPMessageASN1Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = 43B0EADF274D222000F5D076 /* PEPMessageASN1Tests.m */; }; - 4E89010726CF900B00A683E9 /* libPEPObjCTypes_macOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4E51C1F926CD12EE007A2164 /* libPEPObjCTypes_macOS.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -150,7 +149,6 @@ buildActionMask = 2147483647; files = ( 1554D09D2757C72E00529E81 /* libpEpEngine_macOS.a in Frameworks */, - 4E89010726CF900B00A683E9 /* libPEPObjCTypes_macOS.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; };