~unity-2d-team/bamf-qt/trunk

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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
project(libQtBamf)
cmake_minimum_required(VERSION 2.8)

# Dependencies
include(FindPkgConfig)
find_package(Qt4 REQUIRED)

# Build flags
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -Wall -std=c++0x")

# Sources
## QtBamf
set(QtBamf_SRCS
    bamf-application.cpp
    bamf-application-proxy.cpp
    bamf-control.cpp
    bamf-control-proxy.cpp
    bamf-factory.cpp
    bamf-indicator.cpp
    bamf-indicator-proxy.cpp
    bamf-matcher.cpp
    bamf-matcher-proxy.cpp
    bamf-view.cpp
    bamf-view-proxy.cpp
    bamf-window.cpp
    bamf-window-proxy.cpp
    )

set(QtBamf_MOC_HDRS
    bamf-application.h
    bamf-application-proxy.h
    bamf-control.h
    bamf-control-proxy.h
    bamf-factory.h
    bamf-indicator.h
    bamf-indicator-proxy.h
    bamf-list.h
    bamf-matcher.h
    bamf-matcher-proxy.h
    bamf-view.h
    bamf-view-proxy.h
    bamf-window.h
    bamf-window-proxy.h
    )

qt4_wrap_cpp(QtBamf_MOC_SRCS ${QtBamf_MOC_HDRS})

## QtBamfQml
set(QtBamfQml_SRCS
    bamf-plugin.cpp
    )

set(QtBamfQml_MOC_HDRS
    bamf-plugin.h
    )

qt4_wrap_cpp(QtBamfQml_MOC_SRCS ${QtBamfQml_MOC_HDRS})

# Build
add_definitions(-DQT_NO_KEYWORDS)

include_directories(
    ${CMAKE_CURRENT_BINARY_DIR}
    ${QT_INCLUDE_DIR}
    ${QT_QTCORE_INCLUDE_DIR}
    ${QT_QTGUI_INCLUDE_DIR}
    ${QT_QTDBUS_INCLUDE_DIR}
    ${QT_QTDECLARATIVE_INCLUDE_DIR}
    )

## QtBamf
add_library(QtBamf SHARED ${QtBamf_SRCS} ${QtBamf_MOC_SRCS})

set_target_properties(QtBamf PROPERTIES
    SOVERSION 1
    VERSION 1.0.0
    )

target_link_libraries(QtBamf
    ${QT_QTCORE_LIBRARIES}
    ${QT_QTDBUS_LIBRARIES}
    )

## QtBamfQml
add_library(QtBamfQml SHARED ${QtBamfQml_SRCS} ${QtBamfQml_MOC_SRCS})

target_link_libraries(QtBamfQml
    QtBamf
    ${QT_QTDECLARATIVE_LIBRARIES}
    )

## test
add_executable(test test.cpp)
target_link_libraries(test
    QtBamf
    ${QT_QTCORE_LIBRARIES}
    ${QT_QTGUI_LIBRARIES}
    ${QT_QTDECLARATIVE_LIBRARIES}
    )
add_custom_target(check)

# Install
# You can override the directory in which we install QML imports
# by setting QT_IMPORTS_DIR to a path on the cmake command line
if(QT_IMPORTS_DIR)
  set(qt_imports_dir ${QT_IMPORTS_DIR})
else()
  # Query qmake directly because of
  # https://bugs.launchpad.net/ubuntu/+source/cmake/+bug/894805
  _qt4_query_qmake(QT_INSTALL_IMPORTS qt_imports_dir)
endif()
set(IMPORT_INSTALL_DIR ${qt_imports_dir}/bamf)
set(INCLUDE_INSTALL_DIR include/QtBamf)
message(STATUS "Installing imports in ${IMPORT_INSTALL_DIR}")

## QtBamf
install(TARGETS QtBamf
    LIBRARY DESTINATION lib${LIB_SUFFIX}
    )

install(FILES
    bamf-application.h
    bamf-control.h
    bamf-factory.h
    bamf-indicator.h
    bamf-list.h
    bamf-matcher.h
    bamf-view.h
    bamf-window.h
    DESTINATION ${INCLUDE_INSTALL_DIR}
    )

# FIXME: Generate from ${CMAKE_INSTALL_PREFIX}
install(FILES libqtbamf.pc
    DESTINATION lib/pkgconfig
    )

## QtBamfQml
install(TARGETS QtBamfQml
    LIBRARY DESTINATION ${IMPORT_INSTALL_DIR}
    )

install(FILES qmldir
    DESTINATION ${IMPORT_INSTALL_DIR}
    )