Skip to content

Commit

Permalink
Remove dependency on protobuf-c (#7)
Browse files Browse the repository at this point in the history
* Move files to correct path
* Remove a custom command from podspec
* Add `protobuf-c` as a submodule
* Add autogenerated files
* Fix Header Search Paths
* Update source files
* Move tests files to separate folder
* Update `podspec` file
* Move applications files to `Other Sources`
* Add `bootstrap` script
* Add `setup` script
* Add `cibuild` script
* Add `deploy` script
* Move all public headers to `include` folder
* Generate Xcode project
* Add project.yml
* Rename `Source` to `Sources`
* Update `README.md`
* Add `Doxygen` and `GraphViz` to `Brewfile`
Co-authored-by: Adam Marks <[email protected]>
  • Loading branch information
krml19 authored May 17, 2020
1 parent ec8fda1 commit 72a8161
Show file tree
Hide file tree
Showing 260 changed files with 13,544 additions and 15,672 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
**/.idea/**

## Build generated
.build/
.swiftpm/
build/
DerivedData/
Documentation/API/
Expand Down
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "Tools/protobuf-c"]
path = Tools/protobuf-c
url = https://github.com/protobuf-c/protobuf-c.git
55 changes: 9 additions & 46 deletions Backtrace-PLCrashReporter.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Pod::Spec.new do |s|

s.name = "Backtrace-PLCrashReporter"
s.version = "1.5.2"
s.version = "1.5.3"
s.summary = "Reliable, open-source crash reporting for iOS, tvOS and macOS."
s.description = <<-DESC
Plausible CrashReporter provides an in-process crash reporting
Expand All @@ -16,60 +16,23 @@ Pod::Spec.new do |s|
s.license = { :type => 'MIT', :file => 'LICENSE' }
s.author = { 'Plausible Labs Cooperative, Inc.' => '[email protected]' }

s.ios.deployment_target = "10.0"
s.tvos.deployment_target = "10.0"
s.osx.deployment_target = "10.10"
s.ios.deployment_target = "10.0"
s.tvos.deployment_target = "10.0"
s.osx.deployment_target = "10.10"

s.source = { :git => "https://github.com/backtrace-labs/plcrashreporter.git", :tag => "#{s.version}" }

s.source_files = "Source/**/*.{h,hpp,c,cpp,m,mm,s}",
"Dependencies/protobuf-c-1.3.2/src/*.{h,c}"
s.exclude_files = "**/*Tests*",
"**/*TestCase*",
"**/*test.*",
"**/*_test_*",
"**/*main.m"

s.public_header_files = "Source/PLCrashReport*.h",
"Source/PLCrashNamespace*.h",
"Source/PLCrashMacros.h",
"Source/PLCrashFeatureConfig.h",
"Source/CrashReporter.h"
s.source_files = "Sources/**/*.{h,hpp,c,cpp,m,mm,s}",
"Dependencies/protobuf-c/protobuf-c/*.{h,c}"

s.public_header_files = "Sources/include"
s.preserve_paths = "Dependencies/**"


s.resources = "Resources/*.proto"
s.pod_target_xcconfig = {
"GCC_PREPROCESSOR_DEFINITIONS" => "PLCR_PRIVATE PLCF_RELEASE_BUILD"
}
s.libraries = "c++"
s.requires_arc = false

s.prefix_header_contents = "#import \"PLCrashNamespace.h\""

s.prepare_command =
<<-CMD
cd "Resources" && "../Dependencies/protobuf-c-1.3.2/bin/protoc-c" --c_out="../Source" "crash_report.proto" && cd ..
find . \\( -iname '*.h' -o -iname '*.hpp' -o -iname '*.c' -o -iname '*.cc' -o -iname '*.cpp' -o -iname '*.m' -o -iname '*.mm' \\) -exec sed -i '' -e 's/#include <protobuf-c\\/protobuf-c.h>/#include <protobuf-c.h>/g' {} \\;
find . \\( -iname '*.h' -o -iname '*.hpp' -o -iname '*.c' -o -iname '*.cc' -o -iname '*.cpp' -o -iname '*.m' -o -iname '*.mm' \\) -exec sed -i '' -e 's/#import "CrashReporter\\/CrashReporter.h"/#import "CrashReporter.h"/g' {} \\;
SDKROOT=$(xcrun --sdk macosx --show-sdk-path)
mig -arch "i386" -header "Source/mach_exc_i386.h" -server /dev/null -user "Source/mach_exc_i386User.inc" "${SDKROOT}/usr/include/mach/mach_exc.defs"
mig -arch "x86_64" -header "Source/mach_exc_x86_64.h" -server /dev/null -user "Source/mach_exc_x86_64User.inc" "${SDKROOT}/usr/include/mach/mach_exc.defs"
echo '#ifdef __LP64__' > Source/mach_exc.h
echo '#include "mach_exc_x86_64.h"' >> Source/mach_exc.h
echo '#else' >> Source/mach_exc.h
echo '#include "mach_exc_i386.h"' >> Source/mach_exc.h
echo '#endif' >> Source/mach_exc.h
FILE_86=$(cat Source/mach_exc_i386User.inc)
FILE_64=$(cat Source/mach_exc_x86_64User.inc)
echo '#import "PLCrashFeatureConfig.h"' > Source/mach_exc.c
echo '#if PLCRASH_FEATURE_MACH_EXCEPTIONS' >> Source/mach_exc.c
echo '#ifdef __LP64__' >> Source/mach_exc.c
echo "$FILE_64" >> Source/mach_exc.c
echo '#else' >> Source/mach_exc.c
echo "$FILE_86" >> Source/mach_exc.c
echo '#endif' >> Source/mach_exc.c
echo '#endif' >> Source/mach_exc.c
CMD
s.prefix_header_contents = '#import "PLCrashNamespace.h"'
end
2,614 changes: 2,614 additions & 0 deletions Backtrace-PLCrashReporter.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions Brewfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
brew "xcodegen"
brew "graphviz"
brew "doxygen"
77 changes: 77 additions & 0 deletions Brewfile.lock.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
{
"entries": {
"brew": {
"xcodegen": {
"version": "2.15.1",
"bottle": {
"cellar": ":any_skip_relocation",
"prefix": "/usr/local",
"files": {
"catalina": {
"url": "https://homebrew.bintray.com/bottles/xcodegen-2.15.1.catalina.bottle.tar.gz",
"sha256": "9dc6875065ddf5816c00312328f0f4f1c801ad11c8c40af7192d3068ec1edf27"
},
"mojave": {
"url": "https://homebrew.bintray.com/bottles/xcodegen-2.15.1.mojave.bottle.tar.gz",
"sha256": "d6359a7e712f7a749184ad7f9285abaafdf1cc0187d01278645e46688f86bb8a"
}
}
}
},
"graphviz": {
"version": "2.44.0",
"bottle": {
"cellar": "/usr/local/Cellar",
"prefix": "/usr/local",
"files": {
"catalina": {
"url": "https://homebrew.bintray.com/bottles/graphviz-2.44.0.catalina.bottle.tar.gz",
"sha256": "b7622910804f75702b6124ed0a376f7d4f1c8aaa8dde38601549bb4c9a84589b"
},
"mojave": {
"url": "https://homebrew.bintray.com/bottles/graphviz-2.44.0.mojave.bottle.tar.gz",
"sha256": "cadbefa8657abfbc63d66827ca1492226d10fc6fdba9276f41e62be3b9434ba2"
},
"high_sierra": {
"url": "https://homebrew.bintray.com/bottles/graphviz-2.44.0.high_sierra.bottle.tar.gz",
"sha256": "c3b0269db2fb418c0e1b7413f10e0bec2d4f69485cfda484e8acf99cb1b86a54"
}
}
}
},
"doxygen": {
"version": "1.8.18",
"bottle": {
"cellar": ":any_skip_relocation",
"prefix": "/usr/local",
"files": {
"catalina": {
"url": "https://homebrew.bintray.com/bottles/doxygen-1.8.18.catalina.bottle.tar.gz",
"sha256": "7a9d0dcd889aba7e0e96fc62b1e5cce048adacbab03d3b924f9940b50c7b2d3c"
},
"mojave": {
"url": "https://homebrew.bintray.com/bottles/doxygen-1.8.18.mojave.bottle.tar.gz",
"sha256": "ac54e6ace4d6167a03b7c0c8dbb956f696921eb32a5507e842227220852385df"
},
"high_sierra": {
"url": "https://homebrew.bintray.com/bottles/doxygen-1.8.18.high_sierra.bottle.tar.gz",
"sha256": "630a2c57c428c9ae42d5d6f6f5986a08292db010c51f407c1bbb6224c4d9ddf7"
}
}
}
}
}
},
"system": {
"macos": {
"catalina": {
"HOMEBREW_VERSION": "2.2.16-69-g9fcaa46",
"HOMEBREW_PREFIX": "/usr/local",
"Homebrew/homebrew-core": "2688e195ecbed273bd67f14d642a353159c38cb8",
"CLT": "",
"Xcode": "11.4.1",
"macOS": "10.15.4"
}
}
}
}
Binary file removed CrashReporter.xcodeproj/TemplateIcon.icns
Binary file not shown.
Loading

0 comments on commit 72a8161

Please sign in to comment.