| 232 | |
| 233 | |
| 234 | def config(args): |
| 235 | if args.clear_build_dir: |
| 236 | if os.path.exists(args.build_dir): |
| 237 | rmtree(args.build_dir) |
| 238 | if os.path.exists(args.cmake_install_prefix): |
| 239 | rmtree(args.cmake_install_prefix) |
| 240 | if not os.path.exists(args.build_dir): |
| 241 | os.makedirs(args.build_dir) |
| 242 | |
| 243 | cur_folder = os.path.dirname(os.path.abspath(__file__)) |
| 244 | brainflow_root_folder = os.path.join(cur_folder, '..') |
| 245 | cmd_config = list() |
| 246 | cmd_config.append('cmake') |
| 247 | cmd_config.append('-DCMAKE_INSTALL_PREFIX=%s' % args.cmake_install_prefix) |
| 248 | if hasattr(args, 'cmake_system_version') and args.cmake_system_version: |
| 249 | cmd_config.append('-DCMAKE_SYSTEM_VERSION=%s' % |
| 250 | args.cmake_system_version) |
| 251 | if hasattr(args, 'brainflow_version') and args.brainflow_version: |
| 252 | cmd_config.append('-DBRAINFLOW_VERSION=%s' % args.brainflow_version) |
| 253 | if hasattr(args, 'use_libftdi') and args.use_libftdi: |
| 254 | cmd_config.append('-DUSE_LIBFTDI=ON') |
| 255 | if hasattr(args, 'build_periphery') and args.build_periphery: |
| 256 | cmd_config.append('-DBUILD_PERIPHERY=ON') |
| 257 | if args.warnings_as_errors: |
| 258 | cmd_config.append('-DWARNINGS_AS_ERRORS=ON') |
| 259 | if args.use_openmp: |
| 260 | cmd_config.append('-DUSE_OPENMP=ON') |
| 261 | if hasattr(args, 'oymotion') and args.oymotion: |
| 262 | cmd_config.append('-DBUILD_OYMOTION_SDK=ON') |
| 263 | if hasattr(args, 'cmake_osx_architectures') and args.cmake_osx_architectures: |
| 264 | cmd_config.append('-DCMAKE_OSX_ARCHITECTURES=%s' % |
| 265 | args.cmake_osx_architectures) |
| 266 | if hasattr(args, 'cmake_osx_deployment_target') and args.cmake_osx_deployment_target: |
| 267 | cmd_config.append('-DCMAKE_OSX_DEPLOYMENT_TARGET=%s' % |
| 268 | args.cmake_osx_deployment_target) |
| 269 | if hasattr(args, 'generator') and args.generator: |
| 270 | cmd_config.extend(['-G', args.generator]) |
| 271 | if hasattr(args, 'arch') and args.arch: |
| 272 | cmd_config.extend(['-A', args.arch]) |
| 273 | if hasattr(args, 'msvc_runtime'): |
| 274 | cmd_config.append('-DMSVC_RUNTIME=%s' % (args.msvc_runtime)) |
| 275 | if platform.system() != 'Windows': |
| 276 | if hasattr(args, 'debug') and args.debug: |
| 277 | cmd_config.append('-DCMAKE_BUILD_TYPE=Debug') |
| 278 | else: |
| 279 | cmd_config.append('-DCMAKE_BUILD_TYPE=Release') |
| 280 | if hasattr(args, 'bluetooth') and args.bluetooth: |
| 281 | cmd_config.append('-DBUILD_BLUETOOTH=ON') |
| 282 | if hasattr(args, 'ble') and args.ble: |
| 283 | cmd_config.append('-DBUILD_BLE=ON') |
| 284 | if hasattr(args, 'synchroni') and args.synchroni: |
| 285 | cmd_config.append('-DBUILD_SYNCHRONI_SDK=ON') |
| 286 | if hasattr(args, 'onnx') and args.onnx: |
| 287 | cmd_config.append('-DBUILD_ONNX=ON') |
| 288 | if hasattr(args, 'tests') and args.tests: |
| 289 | cmd_config.append('-DBUILD_TESTS=ON') |
| 290 | cmd_config.append(brainflow_root_folder) |
| 291 | run_command(cmd_config, args.build_dir) |