aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside-tools/CMakeLists.txt
blob: 559c9faa18d5667a4aafce40af24edf8395f8727 (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
55
56
57
58
59
60
61
62
63
cmake_minimum_required(VERSION 3.16)
project(pyside-tools)

# Don't display "up-to-date / install" messages when installing, to reduce visual clutter.
if (QUIET_BUILD)
    set(CMAKE_INSTALL_MESSAGE NEVER)
endif()

find_package(Qt6 COMPONENTS Core HostInfo)

if(NOT NO_QT_TOOLS STREQUAL "yes")
    set(TOOLS_PATH "${QT6_INSTALL_PREFIX}/${QT6_HOST_INFO_BINDIR}")
    set(LIBEXEC_PATH "${QT6_INSTALL_PREFIX}/${QT6_HOST_INFO_LIBEXECDIR}")

    set(UIC_PATH "${LIBEXEC_PATH}/uic${CMAKE_EXECUTABLE_SUFFIX}")
    set(RCC_PATH "${LIBEXEC_PATH}/rcc${CMAKE_EXECUTABLE_SUFFIX}")
    if (APPLE)
        set(DESIGNER_PATH "${TOOLS_PATH}/Designer.app")
    else()
        set(DESIGNER_PATH "${TOOLS_PATH}/designer${CMAKE_EXECUTABLE_SUFFIX}")
    endif()

    install(FILES "${UIC_PATH}"
            DESTINATION bin
            PERMISSIONS
            OWNER_EXECUTE OWNER_WRITE OWNER_READ
            GROUP_EXECUTE GROUP_READ
            WORLD_EXECUTE WORLD_READ)

    install(FILES "${RCC_PATH}"
            DESTINATION bin
            PERMISSIONS
            OWNER_EXECUTE OWNER_WRITE OWNER_READ
            GROUP_EXECUTE GROUP_READ
            WORLD_EXECUTE WORLD_READ)

    if (EXISTS ${DESIGNER_PATH})
        if (APPLE)
            install(DIRECTORY "${DESIGNER_PATH}"
                    DESTINATION bin
                    FILE_PERMISSIONS
                    OWNER_EXECUTE OWNER_WRITE OWNER_READ
                    GROUP_EXECUTE GROUP_READ
                    WORLD_EXECUTE WORLD_READ)
        else()
            install(FILES "${DESIGNER_PATH}"
                    DESTINATION bin
                    PERMISSIONS
                    OWNER_EXECUTE OWNER_WRITE OWNER_READ
                    GROUP_EXECUTE GROUP_READ
                    WORLD_EXECUTE WORLD_READ)
        endif()
    endif()

endif()

# pyside6-rcc, pyside6-uic, pyside6-designer, shiboken and pyside6-lupdate entrypoints
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/pyside_tool.py
        DESTINATION bin
        PERMISSIONS
        OWNER_EXECUTE OWNER_WRITE OWNER_READ
        GROUP_EXECUTE GROUP_READ
        WORLD_EXECUTE WORLD_READ)