summaryrefslogtreecommitdiff
path: root/muse2/muse/mplugins/CMakeLists.txt
blob: 47cc01f80c760489e6859f2bb28e827c97700a64 (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
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
#=============================================================================
#  MusE
#  Linux Music Editor
#  $Id:$
#
#  Copyright (C) 1999-2011 by Werner Schweer and others
#
#  This program is free software; you can redistribute it and/or modify
#  it under the terms of the GNU General Public License
#  as published by the Free Software Foundation; either version 2
#  of the License, or (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program; if not, write to the
#  Free Software Foundation, Inc.,
#  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#=============================================================================

##
## Expand Qt macros in source files
##
if ( ENABLE_EXPERIMENTAL )
      QT4_WRAP_UI ( mplugins_experimental_uis rhythmbase.ui)
      set ( experimental_hdrs rhythm.h )
      set ( experimental_srcs
            rhythm.cpp
            ${mplugins_experimental_uis}
            )
endif ( ENABLE_EXPERIMENTAL )
QT4_WRAP_CPP ( mplugins_mocs
      midifilterimpl.h
      midiitransform.h
      mittranspose.h
      mrconfig.h
      ${experimental_hdrs}
      )

##
## UI files
##
file (GLOB mplugins_ui_files
      midifilter.ui
      mrconfigbase.ui
      )
QT4_WRAP_UI ( mplugins_uis ${mplugins_ui_files} )

##
## List of source files to compile
##
file (GLOB mplugins_source_files
      midifilterimpl.cpp 
      midiitransform.cpp 
      mitplugin.cpp
      mittranspose.cpp 
      mrconfig.cpp 
      random.cpp
      )

##
## Define target
##
add_library ( mplugins ${MODULES_BUILD}
      ${mplugins_source_files}
      ${mplugins_mocs}
      ${mplugins_uis}
      ${experimental_srcs}
      )

##
## Append to the list of translations
##
set (FILES_TO_TRANSLATE
      ${FILES_TO_TRANSLATE}
      ${mplugins_source_files}
      ${mplugins_ui_files}
      CACHE INTERNAL ""
      )

##
## Compilation flags and target name
##
# - tell cmake to name target transform.so instead of 
#   libtransform.so
# - use precompiled header files
#
set_target_properties ( mplugins
      # PROPERTIES PREFIX ""
      PROPERTIES COMPILE_FLAGS "-include ${PROJECT_BINARY_DIR}/all.h"
      OUTPUT_NAME muse_mplugins
      )

##
## Linkage
##
target_link_libraries( mplugins
      # midiplugin
      ${QT_LIBRARIES}
      widgets
      )

##
## Install location
##
if ( ${MODULES_BUILD} STREQUAL SHARED )
      install(TARGETS mplugins
            DESTINATION ${MusE_MODULES_DIR}
            )
endif ( ${MODULES_BUILD} STREQUAL SHARED )