aboutsummaryrefslogtreecommitdiff
path: root/src/CMakeLists.txt
blob: ee9f05439bdc197849f1b71a2de408888331a78f (plain) (blame)
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
project(libsrc)

cmake_minimum_required(VERSION 2.4.0)

SET(QT_USE_QTXML TRUE)
SET(QT_USE_QTNETWORK TRUE)

INCLUDE(UsePkgConfig)
INCLUDE(FindQt4)

find_package(Qt4 REQUIRED) # find and setup Qt4 for this project
include(${QT_USE_FILE})

ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(-DQT_NO_DEBUG)
ADD_DEFINITIONS(-DQT_THREAD)

include_directories(${CMAKE_CURRENT_BINARY_DIR})

SET(QT_INCLUDES
  ${QT_INCLUDES}
  ${CMAKE_CURRENT_BINARY_DIR}/../../../
)

# libqmmp
include_directories(${CMAKE_CURRENT_BINARY_DIR}/../lib)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../lib)
link_directories(${CMAKE_INSTALL_PREFIX}/lib)

SET(libsrc_SRCS
  aboutdialog.cpp
  addurldialog.cpp
  balancebar.cpp
  button.cpp
  configdialog.cpp
  display.cpp
  dock.cpp
  eqgraph.cpp
  eqpreset.cpp
  eqslider.cpp
  eqtitlebar.cpp
  eqwidget.cpp
  filedialog.cpp
  fileloader.cpp
  jumptotrackdialog.cpp
  keyboardmanager.cpp
  listwidget.cpp
  logscale.cpp
  mainvisual.cpp
  mainwindow.cpp
  mediafile.cpp
  monostereo.cpp
  mp3player.cpp
  number.cpp
  pixmapwidget.cpp
  playlistcontrol.cpp
  playlist.cpp
  playlistformat.cpp
  playlistmodel.cpp
  playlistslider.cpp
  playlisttitlebar.cpp
  playstate.cpp
  playstatus.cpp
  pluginitem.cpp
  positionbar.cpp
  preseteditor.cpp
  qmmpstarter.cpp
  skin.cpp
  skinreader.cpp
  symboldisplay.cpp
  textscroller.cpp
  timeindicator.cpp
  titlebar.cpp
  togglebutton.cpp
  unixdomainsocket.cpp
  visualmenu.cpp
  volumebar.cpp
  fft.c
)

SET(libsrc_MOC_HDRS
  aboutdialog.h
  addurldialog.h
  balancebar.h
  button.h
  configdialog.h
  display.h
  dock.h
  eqgraph.h
  eqpreset.h
  eqslider.h
  eqtitlebar.h
  eqwidget.h
  fft.h
  filedialog.h
  fileloader.h
  inlines.h
  jumptotrackdialog.h
  keyboardmanager.h
  listwidget.h
  logscale.h
  mainvisual.h
  mainwindow.h
  mediafile.h
  monostereo.h
  number.h
  pixmapwidget.h
  playlistcontrol.h
  playlistformat.h
  playlist.h
  playlistmodel.h
  playlistslider.h
  playlisttitlebar.h
  playstate.h
  playstatus.h
  pluginitem.h
  positionbar.h
  preseteditor.h
  qmmpstarter.h
  skin.h
  skinreader.h
  symboldisplay.h
  textscroller.h
  timeindicator.h
  titlebar.h
  togglebutton.h
  unixdomainsocket.h
  version.h
  visualmenu.h
  volumebar.h
)

SET(libsrc_RCCS images/images.qrc stuff.qrc translations/qmmp_locales.qrc)

QT4_ADD_RESOURCES(libsrc_RCC_SRCS ${libsrc_RCCS})

QT4_AUTOMOC(${libsrc_MOC_SRC})
QT4_WRAP_CPP(libsrc_MOC_SRCS ${libsrc_MOC_HDRS})

# user interface


SET(libsrc_UIS
  configdialog.ui
  preseteditor.ui
  jumptotrackdialog.ui
  aboutdialog.ui
  addurldialog.ui
)


QT4_WRAP_UI(libsrc_UIS_H ${libsrc_UIS})
# Don't forget to include output directory, otherwise
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})

ADD_EXECUTABLE(qmmp ${libsrc_SRCS} ${libsrc_MOC_SRCS} ${libsrc_UIS_H}
  ${libsrc_RCC_SRCS})
target_link_libraries(qmmp ${QT_LIBRARIES} -lqmmp)
install(TARGETS qmmp DESTINATION bin PERMISSIONS PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE  GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ)