Welcome to mirror list, hosted at ThFree Co, Russian Federation.

write_version_files.cmake - github.com/bareos/bareos.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 8d812c46bcede87662e78b1380cec12a816386c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# BAREOSĀ® - Backup Archiving REcovery Open Sourced
#
# Copyright (C) 2019-2022 Bareos GmbH & Co. KG
#
# This program is Free Software; you can redistribute it and/or modify it under
# the terms of version three of the GNU Affero General Public License as
# published by the Free Software Foundation and included in the file LICENSE.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
# details.
#
# You should have received a copy of the GNU Affero General Public License along
# with this program; if not, write to the Free Software Foundation, Inc., 51
# Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

cmake_minimum_required(VERSION 3.17)
cmake_policy(VERSION 3.17...3.19)

set(CMAKE_MODULE_PATH
    "${CMAKE_CURRENT_LIST_DIR}/cmake" "${CMAKE_CURRENT_LIST_DIR}/core/cmake"
    "${CMAKE_CURRENT_LIST_DIR}/webui/cmake"
)

find_package(Git)
include(BareosVersionFromGit)

if(GIT_DESCRIBE_VERSION)
  if(NOT DEFINED VERSION_STRING)
    set(VERSION_STRING "${GIT_DESCRIBE_VERSION}")
  endif()
  set(VERSION_TIMESTAMP "${GIT_COMMIT_TIMESTAMP}")
else()
  message(
    FATAL_ERROR
      "VERSION_STRING not set, BareosVersion.cmake not found and no version data from git available.\n"
      "For more information why this happened and how to fix it, please see "
      "https://docs.bareos.org/DeveloperGuide/AutomaticVersionGeneration.html#troubleshooting"
  )
endif()

set(version_file_header "# autogenerated by write_version_files.cmake")
set(version_file_contents
    "${version_file_header}\nset(VERSION_STRING    \"${VERSION_STRING}\")\nset(VERSION_TIMESTAMP \"${VERSION_TIMESTAMP}\")\n"
)

message(
  STATUS
    "Configuring source tree for version ${VERSION_STRING} with timestamp ${VERSION_TIMESTAMP}"
)
set(version_file_name "${CMAKE_CURRENT_LIST_DIR}/cmake/BareosVersion.cmake")
message(STATUS "Writing ${version_file_name}")
file(WRITE ${version_file_name} "${version_file_contents}")