1
1
cmake_minimum_required (VERSION 3.22)
2
2
include (FetchContent)
3
+ include (CMakeDependentOption)
3
4
4
5
project (box2d
5
- VERSION 3.0.0
6
+ VERSION 3.0.1
6
7
DESCRIPTION "A 2D physics engine for games"
7
8
HOMEPAGE_URL "https://box2d.org"
8
9
LANGUAGES C CXX
@@ -34,10 +35,13 @@ if (MSVC OR APPLE)
34
35
endif ()
35
36
endif ()
36
37
38
+ option (BOX2D_ENABLE_SIMD "Enable SIMD math (faster)" ON )
39
+
37
40
if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64" )
38
- option (BOX2D_AVX2 "Enable AVX2 (faster)" ON )
41
+ cmake_dependent_option (BOX2D_AVX2 "Enable AVX2" OFF "BOX2D_ENABLE_SIMD" OFF )
39
42
endif ()
40
43
44
+
41
45
if (PROJECT_IS_TOP_LEVEL)
42
46
# Needed for samples.exe to find box2d.dll
43
47
# set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/bin")
@@ -52,8 +56,6 @@ set(CMAKE_COMPILE_WARNING_AS_ERROR ON)
52
56
set_property (GLOBAL PROPERTY USE_FOLDERS ON )
53
57
set (CMAKE_VERBOSE_MAKEFILE ON )
54
58
55
- # The Box2D library uses simde https://github.com/simd-everywhere/simde
56
- add_subdirectory (extern/simde)
57
59
add_subdirectory (src)
58
60
59
61
# This hides samples, test, and doxygen from apps that use box2d via FetchContent
@@ -95,6 +97,7 @@ if(PROJECT_IS_TOP_LEVEL)
95
97
if (NOT BUILD_SHARED_LIBS AND BOX2D_UNIT_TESTS)
96
98
message (STATUS "Adding Box2D unit tests" )
97
99
add_subdirectory (test )
100
+ set_target_properties (test PROPERTIES XCODE_GENERATE_SCHEME TRUE )
98
101
else ()
99
102
message (STATUS "Skipping Box2D unit tests" )
100
103
endif ()
@@ -107,10 +110,15 @@ if(PROJECT_IS_TOP_LEVEL)
107
110
set_property (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT samples)
108
111
set_property (TARGET samples PROPERTY VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR} " )
109
112
endif ()
113
+
114
+ set_target_properties (samples PROPERTIES
115
+ XCODE_GENERATE_SCHEME TRUE
116
+ XCODE_SCHEME_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR} " )
110
117
endif ()
111
118
112
119
if (BOX2D_BENCHMARKS)
113
120
add_subdirectory (benchmark)
121
+ set_target_properties (benchmark PROPERTIES XCODE_GENERATE_SCHEME TRUE )
114
122
endif ()
115
123
116
124
if (BOX2D_DOCS)
0 commit comments