Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix failure to build when using Carthage #423

Merged
merged 5 commits into from
Oct 16, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,4 @@ DerivedData
Pods
Carthage
*.idea
features/fixtures/carthage-proj
6 changes: 6 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ cache:
- cocoapods
matrix:
include:
- osx_image: xcode11
before_script:
# Xcode 11+ no longer ships with all device combinations premade
- xcrun simctl create "13-xs" "iPhone XS" com.apple.CoreSimulator.SimRuntime.iOS-13-0
- mkdir -p features/fixtures/carthage-proj
script: make build_carthage
- osx_image: xcode11
env: PLATFORM=iOS
# Xcode 11+ no longer ships with all device combinations premade
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ Changelog

### Bug fixes


* Fix a packaging issue when using Carthage, introduced in 5.22.7. **Note:**
There is a remaining known issue when updating/building the bugsnag-cocoa
dependency with Carthage, the project will build three times before completing
successfully. This issue will be resolved in a subsequent patch release.
[#423](https://github.com/bugsnag/bugsnag-cocoa/pull/423)
* Fix use-after-free in `notify()` logic which could lead to a deadlock
[#420](https://github.com/bugsnag/bugsnag-cocoa/pull/420)
* Reduce severity of log message about thread status from 'error' to 'debug' as
Expand Down
1 change: 1 addition & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ Run the integration tests using `make e2e` (end-to-end)
- [ ] Run `./Tests/prerelease/run_prerelease_checks.sh`
- [ ] Has all new functionality been manually tested on a release build?
- [ ] Do the installation instructions work when creating an example app from scratch?
- [ ] Does the Carthage installation instruction work?
- [ ] If a response is not received from the server, is the report queued for later?
- [ ] If no network connection is available, is the report queued for later?
- [ ] On a throttled network, is the request timeout reasonable, and the main thread not blocked?
Expand Down
13 changes: 13 additions & 0 deletions Configurations/Config.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,13 @@ LD_RUNPATH_SEARCH_PATHS[sdk=watchsimulator*] = $(inherited) '@executable_path/
LD_RUNPATH_SEARCH_PATHS[sdk=appletvos*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
LD_RUNPATH_SEARCH_PATHS[sdk=appletvsimulator*] = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'

// Platform-specific dependencies
OTHER_LDFLAGS[sdk=macosx*] = $(inherited) '-framework' 'Cocoa'
OTHER_LDFLAGS[sdk=iphoneos*] = $(inherited) '-framework' 'UIKit'
OTHER_LDFLAGS[sdk=iphonesimulator*] = $(inherited) '-framework' 'UIKit'
OTHER_LDFLAGS[sdk=appletvos*] = $(inherited) '-framework' 'UIKit'
OTHER_LDFLAGS[sdk=appletvsimulator*] = $(inherited) '-framework' 'UIKit'

// OSX-specific default settings
FRAMEWORK_VERSION[sdk=macosx*] = A
COMBINE_HIDPI_IMAGES[sdk=macosx*] = YES
Expand All @@ -65,3 +72,9 @@ ENABLE_BITCODE[sdk=iphonesimulator*] = YES
ENABLE_BITCODE[sdk=iphone*] = YES
ENABLE_BITCODE[sdk=appletvsimulator*] = YES
ENABLE_BITCODE[sdk=appletv*] = YES


// Unset this property to work around an issue where the build paths generated
// by `xcodebuild -showBuildSettings` are wrong when building the macOS variant
// of a universal framework. (FB7365403)
EFFECTIVE_PLATFORM_NAME =
8 changes: 7 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
PLATFORM?=iOS
OS?=latest
TEST_CONFIGURATION?=Debug
BUILD_FLAGS=-workspace $(PLATFORM).xcworkspace -scheme Bugsnag -derivedDataPath build
BUILD_FLAGS=-project $(PLATFORM)/Bugsnag.xcodeproj -scheme Bugsnag -derivedDataPath build

ifeq ($(PLATFORM),OSX)
SDK?=macosx
Expand Down Expand Up @@ -49,6 +49,12 @@ build: ## Build the library
build_ios_static: ## Build the static library target
$(XCODEBUILD) -project iOS/Bugsnag.xcodeproj -scheme BugsnagStatic

build_carthage: ## Build the latest pushed commit with Carthage
@mkdir -p features/fixtures/carthage-proj
@echo 'git "file://$(shell pwd)" "'$(shell git rev-parse HEAD)'"' > features/fixtures/carthage-proj/Cartfile
@cd features/fixtures/carthage-proj && carthage update --platform ios && \
carthage update --platform macos

bump: ## Bump the version numbers to $VERSION
ifeq ($(VERSION),)
@$(error VERSION is not defined. Run with `make VERSION=number bump`)
Expand Down
8 changes: 0 additions & 8 deletions OSX.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist

This file was deleted.

37 changes: 0 additions & 37 deletions OSX.xcworkspace/xcshareddata/OSX.xcscmblueprint

This file was deleted.

8 changes: 0 additions & 8 deletions OSX/Bugsnag.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
8A2C8FEC1C6BC38900846019 /* BugsnagSinkTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A2C8FE21C6BC38200846019 /* BugsnagSinkTests.m */; };
8A2C8FEE1C6BC38900846019 /* report.json in Resources */ = {isa = PBXBuildFile; fileRef = 8A2C8FE41C6BC38200846019 /* report.json */; };
8A2C8FF01C6BC3A200846019 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8A2C8FEF1C6BC3A200846019 /* SystemConfiguration.framework */; };
8A2C90441C6C040700846019 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8A2C90401C6C03F000846019 /* Cocoa.framework */; };
8A48EF271EAA805D00B70024 /* BugsnagLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A48EF261EAA805D00B70024 /* BugsnagLogger.h */; };
8A530CB822FDC38300F0C108 /* BSG_KSCrashIdentifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A530CB622FDC38300F0C108 /* BSG_KSCrashIdentifier.h */; };
8A530CB922FDC38300F0C108 /* BSG_KSCrashIdentifier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A530CB722FDC38300F0C108 /* BSG_KSCrashIdentifier.m */; };
Expand All @@ -44,7 +43,6 @@
8A87352C1C6D3B1600EDBD5B /* BSG_KSCrashReportWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A87352B1C6D3B1600EDBD5B /* BSG_KSCrashReportWriter.h */; settings = {ATTRIBUTES = (Public, ); }; };
8ACF0F752018136200173809 /* BugsnagCrashReportTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A2C8FE11C6BC38200846019 /* BugsnagCrashReportTests.m */; };
8AD9FA891E086351002859A7 /* BugsnagConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 8AD9FA851E0862DC002859A7 /* BugsnagConfigurationTests.m */; };
8ADEC7952333A038003CF0F5 /* Config.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 8ADEC7942333A038003CF0F5 /* Config.xcconfig */; };
E72352C11F55924A00436528 /* BSGConnectivity.h in Headers */ = {isa = PBXBuildFile; fileRef = E72352BF1F55924A00436528 /* BSGConnectivity.h */; };
E72352C21F55924A00436528 /* BSGConnectivity.m in Sources */ = {isa = PBXBuildFile; fileRef = E72352C01F55924A00436528 /* BSGConnectivity.m */; };
E7433AD21F4F64EF00C082D1 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 8A2C8FF11C6BC3A800846019 /* libz.tbd */; };
Expand Down Expand Up @@ -229,7 +227,6 @@
8A6C6FB02257884C00E8EF24 /* BSGOutOfMemoryWatchdog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BSGOutOfMemoryWatchdog.h; path = ../Source/BSGOutOfMemoryWatchdog.h; sourceTree = "<group>"; };
8A87352B1C6D3B1600EDBD5B /* BSG_KSCrashReportWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BSG_KSCrashReportWriter.h; path = ../Source/BSG_KSCrashReportWriter.h; sourceTree = SOURCE_ROOT; };
8AD9FA851E0862DC002859A7 /* BugsnagConfigurationTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = BugsnagConfigurationTests.m; path = ../Tests/BugsnagConfigurationTests.m; sourceTree = SOURCE_ROOT; };
8ADEC7942333A038003CF0F5 /* Config.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Config.xcconfig; path = ../Configurations/Config.xcconfig; sourceTree = "<group>"; };
E72352BF1F55924A00436528 /* BSGConnectivity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BSGConnectivity.h; path = ../Source/BSGConnectivity.h; sourceTree = SOURCE_ROOT; };
E72352C01F55924A00436528 /* BSGConnectivity.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = BSGConnectivity.m; path = ../Source/BSGConnectivity.m; sourceTree = SOURCE_ROOT; };
E762E9F71F73F7E900E82B43 /* BugsnagHandledStateTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = BugsnagHandledStateTest.m; path = ../Tests/BugsnagHandledStateTest.m; sourceTree = SOURCE_ROOT; };
Expand Down Expand Up @@ -368,7 +365,6 @@
files = (
E7433AD31F4F64F400C082D1 /* libc++.tbd in Frameworks */,
E7433AD21F4F64EF00C082D1 /* libz.tbd in Frameworks */,
8A2C90441C6C040700846019 /* Cocoa.framework in Frameworks */,
8A2C8FF01C6BC3A200846019 /* SystemConfiguration.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
Expand All @@ -387,7 +383,6 @@
8A2C8F971C6BC1F700846019 = {
isa = PBXGroup;
children = (
8ADEC7942333A038003CF0F5 /* Config.xcconfig */,
8A2C8FA31C6BC1F700846019 /* Bugsnag */,
8A2C8FAF1C6BC1F700846019 /* Tests */,
8A2C8FF51C6BC3C200846019 /* Frameworks */,
Expand Down Expand Up @@ -837,7 +832,6 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8ADEC7952333A038003CF0F5 /* Config.xcconfig in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -968,7 +962,6 @@
/* Begin XCBuildConfiguration section */
8A2C8FB31C6BC1F700846019 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 8ADEC7942333A038003CF0F5 /* Config.xcconfig */;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
Expand Down Expand Up @@ -1025,7 +1018,6 @@
};
8A2C8FB41C6BC1F700846019 /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 8ADEC7942333A038003CF0F5 /* Config.xcconfig */;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
Expand Down
7 changes: 0 additions & 7 deletions iOS.xcworkspace/contents.xcworkspacedata

This file was deleted.

8 changes: 0 additions & 8 deletions iOS.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist

This file was deleted.

37 changes: 0 additions & 37 deletions iOS.xcworkspace/xcshareddata/iOS.xcscmblueprint

This file was deleted.

4 changes: 0 additions & 4 deletions iOS/Bugsnag.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
8A2C8F5F1C6BBE3C00846019 /* BugsnagSink.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A2C8F4D1C6BBE3C00846019 /* BugsnagSink.h */; };
8A2C8F601C6BBE3C00846019 /* BugsnagSink.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A2C8F4E1C6BBE3C00846019 /* BugsnagSink.m */; };
8A2C8F6C1C6BBE9500846019 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8A2C8F6B1C6BBE9500846019 /* SystemConfiguration.framework */; };
8A2C8F741C6BBEAD00846019 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8A2C8F731C6BBEAD00846019 /* UIKit.framework */; };
8A2C8F8F1C6BBFDD00846019 /* BugsnagBreadcrumbsTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A2C8F8B1C6BBFDD00846019 /* BugsnagBreadcrumbsTest.m */; };
8A2C8F901C6BBFDD00846019 /* BugsnagCrashReportTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A2C8F8C1C6BBFDD00846019 /* BugsnagCrashReportTests.m */; };
8A2C8F911C6BBFDD00846019 /* BugsnagSinkTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A2C8F8D1C6BBFDD00846019 /* BugsnagSinkTests.m */; };
Expand All @@ -44,7 +43,6 @@
8A70D9CB22539C81006B696F /* BSGOutOfMemoryWatchdog.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A70D9C822539C81006B696F /* BSGOutOfMemoryWatchdog.m */; };
8A70D9CD2253C484006B696F /* BSGOutOfMemoryWatchdogTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A70D9CC2253C484006B696F /* BSGOutOfMemoryWatchdogTests.m */; };
8AF1748E23070F0300902CC2 /* BSG_KSCrashIdentifier.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A530CBF22FDC3AE00F0C108 /* BSG_KSCrashIdentifier.m */; };
8AF2894A23339CCA00E8EB27 /* Config.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 8AF2894923339CCA00E8EB27 /* Config.xcconfig */; };
E70E52152216E41C00A590AB /* BugsnagSessionTrackerStopTest.m in Sources */ = {isa = PBXBuildFile; fileRef = E70E52142216E41C00A590AB /* BugsnagSessionTrackerStopTest.m */; };
E70EE0781FD7039E00FA745C /* RFC3339DateTool_Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = E70EE0771FD7039D00FA745C /* RFC3339DateTool_Tests.m */; };
E70EE07E1FD703D600FA745C /* NSError+SimpleConstructor_Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = E70EE07A1FD703D500FA745C /* NSError+SimpleConstructor_Tests.m */; };
Expand Down Expand Up @@ -593,7 +591,6 @@
E7433AD11F4F64D900C082D1 /* libz.tbd in Frameworks */,
E7433AD01F4F64D400C082D1 /* libc++.tbd in Frameworks */,
E7EC041A1F4CC97200C2E9D5 /* Foundation.framework in Frameworks */,
8A2C8F741C6BBEAD00846019 /* UIKit.framework in Frameworks */,
8A2C8F6C1C6BBE9500846019 /* SystemConfiguration.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
Expand Down Expand Up @@ -1101,7 +1098,6 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8AF2894A23339CCA00E8EB27 /* Config.xcconfig in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down
7 changes: 0 additions & 7 deletions tvOS.xcworkspace/contents.xcworkspacedata

This file was deleted.

8 changes: 0 additions & 8 deletions tvOS.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist

This file was deleted.

30 changes: 0 additions & 30 deletions tvOS.xcworkspace/xcshareddata/tvOS.xcscmblueprint

This file was deleted.

Loading