Blame view

ios/cocos2d/external/bullet/CMakeLists.txt 2.42 KB
520389e3   xiaoyu   接入cocos源码,编译未通过,继续修改
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
  cmake_minimum_required(VERSION 3.6)
  
  set(lib_name bullet)
  set(target_name ext_${lib_name})
  
  project(${lib_name})
  
  include(../cmake/CocosExternalConfig.cmake)
  
  add_library(${target_name} STATIC IMPORTED GLOBAL)
  
  set_property(TARGET ${target_name} APPEND PROPERTY
    INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include"
  )
  set_property(TARGET ${target_name} APPEND PROPERTY
    INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include/bullet"
  )
  
  if(WINDOWS)
    set_target_properties(${target_name} PROPERTIES
      IMPORTED_LOCATION_DEBUG "${platform_spec_path}/debug/lib${lib_name}.lib"
      IMPORTED_LOCATION_RELEASE "${platform_spec_path}/release/lib${lib_name}.lib"
    )
    set_target_properties(${target_name} PROPERTIES
      MAP_IMPORTED_CONFIG_MINSIZEREL Release
      MAP_IMPORTED_CONFIG_RELWITHDEBINFO Release
    )
  else()
    set_target_properties(${target_name} PROPERTIES
      IMPORTED_LOCATION "${platform_spec_path}/libLinearMath.a"
    )
  
    # multi libs
    add_library(bulletcollision STATIC IMPORTED)
    set_target_properties(bulletcollision PROPERTIES
      IMPORTED_LOCATION "${platform_spec_path}/libBulletCollision.a"
    )
    add_library(bulletdynamics STATIC IMPORTED)
    set_target_properties(bulletdynamics PROPERTIES
      IMPORTED_LOCATION "${platform_spec_path}/libBulletDynamics.a"
    )
    add_library(bulletmultithreaded STATIC IMPORTED)
    set_target_properties(bulletmultithreaded PROPERTIES
      IMPORTED_LOCATION "${platform_spec_path}/libBulletMultiThreaded.a"
    )
    add_library(minicl STATIC IMPORTED)
    set_target_properties(minicl PROPERTIES
      IMPORTED_LOCATION "${platform_spec_path}/libMiniCL.a"
    )
    add_library(linearmath STATIC IMPORTED)
    set_target_properties(linearmath PROPERTIES
      IMPORTED_LOCATION "${platform_spec_path}/libLinearMath.a"
    )
  
    # internal link depend
    set_property(TARGET bulletcollision APPEND PROPERTY INTERFACE_LINK_LIBRARIES "linearmath")
    set_property(TARGET bulletdynamics APPEND PROPERTY INTERFACE_LINK_LIBRARIES "bulletcollision")
  
    # mark multi libs link into single one: "${target_name}"
    set_property(TARGET ${target_name} APPEND PROPERTY
      INTERFACE_LINK_LIBRARIES "bulletcollision"
    )
    set_property(TARGET ${target_name} APPEND PROPERTY
      INTERFACE_LINK_LIBRARIES "bulletdynamics"
    )
    set_property(TARGET ${target_name} APPEND PROPERTY
      INTERFACE_LINK_LIBRARIES "bulletmultithreaded"
    )
    set_property(TARGET ${target_name} APPEND PROPERTY
      INTERFACE_LINK_LIBRARIES "minicl"
    )
  endif()