Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yulingtianxia/apporderfiles
The easiest way to generate order files for Mach-O using Clang. Improving App Performance.
https://github.com/yulingtianxia/apporderfiles
Last synced: 14 days ago
JSON representation
The easiest way to generate order files for Mach-O using Clang. Improving App Performance.
- Host: GitHub
- URL: https://github.com/yulingtianxia/apporderfiles
- Owner: yulingtianxia
- License: mit
- Created: 2019-08-31T02:45:10.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2020-10-16T06:06:45.000Z (about 4 years ago)
- Last Synced: 2024-10-19T16:09:54.163Z (25 days ago)
- Language: Objective-C
- Homepage: http://yulingtianxia.com/blog/2019/09/01/App-Order-Files/
- Size: 23.4 KB
- Stars: 655
- Watchers: 10
- Forks: 126
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Platform](https://img.shields.io/cocoapods/p/AppOrderFiles.svg?style=flat)](http://cocoapods.org/pods/AppOrderFiles)
[![Version](https://img.shields.io/cocoapods/v/AppOrderFiles.svg?style=flat)](http://cocoapods.org/pods/AppOrderFiles)
[![GitHub release](https://img.shields.io/github/release/yulingtianxia/AppOrderFiles.svg)](https://github.com/yulingtianxia/AppOrderFiles/releases)
[![Twitter Follow](https://img.shields.io/twitter/follow/yulingtianxia.svg?style=social&label=Follow)](https://twitter.com/yulingtianxia)# AppOrderFiles
The easiest way to generate order files for Mach-O using Clang SanitizerCoverage. Improving your App Performance.
Enjoy it!!!
## π Article
- [App δΊθΏεΆζδ»Άιζε·²η»θ’«η©εδΊ](http://yulingtianxia.com/blog/2019/09/01/App-Order-Files/)
## π Feature
- [x] Swift/Objective-C/C/C++
- [x] All Methods and Functions
- [x] All Blocks
- [x] iOS/macOS/tvOS/watchOS## π Usage
Just call `AppOrderFiles()`.
```objc
AppOrderFiles(^(NSString *orderFilePath) {
NSLog(@"OrderFilePath:%@", orderFilePath);
});
```After generating "app.order" file, just move it to your project workspace, and fill in "Order File" in build settings.
AppOrderFiles also print results in debug console.
## π² Installation
**NOTE**: In build settings of your Xcode project/target, add `-fsanitize-coverage=func,trace-pc-guard` under "Other C Flags". If you are using Swift, also add `-sanitize-coverage=func` and `-sanitize=undefined` under "Other Swift Flags".
### CocoaPods
[CocoaPods](http://cocoapods.org) is a dependency manager for Cocoa projects. You can install it with the following command:
```bash
$ gem install cocoapods
```To integrate AppOrderFiles into your Xcode project using CocoaPods, specify it in your `Podfile`:
```
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
target 'MyApp' do
pod 'AppOrderFiles'
end
```You need replace "MyApp" with your project's name.
Then, run the following command:
```bash
$ pod install
```AppOrderFiles works under Clang SanitizerCoverage, you can modify Xcode build settings manually, or using `Podfile`.
```
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['OTHER_CFLAGS'] = '-fsanitize-coverage=func,trace-pc-guard'
config.build_settings['OTHER_SWIFT_FLAGS'] = '-sanitize-coverage=func -sanitize=undefined'
end
end
end
```## π Reference
- [Clang 10 documentation](https://clang.llvm.org/docs/SanitizerCoverage.html#tracing-pcs)
- [Improving App Performance with Order Files](https://medium.com/@michael.eisel/improving-app-performance-with-order-files-c7fff549907f)## β€οΈ Contributed
- If you **need help** or you'd like to **ask a general question**, open an issue.
- If you **found a bug**, open an issue.
- If you **have a feature request**, open an issue.
- If you **want to contribute**, submit a pull request.## π¨π»βπ» Author
yulingtianxia, [email protected]