diff --git a/CMakeLists.txt b/CMakeLists.txt index 1719f1d..03b739c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -339,12 +339,13 @@ set(DUMPNODES_SCRIPTS dumpnodes/mkcolors ) +set(PACKAGING_VERSION "1" CACHE STRING "Version of the packaging - '1' by default; increment when building a new package from the same sources (i.e. from the same commit)") #set(CPACK_SET_DESTDIR ON) set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Map generator for Minetest") set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_HOME_DIRECTORY}/package-description.txt") set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR}) set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR}) -set(CPACK_PACKAGE_VERSION_PATCH 1) +set(CPACK_PACKAGE_VERSION_PATCH ${PACKAGING_VERSION}) set(CPACK_PACKAGE_VENDOR "Minetestmapper") set(CPACK_PACKAGE_CONTACT "(Unknown)") set(CPACK_PACKAGE_URL "https://github.com/Rogier-5/minetest-mapper-cpp") @@ -366,7 +367,7 @@ endif(NOT WIN32) if(WIN32) set(PACKAGING_FLAT 1) set(CPACK_GENERATOR ZIP) - set(CPACK_PACKAGE_FILE_NAME "${PROJECT_NAME}-${VERSION_STRING}-win32") + set(CPACK_PACKAGE_FILE_NAME "${PROJECT_NAME}-${VERSION_STRING}.${CPACK_PACKAGE_VERSION_PATCH}-win32") install(FILES ${META_FILES} DESTINATION ".") install(FILES ${COLORS_FILES} DESTINATION ".") @@ -426,7 +427,7 @@ else(WIN32) if(ARCHIVE_PACKAGE_NAME) set(CPACK_TGZ_PACKAGE_FILE_NAME "${ARCHIVE_PACKAGE_NAME}") else(ARCHIVE_PACKAGE_NAME) - set(CPACK_TGZ_PACKAGE_FILE_NAME "${PROJECT_NAME}-${VERSION_STRING}-${PACKAGE_TARGET_ARCHITECTURE}") + set(CPACK_TGZ_PACKAGE_FILE_NAME "${PROJECT_NAME}-${VERSION_STRING}.${CPACK_PACKAGE_VERSION_PATCH}-${PACKAGE_TARGET_ARCHITECTURE}") endif(ARCHIVE_PACKAGE_NAME) message(STATUS "Archive package name: ${CPACK_TGZ_PACKAGE_FILE_NAME}.tar.gz") @@ -471,7 +472,7 @@ else(WIN32) set(CPACK_DEBIAN_PACKAGE_FILE_NAME "${PROJECT_NAME}_${VERSION_STRING}-${CPACK_PACKAGE_VERSION_PATCH}_${DEBIAN_PACKAGE_ARCHITECTURE}") message(STATUS "Debian package name: ${CPACK_DEBIAN_PACKAGE_FILE_NAME}.deb") - set(CPACK_DEBIAN_PACKAGE_VERSION "${VERSION_STRING}") + set(CPACK_DEBIAN_PACKAGE_VERSION "${VERSION_STRING}-${CPACK_PACKAGE_VERSION_PATCH}") file(READ "${CPACK_PACKAGE_DESCRIPTION_FILE}" CPACK_DEBIAN_PACKAGE_DESCRIPTION) # Unfortunately, cpack does not use (and adequately format) the description file - must do it ourselves string(STRIP "${CPACK_DEBIAN_PACKAGE_DESCRIPTION}" CPACK_DEBIAN_PACKAGE_DESCRIPTION) @@ -502,7 +503,7 @@ else(WIN32) set(CPACK_RPM_PACKAGE_FILE_NAME "${PROJECT_NAME}-${VERSION_STRING}-${CPACK_PACKAGE_VERSION_PATCH}-${PACKAGE_TARGET_ARCHITECTURE}") message(STATUS "Rpm package name: ${CPACK_RPM_PACKAGE_FILE_NAME}.rpm") - set(CPACK_RPM_PACKAGE_VERSION "${VERSION_STRING}") + set(CPACK_RPM_PACKAGE_VERSION "${VERSION_STRING}.${CPACK_PACKAGE_VERSION_PATCH}") set(CPACK_RPM_PACKAGE_GROUP "Amusements/Games") set(CPACK_RPM_PACKAGE_LICENSE "GPLv2.1+") set(CPACK_RPM_PACKAGE_URL "${CPACK_PACKAGE_URL}") diff --git a/doc/build-instructions.rst b/doc/build-instructions.rst index e94b57b..ba079ba 100644 --- a/doc/build-instructions.rst +++ b/doc/build-instructions.rst @@ -289,6 +289,18 @@ CREATE_FLAT_PACKAGE: For ``.rpm`` package creation, rpmbuild is required. +PACKAGING_VERSION: + The version number of the packaging itself. It is appended to the software version + number when packaging. + + This number should normally be set to '1', but it should be increased when + a package has been installed or distributed, and a newer package is created from + from the same sources (i.e. from the same git commit). + + This can happen for instance, if a problem was caused by the packaging itself, + or if a bug in a library was fixed, and minetestmapper needs to be recompiled + to incorporate that fix. + CMAKE_INSTALL_PREFIX: The install location. Should probably be ``/usr`` or ``/usr/local`` on Linux and BSD variants.