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