• Bug#1105461: ocamlnet: FTBFS with make --shuffle=reverse: make[2]: ***

    From Lucas Nussbaum@21:1/5 to All on Tue May 13 21:20:05 2025
    XPost: linux.debian.bugs.dist

    Source: ocamlnet
    Version: 4.1.9-6
    Severity: minor
    Tags: trixie sid ftbfs
    User: lucas@debian.org
    Usertags: ftbfs-shuffle

    Hi,

    GNU Make now has a --shuffle option that simulates non-deterministic ordering of target prerequisites. See https://trofi.github.io/posts/238-new-make-shuffle-mode.html and also previous work in Debian by Santiago Vila: https://people.debian.org/~sanvila/make-shuffle/

    This package fails to build with make --shuffle=reverse.
    This is likely to be caused by a missing dependency in
    debian/rules or an upstream Makefile.

    More information about this mass bug filing is available at https://wiki.debian.org/qa.debian.org/FTBFS/Shuffle

    Relevant part (hopefully):
    make[2]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9' Makefile:51: update target 'tools' due to: target is .PHONY
    ( cd tools/cppo-0.9.4 && rm -f depend && gmake -f Makefile.pre generate && gmake all )
    gmake[3]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9/tools/cppo-0.9.4'
    ../../Makefile.rules:230: update target 'generate' due to: target is .PHONY gmake -f Makefile.pre realgenerate
    gmake[4]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9/tools/cppo-0.9.4'
    ../../Makefile.rules:213: update target 'depend' due to: target does not exist
    ocamlfind ocamldep *.ml *.mli >depend || { rm -f depend; exit 1; } Makefile.pre:9: update target 'cppo_version.ml' due to: target does not exist echo 'let cppo_version = "0.9.4"' > cppo_version.ml
    ../../Makefile.rules:140: update target 'cppo_parser.ml' due to: target does not exist
    ocamlyacc cppo_parser.mly
    ../../Makefile.rules:137: update target 'cppo_lexer.ml' due to: target does not exist
    ocamllex cppo_lexer.mll
    352 states, 13139 transitions, table size 54668 bytes
    3450 additional bytes used for bindings
    gmake[4]: Leaving directory '/build/reproducible-path/ocamlnet-4.1.9/tools/cppo-0.9.4'
    gmake[3]: Leaving directory '/build/reproducible-path/ocamlnet-4.1.9/tools/cppo-0.9.4'
    gmake[3]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9/tools/cppo-0.9.4'
    ocamlfind ocamldep *.ml *.mli >depend || { rm -f depend; exit 1; } ../../Makefile.rules:129: update target 'cppo_command.cmo' due to: target does not exist
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -c cppo_command.ml ../../Makefile.rules:129: update target 'cppo_types.cmo' due to: target does not exist
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -c cppo_types.ml ../../Makefile.rules:132: update target 'cppo_parser.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename cppo_parser.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -c $opts cppo_parser.mli ../../Makefile.rules:129: update target 'cppo_lexer.cmo' due to: target does not exist
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -c cppo_lexer.ml ../../Makefile.rules:129: update target 'cppo_eval.cmo' due to: target does not exist
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -c cppo_eval.ml
    File "cppo_eval.ml", line 37, characters 6-10:
    37 | let file = pos.Lexing.pos_fname in
    ^^^^
    Warning 26 [unused-var]: unused variable file.
    ../../Makefile.rules:129: update target 'cppo_version.cmo' due to: target does not exist
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -c cppo_version.ml ../../Makefile.rules:129: update target 'cppo_main.cmo' due to: target does not exist
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -c cppo_main.ml ../../Makefile.rules:129: update target 'cppo_parser.cmo' due to: target does not exist
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -c cppo_parser.ml ../../Makefile.rules:89: update target 'cppo.cma' due to: target does not exist
    if [ "X" = "X" ]; then \
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -a -o cppo.cma cppo_types.cmo cppo_command.cmo cppo_parser.cmo cppo_lexer.cmo cppo_eval.cmo cppo_version.cmo; \
    else \
    ../../tools/mkstublib -o cppo cppo_types.cmo cppo_command.cmo cppo_parser.cmo cppo_lexer.cmo cppo_eval.cmo cppo_version.cmo ; \
    fi
    Makefile:22: update target 'cppo' due to: target does not exist
    rm -f cppo cppo
    ocamlfind ocamlc -g -package "bytes unix" -w -25 -package unix,bytes -linkpkg -custom -o cppo cppo.cma cppo_main.cmo
    gmake[3]: Leaving directory '/build/reproducible-path/ocamlnet-4.1.9/tools/cppo-0.9.4'
    ( cd tools/unimap_to_ocaml && gmake all )
    gmake[3]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9/tools/unimap_to_ocaml'
    Makefile:4: update target 'unimap_to_ocaml' due to: target does not exist ocamlfind ocamlc -g -package str -linkpkg \
    -o unimap_to_ocaml \
    unimap_to_ocaml.ml
    gmake[3]: Leaving directory '/build/reproducible-path/ocamlnet-4.1.9/tools/unimap_to_ocaml'
    Makefile:31: update target 'opt' due to: target is .PHONY
    for pkg in netsys netshm netstring netunidata equeue shell rpc-generator rpc rpc-auth-local netclient netcgi2 netplex netcgi2-plex netcamlbox netmulticore nethttpd netzip netcgi2-apache nettls-gnutls; do \
    ( cd src/$pkg && gmake -f Makefile.pre generate ) || exit; \
    ( cd src/$pkg && gmake -f Makefile.pre depend ) || exit; \
    ( cd src/$pkg && gmake opt ) || exit; \
    done
    gmake[3]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9/src/netsys'
    ../../Makefile.rules:230: update target 'generate' due to: target is .PHONY gmake -f Makefile.pre realgenerate
    gmake[4]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9/src/netsys'
    ../../Makefile.rules:196: update target 'META' due to: target does not exist sed -e 's/@VERSION@//' \
    -e 's/@AUTHDHREQS@//' \
    -e 's/@PREFERRED_CGI_PKG@//' \
    -e 's/@REGEXP_PROVIDER@/str/' \
    -e 's/@COMPAT_PCRE_PROVIDER@//' \
    -e 's/@ZIP_PROVIDER@/zip/' \
    META.in >META
    gmake[4]: Leaving directory '/build/reproducible-path/ocamlnet-4.1.9/src/netsys'
    gmake[3]: Leaving directory '/build/reproducible-path/ocamlnet-4.1.9/src/netsys'
    gmake[3]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9/src/netsys'
    ../../Makefile.rules:213: update target 'depend' due to: target does not exist
    ocamlfind ocamldep -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_BYTES " *.ml *.mli >depend || { rm -f depend; exit 1; }
    gmake[3]: Leaving directory '/build/reproducible-path/ocamlnet-4.1.9/src/netsys'
    gmake[3]: Entering directory '/build/reproducible-path/ocamlnet-4.1.9/src/netsys'
    ../../Makefile.rules:132: update target 'netsys_oothr_mt_init.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_oothr_mt_init.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -thread $opts netsys_oothr_mt_init.mli
    ../../Makefile.rules:132: update target 'netsys_oothr.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_oothr.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_oothr.mli
    ../../Makefile.rules:132: update target 'netsys_oothr_mt.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_oothr_mt.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -thread $opts netsys_oothr_mt.mli
    ../../Makefile.rules:125: update target 'netsys_oothr.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_oothr.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_oothr.cmx .
    cmx`.p.cmx netsys_oothr.ml
    ../../Makefile.rules:125: update target 'netsys_oothr_mt.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -thread netsys_oothr_mt.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_oothr_mt.
    cmx .cmx`.p.cmx -thread netsys_oothr_mt.ml
    ../../Makefile.rules:125: update target 'netsys_oothr_mt_init.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -thread netsys_oothr_mt_init.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_oothr_mt_
    init.cmx .cmx`.p.cmx -thread netsys_oothr_mt_init.ml
    Makefile:104: update target 'netsys_oothr_mt.cmxa' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -o netsys_oothr_mt.cmxa -a \
    netsys_oothr.cmx netsys_oothr_mt.cmx
    ../../Makefile.rules:143: update target 'netsys_c_outofheap.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_outofheap.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_outofheap.c'
    ../../Makefile.rules:143: update target 'netsys_c_gprof.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_gprof.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_gprof.c'
    Makefile:88: update target 'netsys_oothr.cmxa' due to: target does not exist ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -o netsys_oothr.cmxa -a netsys_oothr.cmx
    ../../Makefile.rules:143: update target 'netsys_c_ip6.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_ip6.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_ip6.c'
    ../../Makefile.rules:143: update target 'netsys_c_xdr.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_xdr.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_xdr.c'
    ../../Makefile.rules:143: update target 'netsys_c_mem.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_mem.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_mem.c'
    ../../Makefile.rules:143: update target 'netsys_c_queue.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_queue.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_queue.c'
    ../../Makefile.rules:143: update target 'netsys_c_htab.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_htab.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_htab.c'
    ../../Makefile.rules:143: update target 'netsys_c_win32.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_win32.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_win32.c'
    ../../Makefile.rules:143: update target 'netsys_c_event.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_event.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_event.c'
    ../../Makefile.rules:143: update target 'netsys_c_clock.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_clock.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_clock.c'
    ../../Makefile.rules:143: update target 'netsys_c_syslog.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_syslog.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_syslog.c'
    ../../Makefile.rules:143: update target 'netsys_c_subprocess.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_subprocess.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_subprocess.c'
    ../../Makefile.rules:143: update target 'netsys_c_spawn.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_spawn.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_spawn.c'
    ../../Makefile.rules:143: update target 'netsys_c_shm.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_shm.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_shm.c'
    ../../Makefile.rules:143: update target 'netsys_c_sem.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_sem.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_sem.c'
    ../../Makefile.rules:143: update target 'netsys_c_multicast.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_multicast.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_multicast.c'
    ../../Makefile.rules:143: update target 'netsys_c_locale.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_locale.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_locale.c'
    ../../Makefile.rules:143: update target 'netsys_c_ioprio.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_ioprio.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_ioprio.c'
    ../../Makefile.rules:143: update target 'netsys_c_fallocate.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_fallocate.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_fallocate.c'
    ../../Makefile.rules:143: update target 'netsys_c_fadvise.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_fadvise.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_fadvise.c'
    ../../Makefile.rules:143: update target 'netsys_c_poll.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c_poll.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c_poll.c'
    ../../Makefile.rules:143: update target 'netsys_c.o' due to: target does not exist
    ../../tools/stubcc -ocamlc ocamlc -ccopt "-O -g" netsys_c.c
    + x86_64-linux-gnu-gcc -O2 -fno-strict-aliasing -fwrapv -fPIC -pthread -D_FILE_OFFSET_BITS=64 -c -O -g -I'/usr/lib/x86_64-linux-gnu/ocaml/5.3.0' 'netsys_c.c'
    netsys_c.c:463:9: warning: "unix_cloexec_default" redefined
    463 | #define unix_cloexec_default 0
    | ^~~~~~~~~~~~~~~~~~~~
    In file included from netsys_c.h:72,
    from netsys_c.c:5: /usr/lib/x86_64-linux-gnu/ocaml/5.3.0/caml/unixsupport.h:148:9: note: this is the location of the previous definition
    148 | #define unix_cloexec_default caml_unix_cloexec_default
    | ^~~~~~~~~~~~~~~~~~~~
    ../../Makefile.rules:132: update target 'netsys_polypipe.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_polypipe.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_polypipe.mli
    ../../Makefile.rules:132: update target 'netsys_polysocket.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_polysocket.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_polysocket.mli
    ../../Makefile.rules:132: update target 'netlog.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netlog.mli .ml)".nopaque ]; then opts=""; fi; \ ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netlog.mli
    ../../Makefile.rules:125: update target 'netlog.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netlog.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netlog.cmx .cmx`.
    p.cmx netlog.ml
    ../../Makefile.rules:132: update target 'netsys_types.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_types.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_types.mli
    File "netsys_types.mli", line 48, characters 8-18:
    48 | [@@deprecated "Use blit_to_bytes instead."] (** @deprecated "Use blit_to_bytes instead." *)
    ^^^^^^^^^^
    Warning 53 [misplaced-attribute]: the "deprecated" attribute cannot appear in this context
    ../../Makefile.rules:132: update target 'netsys_posix.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_posix.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_posix.mli
    ../../Makefile.rules:132: update target 'netexn.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netexn.mli .ml)".nopaque ]; then opts=""; fi; \ ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netexn.mli
    ../../Makefile.rules:125: update target 'netsys_conf.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_conf.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_conf.cmx .
    cmx`.p.cmx netsys_conf.ml
    ../../Makefile.rules:125: update target 'netexn.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netexn.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netexn.cmx .cmx`.
    p.cmx netexn.ml
    ../../Makefile.rules:125: update target 'netsys_types.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_types.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_types.cmx .
    cmx`.p.cmx netsys_types.ml
    File "netsys_types.ml", line 49, characters 8-18:
    49 | [@@deprecated "Use blit_to_bytes instead."] (** @deprecated "Use blit_to_bytes instead." *)
    ^^^^^^^^^^
    Warning 53 [misplaced-attribute]: the "deprecated" attribute cannot appear in this context
    ../../Makefile.rules:125: update target 'netsys_impl_util.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_impl_util.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_impl_util.
    cmx .cmx`.p.cmx netsys_impl_util.ml
    ../../Makefile.rules:132: update target 'netsys_signal.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_signal.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_signal.mli
    ../../Makefile.rules:125: update target 'netsys_signal.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_signal.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_signal.cmx
    .cmx`.p.cmx netsys_signal.ml
    ../../Makefile.rules:125: update target 'netsys_posix.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_posix.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_posix.cmx .
    cmx`.p.cmx netsys_posix.ml
    File "netsys_posix.ml", line 880, characters 14-29:
    880 | | Failure "USE_FORK_EXEC" ->
    ^^^^^^^^^^^^^^^
    Warning 52 [fragile-literal-pattern]: Code should not depend on the actual values of
    this constructor's arguments. They are only for information
    and may change in future versions. (see manual section 13.5.3) ../../Makefile.rules:132: update target 'netsys_win32.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_win32.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_win32.mli
    ../../Makefile.rules:125: update target 'netsys_win32.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_win32.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_win32.cmx .
    cmx`.p.cmx netsys_win32.ml
    ../../Makefile.rules:125: update target 'netsys_polypipe.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_polypipe.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_polypipe.
    cmx .cmx`.p.cmx netsys_polypipe.ml
    ../../Makefile.rules:125: update target 'netsys_polysocket.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_polysocket.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_polysocket.
    cmx .cmx`.p.cmx netsys_polysocket.ml
    ../../Makefile.rules:132: update target 'netsys_gssapi.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_gssapi.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_gssapi.mli
    ../../Makefile.rules:132: update target 'netsys_sasl_types.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_sasl_types.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_sasl_types.mli
    ../../Makefile.rules:132: update target 'netsys_sasl.cmi' due to: target does not exist
    opts=""; \
    if [ -f "$(basename netsys_sasl.mli .ml)".nopaque ]; then opts=""; fi; \
    ocamlfind ocamlc -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c $opts netsys_sasl.mli
    ../../Makefile.rules:125: update target 'netsys_gssapi.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_gssapi.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_gssapi.cmx
    .cmx`.p.cmx netsys_gssapi.ml
    ../../Makefile.rules:125: update target 'netsys_sasl_types.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_sasl_types.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_sasl_types.
    cmx .cmx`.p.cmx netsys_sasl_types.ml
    ../../Makefile.rules:125: update target 'netsys_sasl.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_sasl.ml && \
    [ 0 -eq 0 ] || ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c -p -o `basename netsys_sasl.cmx .
    cmx`.p.cmx netsys_sasl.ml
    ../../Makefile.rules:125: update target 'netsys_sasl_util.cmx' due to: target does not exist
    ocamlfind ocamlopt -g -safe-string -package "bytes unix" -pp "../../tools/cppo-0.9.4/cppo -include ../../config.cppo -D HAVE_O_SHARE_DELETE -D HAVE_O_CLOEXEC -D HAVE_O_KEEPEXEC -D HAVE_BYTES " -w -25 -c netsys_sasl_util.ml && \

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)