(for PR #29950)

2026-05-23 21:42.42: New job: test camlp5-buildscripts.0.07, using opam dev
                              from https://github.com/ocaml/opam-repository.git#refs/pull/29950/head (d950ec257351a2d586e81a5b4815cdaf7be65f34)
                              on archlinux-ocaml-5.4/amd64

To reproduce locally:

cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29950/head" && git reset --hard d950ec25
git fetch origin master
git merge --no-edit 493123878a032e3f829b102f34e8690b3b2a4fd4
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:archlinux-ocaml-5.4@sha256:ea3dc7f3cb3869562d18347ec23a40ff3cfad80b25e4f3e6c12a3c05311668e8
USER 1000:1000
WORKDIR /home/opam
RUN sudo ln -f /usr/bin/opam-dev /usr/bin/opam
RUN opam init --reinit -ni
RUN opam option solver=builtin-0install && opam config report
ENV OPAMDOWNLOADJOBS="1"
ENV OPAMERRLOGLEN="0"
ENV OPAMPRECISETRACKING="1"
ENV CI="true"
ENV OPAM_REPO_CI="true"
RUN rm -rf opam-repository/
COPY --chown=1000:1000 . opam-repository/
RUN opam repository set-url --strict default opam-repository/
RUN opam update --depexts || true
RUN opam pin add -k version -yn camlp5-buildscripts.0.07 0.07
RUN opam reinstall camlp5-buildscripts.0.07; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    partial_fails=""; \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"archlinux\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'camlp5-buildscripts.0.07' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1
RUN (opam reinstall --with-test camlp5-buildscripts.0.07) || true
RUN opam reinstall --with-test --verbose camlp5-buildscripts.0.07; \
    res=$?; \
    test "$res" != 31 && exit "$res"; \
    export OPAMCLI=2.0; \
    build_dir=$(opam var prefix)/.opam-switch/build; \
    failed=$(ls "$build_dir"); \
    partial_fails=""; \
    for pkg in $failed; do \
    if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"archlinux\""; then \
    echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
    fi; \
    test "$pkg" != 'camlp5-buildscripts.0.07' && partial_fails="$partial_fails $pkg"; \
    done; \
    test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
    exit 1

END-OF-DOCKERFILE
docker build -f ../Dockerfile .

2026-05-23 21:42.42: Using cache hint "ocaml/opam:archlinux-ocaml-5.4@sha256:ea3dc7f3cb3869562d18347ec23a40ff3cfad80b25e4f3e6c12a3c05311668e8-camlp5-buildscripts.0.07-d950ec257351a2d586e81a5b4815cdaf7be65f34"
2026-05-23 21:42.42: Using OBuilder spec:
((from ocaml/opam:archlinux-ocaml-5.4@sha256:ea3dc7f3cb3869562d18347ec23a40ff3cfad80b25e4f3e6c12a3c05311668e8)
 (user (uid 1000) (gid 1000))
 (workdir /home/opam)
 (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
 (run (network host)
      (shell "opam init --reinit --config .opamrc-sandbox -ni"))
 (run (shell "opam option solver=builtin-0install && opam config report"))
 (env OPAMDOWNLOADJOBS 1)
 (env OPAMERRLOGLEN 0)
 (env OPAMPRECISETRACKING 1)
 (env CI true)
 (env OPAM_REPO_CI true)
 (run (shell "rm -rf opam-repository/"))
 (copy (src .) (dst opam-repository/))
 (run (shell "opam repository set-url --strict default opam-repository/"))
 (run (network host)
      (shell "opam update --depexts || true"))
 (run (shell "opam pin add -k version -yn camlp5-buildscripts.0.07 0.07"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell  "opam reinstall camlp5-buildscripts.0.07;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        partial_fails=\"\";\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"archlinux\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'camlp5-buildscripts.0.07' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
 (run (network host)
      (shell "(opam reinstall --with-test camlp5-buildscripts.0.07) || true"))
 (run (shell  "opam reinstall --with-test --verbose camlp5-buildscripts.0.07;\
             \n        res=$?;\
             \n        test \"$res\" != 31 && exit \"$res\";\
             \n        export OPAMCLI=2.0;\
             \n        build_dir=$(opam var prefix)/.opam-switch/build;\
             \n        failed=$(ls \"$build_dir\");\
             \n        partial_fails=\"\";\
             \n        for pkg in $failed; do\
             \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"archlinux\\\"\"; then\
             \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
             \n          fi;\
             \n          test \"$pkg\" != 'camlp5-buildscripts.0.07' && partial_fails=\"$partial_fails $pkg\";\
             \n        done;\
             \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
             \n        exit 1"))
)

2026-05-23 21:42.42: Waiting for resource in pool OCluster
2026-05-23 21:42.42: Waiting for worker…
2026-05-23 21:42.43: Got resource from pool OCluster
Building on clete.caelum.ci.dev
All commits already cached
HEAD is now at 493123878a Merge pull request #29931 from chetmurthy/release-pa_ppx-package-suite-at-8.05.01
Updating 493123878a..d950ec2573
Fast-forward
 .../camlp5-buildscripts.0.07/opam                  | 49 ++++++++++++++++++++++
 1 file changed, 49 insertions(+)
 create mode 100644 packages/camlp5-buildscripts/camlp5-buildscripts.0.07/opam

(from ocaml/opam:archlinux-ocaml-5.4@sha256:ea3dc7f3cb3869562d18347ec23a40ff3cfad80b25e4f3e6c12a3c05311668e8)
2026-05-23 21:43.15 ---> using "187a599918fdf1ee631781288dcafefa31ed189965e0184153f46ac9e150db24" from cache

/: (user (uid 1000) (gid 1000))

/: (workdir /home/opam)

/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-05-23 21:43.15 ---> using "34e2a7c756657c540996fbe6710a25298046528ba11ffa11e5d7d86a13da8142" from cache

/home/opam: (run (network host)
                 (shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally from built-in defaults.
Checking for available remotes: rsync and local, git.
  - you won't be able to use mercurial repositories unless you install the hg command on your system.
  - you won't be able to use darcs repositories unless you install the darcs command on your system.

This version of opam requires an update to the layout of /home/opam/.opam from version 2.1 to version 2.2, which can't be reverted.
You may want to back it up before going further.

Continue? [Y/n] y
[NOTE] The 'jobs' option was reset, its value was 1 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
           opam option jobs=1 --global
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] no changes from git+file:///home/opam/opam-repository
2026-05-23 21:43.15 ---> using "189c86e3ba476dd88acdddd3a5af1ad90111c2bb4bcbb76bb7787c72f3da9232" from cache

/home/opam: (run (shell "opam option solver=builtin-0install && opam config report"))
Set to 'builtin-0install' the field solver in global configuration
# opam config report
# opam-version         2.5.1
# self-upgrade         no
# system               arch=x86_64 os=linux os-distribution=arch os-version=20260510.0.525573
# solver               builtin-0install
# install-criteria     -changed,-count[avoid-version,solution]
# upgrade-criteria     -count[avoid-version,solution]
# jobs                 71
# repositories         1 (version-controlled)
# pinned               1 (version)
# current-switch       5.4
# invariant            ["ocaml-base-compiler" {= "5.4.1"}]
# compiler-packages    ocaml-base-compiler.5.4.1, ocaml-compiler.5.4.1, ocaml-options-vanilla.1
# ocaml:native         true
# ocaml:native-tools   true
# ocaml:native-dynlink true
# ocaml:stubsdir       /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled   false
# ocaml:compiler       5.4.1
2026-05-23 21:43.15 ---> using "36f112a458c6b801af3d128ce34e5aac9eac35b983c89d4e57cf97559c906789" from cache

/home/opam: (env OPAMDOWNLOADJOBS 1)

/home/opam: (env OPAMERRLOGLEN 0)

/home/opam: (env OPAMPRECISETRACKING 1)

/home/opam: (env CI true)

/home/opam: (env OPAM_REPO_CI true)

/home/opam: (run (shell "rm -rf opam-repository/"))
2026-05-23 21:43.15 ---> using "c46e737996fa62283d167b02f237137afc5ad84e80ab935e04ddaae60be96078" from cache

/home/opam: (copy (src .) (dst opam-repository/))
2026-05-23 21:43.22 ---> saved as "8d28ad4d5d9c374ad5a069ea9856c94108e077accf5463adb7762d3f2f446dcf"

/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-05-23 21:43.34 ---> saved as "4e23badcd164844cff84a52df5b2d9cd74331e6397fea4f2de64f353695d0146"

/home/opam: (run (network host)
                 (shell "opam update --depexts || true"))
+ /usr/sbin/sudo "pacman" "-Sy"
- :: Synchronizing package databases...
-  core downloading...
-  extra downloading...
2026-05-23 21:43.36 ---> saved as "b6e99f26728a784a595df4cc20828af16c1c1d736554fde33ba4c040eded4b72"

/home/opam: (run (shell "opam pin add -k version -yn camlp5-buildscripts.0.07 0.07"))
camlp5-buildscripts is now pinned to version 0.07
2026-05-23 21:43.37 ---> saved as "5b74a6234dd24a30220b16742af234ad0cb587acf5e4d05ff9d37c34c656165e"

/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
                 (network host)
                 (shell  "opam reinstall camlp5-buildscripts.0.07;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        partial_fails=\"\";\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"archlinux\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'camlp5-buildscripts.0.07' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
camlp5-buildscripts.0.07 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 17 packages
  ∗ astring             0.8.5         [required by bos]
  ∗ bos                 0.3.0         [required by camlp5-buildscripts]
  ∗ camlp-streams       5.0.1         [required by not-ocamlfind]
  ∗ camlp5-buildscripts 0.07 (pinned)
  ∗ conf-m4             1             [required by not-ocamlfind]
  ∗ conf-which          1             [required by not-ocamlfind]
  ∗ dune                3.23.1        [required by re]
  ∗ fmt                 0.11.0        [required by camlp5-buildscripts]
  ∗ fpath               0.7.3         [required by bos]
  ∗ logs                0.10.0        [required by bos]
  ∗ not-ocamlfind       0.14          [required by camlp5-buildscripts]
  ∗ ocamlbuild          0.16.1        [required by bos]
  ∗ ocamlfind           1.9.8         [required by bos, not-ocamlfind]
  ∗ ocamlgraph          2.2.0         [required by not-ocamlfind]
  ∗ re                  1.14.0        [required by camlp5-buildscripts]
  ∗ rresult             0.7.0         [required by camlp5-buildscripts]
  ∗ topkg               1.1.1         [required by bos]

The following system packages will first need to be installed:
    m4 which

<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>

opam believes some required external dependencies are missing. opam can:
> 1. Run pacman to install them (may need root/sudo access)
  2. Display the recommended pacman command and wait while you run it manually (e.g. in another terminal)
  3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
  4. Abort the installation

[1/2/3/4] 1

+ /usr/sbin/sudo "pacman" "-Su" "--noconfirm" "m4" "which"
- :: Starting full system upgrade...
- resolving dependencies...
- looking for conflicting packages...
- 
- Package (10)          Old Version  New Version  Net Change  Download Size
- 
- core/device-mapper    2.03.40-1    2.03.41-1      0.01 MiB       0.30 MiB
- core/gpgme            2.0.1-3      2.1.0-1        0.02 MiB       0.32 MiB
- core/iana-etc         20260425-1   20260511-1     0.00 MiB       0.39 MiB
- core/krb5             1.21.3-2     1.22.2-1       0.17 MiB       1.34 MiB
- core/libusb           1.0.29-1     1.0.30-1       0.01 MiB       0.08 MiB
- extra/rsync           3.4.2-1      3.4.3-1        0.02 MiB       0.37 MiB
- core/util-linux       2.42-1       2.42.1-1       1.11 MiB       6.16 MiB
- core/util-linux-libs  2.42-1       2.42.1-1       0.04 MiB       0.51 MiB
- core/m4                            1.4.21-2       0.71 MiB       0.27 MiB
- core/which                         2.23-1         0.03 MiB       0.02 MiB
- 
- Total Download Size:    9.77 MiB
- Total Installed Size:  33.07 MiB
- Net Upgrade Size:       2.13 MiB
- 
- :: Proceed with installation? [Y/n] 
- :: Retrieving packages...
-  util-linux-2.42.1-1-x86_64 downloading...
-  krb5-1.22.2-1-x86_64 downloading...
-  util-linux-libs-2.42.1-1-x86_64 downloading...
-  iana-etc-20260511-1-any downloading...
-  rsync-3.4.3-1-x86_64 downloading...
-  gpgme-2.1.0-1-x86_64 downloading...
-  device-mapper-2.03.41-1-x86_64 downloading...
-  m4-1.4.21-2-x86_64 downloading...
-  libusb-1.0.30-1-x86_64 downloading...
-  which-2.23-1-x86_64 downloading...
- checking keyring...
- checking package integrity...
- loading package files...
- checking for file conflicts...
- :: Processing package changes...
- upgrading iana-etc...
- installing m4...
- installing which...
- upgrading device-mapper...
- upgrading libusb...
- upgrading util-linux-libs...
- upgrading krb5...
- upgrading gpgme...
- upgrading rsync...
- upgrading util-linux...
- :: Running post-transaction hooks...
- (1/6) Creating system user accounts...
- (2/6) Creating temporary files...
- /usr/lib/tmpfiles.d/journal-nocow.conf:26: Failed to resolve specifier: uninitialized /etc/ detected, skipping.
- All rules containing unresolvable specifiers will be skipped.
- (3/6) Reloading system manager configuration...
- Failed to check for chroot() environment: Permission denied
-   Skipped: Current root is not booted.
- (4/6) Enqueuing marked services...
- Failed to check for chroot() environment: Permission denied
-   Skipped: Current root is not booted.
- (5/6) Reloading device manager configuration...
- Failed to check for chroot() environment: Permission denied
-   Skipped: Current root is not booted.
- (6/6) Arming ConditionNeedsUpdate...

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
⬇ retrieved astring.0.8.5  (cached)
⬇ retrieved bos.0.3.0  (cached)
⬇ retrieved camlp-streams.5.0.1  (cached)
⬇ retrieved camlp5-buildscripts.0.07  (https://github.com/camlp5/camlp5-buildscripts/archive/refs/tags/0.07.tar.gz)
∗ installed conf-which.1
∗ installed conf-m4.1
⬇ retrieved dune.3.23.1  (cached)
⬇ retrieved fmt.0.11.0  (cached)
⬇ retrieved fpath.0.7.3  (cached)
⬇ retrieved logs.0.10.0  (cached)
⬇ retrieved not-ocamlfind.0.14  (cached)
⬇ retrieved ocamlbuild.0.16.1  (cached)
⬇ retrieved ocamlfind.1.9.8  (cached)
⬇ retrieved ocamlgraph.2.2.0  (cached)
⬇ retrieved re.1.14.0  (cached)
⬇ retrieved rresult.0.7.0  (cached)
⬇ retrieved topkg.1.1.1  (cached)
∗ installed ocamlfind.1.9.8
∗ installed ocamlbuild.0.16.1
∗ installed topkg.1.1.1
∗ installed rresult.0.7.0
∗ installed fmt.0.11.0
∗ installed astring.0.8.5
∗ installed logs.0.10.0
∗ installed fpath.0.7.3
∗ installed bos.0.3.0
∗ installed dune.3.23.1
∗ installed camlp-streams.5.0.1
∗ installed re.1.14.0
∗ installed ocamlgraph.2.2.0
∗ installed not-ocamlfind.0.14
∗ installed camlp5-buildscripts.0.07
Done.
# To update the current shell environment, run: eval $(opam env)
2026-05-23 21:44.25 ---> saved as "7f14dbab3def006c2632b361ab04d2503a172d893564d8f9da330ba2ff1ff41c"

/home/opam: (run (network host)
                 (shell "(opam reinstall --with-test camlp5-buildscripts.0.07) || true"))
The following actions will be performed:
=== recompile 5 packages
  ↻ bos                 0.3.0         [uses fmt]
  ↻ camlp5-buildscripts 0.07 (pinned)
  ↻ fmt                 0.11.0        [uses cmdliner]
  ↻ logs                0.10.0        [uses cmdliner]
  ↻ not-ocamlfind       0.14          [uses fmt]
=== install 6 packages
  ∗ cmdliner            2.1.1         [required by mdx]
  ∗ cppo                1.8.0         [required by mdx]
  ∗ csexp               1.5.2         [required by mdx]
  ∗ mdx                 2.5.2         [required by camlp5-buildscripts]
  ∗ ocaml-version       4.1.1         [required by mdx]
  ∗ result              1.5           [required by mdx]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
⬇ retrieved bos.0.3.0  (https://opam.ocaml.org/cache)
⬇ retrieved cmdliner.2.1.1  (https://opam.ocaml.org/cache)
⬇ retrieved cppo.1.8.0  (https://opam.ocaml.org/cache)
⬇ retrieved csexp.1.5.2  (https://opam.ocaml.org/cache)
⬇ retrieved fmt.0.11.0  (https://opam.ocaml.org/cache)
⬇ retrieved logs.0.10.0  (https://opam.ocaml.org/cache)
∗ installed csexp.1.5.2
⬇ retrieved mdx.2.5.2  (https://opam.ocaml.org/cache)
⬇ retrieved not-ocamlfind.0.14  (https://opam.ocaml.org/cache)
⬇ retrieved ocaml-version.4.1.1  (https://opam.ocaml.org/cache)
⬇ retrieved result.1.5  (https://opam.ocaml.org/cache)
∗ installed result.1.5
∗ installed cppo.1.8.0
∗ installed ocaml-version.4.1.1
⊘ removed   camlp5-buildscripts.0.07
⊘ removed   bos.0.3.0
⊘ removed   logs.0.10.0
⊘ removed   not-ocamlfind.0.14
⊘ removed   fmt.0.11.0
∗ installed cmdliner.2.1.1
∗ installed fmt.0.11.0
∗ installed logs.0.10.0
∗ installed not-ocamlfind.0.14
∗ installed mdx.2.5.2
∗ installed bos.0.3.0
∗ installed camlp5-buildscripts.0.07
Done.
# To update the current shell environment, run: eval $(opam env)
2026-05-23 21:44.46 ---> saved as "d8979a53faec34fdeabaf5f96185309890369c7b46fdadd37f7e6b0b48346d6a"

/home/opam: (run (shell  "opam reinstall --with-test --verbose camlp5-buildscripts.0.07;\
                        \n        res=$?;\
                        \n        test \"$res\" != 31 && exit \"$res\";\
                        \n        export OPAMCLI=2.0;\
                        \n        build_dir=$(opam var prefix)/.opam-switch/build;\
                        \n        failed=$(ls \"$build_dir\");\
                        \n        partial_fails=\"\";\
                        \n        for pkg in $failed; do\
                        \n          if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"archlinux\\\"\"; then\
                        \n            echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
                        \n          fi;\
                        \n          test \"$pkg\" != 'camlp5-buildscripts.0.07' && partial_fails=\"$partial_fails $pkg\";\
                        \n        done;\
                        \n        test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
                        \n        exit 1"))
The following actions will be performed:
=== recompile 1 package
  ↻ camlp5-buildscripts 0.07 (pinned)

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing  2/4: [camlp5-buildscripts: make sys]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "sys" (CWD=/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07)
- set -e; for i in src; do cd $i; make all; cd ..; done
- make[1]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- ocamlfind ocamlc -linkpkg -linkall -package re,fmt,unix,bos,rresult ya_wrap_ocamlfind.ml -o ya-wrap-ocamlfind
- ocamlfind ocamlc -linkpkg -linkall -package re,fmt,unix,bos,rresult fixin.ml -o fixin
- ocamlfind ocamlc -linkpkg -linkall -package re,fmt,unix,bos,rresult join_meta.ml -o join_meta
- ocamlfind ocamlc -linkpkg -linkall -package re,fmt,unix,bos,rresult LAUNCH.ml -o LAUNCH
- make DESTDIR=/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install/ install
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- mkdir -p /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib
- touch META
- not-ocamlfind reinstall-if-diff camlp5-buildscripts -destdir /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib META ya-wrap-ocamlfind fixin join_meta LAUNCH 
- ocamlfind: [WARNING] No such directory: /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib/camlp5-buildscripts
- reinstall-if-diff: remove and install lists have differing lengths
- + ocamlfind remove -destdir /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib camlp5-buildscripts
- ocamlfind: [WARNING] No such file: /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib/camlp5-buildscripts/META
- + ocamlfind install camlp5-buildscripts -destdir /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib META ya-wrap-ocamlfind fixin join_meta LAUNCH
- Installed /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib/camlp5-buildscripts/LAUNCH
- Installed /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib/camlp5-buildscripts/join_meta
- Installed /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib/camlp5-buildscripts/fixin
- Installed /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib/camlp5-buildscripts/ya-wrap-ocamlfind
- Installed /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib/camlp5-buildscripts/META
- rm -f META
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- make[1]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
Processing  2/4: [camlp5-buildscripts: make test]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "make" "test" (CWD=/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07)
- set -e; for i in src; do cd $i; make all; cd ..; done
- make[1]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- make DESTDIR=/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install/ install
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- mkdir -p /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib
- touch META
- not-ocamlfind reinstall-if-diff camlp5-buildscripts -destdir /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib META ya-wrap-ocamlfind fixin join_meta LAUNCH 
- rm -f META
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- make[1]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- mkdir -p local-install/bin
- set -e; for i in test; do cd $i; make all; cd ..; done
- make[1]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test'
- set -e; for i in simple packages fail; do cd $i; make all; cd ..; done
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/simple'
- make[2]: Nothing to be done for 'all'.
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/simple'
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages'
- set -e; for i in foo bar test; do cd $i; make all; cd ..; done
- make[3]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/foo'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlc -c foo.ml
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlc' '-c' 'foo.ml'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlopt -c foo.ml
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlopt' '-c' 'foo.ml'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  install -destdir ../../../local-install/lib foo META foo.cmo foo.cmi foo.cmx foo.o || true
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'install' '-destdir' '../../../local-install/lib' 'foo' 'META' 'foo.cmo' 'foo.cmi' 'foo.cmx' 'foo.o'
- Installed ../../../local-install/lib/foo/foo.o
- Installed ../../../local-install/lib/foo/foo.cmx
- Installed ../../../local-install/lib/foo/foo.cmi
- Installed ../../../local-install/lib/foo/foo.cmo
- Installed ../../../local-install/lib/foo/META
- make[3]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/foo'
- make[3]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/bar'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlc -package foo -c bar.ml
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlc' '-package' 'foo' '-c' 'bar.ml'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlopt -package foo -c bar.ml
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlopt' '-package' 'foo' '-c' 'bar.ml'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlc -package foo -c buzz.ml
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlc' '-package' 'foo' '-c' 'buzz.ml'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlopt -package foo -c buzz.ml
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlopt' '-package' 'foo' '-c' 'buzz.ml'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  install -destdir ../../../local-install/lib bar META bar.cmo bar.cmi bar.cmx bar.o buzz.cmo buzz.cmi buzz.cmx buzz.o || true
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'install' '-destdir' '../../../local-install/lib' 'bar' 'META' 'bar.cmo' 'bar.cmi' 'bar.cmx' 'bar.o' 'buzz.cmo' 'buzz.cmi' 'buzz.cmx' 'buzz.o'
- Installed ../../../local-install/lib/bar/buzz.o
- Installed ../../../local-install/lib/bar/buzz.cmx
- Installed ../../../local-install/lib/bar/buzz.cmi
- Installed ../../../local-install/lib/bar/buzz.cmo
- Installed ../../../local-install/lib/bar/bar.o
- Installed ../../../local-install/lib/bar/bar.cmx
- Installed ../../../local-install/lib/bar/bar.cmi
- Installed ../../../local-install/lib/bar/bar.cmo
- Installed ../../../local-install/lib/bar/META
- make[3]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/bar'
- make[3]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/test'
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlc -verbose -package foo -linkall -linkpkg justfoo.ml -o justfoo
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlc' '-verbose' '-package' 'foo' '-linkall' '-linkpkg' 'justfoo.ml' '-o' 'justfoo'
- Effective set of compiler predicates: pkg_foo,autolink,byte
- + ocamlc.opt -verbose -linkall -o justfoo -I ../../../local-install/lib/foo ../../../local-install/lib/foo/foo.cmo justfoo.ml
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlc -verbose -package fmt,bar -linkall -linkpkg foobar.ml -o foobar
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlc' '-verbose' '-package' 'fmt,bar' '-linkall' '-linkpkg' 'foobar.ml' '-o' 'foobar'
- Effective set of compiler predicates: pkg_fmt,pkg_foo,pkg_bar,autolink,byte
- + ocamlc.opt -verbose -linkall -o foobar -I /home/opam/.opam/5.4/lib/fmt -I ../../../local-install/lib/foo -I ../../../local-install/lib/bar /home/opam/.opam/5.4/lib/fmt/fmt.cma ../../../local-install/lib/foo/foo.cmo ../../../local-install/lib/bar/bar.cmo foobar.ml
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlc -verbose -package bar -linkall -linkpkg buzz.cmo andbuzz.ml -o andbuzz
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlc' '-verbose' '-package' 'bar' '-linkall' '-linkpkg' 'buzz.cmo' 'andbuzz.ml' '-o' 'andbuzz'
- Effective set of compiler predicates: pkg_foo,pkg_bar,autolink,byte
- + ocamlc.opt -verbose -linkall -o andbuzz -I ../../../local-install/lib/foo -I ../../../local-install/lib/bar ../../../local-install/lib/foo/foo.cmo ../../../local-install/lib/bar/bar.cmo buzz.cmo andbuzz.ml
- TOP=../../.. ../../../src/LAUNCH -vv -- ocamlfind camlp5-buildscripts/LAUNCH -- ocamlfind  ocamlc -verbose -package fmt,bar -linkall -linkpkg foobar.ml -o foobar buzz.cmo
- LAUNCH: PATH="../../../local-install/bin:/home/opam/.opam/5.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
- LAUNCH: OCAMLPATH="../../../local-install/lib:"
- LAUNCH: command 'ocamlfind' 'camlp5-buildscripts/LAUNCH' '--' 'ocamlfind' 'ocamlc' '-verbose' '-package' 'fmt,bar' '-linkall' '-linkpkg' 'foobar.ml' '-o' 'foobar' 'buzz.cmo'
- Effective set of compiler predicates: pkg_fmt,pkg_foo,pkg_bar,autolink,byte
- + ocamlc.opt -verbose -linkall -o foobar -I /home/opam/.opam/5.4/lib/fmt -I ../../../local-install/lib/foo -I ../../../local-install/lib/bar /home/opam/.opam/5.4/lib/fmt/fmt.cma ../../../local-install/lib/foo/foo.cmo ../../../local-install/lib/bar/bar.cmo foobar.ml buzz.cmo
- cp foobar ../../../local-install/bin/foobar
- cp foobar ../../../local-install/bin/foobar
- cp foobar ../../../local-install/bin/foobar.opt
- make[3]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/test'
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages'
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/fail'
- make[2]: Nothing to be done for 'all'.
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/fail'
- make[1]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test'
- set -e; for i in test; do cd $i; make test; cd ..; done
- make[1]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test'
- set -e; for i in simple packages fail; do cd $i; make test; cd ..; done
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/simple'
- rm -f LAUNCH.md.corrected
- ocaml-mdx test --force-output LAUNCH.md
- test '!' -f LAUNCH.md.corrected || diff -I stublibs -I '```' -Bwiu LAUNCH.md LAUNCH.md.corrected
- rm -f join_meta.md.corrected
- ocaml-mdx test --force-output join_meta.md
- test '!' -f join_meta.md.corrected || diff -I stublibs -I '```' -Bwiu join_meta.md join_meta.md.corrected
- rm -f ya-wrap-ocamlfind.md.corrected
- ocaml-mdx test --force-output ya-wrap-ocamlfind.md
- test '!' -f ya-wrap-ocamlfind.md.corrected || diff -I stublibs -I '```' -Bwiu ya-wrap-ocamlfind.md ya-wrap-ocamlfind.md.corrected
- ./LAUNCH.sh
- ================
- Failure("LAUNCH: environment variable TOP *must* be set to use this wrapper")
- expect-this
- ================
- foo
- ================
- bar
- ================
- DONE
- ./LAUNCH.sh > LAUNCH.sh.output 2>&1
- diff -Bwiu t/LAUNCH/LAUNCH.sh.expected LAUNCH.sh.output
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/simple'
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages'
- set -e; for i in foo bar test; do cd $i; make test; cd ..; done
- make[3]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/foo'
- make[3]: Nothing to be done for 'test'.
- make[3]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/foo'
- make[3]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/bar'
- make[3]: Nothing to be done for 'test'.
- make[3]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/bar'
- make[3]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/test'
- make[3]: Nothing to be done for 'test'.
- make[3]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages/test'
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/packages'
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/fail'
- rm -f FAILED
- if [ -f FAILED ] ; then false; fi
- ocamlfind fmt/NONEXISTENT || touch FAILED
- ocamlfind: Cannot find command: /home/opam/.opam/5.4/lib/fmt/NONEXISTENT
- if [ ! -f FAILED ] ; then false; fi
- rm -f FAILED
- TOP=../.. ../../src/LAUNCH -- ocamlfind fmt/NONEXISTENT || touch FAILED
- ocamlfind: Cannot find command: /home/opam/.opam/5.4/lib/fmt/NONEXISTENT
- if [ ! -f FAILED ] ; then false; fi
- rm -f FAILED
- TOP=../.. ../../src/LAUNCH -- ocamlfind camlp5-buildscripts/LAUNCH -- touch SUCCESS
- if [ ! -f SUCCESS ] ; then false; fi
- rm -f SUCCESS
- echo "==== ALL PASSED ===="
- ==== ALL PASSED ====
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test/fail'
- make[1]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/test'
λ compiled  camlp5-buildscripts.0.07
⊘ removed   camlp5-buildscripts.0.07
Processing  4/4: [camlp5-buildscripts: make install]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "install" "make" "install" (CWD=/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07)
- set -e; for i in src; do cd $i; make all; cd ..; done
- make[1]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- make DESTDIR=/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install/ install
- make[2]: Entering directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- mkdir -p /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib
- touch META
- not-ocamlfind reinstall-if-diff camlp5-buildscripts -destdir /home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src/../local-install//lib META ya-wrap-ocamlfind fixin join_meta LAUNCH 
- rm -f META
- make[2]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- make[1]: Leaving directory '/home/opam/.opam/5.4/.opam-switch/build/camlp5-buildscripts.0.07/src'
- ocamlfind remove camlp5-buildscripts || true
- ocamlfind: [WARNING] No such file: /home/opam/.opam/5.4/lib/camlp5-buildscripts/META
- ocamlfind install camlp5-buildscripts local-install/lib/camlp5-buildscripts/*
- Installed /home/opam/.opam/5.4/lib/camlp5-buildscripts/ya-wrap-ocamlfind
- Installed /home/opam/.opam/5.4/lib/camlp5-buildscripts/join_meta
- Installed /home/opam/.opam/5.4/lib/camlp5-buildscripts/fixin
- Installed /home/opam/.opam/5.4/lib/camlp5-buildscripts/LAUNCH
- Installed /home/opam/.opam/5.4/lib/camlp5-buildscripts/META
∗ installed camlp5-buildscripts.0.07
Done.
# To update the current shell environment, run: eval $(opam env)
2026-05-23 21:44.54 ---> saved as "def71b7dd72137f89ce36794919a47491ad073eac4e8e2d0116009486ec30bd3"
Job succeeded
2026-05-23 21:44.59: Job succeeded