author  unc0rr 
Thu, 30 Jan 2014 00:18:32 +0400  
changeset 10090  a471a7bbc339 
parent 10070  87fa6d14187f 
child 10109  91d126fbd7bd 
permissions  rwrr 
1979  1 

8686
d303da4568b7
introduce find_package_or_fail/disable to group together similar cmake code
koda
parents:
8671
diff
changeset

2 
include(${CMAKE_MODULE_PATH}/utils.cmake) 
d303da4568b7
introduce find_package_or_fail/disable to group together similar cmake code
koda
parents:
8671
diff
changeset

3 

d303da4568b7
introduce find_package_or_fail/disable to group together similar cmake code
koda
parents:
8671
diff
changeset

4 
find_package_or_disable(GHC NOSERVER) 
2401  5 

1979  6 
set(hwserver_sources 
6537
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

7 
OfficialServer/DBInteraction.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

8 
Actions.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

9 
ClientIO.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

10 
ConfigFile.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

11 
Consts.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

12 
CoreTypes.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

13 
EngineInteraction.hs 
10090  14 
FloodDetection.hs 
6537
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

15 
HWProtoCore.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

16 
HWProtoInRoomState.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

17 
HWProtoLobbyState.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

18 
HWProtoNEState.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

19 
HandlerUtils.hs 
9975
9fcdaa2be27e
Allow logins at any interval, but not more than 2 logins in 30 seconds, 4 in 2 minutes and 6 in 10 minutes.
unc0rr
parents:
8686
diff
changeset

20 
JoinsMonitor.hs 
6537
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

21 
NetRoutines.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

22 
Opts.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

23 
RoomsAndClients.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

24 
ServerCore.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

25 
ServerState.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

26 
Store.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

27 
Utils.hs 
10056
cb9e07753802
Don't delegate special room to another player when owner quits
unc0rr
parents:
10046
diff
changeset

28 
Votes.hs 
6537
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

29 
hedgewarsserver.hs 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

30 
) 
1979  31 

10068  32 
set(hwserv_main ${CMAKE_CURRENT_SOURCE_DIR}/hedgewarsserver.hs) 
1979  33 

34 
set(ghc_flags 

6537
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

35 
make ${hwserv_main} 
10070  36 
i${CMAKE_CURRENT_SOURCE_DIR} 
6537
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

37 
o ${EXECUTABLE_OUTPUT_PATH}/hedgewarsserver${CMAKE_EXECUTABLE_SUFFIX} 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

38 
odir ${CMAKE_CURRENT_BINARY_DIR} 
7112
38c5d56c4d6e
rename a few internal cmake variables (for consistency and readability)
koda
parents:
6537
diff
changeset

39 
hidir ${CMAKE_CURRENT_BINARY_DIR} 
38c5d56c4d6e
rename a few internal cmake variables (for consistency and readability)
koda
parents:
6537
diff
changeset

40 
${haskell_flags}) 
2203
6bd39d75e0dd
Added support for Release and Debug for CMAKE_BUILD_TYPE
koda
parents:
2015
diff
changeset

41 

1979  42 
add_custom_command(OUTPUT "${EXECUTABLE_OUTPUT_PATH}/hedgewarsserver${CMAKE_EXECUTABLE_SUFFIX}" 
8671  43 
COMMAND "${GHC_EXECUTABLE}" 
6537
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

44 
ARGS ${ghc_flags} 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

45 
MAIN_DEPENDENCY ${hwserv_main} 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

46 
DEPENDS ${hwserver_sources} 
1df1f224f3e9
Take koda's notice into account, also update list of source files
unc0rr
parents:
6536
diff
changeset

47 
) 
1979  48 

49 
add_custom_target(hedgewarsserver ALL DEPENDS "${EXECUTABLE_OUTPUT_PATH}/hedgewarsserver${CMAKE_EXECUTABLE_SUFFIX}") 

50 

8316
89232b2fa1d6
cmake rework, cleanup a lot of redundant sections, separate library and binary install location, unify osx and win handling of the data directory (tested on win, lin and mac)
koda
parents:
7113
diff
changeset

51 
install(PROGRAMS "${EXECUTABLE_OUTPUT_PATH}/hedgewarsserver${CMAKE_EXECUTABLE_SUFFIX}" DESTINATION ${target_binary_install_dir}) 