CMakeLists.txt 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #-------------------------------------------------------------------------------------------
  2. # Copyright (C) Electronic Arts Inc. All rights reserved.
  3. #-------------------------------------------------------------------------------------------
  4. cmake_minimum_required(VERSION 3.1)
  5. project(EAMain CXX)
  6. #-------------------------------------------------------------------------------------------
  7. # Options
  8. #-------------------------------------------------------------------------------------------
  9. option(EAMAIN_BUILD_TESTS "Enable generation of build files for tests" OFF)
  10. #-------------------------------------------------------------------------------------------
  11. # Compiler Flags
  12. #-------------------------------------------------------------------------------------------
  13. set (CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH};${CMAKE_CURRENT_SOURCE_DIR}/test/packages/EASTL/scripts/CMake")
  14. include(CommonCppFlags)
  15. #-------------------------------------------------------------------------------------------
  16. # Library definition
  17. #-------------------------------------------------------------------------------------------
  18. file(GLOB EAMAIN_SOURCES "source/*.cpp" "source/internal/*.cpp")
  19. add_library(EAMain ${EAMAIN_SOURCES})
  20. #-------------------------------------------------------------------------------------------
  21. # Package Tests
  22. #-------------------------------------------------------------------------------------------
  23. if(EAMAIN_BUILD_TESTS)
  24. add_subdirectory(test)
  25. endif()
  26. #-------------------------------------------------------------------------------------------
  27. # Defines
  28. #-------------------------------------------------------------------------------------------
  29. add_definitions(-D_CHAR16T)
  30. add_definitions(-D_CRT_SECURE_NO_WARNINGS)
  31. add_definitions(-DEAMAIN_NETWORK_CHANNEL_PORT=8080)
  32. #-------------------------------------------------------------------------------------------
  33. # Export Include Directories
  34. #-------------------------------------------------------------------------------------------
  35. target_include_directories(EAMain PUBLIC include)
  36. target_include_directories(EAMain PUBLIC source)
  37. #-------------------------------------------------------------------------------------------
  38. # Package Dependencies
  39. #-------------------------------------------------------------------------------------------
  40. target_link_libraries(EAMain EABase)
  41. target_link_libraries(EAMain EAAssert)
  42. target_link_libraries(EAMain EAStdC)