-if llvm_lib_dir: # empty llvm_lib_dir is falsey, reads as None
- llvm_ocaml_lib = os.path.join(llvm_lib_dir, 'ocaml')
- if 'OCAMLPATH' in os.environ:
- ocamlpath = os.path.pathsep.join((llvm_ocaml_lib, os.environ['OCAMLPATH']))
- config.environment['OCAMLPATH'] = ocamlpath
- else:
- config.environment['OCAMLPATH'] = llvm_ocaml_lib
+if not llvm_lib_dir:
+ llvm_lib_dir = os.path.join(getattr(config, 'llvm_obj_root', None), 'lib')
+
+llvm_ocaml_lib = os.path.join(llvm_lib_dir, 'ocaml')
+if 'OCAMLPATH' in os.environ:
+ ocamlpath = os.path.pathsep.join((llvm_ocaml_lib, os.environ['OCAMLPATH']))
+ config.environment['OCAMLPATH'] = ocamlpath
+else:
+ config.environment['OCAMLPATH'] = llvm_ocaml_lib
+
+if 'CAML_LD_LIBRARY_PATH' in os.environ:
+ caml_ld_library_path = os.path.pathsep.join((llvm_ocaml_lib,
+ os.environ['CAML_LD_LIBRARY_PATH']))
+ config.environment['CAML_LD_LIBRARY_PATH'] = caml_ld_library_path
+else:
+ config.environment['CAML_LD_LIBRARY_PATH'] = caml_ld_library_path