Variants are not singletons anymore.
[tagua/yd.git] / src / CMakeLists.txt
blob0f842ed16170b99067d902c2b31bad687554f023
1 set(tagua_SRC
2   controllers/editgame.cpp
3   controllers/abstract.cpp
4   controllers/editposition.cpp
5   controllers/entitytoken.cpp
7   loader/image.cpp
8   loader/theme.cpp
9   loader/context.cpp
11   luaapi/lfunclib.c
12   luaapi/options.cpp
13   luaapi/luahl.cpp
14   luaapi/genericwrapper.cpp
15   luaapi/loader.cpp
16   luaapi/imaging.cpp
17   luaapi/luavalue.cpp
19   entities/gameentity.cpp
20   entities/userentity.cpp
21   entities/examinationentity.cpp
22   entities/entity.cpp
23   entities/engineentity.cpp
24   entities/icsentity.cpp
25   
26   hlvariant/chess/variant.cpp
27   hlvariant/chess/san.cpp
28   hlvariant/chess/icsverbose.cpp
29   hlvariant/chess/move.cpp
30   hlvariant/chess/gamestate.cpp
31   hlvariant/chess/piece.cpp
32   
33   hlvariant/dummy/variant.cpp
34   
35   hlvariant/crazyhouse/variant.cpp
36   hlvariant/crazyhouse/piece.cpp
37   
38   hlvariant/minichess5/variant.cpp
39   
40   hlvariant/shogi/variant.cpp
41   hlvariant/shogi/piece.cpp
43   hlvariant/minishogi/variant.cpp
45   animationfactory.cpp
46   constrainedtext.cpp
47   movelist.cpp
48   infodisplay.cpp
49   engineinfo.cpp
50   premove.cpp
51   mainanimation.cpp
52   random.cpp
53   point.cpp
54   sprite.cpp
55   pref_movelist.cpp
56   option.cpp
57   graphicalsystem.cpp
58   agentgroup.cpp
59   graphicalgame.cpp
60   imageeffects.cpp
61   crash.cpp
62   flash.cpp
63   histlineedit.cpp
64   pathinfo.cpp
65   pref_theme.cpp
66   gameinfo.cpp
67   console.cpp
68   animation.cpp
69   pref_engines.cpp
70   clock.cpp
71   chesstable.cpp
72   index.cpp
73   mastersettings.cpp
74   location.cpp
75   hline.cpp
76   xboardengine.cpp
77   gnushogiengine.cpp
78   settings.cpp
79   positioninfo.cpp
80   engine.cpp
81   ui.cpp
82   movelist_widget.cpp
83   pref_preferences.cpp
84   poolinfo.cpp
85   pixmaploader.cpp
86   qconnect.cpp
87   pref_board.cpp
88   game.cpp
89   piecepool.cpp
90   movelist_textual.cpp
91   icsconnection.cpp
92   mainwindow.cpp
93   board.cpp
94   common.cpp
95   pgnparser.cpp
96   movement.cpp
97   connection.cpp
98   movelist_table.cpp
99   newgame.cpp
100   option_p.cpp
101   themeinfo.cpp
102   namedsprite.cpp
103   icsgamedata.cpp
104   turnpolicy.cpp
105   decoratedmove.cpp
106   variants.cpp
109 # remove spurious xpressive warnings
110 set_source_files_properties(icsconnection.cpp
111   PROPERTIES COMPILE_FLAGS -Wno-extra)
113 kde4_add_ui_files(tagua_SRC
114   ui/pref_highlight.ui
115   ui/newgamedialog.ui
116   ui/pref_engines.ui
117   ui/preferences.ui
118   ui/gametags.ui
119   ui/pref_movelist.ui
120   ui/quickconnect.ui
121   ui/pref_theme.ui
122   ui/pref_theme_page.ui
123   ui/pref_board.ui
126 include_directories(
127   ${KDE4_INCLUDES}
128   ${LUA_INCLUDE_DIRS}
129   ${Boost_INCLUDE_DIRS}
130   ${CMAKE_CURRENT_BINARY_DIR}
133 add_definitions(
134   ${LUA_CFLAGS}
137 if(NOT DEFINED COMPILER_HAVE_X86_MMX)
138   check_cxx_source_compiles(" int main() { __asm__(\"pxor %mm0, %mm0\") ; }" COMPILER_HAVE_X86_MMX)
139 endif(NOT DEFINED COMPILER_HAVE_X86_MMX)
141 if(NOT DEFINED COMPILER_HAVE_X86_SSE2)
142   check_cxx_source_compiles(" int main() { __asm__(\"xorpd %xmm0, %xmm0\"); }" COMPILER_HAVE_X86_SSE2)
143 endif(NOT DEFINED COMPILER_HAVE_X86_SSE2)
145 if(COMPILER_HAVE_X86_MMX)
146   list(APPEND tagua_SRC imageeffects_mmx.cpp)
147   set_source_files_properties(imageeffects_mmx.cpp PROPERTIES COMPILE_FLAGS -mmmx)
148   set_source_files_properties(imageeffects.cpp PROPERTIES COMPILE_FLAGS -DHAVE_X86_MMX)
149 endif(COMPILER_HAVE_X86_MMX)
151 if(COMPILER_HAVE_X86_SSE2)
152   list(APPEND tagua_SRC imageeffects_sse.cpp)
153   set_source_files_properties(imageeffects_sse.cpp PROPERTIES COMPILE_FLAGS -msse2)
154   set_source_files_properties(imageeffects.cpp PROPERTIES COMPILE_FLAGS -DHAVE_X86_SSE2)
155 endif(COMPILER_HAVE_X86_SSE2)
157 if(DEBUG_BUILD)
158   set(TAGUA_TARGET taguaprivate)
159   
160   kde4_add_library(taguaprivate SHARED ${tagua_SRC})
161   kde4_add_executable(tagua main.cpp)
162 else(DEBUG_BUILD)
163   set(TAGUA_TARGET tagua)
164   kde4_add_executable(tagua main.cpp ${tagua_SRC})
165 endif(DEBUG_BUILD)
168 link_directories(
169   ${LUA_LIBRARY_DIRS}
170   ${Boost_LIBRARY_DIRS}
171   ${CMAKE_BINARY_DIR}/lib
173 target_link_libraries(${TAGUA_TARGET}
174   ${LUA_LINK_FLAGS}
175   ${KDE4_KDEUI_LIBS}
176   ${KDE4_KIO_LIBS}
177   dl
178   kdegames
179 )  
180   
181 if(DEBUG_BUILD)
182   target_link_libraries(tagua taguaprivate)
183   install(TARGETS taguaprivate DESTINATION ${LIB_INSTALL_DIR})
184 endif(DEBUG_BUILD)
187 INSTALL(TARGETS tagua DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
188 install(FILES tagua.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
189 install(FILES taguaui.rc DESTINATION  ${DATA_INSTALL_DIR}/tagua)