aboutsummaryrefslogtreecommitdiff
path: root/tests/ECMGeneratePkgConfigFile/run_test.cmake.config
blob: dad4369badfb22622dbad118fec5847e4f06a977 (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
set(CMAKE_MODULE_PATH "@MODULES_DIR@")
set(CMAKE_CURRENT_SOURCE_DIR "@CMAKE_CURRENT_SOURCE_DIR@")
set(CMAKE_CURRENT_BINARY_DIR "@CMAKE_CURRENT_BINARY_DIR@")

set(CMAKE_INSTALL_PREFIX "/usr")

include(ECMGeneratePkgConfigFile)
include(ECMSetupVersion)
include(CMakeParseArguments)


function (compare_files)
    set(options)
    set(oneValueArgs GENERATED ORIGINALS)
    set(multiValueArgs)
    cmake_parse_arguments(CF "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
    list(LENGTH CF_GENERATED count)
    foreach(i RANGE ${count})
        list(GET CF_GENERATED 0 generated_file)
        if (NOT EXISTS "${generated_file}")
            message(FATAL_ERROR "${generated_file} was not generated")
        endif()
        file(READ "${generated_file}" file_contents)
        string(STRIP "${file_contents}" file_contents)

        list(GET CF_ORIGINALS 0 original_file)
        if (NOT EXISTS "${original_file}")
            message(FATAL_ERROR "Original ${original_file} was not found")
        endif()
        file(READ "${original_file}" original_contents)
        string(STRIP "${original_contents}" original_contents)

        if(NOT original_contents STREQUAL file_contents)
            message(FATAL_ERROR "Different files: ${original_file} ${generated_file}")
        endif()
    endforeach()
endfunction()

###########################################################


ecm_setup_version(5.43 VARIABLE_PREFIX KCOREADDONS
                VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kcoreaddons_version.h"
                PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5CoreAddonsConfigVersion.cmake"
                SOVERSION 5)

message(STATUS "Test 1: no optional arguments")
set(origfiles "${CMAKE_CURRENT_SOURCE_DIR}/KF5CoreAddons.pc")

ecm_generate_pkgconfig_file(BASE_NAME KF5CoreAddons DEPS Qt5Core INCLUDE_INSTALL_DIR /usr/KCoreAddons FILENAME_VAR OutputFile)

compare_files(GENERATED ${OutputFile}
              ORIGINALS ${origfiles})
file(REMOVE ${OutputFile})