File: License.cmake

package info (click to toggle)
cmake 4.2.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 152,456 kB
  • sloc: ansic: 403,896; cpp: 303,920; sh: 4,105; python: 3,583; yacc: 3,106; lex: 1,279; f90: 538; asm: 471; lisp: 375; cs: 270; java: 266; fortran: 239; objc: 215; perl: 213; xml: 198; makefile: 111; javascript: 83; pascal: 63; tcl: 55; php: 25; ruby: 22
file content (31 lines) | stat: -rw-r--r-- 1,028 bytes parent folder | download | duplicates (2)
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
cmake_minimum_required(VERSION 4.0)

include(Setup.cmake)

set(CMAKE_FIND_PACKAGE_SORT_ORDER NAME)
set(CMAKE_FIND_PACKAGE_SORT_DIRECTION DEC)

find_package(LicenseTest REQUIRED)

function(expect_license COMPONENT EXPECTED)
  if(TARGET ${COMPONENT})
    get_target_property(license ${COMPONENT} "SPDX_LICENSE")
    if (NOT "${license}" STREQUAL "${EXPECTED}")
      message(SEND_ERROR
        "Target ${COMPONENT} has wrong license '${license}'"
        " (expected '${EXPECTED}') !")
    endif()
  else()
    message(SEND_ERROR "Expected target ${COMPONENT} was not found !")
  endif()
endfunction()

expect_license(LicenseTest::SpecifiedOnTarget "Apache-2.0")
expect_license(LicenseTest::InheritFromRoot "BSD-3-Clause")
expect_license(LicenseTest::InheritFromAppendix "Apache-2.0")
expect_license(LicenseTest::DisableInheritance "license-NOTFOUND")

find_package(PackageLicenseTest REQUIRED)

expect_license(PackageLicenseTest::SpecifiedOnTarget "Apache-2.0")
expect_license(PackageLicenseTest::InheritFromRoot "BSD-3-Clause")