OASISFormat:      0.3
OCamlVersion:     >= 4.00.1
FindlibVersion:   >= 1.3.2
Name:             core_kernel
Version:          113.00.00
Synopsis:         Jane Street Capital's standard library overlay
Authors:          Jane Street Group, LLC <opensource@janestreet.com>
Copyrights:       (C) 2008-2013 Jane Street Group LLC <opensource@janestreet.com>
Maintainers:      Jane Street Group, LLC <opensource@janestreet.com>
License:          Apache-2.0
LicenseFile:      LICENSE.txt
Homepage:         https://github.com/janestreet/core_kernel
Plugins:          StdFiles (0.3), DevFiles (0.3), META (0.3)
XStdFilesAUTHORS: false
XStdFilesREADME:  false
BuildTools:       ocamlbuild, camlp4o
Description:
  The Core suite of libraries is an industrial strength alternative to
  OCaml's standard library that was developed by Jane Street, the
  largest industrial user of OCaml.

Flag caml_modify_test
  Description:        Enable caml modify tests
  Default$:           flag(ld_wrap_possible)

PreConfCommand:       config/detect.sh
PostConfCommand:      config/discover.sh $ocamlc src/config.mlh src/config.h

PreDistCleanCommand:  $rm src/config.mlh src/config.h

Library core_kernel
  Path:               src
  FindlibName:        core_kernel
  Pack:               true
  Modules:            Applicative,
                      Applicative_intf,
                      Array_permute,
                      Avltree,
                      Backtrace,
                      Bag,
                      Bigbuffer_internal,
                      Bigbuffer,
                      Bigstring_marshal,
                      Bigstring,
                      Bigsubstring,
                      Binable0,
                      Binable,
                      Binary_packing,
                      Binary_searchable,
                      Binary_searchable_intf,
                      Blang,
                      Blit,
                      Blit_intf,
                      Bool,
                      Bounded_int_table,
                      Bucket,
                      Byte_units,
                      Caml,
                      Common,
                      Commutative_group,
                      Comparable_intf,
                      Comparable,
                      Comparator,
                      Constrained_float,
                      Container,
                      Container_intf,
                      Container_unit_tests,
                      Core_arg,
                      Core_array,
                      Core_bin_prot,
                      Core_bytes,
                      Core_char,
                      Core_field,
                      Core_gc,
                      Core_gc_unit_tests,
                      Core_hashtbl_intf,
                      Core_hashtbl,
                      Core_int32,
                      Core_int63,
                      Core_int64,
                      Core_int,
                      Core_lazy,
                      Core_list,
                      Core_list_unit_tests,
                      Core_map_intf,
                      Core_map,
                      Core_map_bench,
                      Core_map_unit_tests,
                      Core_nativeint,
                      Core_printexc,
                      Core_printf,
                      Core_queue,
                      Core_queue_debug,
                      Core_queue_unit_tests,
                      Core_random,
                      Core_set_intf,
                      Core_set,
                      Core_set_unit_tests,
                      Core_sexp,
                      Core_stack,
                      Core_string,
                      Core_weak,
                      Day_of_week,
                      Debug,
                      Decimal,
                      Deque,
                      Dequeue,
                      Doubly_linked,
                      Either,
                      Either_intf,
                      Equal,
                      Error,
                      Exn,
                      Fdeque,
                      Fheap,
                      Flags_intf,
                      Flags,
                      Flat_array,
                      Flat_array_debug,
                      Flat_array_unit_tests,
                      Flat_queue,
                      Flat_queue_debug,
                      Flat_queue_unit_tests,
                      Floatable,
                      Float_intf,
                      Float,
                      Float_robust_compare,
                      Fn,
                      Force_once,
                      Fqueue,
                      Hashable,
                      Hash_heap,
                      Hash_queue,
                      Hash_set_intf,
                      Hash_set,
                      Hashtbl_unit_tests,
                      Heap_block,
                      Heap_intf,
                      Heap,
                      Hex_lexer,
                      Host_and_port,
                      Identifiable,
                      In_channel,
                      Info,
                      Info_unit_tests,
                      Intable,
                      Int_conversions,
                      Interfaces,
                      Int_intf,
                      Int_math,
                      Int_pow2,
                      Int_replace_polymorphic_compare,
                      Int_set,
                      Invariant,
                      Invariant_intf,
                      Linked_queue,
                      Linked_stack,
                      Make_substring,
                      Memo,
                      Monad,
                      Monad_intf,
                      Month,
                      Never_returns,
                      No_polymorphic_compare,
                      Nothing0,
                      Nothing,
                      Obj_array,
                      Only_in_test,
                      Option,
                      Ordered_collection_common,
                      Ordering,
                      Or_error,
                      Out_channel,
                      Percent,
                      Perms,
                      Pid,
                      Poly,
                      Polymorphic_compare_intf,
                      Polymorphic_compare,
                      Pool,
                      Pool_intf,
                      Pool_unit_tests,
                      Pooled_hashtbl,
                      Pooled_hashtbl_unit_test,
                      Pow_overflow_bounds,
                      Pretty_printer,
                      Quickcheck,
                      Quickcheck_generator,
                      Quickcheck_intf,
                      Quickcheck_observer,
                      Quickcheck_unit_tests,
                      Raw_quickcheck_generator,
                      Raw_quickcheck_observer,
                      Ref,
                      Result,
                      Robustly_comparable,
                      Rope,
                      Sequence,
                      Set_once,
                      Sexpable,
                      Source_code_position0,
                      Source_code_position,
                      Stable_containers,
                      Stable_internal,
                      Stable_module_types,
                      Stable,
                      Stable_unit_test_intf,
                      Stable_unit_test,
                      Stack_intf,
                      Stack_unit_tests,
                      Staged,
                      Std_common,
                      Std_internal,
                      Std_kernel,
                      Std,
                      Stringable,
                      String_id,
                      Substring_intf,
                      Substring,
                      T,
                      Thread_safe_queue,
                      Time_ns,
                      Time_ns_alternate_sexp,
                      Timing_wheel_intf,
                      Timing_wheel_ns,
                      Timing_wheel_ns_unit_tests,
                      Timing_wheel_unit_tests,
                      Total_map,
                      Tuple,
                      Tuple_type,
                      Tuple_type_intf,
                      Type_equal,
                      Type_immediacy,
                      Type_immediacy_conv_unit_tests,
                      Type_immediacy_witness_unit_tests,
                      Union_find,
                      Unique_id_intf,
                      Unique_id,
                      Unit,
                      Univ_map,
                      Univ_map_intf,
                      Univ,
                      Unpack_buffer,
                      Validated_intf,
                      Validated,
                      Validate,
                      With_return,
                      Word_size
  CSources:           bigstring_marshal_stubs.c,
                      bigstring_stubs.c,
                      core_array_stubs.c,
                      core_gc_stubs.c,
                      hash_stubs.c,
                      heap_block_stubs.c,
                      config.h,
                      core_params.h,
                      exn_stubs.c,
                      int_math_stubs.c,
                      core_bigstring.h,
                      ocaml_utils.h,
                      jane_common.h,
                      time_ns_stubs.c,
                      time_ns_stubs.h
  BuildDepends:       bigarray,
                      bin_prot,
                      bin_prot.syntax,
                      comparelib.syntax,
                      custom_printf,
                      custom_printf.syntax,
                      enumerate,
                      enumerate.syntax,
                      fieldslib,
                      fieldslib.syntax,
                      herelib,
                      herelib.syntax,
                      pa_bench,
                      pa_bench.syntax,
                      pa_test,
                      pa_test.syntax,
                      pa_ounit,
                      pa_ounit.syntax,
                      pa_pipebang,
                      sexplib,
                      sexplib.syntax,
                      typerep_lib,
                      typerep_lib.syntax,
                      unix,
                      variantslib,
                      variantslib.syntax
  XMETARequires:      bin_prot,
                      custom_printf,
                      variantslib,
                      sexplib,
                      enumerate,
                      fieldslib,
                      bigarray,
                      pa_bench,
                      pa_ounit,
                      pa_test,
                      typerep_lib,
                      unix

Library check_caml_modify
  Build$:             flag(caml_modify_test)
  Install$:           flag(caml_modify_test)
  Path:               check_caml_modify
  FindlibName:        check_caml_modify
  FindlibParent:      core_kernel
  Pack:               true
  Modules:            Caml_modify
  CSources:           caml_modify_stub.c
  BuildDepends:       pa_ounit,
                      pa_ounit.syntax
  XMETARequires:      pa_ounit

Executable pool_caml_modify_check
  Path:               test
  Build$:             flag(tests) && flag(caml_modify_test)
  Install:            false
  CompiledObject:     best
  MainIs:             pool_caml_modify_check.ml
  BuildDepends:       core_kernel,
                      core_kernel.check_caml_modify

Test test_pool_caml_modify_check
  Command:            $pool_caml_modify_check
  TestTools:          pool_caml_modify_check
  Run$:               flag(tests) && flag(caml_modify_test)
