Abdes Asap Versions Save

A modern cmake starter project for C++ with a complete build lifecycle, testing, dependency management, etc. Portable across Linux, OS X and Windows.

v4.4.6

1 year ago
  • Fix top level install not working properly (4ac4a31)

    CMAKE_MODULE_PATH should be reset at the top level project to make sure that every sub-project uses its own version of the cmake files. Additionally, refactor the top-level install code to simplify it and remove the need to call a function in the top-level project cmake script.

v4.4.5

1 year ago

Bug Fixes

  • #20 local install should use CMAKE_INSTALL_PREFIX to set variables (2e1f1d4)
  • #20 use CMAKE_INSTALL_PREFIX to set variables (2fffd96)
  • wrong variable used of target name (04b5343)

v4.4.3

1 year ago

Bug Fixes

  • #19 use generator expressions instead of CMAKE_BUILD_TYPE (857d299)

    Code that checks CMAKE_BUILD_TYPE to set specific compiler flags or defines is problematic. Generator expressions should be used instead to handle configuration-specific logic correctly, regardless of the generator used.

  • use cmake-format extension default behavior (a5d5c5e)

    No need to force the cmake-format config file location as the command is run in the workspace root by default and it will look for and find the config file named cmake-format.yaml.

v4.4.4

1 year ago

Bug Fixes

  • wrong variable used for target name (04b5343)

v4.4.2

1 year ago

Bug Fixes

  • #13 move "caexcludepath" to dev-windows and exclude CPM cache (0571714)
  • #14 upgrade CPM to 0.35.6 (695414b)
  • #15 get target type before testing it (b8bd378)
  • #16 use CMAKE_CURRENT_SOURCE_DIR instead of CMAKE_SOURCE_DIR for cmake includes (4ac6928)
  • #17 git should not be required (2c76104)
  • #18 enforce end of line to LF (943ae47)

v4.4.1

1 year ago

v4.4.0

1 year ago

v4.3.6

1 year ago

v4.3.5

1 year ago

Bug Fixes

  • #6: properly setup install layout (71fd5d5), closes #6

    When the install prefix matches a system install directory (i.e. /usr or /usr/local), the project will be installed according to the conventions of GnuInstallDirs, otherwise, it will be installed using a simplified local layout as following:

    # Install into local directory
    set(ASAP_INSTALL_ROOT      ".")                                           # ./
    set(ASAP_INSTALL_LIB       "lib")                                         # ./lib
    set(ASAP_INSTALL_SHARED    "${ASAP_INSTALL_LIB}")                         # ./lib
    set(ASAP_INSTALL_CMAKE     "${ASAP_INSTALL_ROOT}/share/cmake/${META_PROJECT_NAME}") # ./share/cmake/<project>
    set(ASAP_INSTALL_PKGCONFIG "${ASAP_INSTALL_ROOT}/share/pkgconfig")        # ./share/pkgconfig
    set(ASAP_INSTALL_EXAMPLES  "${ASAP_INSTALL_ROOT}")                        # ./
    set(ASAP_INSTALL_DATA      "${ASAP_INSTALL_ROOT}")                        # ./data
    set(ASAP_INSTALL_BIN       "bin")                                         # ./bin
    set(ASAP_INSTALL_INCLUDE   "include")                                     # ./include
    set(ASAP_INSTALL_DOC       "doc")                                         # ./doc
    set(ASAP_INSTALL_SHORTCUTS "misc")                                        # ./misc
    set(ASAP_INSTALL_ICONS     "misc")                                        # ./misc
    set(ASAP_INSTALL_INIT      "misc")                                        # ./misc
  • #7: add build and ops commit types (0d9187e), closes #7

    Added the following two commit types:

    • build Commits, that affect build components like build tool, ci pipeline, dependencies, project version, ...
    • ops Commits, that affect operational components like infrastructure, deployment, backup, recovery, ...
  • #8: add standard ccov excluded directories by default (a8aabb3), closes #8

    The standard exclusions are:

    • anything matching */test/* in its path, i.e. files used to write tests,
    • anything located inside */.cache/CPM/*, i.e. third party modules included using CPM,
    • anything under /usr, i.e. system files

Full Changelog: https://github.com/abdes/asap/compare/v4.3.4...v4.3.5

v4.3.4

1 year ago

Bug Fixes

  • alias variable to enable/disable building tests (3992b0f)
  • typo in variable name to enable/disable building tests (9950fe2)