1MACHO_CURRENT_VERSION
2---------------------
3
4.. versionadded:: 3.17
5
6What current version number is this target for Mach-O binaries.
7
8For shared libraries on Mach-O systems (e.g. macOS, iOS)
9the :prop_tgt:`MACHO_COMPATIBILITY_VERSION` property corresponds to the
10*compatibility version* and ``MACHO_CURRENT_VERSION`` corresponds to the
11*current version*.  These are both embedded in the shared library binary
12and can be checked with the ``otool -L <binary>`` command.
13
14It should be noted that the ``MACHO_CURRENT_VERSION`` and
15:prop_tgt:`MACHO_COMPATIBILITY_VERSION` properties do not affect the file
16names or version-related symlinks that CMake generates for the library.
17The :prop_tgt:`VERSION` and :prop_tgt:`SOVERSION` target properties still
18control the file and symlink names.  The ``install_name`` is also still
19controlled by :prop_tgt:`SOVERSION`.
20
21When ``MACHO_CURRENT_VERSION`` and :prop_tgt:`MACHO_COMPATIBILITY_VERSION`
22are not given, :prop_tgt:`VERSION` and :prop_tgt:`SOVERSION` are used for
23the version details to be embedded in the binaries respectively.
24The ``MACHO_CURRENT_VERSION`` and :prop_tgt:`MACHO_COMPATIBILITY_VERSION`
25properties only need to be given if the project needs to decouple the file
26and symlink naming from the version details embedded in the binaries
27(e.g. to match libtool conventions).
28