Skip to content

macOS make: APP_VERSION / APP_BUILD for the app's Info.plist (from #3394) - #8592

Merged
danoli3 merged 1 commit into
openframeworks:masterfrom
danoli3:app-version
Oct 17, 2026
Merged

danoli3 merged 1 commit into
openframeworks:masterfrom
danoli3:app-version

Conversation

@danoli3

@danoli3 danoli3 commented Oct 16, 2026

Copy link
Copy Markdown
Member

Brings back the idea from #3394 by @vdonnefort (2014): set a macOS app's version from the project's config.make. The files that PR changed have since been rewritten, so this re-implements it on the current makefiles; Vincent is credited as co-author.

Change

  • config.macos.default.mk / config.osx.default.mk:
    • APP_VERSION (default 1.0) → CFBundleShortVersionString, the version in the About window. It was hardcoded to 1.0.
    • APP_BUILD (default 1) → CFBundleVersion. Until now this was left as the literal text ${CURRENT_PROJECT_VERSION} in every make-built app.
  • scripts/templates/macos/config.make / osx/config.make: documented, commented-out defaults.

Usage, in config.make:

APP_VERSION = 2.3.4
APP_BUILD = 42

or make Release APP_VERSION=2.3.4 APP_BUILD=42.

Tested (macOS, make, emptyExample)

CFBundleShortVersionString CFBundleVersion
defaults 1.0 1 (was ${CURRENT_PROJECT_VERSION})
command line 2.3.4 42
config.make 3.0.1 7

plutil -lint passes on the generated plist. The same names are used by the CMake build (#8586).

Supersedes #3394.

Set APP_VERSION (CFBundleShortVersionString, shown in the About window)
and APP_BUILD (CFBundleVersion) in a project's config.make or on the
make command line; defaults 1.0 and 1. The version was hardcoded to 1.0,
and CFBundleVersion was left as the literal ${CURRENT_PROJECT_VERSION}.

Based on openframeworks#3394.

Co-authored-by: Vincent Donnefort <vdonnefort@gmail.com>
danoli3 added a commit to danoli3/openFrameworks that referenced this pull request Oct 16, 2026
Same names as the makefiles' config.make (openframeworks#8592): APP_VERSION sets
CFBundleShortVersionString (default: project(... VERSION), else 1.0) and
APP_BUILD sets CFBundleVersion (default 1), also as Xcode's
MARKETING_VERSION / CURRENT_PROJECT_VERSION.

Based on openframeworks#3394.

Co-authored-by: Vincent Donnefort <vdonnefort@gmail.com>
@danoli3
danoli3 merged commit e01e8ff into openframeworks:master Oct 17, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant