On Mon, Jul 02 2018, Christopher Zimmermann <chr...@openbsd.org> wrote:
> On 2018-06-21 Christopher Zimmermann <chr...@openbsd.org> wrote:
>> Hi,
>>=20
>> the last few days I prepared an update of ocaml to 4.06 and opam to
>> 2.00rc2 and along with it updates or REVISION bumps of the dependent
>> ports.
>>=20
>> two ports have been added since num has been removed from the OCaml
>> distribution.
>> math/ocaml-num
>> math/Zarith
>
> Thanks a lot for the reviews so far. I fixed few issues and
> renamed math/Zarith to math/ocaml-zarith. Before committing the update
> of OCaml and dependent ports I need to import the new ports
>
> sysutils/dune
> math/ocaml-{num,zarith}
>
> which are attached as single tarball. They will be enabled in the
> category Makefiles with the OCaml upgrade diff. OK to import this?

Here's an updated tarball for num (simplify native/non-native
conditionals) and zarith (fix tests).

I'm having a hard time trying to figure out why ports using
dune/jbuilder fail on sparc64.

=2D-8<--
billy /usr/ports/devel/ocaml-cppo$ make clean all
=3D=3D=3D>  Cleaning for ocaml-cppo-1.6.4
=3D=3D=3D> ocaml-cppo-1.6.4 depends on: dune-* -> dune-1.0+beta20
=3D=3D=3D> ocaml-cppo-1.6.4 depends on: findlib-* -> findlib-1.8.0
=3D=3D=3D> ocaml-cppo-1.6.4 depends on: ocamlbuild-* -> ocamlbuild-0.12.0
=3D=3D=3D> ocaml-cppo-1.6.4 depends on: ocaml-=3D4.06.1 -> ocaml-4.06.1
=3D=3D=3D>  Verifying specs:  c m pthread
=3D=3D=3D>  found c.92.3 m.10.1 pthread.25.1
=3D=3D=3D>  Checking files for ocaml-cppo-1.6.4
`/usr/ports/distfiles/cppo-1.6.4.tar.gz' is up to date.
>> (SHA256) cppo-1.6.4.tar.gz: OK
=3D=3D=3D>  Extracting for ocaml-cppo-1.6.4
=3D=3D=3D>  Patching for ocaml-cppo-1.6.4
=3D=3D=3D>  Compiler link: cc -> /usr/bin/cc
=3D=3D=3D>  Compiler link: c++ -> /usr/bin/c++
=3D=3D=3D>  Configuring for ocaml-cppo-1.6.4
=3D=3D=3D>  Building for ocaml-cppo-1.6.4
Fatal error: cannot find file 'build'
*** Error 2 in /tmp/pobj/ocaml-cppo-1.6.4/cppo-1.6.4 (Makefile:2 'all': @jb=
uilder build @install @DEFAULT)
*** Error 1 in . (/usr/ports/infrastructure/mk/bsd.port.mk:2703 '/tmp/pobj/=
ocaml-cppo-1.6.4/.build_done')
*** Error 1 in /usr/ports/devel/ocaml-cppo (/usr/ports/infrastructure/mk/bs=
d.port.mk:2382 'all')
=2D->8--

And I can't build dune on amd64 using ocaml-4.03:

=2D-8<--
ritchie /usr/ports/mystuff/sysutils/dune$ time nice make clean all repackage
=3D=3D=3D>  Cleaning for dune-1.0+beta20
=3D=3D=3D> dune-1.0+beta20 depends on: findlib-* -> findlib-1.6.2p2
=3D=3D=3D> dune-1.0+beta20 depends on: ocaml-=3D4.03.0 -> ocaml-4.03.0p2
=3D=3D=3D> dune-1.0+beta20 depends on: gmake-* -> gmake-4.2.1
=3D=3D=3D>  Verifying specs:  c m pthread
=3D=3D=3D>  found c.92.3 m.10.1 pthread.25.1
=3D=3D=3D>  Checking files for dune-1.0+beta20
`/d/distfiles/dune-1.0+beta20.tar.gz' is up to date.
>> (SHA256) dune-1.0+beta20.tar.gz: OK
=3D=3D=3D>  Extracting for dune-1.0+beta20
=3D=3D=3D>  Patching for dune-1.0+beta20
=3D=3D=3D>  Compiler link: clang -> /usr/bin/clang
=3D=3D=3D>  Compiler link: clang++ -> /usr/bin/clang++
=3D=3D=3D>  Compiler link: cc -> /usr/bin/cc
=3D=3D=3D>  Compiler link: c++ -> /usr/bin/c++
=3D=3D=3D>  Configuring for dune-1.0+beta20
=3D=3D=3D>  Building for dune-1.0+beta20
ocaml bootstrap.ml
'/usr/local/bin/ocamllex.opt' -q src/meta_lexer.mll
'/usr/local/bin/ocamldep.opt' -modules src/action.ml src/action_intf.ml src=
/arg_spec.ml src/artifacts.ml src/bin.ml src/binary_kind.ml src/build.ml sr=
c/build_interpret.ml src/build_system.ml src/clflags.ml src/cm_kind.ml src/=
colors.ml src/config.ml src/context.ml src/dep_path.ml src/env.ml src/error=
s.ml src/exe.ml src/file_tree.ml src/findlib.ml src/gen_meta.ml src/gen_rul=
es.ml src/glob_lexer.boot.ml src/import.ml src/inline_tests.ml src/install.=
ml src/install_rules.ml src/installed_dune_file.ml src/interned.ml src/jbui=
ld.ml src/jbuild_load.ml vendor/boot/jbuilder_opam_file_format.ml vendor/bo=
ot/jbuilder_re.ml src/js_of_ocaml_rules.ml src/lib.ml src/loc.ml src/log.ml=
 src/main.ml src/menhir.ml src/merlin.ml src/meta.ml src/meta_lexer.ml src/=
ml_kind.ml src/mode.ml src/module.ml src/module_compilation.ml src/modules_=
partitioner.ml src/ocaml_flags.ml src/ocamldep.ml src/odoc.boot.ml src/opam=
_file.ml src/ordered_set_lang.ml src/package.ml src/path.ml src/per_item.ml=
 src/preprocessing.ml src/print_diff.ml src/process.ml src/report_error.ml =
src/scheduler.ml src/scope.ml src/setup.boot.ml src/sexp.ml src/string_with=
_vars.ml src/sub_system.ml src/sub_system_intf.ml src/sub_system_name.ml sr=
c/super_context.ml src/syntax.ml src/top_closure.ml src/utils.ml src/utop.m=
l src/variant.ml src/vfile_kind.ml src/watermarks.ml src/workspace.ml > boo=
t-depends.txt
'/usr/local/bin/ocamldep.opt' -modules src/stdune/caml/caml.ml src/stdune/c=
aml/result.ml src/stdune/caml/result_compat.ml > boot-depends.txt
'/usr/local/bin/ocamldep.opt' -modules src/fiber/fiber.ml > boot-depends.txt
'/usr/local/bin/ocamldep.opt' -modules src/ocaml-config/ocaml_config.ml > b=
oot-depends.txt
'/usr/local/bin/ocamldep.opt' -modules src/stdune/stdune.ml src/stdune/ansi=
_color.ml src/stdune/array.ml src/stdune/char.ml src/stdune/common.ml src/s=
tdune/comparable.ml src/stdune/either.ml src/stdune/exn.ml src/stdune/filen=
ame.ml src/stdune/hashtbl.ml src/stdune/import.ml src/stdune/int.ml src/std=
une/io.ml src/stdune/list.ml src/stdune/map.ml src/stdune/map_intf.ml src/s=
tdune/option.ml src/stdune/or_exn.ml src/stdune/ordering.ml src/stdune/pp.m=
l src/stdune/result.ml src/stdune/set.ml src/stdune/set_intf.ml src/stdune/=
staged.ml src/stdune/string.ml > boot-depends.txt
'/usr/local/bin/ocamldep.opt' -modules src/usexp/usexp.ml src/usexp/parser_=
automaton_internal.ml src/usexp/sexp_ast.ml src/usexp/table.ml > boot-depen=
ds.txt
'/usr/local/bin/ocamldep.opt' -modules src/xdg/xdg.ml > boot-depends.txt
'/usr/local/bin/ocamlc.opt' -g -w -40 -o boot.exe unix.cma boot.ml
./boot.exe
    ocamlopt src/usexp/.usexp.objs/usexp__Table.{cmx,o} (exit 2)
(cd _build/default && /usr/local/bin/ocamlopt.opt -w -40 -g -I src/usexp/.u=
sexp.objs -no-alias-deps -open Usexp__ -o src/usexp/.usexp.objs/usexp__Tabl=
e.cmx -c -impl src/usexp/table.ml)
Fatal error: exception Stack overflow
=2D> required by src/usexp/.usexp.objs/usexp__Table.cmx
=2D> required by alias src/usexp/lib-usexp.cmx-all
=2D> required by alias src/usexp/lib-usexp.cmi-and-.cmx-all
=2D> required by src/ocaml-config/.ocaml_config.objs/ocaml_config.cmx
=2D> required by alias src/ocaml-config/lib-ocaml_config.cmx-all
=2D> required by alias src/ocaml-config/lib-ocaml_config.cmi-and-.cmx-all
=2D> required by src/.jbuilder.objs/jbuilder__Action.cmx
=2D> required by src/jbuilder.a
=2D> required by bin/main.exe
=2D> required by _build/install/default/bin/jbuilder
=2D> required by jbuilder.install
gmake: *** [Makefile:10: release] Error 1
*** Error 2 in . (/usr/ports/infrastructure/mk/bsd.port.mk:2703 '/usr/ports=
/pobj/dune-1.0+beta20/.build_done')
*** Error 1 in /usr/ports/mystuff/sysutils/dune (/usr/ports/infrastructure/=
mk/bsd.port.mk:2382 'all')
    0m10.30s real     0m05.34s user     0m04.60s system
ritchie /usr/ports/mystuff/sysutils/dune$
=2D->8--

The error is either

=2D-8<--
./boot.exe
    ocamlopt src/usexp/.usexp.objs/usexp__Table.{cmx,o} (exit 2)
(cd _build/default && /usr/local/bin/ocamlopt.opt -w -40 -g -I src/usexp/.u=
sexp.objs -no-alias-deps -open Usexp__ -o src/usexp/.usexp.objs/usexp__Tabl=
e.cmx -c -impl src/usexp/table.ml)
Fatal error: exception Stack overflow
=2D->8--

or

=2D-8<--
./boot.exe
    ocamlopt src/usexp/.usexp.objs/usexp__Table.{cmx,o} (got signal SEGV)
=2D->8--

I don't know whether dune is supposed to be usable using ocaml-4.03, if
it's not the case it should be imported with a BROKEN marker, until the
lang/ocaml port is updated.  And we should try to understand what's
happening on sparc64.

ok jca@ to import the updated num and zarith ports.

Attachment: ocaml-num_zarith-mine.tgz
Description: Binary data

-- 
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Attachment: signature.asc
Description: PGP signature

Reply via email to