setup.py
changeset 42458 8ee0fdf3b087
parent 42457 f4a65077e949
child 42459 85041e2b69c7
equal deleted inserted replaced
42457:f4a65077e949 42458:8ee0fdf3b087
  1197 
  1197 
  1198         cargocmd = ['cargo', 'build', '-vv', '--release']
  1198         cargocmd = ['cargo', 'build', '-vv', '--release']
  1199         if sys.version_info[0] == 3 and self.py3_features is not None:
  1199         if sys.version_info[0] == 3 and self.py3_features is not None:
  1200             cargocmd.extend(('--features', self.py3_features,
  1200             cargocmd.extend(('--features', self.py3_features,
  1201                              '--no-default-features'))
  1201                              '--no-default-features'))
       
  1202         if sys.platform == 'darwin':
       
  1203             env['RUSTFLAGS'] = ("-C link-arg=-undefined "
       
  1204                                 "-C link-arg=dynamic_lookup")
  1202         try:
  1205         try:
  1203             subprocess.check_call(cargocmd, env=env, cwd=self.rustsrcdir)
  1206             subprocess.check_call(cargocmd, env=env, cwd=self.rustsrcdir)
  1204         except OSError as exc:
  1207         except OSError as exc:
  1205             if exc.errno == errno.ENOENT:
  1208             if exc.errno == errno.ENOENT:
  1206                 raise RustCompilationError("Cargo not found")
  1209                 raise RustCompilationError("Cargo not found")