Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/milend/hmap
hmap is a command line tool written in Swift to work with Clang header maps produced by Xcode.
https://github.com/milend/hmap
clang command-line command-line-tool swift xcode
Last synced: about 2 months ago
JSON representation
hmap is a command line tool written in Swift to work with Clang header maps produced by Xcode.
- Host: GitHub
- URL: https://github.com/milend/hmap
- Owner: milend
- License: mit
- Created: 2017-08-20T19:36:22.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-02-13T17:11:25.000Z (almost 3 years ago)
- Last Synced: 2024-10-30T00:03:27.584Z (3 months ago)
- Topics: clang, command-line, command-line-tool, swift, xcode
- Language: Swift
- Homepage:
- Size: 59.6 KB
- Stars: 311
- Watchers: 7
- Forks: 37
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
# What is this?
`hmap` is a command line tool to work with Clang header maps produced by Xcode.
It is written in Swift.NOTE: I've also created [chmap](https://github.com/milend/chmap), a cross-platform tool which provides similar functionality as `hmap`.
# How to Get
- [Homebrew](https://brew.sh): `brew install milend/taps/hmap`
- Grab a [release](https://github.com/milend/hmap/releases) from GitHub.
- Build from source. See instructions below.# How to Use
To print the contents of a header map:
hmap print ~/path/to/header_map.hmap
To convert the contents of a binary header map to JSON:
hmap convert ~/header_map.hmap ~/header_map.json
`hmap` deduces file formats by looking at the file extensions of the paths.
You can also use the `convert` command to create a binary header map from JSON:
hmap convert ~/header_map.json ~/header_map.hmap
You can discover all the commands and options by using `hmap --help`.
## Requirements
- hmap requires Swift 5.
- Starting from Xcode 10.2, Swift 5 command line tools require the Swift 5 runtime libraries which are included in macOS Majave 10.4.4. If you're running an earlier version of macOS, you need to install the [Swift 5 Runtime Support for Command Line Tools](https://support.apple.com/kb/DL1998).# Building from Source
## Xcode
Before building with Xcode, you must download all dependencies by running:
swift package update
Then generate an Xcode project by running:
swift package generate-xcodeproj
## Swift Package Manager
If you would like to build from the command line, run:
swift build
To produce a release build suitable for distribution, run:
swift build -c release
To verify that all tests pass, run:
swift test