npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

cmake-ios

v1.0.0

Published

iOS utilities for CMake

Downloads

2

Readme

cmake-ios

Functions for streamlining the creation of iOS application bundles (.app files), including icon management, code signing, and more.

API

find_codesign

Locates the codesign command-line utility required for code signing iOS applications.

find_codesign(<result>)
<result>

An output variable where the path to the codesign tool will be stored.

find_iconutil

Locates the iconutil command-line utility used for manipulating iOS icon sets (.icns files).

find_iconutil(<result>)
<result>

An output variable where the path to the iconutil tool will be stored.

add_ios_entitlements

Generates a iOS Entitlements.plist file for specifying special permissions required by the application.

add_ios_entitlements(
  <target>
  [DESTINATION <path>]
  ENTITLEMENTS <entitlement...>
)
<target>

The name of the CMake target to create.

DESTINATION <path>

The location to save the generated Entitlements.plist. Defaults to "Entitlements.plist" in the build directory.

ENTITLEMENTS <entitlement...>

A list of entitlement keys to be included.

add_ios_iconset

Creates a iOS icon set (.icns file) from a collection of image files.

add_ios_iconset(
  [DESTINATION <path>]
  ICONS [<path> 16|32|64|128|256|512 1x|2x]...
  [DEPENDS <target...>]
)
<target>

The name of the CMake target to create.

DESTINATION <path>

The output location for the .icns file. Defaults to "icon.icns" in the build directory.

ICONS <path> <size> <scale>

A sequence of arguments specifying:

  • <path>: Path to the image file.
  • <size>: Size of the icon variant (e.g., 16, 32, 128)
  • <scale>: Scale factor (e.g., 1x, 2x)

add_ios_bundle_info

Generates the Info.plist file with iOS application metadata.

add_ios_bundle_info(
  <target>
  [DESTINATION <path>]
  NAME <string>
  VERSION <string>
  DISPLAY_NAME <string>
  PUBLISHER_DISPLAY_NAME <string>
  IDENTIFIER <identifier>
  CATEGORY <string>
  [TARGET <target>]
  [EXECUTABLE <path>]
)
<target>

The name of the CMake target to create.

DESTINATION <path>

Specifies the location to save the Info.plist file. Defaults to "Info.plist" in the build directory.

NAME <string>

The name of the application.

VERSION <string>

The semantic version of the application.

DISPLAY_NAME <string>

The name displayed to users. Defaults to "${NAME}".

PUBLISHER_DISPLAY_NAME <string>

The name of the publisher.

IDENTIFIER <string>

A unique bundle identifier for the application.

CATEGORY <string>

Category for the app in the iOS App Store.

TARGET <target>

An existing CMake target representing the main application executable.

EXECUTABLE <path>

Path to the application executable. Use if not providing the TARGET option.

add_ios_bundle

The core function to create a complete iOS application bundle (.app file).

add_ios_bundle(
  <target>
  DESTINATION <path>
  [INFO <path>]
  [ICON <path>]
  [TARGET <target>]
  [EXECUTABLE <path>]
  [RESOURCES [FILE|DIR <from> <to>]...]
  [DEPENDS <target...>]
)
<target>

The name of the CMake target to create for the iOS application.

DESTINATION <path>

The desired output path for the generated application bundle.

INFO <path>

Path to an Info.plist file. Defaults to "Info.plist" in the build directory.

ICON <path>

Path to a .icns file containing the application icon. Defaults to "icon.icns" in the build directory.

TARGET <target>

Name of a CMake target representing the core executable of the application.

EXECUTABLE <path>

Direct path to the application executable. Use if not providing TARGET.

RESOURCES [FILE|DIR <from> <to>] ...

A list of additional resources to include in the app bundle.

FILE <from> <to>

Copies a single file from <from> to <to> location within the Resources directory of the bundle.

DIR <from> <to>

Copies an entire directory from <from> to <to> within the Resources directory of the bundle.

DEPENDS <target...>

A list of CMake targets on which the bundle creation process depends.

code_sign_ios

Code signs a iOS application or bundle, enhancing security.

code_sign_ios(
  <target>
  [PATH <path>]
  [TARGET <target>]
  [ENTITLEMENTS <path>]
  IDENTITY <string>
  [KEYCHAIN <string>]
  [DEPENDS <target...>]
)
<target>

The name of the CMake target to create.

PATH <path>

The path to the iOS application bundle or executable to be signed.

TARGET <target>

A CMake target representing the application to be signed. Alternative to providing PATH.

ENTITLEMENTS <path>

The path to an Entitlements.plist file specifying permissions for the application. Defaults to "Entitlements.plist" in the build directory.

IDENTITY <string>

The code signing identity to use.

KEYCHAIN <string>

The path to the keychain containing the code signing certificate and private key.

License

Apache-2.0