CMakeLists.txt 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. # Define source files
  2. file (GLOB SOURCE_FILES *.cpp *.h )
  3. # set (SOURCE_FILES ${SOURCE_FILES}) ${CSHARP_BINDINGS_SOURCE} ${CSHARPATOMICPLAYER_BINDINGS_SOURCE} ${CSHARPATOMICNET_BINDINGS_SOURCE})
  4. if (WIN32)
  5. set (EXE_TYPE WIN32)
  6. set (SOURCE_FILES ${SOURCE_FILES} ${ATOMIC_SOURCE_DIR}/Build/CMake/Modules/Atomic.rc)
  7. elseif(APPLE)
  8. #ICNS
  9. set(MACOSX_BUNDLE_ICON_FILE Atomic.icns)
  10. if (NOT IOS)
  11. set(ATOMIC_PLAYER_ICON ${ATOMIC_SOURCE_DIR}/Build/CMake/Modules/Atomic.icns)
  12. endif()
  13. set_source_files_properties(${ATOMIC_PLAYER_ICON} PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")
  14. set (EXE_TYPE MACOSX_BUNDLE)
  15. endif()
  16. if (ANDROID)
  17. add_library(AtomicPlayer SHARED ${SOURCE_FILES} ${ATOMIC_SOURCE_DIR}/Source/ThirdParty/SDL/src/main/android/SDL_android_main.c)
  18. else()
  19. # iOS AtomicPlayer currently disabled
  20. if (NOT IOS)
  21. add_executable(AtomicPlayer ${EXE_TYPE} ${SOURCE_FILES} ${ATOMIC_PLAYER_ICON})
  22. endif()
  23. endif()
  24. if (NOT IOS)
  25. target_link_libraries(AtomicPlayer AtomicJS AtomicPlayerLib AtomicPlayerJS Atomic)
  26. endif()
  27. if (WIN32)
  28. # pre-Windows 8 can't count on D3DCompiler_47.dll being on system
  29. add_custom_command (TARGET AtomicPlayer POST_BUILD
  30. COMMAND ${CMAKE_COMMAND}
  31. ARGS -E copy_if_different \"${D3DCOMPILER_47_DLL}\" \"$<TARGET_FILE_DIR:AtomicPlayer>/D3DCompiler_47.dll\")
  32. endif(WIN32)
  33. if (APPLE)
  34. if (NOT IOS)
  35. set (TARGET_PROPERTIES MACOSX_BUNDLE_INFO_PLIST MacOSXBundleInfo.plist.template)
  36. else()
  37. # set_target_properties(AtomicPlayer PROPERTIES
  38. # MACOSX_BUNDLE_GUI_IDENTIFIER "com.atomicgameengine.atomicplayer"
  39. # XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY ""
  40. # XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "dwarf-with-dsym"
  41. # XCODE_ATTRIBUTE_INFOPLIST_PREPROCESS YES
  42. # XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET 9.3
  43. # XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY "1,2" # iPhone/iPad
  44. # XCODE_ATTRIBUTE_COMBINE_HIDPI_IMAGES NO
  45. # )
  46. # set (TARGET_PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${ATOMIC_SOURCE_DIR}/Build/CMake/Modules/iOSBundleInfo.plist.template)
  47. endif()
  48. endif(APPLE)
  49. if (TARGET_PROPERTIES)
  50. if (NOT IOS)
  51. set_target_properties (AtomicPlayer PROPERTIES ${TARGET_PROPERTIES})
  52. endif()
  53. endif ()