mrrl

Minimal Reliable Reproducible Linux
git clone https://ccx.te2000.cz/git/mrrl
Log | Files | Refs | Submodules | README

commit e9e72261ba68757b4485afc79d4d39633d4f3a1e
parent d573b328c53e4773720f9a1dd4f584adc65ceeec
Author: Jan Pobrislo <ccx@te2000.cz>
Date:   Wed, 29 Oct 2025 00:29:46 +0000

ocaml packages

Diffstat:
Mtemplates/generic | 4++++
Atemplates/pkg/ocaml-astring | 19+++++++++++++++++++
Atemplates/pkg/ocaml-bos | 21+++++++++++++++++++++
Atemplates/pkg/ocaml-rresult | 19+++++++++++++++++++
Atemplates/pkg/ocaml-topkg | 16++++++++++++++++
Mtemplates/pkg/wip.environment | 1+
Atemplates/topkg | 27+++++++++++++++++++++++++++
Avariants/ccx-x86_64/ocaml-astring | 103+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Avariants/ccx-x86_64/ocaml-bos | 105+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Avariants/ccx-x86_64/ocaml-rresult | 103+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Avariants/ccx-x86_64/ocaml-topkg | 102+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mvariants/ccx-x86_64/wip.environment | 5+++--
Avariants/root-x86_64/ocaml-astring | 103+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Avariants/root-x86_64/ocaml-bos | 105+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Avariants/root-x86_64/ocaml-rresult | 103+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Avariants/root-x86_64/ocaml-topkg | 102+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mvariants/root-x86_64/wip.environment | 5+++--
17 files changed, 939 insertions(+), 4 deletions(-)

diff --git a/templates/generic b/templates/generic @@ -8,8 +8,12 @@ #@git:{{submodule.current[upstream_name]}}:{{upstream_name}} {% elif pkg_source == "tar" -%} #@untar::{{downloads[upstream_name + "-" + assertion(pkg_version) + "." + pkg_source]}}:. +{% elif pkg_source == "tgz" -%} +#@untar:-z:{{downloads[upstream_name + "-" + assertion(pkg_version) + "." + pkg_source]}}:. {% elif pkg_source == "tar.gz" -%} #@untar:-z:{{downloads[upstream_name + "-" + assertion(pkg_version) + "." + pkg_source]}}:. +{% elif pkg_source == "tbz" -%} +#@untar:-j:{{downloads[upstream_name + "-" + assertion(pkg_version) + "." + pkg_source]}}:. {% elif pkg_source == "tar.bz2" -%} #@untar:-j:{{downloads[upstream_name + "-" + assertion(pkg_version) + "." + pkg_source]}}:. {% elif pkg_source == "tar.xz" -%} diff --git a/templates/pkg/ocaml-astring b/templates/pkg/ocaml-astring @@ -0,0 +1,19 @@ +{%- set pkg_version="0.8.5" -%} +{%- set upstream_name="astring" -%} +{%- set pkg_source="tbz" -%} +{% extends "topkg" %} +{% block package_deps -%} +#+{{pkg_install_name("ocaml-topkg")}} +{% endblock package_deps %} +{% block genlinks_begin %} + x["./library.ocaml/astring/astring.a"]=1 + x["./library.ocaml/astring/astring.cma"]=1 + x["./library.ocaml/astring/astring.cmi"]=1 + x["./library.ocaml/astring/astring.cmt"]=1 + x["./library.ocaml/astring/astring.cmti"]=1 + x["./library.ocaml/astring/astring.cmx"]=1 + x["./library.ocaml/astring/astring.cmxa"]=1 + x["./library.ocaml/astring/astring.cmxs"]=1 + x["./library.ocaml/astring/astring.ml"]=1 + x["./library.ocaml/astring/astring.mli"]=1 +{% endblock genlinks_begin %} diff --git a/templates/pkg/ocaml-bos b/templates/pkg/ocaml-bos @@ -0,0 +1,21 @@ +{%- set pkg_version="0.7.0" -%} +{%- set upstream_name="rresult" -%} +{%- set pkg_source="tbz" -%} +{% extends "topkg" %} +{% block package_deps -%} +#+{{pkg_install_name("ocaml-topkg")}} +#+{{pkg_install_name("ocaml-astring")}} +#+{{pkg_install_name("ocaml-rresult")}} +{% endblock package_deps %} +{% block genlinks_begin %} + x["./library.ocaml/bos/bos.a"]=1 + x["./library.ocaml/bos/bos.cma"]=1 + x["./library.ocaml/bos/bos.cmi"]=1 + x["./library.ocaml/bos/bos.cmt"]=1 + x["./library.ocaml/bos/bos.cmti"]=1 + x["./library.ocaml/bos/bos.cmx"]=1 + x["./library.ocaml/bos/bos.cmxa"]=1 + x["./library.ocaml/bos/bos.cmxs"]=1 + x["./library.ocaml/bos/bos.ml"]=1 + x["./library.ocaml/bos/bos.mli"]=1 +{% endblock genlinks_begin %} diff --git a/templates/pkg/ocaml-rresult b/templates/pkg/ocaml-rresult @@ -0,0 +1,19 @@ +{%- set pkg_version="0.7.0" -%} +{%- set upstream_name="rresult" -%} +{%- set pkg_source="tbz" -%} +{% extends "topkg" %} +{% block package_deps -%} +#+{{pkg_install_name("ocaml-topkg")}} +{% endblock package_deps %} +{% block genlinks_begin %} + x["./library.ocaml/rresult/rresult.a"]=1 + x["./library.ocaml/rresult/rresult.cma"]=1 + x["./library.ocaml/rresult/rresult.cmi"]=1 + x["./library.ocaml/rresult/rresult.cmt"]=1 + x["./library.ocaml/rresult/rresult.cmti"]=1 + x["./library.ocaml/rresult/rresult.cmx"]=1 + x["./library.ocaml/rresult/rresult.cmxa"]=1 + x["./library.ocaml/rresult/rresult.cmxs"]=1 + x["./library.ocaml/rresult/rresult.ml"]=1 + x["./library.ocaml/rresult/rresult.mli"]=1 +{% endblock genlinks_begin %} diff --git a/templates/pkg/ocaml-topkg b/templates/pkg/ocaml-topkg @@ -0,0 +1,16 @@ +{%- set pkg_version="1.0.5" -%} +{%- set upstream_name="topkg" -%} +{%- set pkg_source="tbz" -%} +{% extends "topkg" %} +{% block genlinks_begin %} + x["./library.ocaml/topkg/topkg.a"]=1 + x["./library.ocaml/topkg/topkg.cma"]=1 + x["./library.ocaml/topkg/topkg.cmi"]=1 + x["./library.ocaml/topkg/topkg.cmt"]=1 + x["./library.ocaml/topkg/topkg.cmti"]=1 + x["./library.ocaml/topkg/topkg.cmx"]=1 + x["./library.ocaml/topkg/topkg.cmxa"]=1 + x["./library.ocaml/topkg/topkg.cmxs"]=1 + x["./library.ocaml/topkg/topkg.ml"]=1 + x["./library.ocaml/topkg/topkg.mli"]=1 +{% endblock genlinks_begin %} diff --git a/templates/pkg/wip.environment b/templates/pkg/wip.environment @@ -4,4 +4,5 @@ #+{{pkg_install_name("ocamlbuild")}} #+{{pkg_install_name("ocaml-base")}} #+{{pkg_install_name("opam")}} +#+{{pkg_install_name("ocaml-bos")}} {#- #+{{pkg_install_name("ocaml-findlib")}} #} diff --git a/templates/topkg b/templates/topkg @@ -0,0 +1,27 @@ +{% extends "genlinks" %} +{% block template_deps -%} +{{ super() -}} +#+{{pkg_install_name("busybox-diffutils")}} +#+{{pkg_install_name("musl-cross-make")}} +#+{{pkg_install_name("ocaml")}} +#+{{pkg_install_name("ocaml-findlib")}} +#+{{pkg_install_name("ocamlbuild")}} +#+{{pkg_install_name("opam")}} +{% endblock template_deps %} +{%- block build %} +ocaml pkg/pkg.ml build + +{% endblock build %} +{%- block install %} + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/{{shortname}}" + +{% endblock install %} +{% block genlinks_rules %} +{{ super() -}} +$2 == "library.ocaml" { link($0); next } +{% endblock genlinks_rules -%} + diff --git a/variants/ccx-x86_64/ocaml-astring b/variants/ccx-x86_64/ocaml-astring @@ -0,0 +1,103 @@ +#!/usr/bin/env pthbs-build +#+busybox.47c820e8cf3f700bf5b693d7d379272d485e5078b2036912ce2e01bb998caf1f +#+busybox-findutils.79fab8ce17646e27c958348822c367903ddbef44dcebb134d16caa4fc287b716 +#+busybox-awk.6efe6e8726ffa7c47dc117be114219675ccea315e4e29685e40a06b61d249f9b +#+busybox-diffutils.f40ac7713836b6eaa4e46db3b7577b533f4738fb10bf732edc044ffc48eb9ec8 +#+musl-cross-make.e4735d8572f9b6654a7381ebdfbd62e665d1d1da5e06a56923e89274cc6a510f +#+ocaml.ef754772d8f7327d0be86b448ecdefacca57060d3e358a9d917b40e9e323d763 +#+ocaml-findlib.a61ac6b73b6aa88d3e3944bc47b9d4916b464a1b154e120dbed5d6890d6813c3 +#+ocamlbuild.1f92ef06cb109487b573ecdd2059d0b0ab559ec12ac113d9fa88a4372103d884 +#+opam.980b1502f3730e01bb440581e4d7a06832832110b48a7f1d7f37d2bb5143cdfd +#+ocaml-topkg.4bf23fa6e99ba9a2b085914c1a5a043fa202665f5b700a3baba1b8dec533158a +#@untar:-j:sha256:865692630c07c3ab87c66cdfc2734c0fdfc9c34a57f8e89ffec7c7d15e7a70fa:. + + +# - build script start - + +prefix=/home/ccx/versions/$pthbs_package +dest=${pthbs_destdir%/}${prefix} +cd 'astring-0.8.5' + + + +ocaml pkg/pkg.ml build + + + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/ocaml-astring" + + + + + +cd "$pthbs_destdir/home/ccx/versions/$pthbs_package" +find -type d -o -print | awk -F/ ' +BEGIN { + x["./library.ocaml/astring/astring.a"]=1 + x["./library.ocaml/astring/astring.cma"]=1 + x["./library.ocaml/astring/astring.cmi"]=1 + x["./library.ocaml/astring/astring.cmt"]=1 + x["./library.ocaml/astring/astring.cmti"]=1 + x["./library.ocaml/astring/astring.cmx"]=1 + x["./library.ocaml/astring/astring.cmxa"]=1 + x["./library.ocaml/astring/astring.cmxs"]=1 + x["./library.ocaml/astring/astring.ml"]=1 + x["./library.ocaml/astring/astring.mli"]=1 +} + +function r1(s) { + sub("^[.]/[^/]*", ".", s) + return s +} +function s1(repl, s) { + sub("^[.]/[^/]*", "./"repl, s) + return s +} +function link(src) { + x[$0]=0 + printf "%s\t%s\n", $0, src + printf "genlinks >>%s\t%s<<\n", $0, src >>"/dev/stderr" +} +$1!="."{exit 1} + + +$2 == "library.ocaml" { link($0); next } + +$2 == "config" { link($0); next } +$2 == "keys" { link($0); next } +$2 == "zsh" { link($0); next } +$2 == "env" { link($0); next } +$2 == "command" { link($0); next } +$2 == "bin" { link(s1("command", $0)); next } + +$2 == "library.so" { link($0); next } +$2 == "library" { link($0); next } +$2 == "lib" && $NF ~ /\.l?a$/ { link(s1("library", $0)); next } +$2 == "lib" && $NF ~ /\.so(\..*)?$/ { link(s1("library.so", $0)); next } + +$2 == "share" && $3 ~ /^(info|man|doc|icons|terminfo)$/ { link(r1($0)); next } + +$2 == "man" { link($0); next } +$2 == "info" { link($0); next } +$2 == "doc" { link($0); next } +$2 == "icons" { link($0); next } +$2 == "terminfo" { link($0); next } +$2 == "data" { link($0); next } +$2 == "include" { link($0); next } + +{ printf "genlinks ##%s## skipped\n", $0 >>"/dev/stderr" } + +END { + for(fname in x) { printf "DEBUG: x[\"%s\"]=\"%s\"\n", fname, x[fname] >"/dev/stderr" } + for(fname in x) { + if(x[fname]) { + printf "ERROR: missing expected file \"%s\"\n", fname >"/dev/stderr" + exit 3 + } + } +}' >.install-links.new +mv .install-links.new .install-links + diff --git a/variants/ccx-x86_64/ocaml-bos b/variants/ccx-x86_64/ocaml-bos @@ -0,0 +1,105 @@ +#!/usr/bin/env pthbs-build +#+busybox.47c820e8cf3f700bf5b693d7d379272d485e5078b2036912ce2e01bb998caf1f +#+busybox-findutils.79fab8ce17646e27c958348822c367903ddbef44dcebb134d16caa4fc287b716 +#+busybox-awk.6efe6e8726ffa7c47dc117be114219675ccea315e4e29685e40a06b61d249f9b +#+busybox-diffutils.f40ac7713836b6eaa4e46db3b7577b533f4738fb10bf732edc044ffc48eb9ec8 +#+musl-cross-make.e4735d8572f9b6654a7381ebdfbd62e665d1d1da5e06a56923e89274cc6a510f +#+ocaml.ef754772d8f7327d0be86b448ecdefacca57060d3e358a9d917b40e9e323d763 +#+ocaml-findlib.a61ac6b73b6aa88d3e3944bc47b9d4916b464a1b154e120dbed5d6890d6813c3 +#+ocamlbuild.1f92ef06cb109487b573ecdd2059d0b0ab559ec12ac113d9fa88a4372103d884 +#+opam.980b1502f3730e01bb440581e4d7a06832832110b48a7f1d7f37d2bb5143cdfd +#+ocaml-topkg.4bf23fa6e99ba9a2b085914c1a5a043fa202665f5b700a3baba1b8dec533158a +#+ocaml-astring.3ef0c306cca8149221bda3943eb738a4b52c39390ea1f5bb9fabf819405dda09 +#+ocaml-rresult.9f5e6913976951030d6685fd548aec850b429ea8e8b234d899391d1c984b2292 +#@untar:-j:sha256:11aa7f5b83460e60431e3154e3e32c071d46e151ea5760cf24377805bf975540:. + + +# - build script start - + +prefix=/home/ccx/versions/$pthbs_package +dest=${pthbs_destdir%/}${prefix} +cd 'rresult-0.7.0' + + + +ocaml pkg/pkg.ml build + + + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/ocaml-bos" + + + + + +cd "$pthbs_destdir/home/ccx/versions/$pthbs_package" +find -type d -o -print | awk -F/ ' +BEGIN { + x["./library.ocaml/bos/bos.a"]=1 + x["./library.ocaml/bos/bos.cma"]=1 + x["./library.ocaml/bos/bos.cmi"]=1 + x["./library.ocaml/bos/bos.cmt"]=1 + x["./library.ocaml/bos/bos.cmti"]=1 + x["./library.ocaml/bos/bos.cmx"]=1 + x["./library.ocaml/bos/bos.cmxa"]=1 + x["./library.ocaml/bos/bos.cmxs"]=1 + x["./library.ocaml/bos/bos.ml"]=1 + x["./library.ocaml/bos/bos.mli"]=1 +} + +function r1(s) { + sub("^[.]/[^/]*", ".", s) + return s +} +function s1(repl, s) { + sub("^[.]/[^/]*", "./"repl, s) + return s +} +function link(src) { + x[$0]=0 + printf "%s\t%s\n", $0, src + printf "genlinks >>%s\t%s<<\n", $0, src >>"/dev/stderr" +} +$1!="."{exit 1} + + +$2 == "library.ocaml" { link($0); next } + +$2 == "config" { link($0); next } +$2 == "keys" { link($0); next } +$2 == "zsh" { link($0); next } +$2 == "env" { link($0); next } +$2 == "command" { link($0); next } +$2 == "bin" { link(s1("command", $0)); next } + +$2 == "library.so" { link($0); next } +$2 == "library" { link($0); next } +$2 == "lib" && $NF ~ /\.l?a$/ { link(s1("library", $0)); next } +$2 == "lib" && $NF ~ /\.so(\..*)?$/ { link(s1("library.so", $0)); next } + +$2 == "share" && $3 ~ /^(info|man|doc|icons|terminfo)$/ { link(r1($0)); next } + +$2 == "man" { link($0); next } +$2 == "info" { link($0); next } +$2 == "doc" { link($0); next } +$2 == "icons" { link($0); next } +$2 == "terminfo" { link($0); next } +$2 == "data" { link($0); next } +$2 == "include" { link($0); next } + +{ printf "genlinks ##%s## skipped\n", $0 >>"/dev/stderr" } + +END { + for(fname in x) { printf "DEBUG: x[\"%s\"]=\"%s\"\n", fname, x[fname] >"/dev/stderr" } + for(fname in x) { + if(x[fname]) { + printf "ERROR: missing expected file \"%s\"\n", fname >"/dev/stderr" + exit 3 + } + } +}' >.install-links.new +mv .install-links.new .install-links + diff --git a/variants/ccx-x86_64/ocaml-rresult b/variants/ccx-x86_64/ocaml-rresult @@ -0,0 +1,103 @@ +#!/usr/bin/env pthbs-build +#+busybox.47c820e8cf3f700bf5b693d7d379272d485e5078b2036912ce2e01bb998caf1f +#+busybox-findutils.79fab8ce17646e27c958348822c367903ddbef44dcebb134d16caa4fc287b716 +#+busybox-awk.6efe6e8726ffa7c47dc117be114219675ccea315e4e29685e40a06b61d249f9b +#+busybox-diffutils.f40ac7713836b6eaa4e46db3b7577b533f4738fb10bf732edc044ffc48eb9ec8 +#+musl-cross-make.e4735d8572f9b6654a7381ebdfbd62e665d1d1da5e06a56923e89274cc6a510f +#+ocaml.ef754772d8f7327d0be86b448ecdefacca57060d3e358a9d917b40e9e323d763 +#+ocaml-findlib.a61ac6b73b6aa88d3e3944bc47b9d4916b464a1b154e120dbed5d6890d6813c3 +#+ocamlbuild.1f92ef06cb109487b573ecdd2059d0b0ab559ec12ac113d9fa88a4372103d884 +#+opam.980b1502f3730e01bb440581e4d7a06832832110b48a7f1d7f37d2bb5143cdfd +#+ocaml-topkg.4bf23fa6e99ba9a2b085914c1a5a043fa202665f5b700a3baba1b8dec533158a +#@untar:-j:sha256:11aa7f5b83460e60431e3154e3e32c071d46e151ea5760cf24377805bf975540:. + + +# - build script start - + +prefix=/home/ccx/versions/$pthbs_package +dest=${pthbs_destdir%/}${prefix} +cd 'rresult-0.7.0' + + + +ocaml pkg/pkg.ml build + + + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/ocaml-rresult" + + + + + +cd "$pthbs_destdir/home/ccx/versions/$pthbs_package" +find -type d -o -print | awk -F/ ' +BEGIN { + x["./library.ocaml/rresult/rresult.a"]=1 + x["./library.ocaml/rresult/rresult.cma"]=1 + x["./library.ocaml/rresult/rresult.cmi"]=1 + x["./library.ocaml/rresult/rresult.cmt"]=1 + x["./library.ocaml/rresult/rresult.cmti"]=1 + x["./library.ocaml/rresult/rresult.cmx"]=1 + x["./library.ocaml/rresult/rresult.cmxa"]=1 + x["./library.ocaml/rresult/rresult.cmxs"]=1 + x["./library.ocaml/rresult/rresult.ml"]=1 + x["./library.ocaml/rresult/rresult.mli"]=1 +} + +function r1(s) { + sub("^[.]/[^/]*", ".", s) + return s +} +function s1(repl, s) { + sub("^[.]/[^/]*", "./"repl, s) + return s +} +function link(src) { + x[$0]=0 + printf "%s\t%s\n", $0, src + printf "genlinks >>%s\t%s<<\n", $0, src >>"/dev/stderr" +} +$1!="."{exit 1} + + +$2 == "library.ocaml" { link($0); next } + +$2 == "config" { link($0); next } +$2 == "keys" { link($0); next } +$2 == "zsh" { link($0); next } +$2 == "env" { link($0); next } +$2 == "command" { link($0); next } +$2 == "bin" { link(s1("command", $0)); next } + +$2 == "library.so" { link($0); next } +$2 == "library" { link($0); next } +$2 == "lib" && $NF ~ /\.l?a$/ { link(s1("library", $0)); next } +$2 == "lib" && $NF ~ /\.so(\..*)?$/ { link(s1("library.so", $0)); next } + +$2 == "share" && $3 ~ /^(info|man|doc|icons|terminfo)$/ { link(r1($0)); next } + +$2 == "man" { link($0); next } +$2 == "info" { link($0); next } +$2 == "doc" { link($0); next } +$2 == "icons" { link($0); next } +$2 == "terminfo" { link($0); next } +$2 == "data" { link($0); next } +$2 == "include" { link($0); next } + +{ printf "genlinks ##%s## skipped\n", $0 >>"/dev/stderr" } + +END { + for(fname in x) { printf "DEBUG: x[\"%s\"]=\"%s\"\n", fname, x[fname] >"/dev/stderr" } + for(fname in x) { + if(x[fname]) { + printf "ERROR: missing expected file \"%s\"\n", fname >"/dev/stderr" + exit 3 + } + } +}' >.install-links.new +mv .install-links.new .install-links + diff --git a/variants/ccx-x86_64/ocaml-topkg b/variants/ccx-x86_64/ocaml-topkg @@ -0,0 +1,102 @@ +#!/usr/bin/env pthbs-build +#+busybox.47c820e8cf3f700bf5b693d7d379272d485e5078b2036912ce2e01bb998caf1f +#+busybox-findutils.79fab8ce17646e27c958348822c367903ddbef44dcebb134d16caa4fc287b716 +#+busybox-awk.6efe6e8726ffa7c47dc117be114219675ccea315e4e29685e40a06b61d249f9b +#+busybox-diffutils.f40ac7713836b6eaa4e46db3b7577b533f4738fb10bf732edc044ffc48eb9ec8 +#+musl-cross-make.e4735d8572f9b6654a7381ebdfbd62e665d1d1da5e06a56923e89274cc6a510f +#+ocaml.ef754772d8f7327d0be86b448ecdefacca57060d3e358a9d917b40e9e323d763 +#+ocaml-findlib.a61ac6b73b6aa88d3e3944bc47b9d4916b464a1b154e120dbed5d6890d6813c3 +#+ocamlbuild.1f92ef06cb109487b573ecdd2059d0b0ab559ec12ac113d9fa88a4372103d884 +#+opam.980b1502f3730e01bb440581e4d7a06832832110b48a7f1d7f37d2bb5143cdfd +#@untar:-j:sha256:452082626e651ac4b1633c2b4ae4cad7abeb1fb6a13046e699f95eec58b5d1c7:. + + +# - build script start - + +prefix=/home/ccx/versions/$pthbs_package +dest=${pthbs_destdir%/}${prefix} +cd 'topkg-1.0.5' + + + +ocaml pkg/pkg.ml build + + + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/ocaml-topkg" + + + + + +cd "$pthbs_destdir/home/ccx/versions/$pthbs_package" +find -type d -o -print | awk -F/ ' +BEGIN { + x["./library.ocaml/topkg/topkg.a"]=1 + x["./library.ocaml/topkg/topkg.cma"]=1 + x["./library.ocaml/topkg/topkg.cmi"]=1 + x["./library.ocaml/topkg/topkg.cmt"]=1 + x["./library.ocaml/topkg/topkg.cmti"]=1 + x["./library.ocaml/topkg/topkg.cmx"]=1 + x["./library.ocaml/topkg/topkg.cmxa"]=1 + x["./library.ocaml/topkg/topkg.cmxs"]=1 + x["./library.ocaml/topkg/topkg.ml"]=1 + x["./library.ocaml/topkg/topkg.mli"]=1 +} + +function r1(s) { + sub("^[.]/[^/]*", ".", s) + return s +} +function s1(repl, s) { + sub("^[.]/[^/]*", "./"repl, s) + return s +} +function link(src) { + x[$0]=0 + printf "%s\t%s\n", $0, src + printf "genlinks >>%s\t%s<<\n", $0, src >>"/dev/stderr" +} +$1!="."{exit 1} + + +$2 == "library.ocaml" { link($0); next } + +$2 == "config" { link($0); next } +$2 == "keys" { link($0); next } +$2 == "zsh" { link($0); next } +$2 == "env" { link($0); next } +$2 == "command" { link($0); next } +$2 == "bin" { link(s1("command", $0)); next } + +$2 == "library.so" { link($0); next } +$2 == "library" { link($0); next } +$2 == "lib" && $NF ~ /\.l?a$/ { link(s1("library", $0)); next } +$2 == "lib" && $NF ~ /\.so(\..*)?$/ { link(s1("library.so", $0)); next } + +$2 == "share" && $3 ~ /^(info|man|doc|icons|terminfo)$/ { link(r1($0)); next } + +$2 == "man" { link($0); next } +$2 == "info" { link($0); next } +$2 == "doc" { link($0); next } +$2 == "icons" { link($0); next } +$2 == "terminfo" { link($0); next } +$2 == "data" { link($0); next } +$2 == "include" { link($0); next } + +{ printf "genlinks ##%s## skipped\n", $0 >>"/dev/stderr" } + +END { + for(fname in x) { printf "DEBUG: x[\"%s\"]=\"%s\"\n", fname, x[fname] >"/dev/stderr" } + for(fname in x) { + if(x[fname]) { + printf "ERROR: missing expected file \"%s\"\n", fname >"/dev/stderr" + exit 3 + } + } +}' >.install-links.new +mv .install-links.new .install-links + diff --git a/variants/ccx-x86_64/wip.environment b/variants/ccx-x86_64/wip.environment @@ -3,4 +3,5 @@ #+dune.0bf1fa603f0e8ae0f1b4fd7e28d8be34f035e643e5594e0a380ce13485b06a6c #+ocamlbuild.1f92ef06cb109487b573ecdd2059d0b0ab559ec12ac113d9fa88a4372103d884 #+ocaml-base.15c014249975c989e3c9b2e5379406579f3dbd7cdfa40aac8628865bb57df155 -#+opam.980b1502f3730e01bb440581e4d7a06832832110b48a7f1d7f37d2bb5143cdfd- \ No newline at end of file +#+opam.980b1502f3730e01bb440581e4d7a06832832110b48a7f1d7f37d2bb5143cdfd +#+ocaml-bos.c480c759b54d4f23867e95795297fa484c8a3241f8354e56eae2e727060cb0d6+ \ No newline at end of file diff --git a/variants/root-x86_64/ocaml-astring b/variants/root-x86_64/ocaml-astring @@ -0,0 +1,103 @@ +#!/usr/bin/env pthbs-build +#+busybox.05cde6bebcef146cc4de9201c82e0ef427702cc3bfe1acb48c0587542ba53002 +#+busybox-findutils.2c87d98d861d724e141128f395bed58e70601468aee2a192d77d5791d83772b7 +#+busybox-awk.a5b9d5a1c719361e565a642a57d44356c26855fb0eda30c03eaf582ba6c3194b +#+busybox-diffutils.977bc00da27e0150d3b3d395fe42cf24e0364b03390cab81002f27b34158d9fc +#+musl-cross-make.ef7f483eefcad5b8f2d6c8329e61a0acaca7864b88e9521cb839392c62f45676 +#+ocaml.5f284ca479cb1311e030bce243d0075ef6bdbc702f514ca5a836b4638b203691 +#+ocaml-findlib.86135939e924589adf4f414376013b61b0354b7c19047ec3841829c1d6e031b3 +#+ocamlbuild.c3517ef4f01ee9188faf3fc292460b4865e24fed652e1079d153e4bc1345bdfc +#+opam.0024db1cd6d51699e0b9dc7163d9ada59a1503d039065f64b55b7e4433024e03 +#+ocaml-topkg.8722b047af0417bb0793a8c36ac819c1ebb9dff159edfa8c7dda18bf78c06e9b +#@untar:-j:sha256:865692630c07c3ab87c66cdfc2734c0fdfc9c34a57f8e89ffec7c7d15e7a70fa:. + + +# - build script start - + +prefix=/versions/$pthbs_package +dest=${pthbs_destdir%/}${prefix} +cd 'astring-0.8.5' + + + +ocaml pkg/pkg.ml build + + + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/ocaml-astring" + + + + + +cd "$pthbs_destdir/versions/$pthbs_package" +find -type d -o -print | awk -F/ ' +BEGIN { + x["./library.ocaml/astring/astring.a"]=1 + x["./library.ocaml/astring/astring.cma"]=1 + x["./library.ocaml/astring/astring.cmi"]=1 + x["./library.ocaml/astring/astring.cmt"]=1 + x["./library.ocaml/astring/astring.cmti"]=1 + x["./library.ocaml/astring/astring.cmx"]=1 + x["./library.ocaml/astring/astring.cmxa"]=1 + x["./library.ocaml/astring/astring.cmxs"]=1 + x["./library.ocaml/astring/astring.ml"]=1 + x["./library.ocaml/astring/astring.mli"]=1 +} + +function r1(s) { + sub("^[.]/[^/]*", ".", s) + return s +} +function s1(repl, s) { + sub("^[.]/[^/]*", "./"repl, s) + return s +} +function link(src) { + x[$0]=0 + printf "%s\t%s\n", $0, src + printf "genlinks >>%s\t%s<<\n", $0, src >>"/dev/stderr" +} +$1!="."{exit 1} + + +$2 == "library.ocaml" { link($0); next } + +$2 == "config" { link($0); next } +$2 == "keys" { link($0); next } +$2 == "zsh" { link($0); next } +$2 == "env" { link($0); next } +$2 == "command" { link($0); next } +$2 == "bin" { link(s1("command", $0)); next } + +$2 == "library.so" { link($0); next } +$2 == "library" { link($0); next } +$2 == "lib" && $NF ~ /\.l?a$/ { link(s1("library", $0)); next } +$2 == "lib" && $NF ~ /\.so(\..*)?$/ { link(s1("library.so", $0)); next } + +$2 == "share" && $3 ~ /^(info|man|doc|icons|terminfo)$/ { link(r1($0)); next } + +$2 == "man" { link($0); next } +$2 == "info" { link($0); next } +$2 == "doc" { link($0); next } +$2 == "icons" { link($0); next } +$2 == "terminfo" { link($0); next } +$2 == "data" { link($0); next } +$2 == "include" { link($0); next } + +{ printf "genlinks ##%s## skipped\n", $0 >>"/dev/stderr" } + +END { + for(fname in x) { printf "DEBUG: x[\"%s\"]=\"%s\"\n", fname, x[fname] >"/dev/stderr" } + for(fname in x) { + if(x[fname]) { + printf "ERROR: missing expected file \"%s\"\n", fname >"/dev/stderr" + exit 3 + } + } +}' >.install-links.new +mv .install-links.new .install-links + diff --git a/variants/root-x86_64/ocaml-bos b/variants/root-x86_64/ocaml-bos @@ -0,0 +1,105 @@ +#!/usr/bin/env pthbs-build +#+busybox.05cde6bebcef146cc4de9201c82e0ef427702cc3bfe1acb48c0587542ba53002 +#+busybox-findutils.2c87d98d861d724e141128f395bed58e70601468aee2a192d77d5791d83772b7 +#+busybox-awk.a5b9d5a1c719361e565a642a57d44356c26855fb0eda30c03eaf582ba6c3194b +#+busybox-diffutils.977bc00da27e0150d3b3d395fe42cf24e0364b03390cab81002f27b34158d9fc +#+musl-cross-make.ef7f483eefcad5b8f2d6c8329e61a0acaca7864b88e9521cb839392c62f45676 +#+ocaml.5f284ca479cb1311e030bce243d0075ef6bdbc702f514ca5a836b4638b203691 +#+ocaml-findlib.86135939e924589adf4f414376013b61b0354b7c19047ec3841829c1d6e031b3 +#+ocamlbuild.c3517ef4f01ee9188faf3fc292460b4865e24fed652e1079d153e4bc1345bdfc +#+opam.0024db1cd6d51699e0b9dc7163d9ada59a1503d039065f64b55b7e4433024e03 +#+ocaml-topkg.8722b047af0417bb0793a8c36ac819c1ebb9dff159edfa8c7dda18bf78c06e9b +#+ocaml-astring.cf262a2d47f6e8dc05e9b5c62b4fc33c29e117a0434ef7b99afa9a20b3074323 +#+ocaml-rresult.efaf5db55ea527916898ad03da4fc87eb0d815ff710402e9cec4355edbb7752c +#@untar:-j:sha256:11aa7f5b83460e60431e3154e3e32c071d46e151ea5760cf24377805bf975540:. + + +# - build script start - + +prefix=/versions/$pthbs_package +dest=${pthbs_destdir%/}${prefix} +cd 'rresult-0.7.0' + + + +ocaml pkg/pkg.ml build + + + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/ocaml-bos" + + + + + +cd "$pthbs_destdir/versions/$pthbs_package" +find -type d -o -print | awk -F/ ' +BEGIN { + x["./library.ocaml/bos/bos.a"]=1 + x["./library.ocaml/bos/bos.cma"]=1 + x["./library.ocaml/bos/bos.cmi"]=1 + x["./library.ocaml/bos/bos.cmt"]=1 + x["./library.ocaml/bos/bos.cmti"]=1 + x["./library.ocaml/bos/bos.cmx"]=1 + x["./library.ocaml/bos/bos.cmxa"]=1 + x["./library.ocaml/bos/bos.cmxs"]=1 + x["./library.ocaml/bos/bos.ml"]=1 + x["./library.ocaml/bos/bos.mli"]=1 +} + +function r1(s) { + sub("^[.]/[^/]*", ".", s) + return s +} +function s1(repl, s) { + sub("^[.]/[^/]*", "./"repl, s) + return s +} +function link(src) { + x[$0]=0 + printf "%s\t%s\n", $0, src + printf "genlinks >>%s\t%s<<\n", $0, src >>"/dev/stderr" +} +$1!="."{exit 1} + + +$2 == "library.ocaml" { link($0); next } + +$2 == "config" { link($0); next } +$2 == "keys" { link($0); next } +$2 == "zsh" { link($0); next } +$2 == "env" { link($0); next } +$2 == "command" { link($0); next } +$2 == "bin" { link(s1("command", $0)); next } + +$2 == "library.so" { link($0); next } +$2 == "library" { link($0); next } +$2 == "lib" && $NF ~ /\.l?a$/ { link(s1("library", $0)); next } +$2 == "lib" && $NF ~ /\.so(\..*)?$/ { link(s1("library.so", $0)); next } + +$2 == "share" && $3 ~ /^(info|man|doc|icons|terminfo)$/ { link(r1($0)); next } + +$2 == "man" { link($0); next } +$2 == "info" { link($0); next } +$2 == "doc" { link($0); next } +$2 == "icons" { link($0); next } +$2 == "terminfo" { link($0); next } +$2 == "data" { link($0); next } +$2 == "include" { link($0); next } + +{ printf "genlinks ##%s## skipped\n", $0 >>"/dev/stderr" } + +END { + for(fname in x) { printf "DEBUG: x[\"%s\"]=\"%s\"\n", fname, x[fname] >"/dev/stderr" } + for(fname in x) { + if(x[fname]) { + printf "ERROR: missing expected file \"%s\"\n", fname >"/dev/stderr" + exit 3 + } + } +}' >.install-links.new +mv .install-links.new .install-links + diff --git a/variants/root-x86_64/ocaml-rresult b/variants/root-x86_64/ocaml-rresult @@ -0,0 +1,103 @@ +#!/usr/bin/env pthbs-build +#+busybox.05cde6bebcef146cc4de9201c82e0ef427702cc3bfe1acb48c0587542ba53002 +#+busybox-findutils.2c87d98d861d724e141128f395bed58e70601468aee2a192d77d5791d83772b7 +#+busybox-awk.a5b9d5a1c719361e565a642a57d44356c26855fb0eda30c03eaf582ba6c3194b +#+busybox-diffutils.977bc00da27e0150d3b3d395fe42cf24e0364b03390cab81002f27b34158d9fc +#+musl-cross-make.ef7f483eefcad5b8f2d6c8329e61a0acaca7864b88e9521cb839392c62f45676 +#+ocaml.5f284ca479cb1311e030bce243d0075ef6bdbc702f514ca5a836b4638b203691 +#+ocaml-findlib.86135939e924589adf4f414376013b61b0354b7c19047ec3841829c1d6e031b3 +#+ocamlbuild.c3517ef4f01ee9188faf3fc292460b4865e24fed652e1079d153e4bc1345bdfc +#+opam.0024db1cd6d51699e0b9dc7163d9ada59a1503d039065f64b55b7e4433024e03 +#+ocaml-topkg.8722b047af0417bb0793a8c36ac819c1ebb9dff159edfa8c7dda18bf78c06e9b +#@untar:-j:sha256:11aa7f5b83460e60431e3154e3e32c071d46e151ea5760cf24377805bf975540:. + + +# - build script start - + +prefix=/versions/$pthbs_package +dest=${pthbs_destdir%/}${prefix} +cd 'rresult-0.7.0' + + + +ocaml pkg/pkg.ml build + + + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/ocaml-rresult" + + + + + +cd "$pthbs_destdir/versions/$pthbs_package" +find -type d -o -print | awk -F/ ' +BEGIN { + x["./library.ocaml/rresult/rresult.a"]=1 + x["./library.ocaml/rresult/rresult.cma"]=1 + x["./library.ocaml/rresult/rresult.cmi"]=1 + x["./library.ocaml/rresult/rresult.cmt"]=1 + x["./library.ocaml/rresult/rresult.cmti"]=1 + x["./library.ocaml/rresult/rresult.cmx"]=1 + x["./library.ocaml/rresult/rresult.cmxa"]=1 + x["./library.ocaml/rresult/rresult.cmxs"]=1 + x["./library.ocaml/rresult/rresult.ml"]=1 + x["./library.ocaml/rresult/rresult.mli"]=1 +} + +function r1(s) { + sub("^[.]/[^/]*", ".", s) + return s +} +function s1(repl, s) { + sub("^[.]/[^/]*", "./"repl, s) + return s +} +function link(src) { + x[$0]=0 + printf "%s\t%s\n", $0, src + printf "genlinks >>%s\t%s<<\n", $0, src >>"/dev/stderr" +} +$1!="."{exit 1} + + +$2 == "library.ocaml" { link($0); next } + +$2 == "config" { link($0); next } +$2 == "keys" { link($0); next } +$2 == "zsh" { link($0); next } +$2 == "env" { link($0); next } +$2 == "command" { link($0); next } +$2 == "bin" { link(s1("command", $0)); next } + +$2 == "library.so" { link($0); next } +$2 == "library" { link($0); next } +$2 == "lib" && $NF ~ /\.l?a$/ { link(s1("library", $0)); next } +$2 == "lib" && $NF ~ /\.so(\..*)?$/ { link(s1("library.so", $0)); next } + +$2 == "share" && $3 ~ /^(info|man|doc|icons|terminfo)$/ { link(r1($0)); next } + +$2 == "man" { link($0); next } +$2 == "info" { link($0); next } +$2 == "doc" { link($0); next } +$2 == "icons" { link($0); next } +$2 == "terminfo" { link($0); next } +$2 == "data" { link($0); next } +$2 == "include" { link($0); next } + +{ printf "genlinks ##%s## skipped\n", $0 >>"/dev/stderr" } + +END { + for(fname in x) { printf "DEBUG: x[\"%s\"]=\"%s\"\n", fname, x[fname] >"/dev/stderr" } + for(fname in x) { + if(x[fname]) { + printf "ERROR: missing expected file \"%s\"\n", fname >"/dev/stderr" + exit 3 + } + } +}' >.install-links.new +mv .install-links.new .install-links + diff --git a/variants/root-x86_64/ocaml-topkg b/variants/root-x86_64/ocaml-topkg @@ -0,0 +1,102 @@ +#!/usr/bin/env pthbs-build +#+busybox.05cde6bebcef146cc4de9201c82e0ef427702cc3bfe1acb48c0587542ba53002 +#+busybox-findutils.2c87d98d861d724e141128f395bed58e70601468aee2a192d77d5791d83772b7 +#+busybox-awk.a5b9d5a1c719361e565a642a57d44356c26855fb0eda30c03eaf582ba6c3194b +#+busybox-diffutils.977bc00da27e0150d3b3d395fe42cf24e0364b03390cab81002f27b34158d9fc +#+musl-cross-make.ef7f483eefcad5b8f2d6c8329e61a0acaca7864b88e9521cb839392c62f45676 +#+ocaml.5f284ca479cb1311e030bce243d0075ef6bdbc702f514ca5a836b4638b203691 +#+ocaml-findlib.86135939e924589adf4f414376013b61b0354b7c19047ec3841829c1d6e031b3 +#+ocamlbuild.c3517ef4f01ee9188faf3fc292460b4865e24fed652e1079d153e4bc1345bdfc +#+opam.0024db1cd6d51699e0b9dc7163d9ada59a1503d039065f64b55b7e4433024e03 +#@untar:-j:sha256:452082626e651ac4b1633c2b4ae4cad7abeb1fb6a13046e699f95eec58b5d1c7:. + + +# - build script start - + +prefix=/versions/$pthbs_package +dest=${pthbs_destdir%/}${prefix} +cd 'topkg-1.0.5' + + + +ocaml pkg/pkg.ml build + + + opam-installer -i \ + --prefix="$dest" \ + --libdir="$dest/library.ocaml" \ + --mandir="$dest/man" \ + --docdir="$dest/doc/ocaml-topkg" + + + + + +cd "$pthbs_destdir/versions/$pthbs_package" +find -type d -o -print | awk -F/ ' +BEGIN { + x["./library.ocaml/topkg/topkg.a"]=1 + x["./library.ocaml/topkg/topkg.cma"]=1 + x["./library.ocaml/topkg/topkg.cmi"]=1 + x["./library.ocaml/topkg/topkg.cmt"]=1 + x["./library.ocaml/topkg/topkg.cmti"]=1 + x["./library.ocaml/topkg/topkg.cmx"]=1 + x["./library.ocaml/topkg/topkg.cmxa"]=1 + x["./library.ocaml/topkg/topkg.cmxs"]=1 + x["./library.ocaml/topkg/topkg.ml"]=1 + x["./library.ocaml/topkg/topkg.mli"]=1 +} + +function r1(s) { + sub("^[.]/[^/]*", ".", s) + return s +} +function s1(repl, s) { + sub("^[.]/[^/]*", "./"repl, s) + return s +} +function link(src) { + x[$0]=0 + printf "%s\t%s\n", $0, src + printf "genlinks >>%s\t%s<<\n", $0, src >>"/dev/stderr" +} +$1!="."{exit 1} + + +$2 == "library.ocaml" { link($0); next } + +$2 == "config" { link($0); next } +$2 == "keys" { link($0); next } +$2 == "zsh" { link($0); next } +$2 == "env" { link($0); next } +$2 == "command" { link($0); next } +$2 == "bin" { link(s1("command", $0)); next } + +$2 == "library.so" { link($0); next } +$2 == "library" { link($0); next } +$2 == "lib" && $NF ~ /\.l?a$/ { link(s1("library", $0)); next } +$2 == "lib" && $NF ~ /\.so(\..*)?$/ { link(s1("library.so", $0)); next } + +$2 == "share" && $3 ~ /^(info|man|doc|icons|terminfo)$/ { link(r1($0)); next } + +$2 == "man" { link($0); next } +$2 == "info" { link($0); next } +$2 == "doc" { link($0); next } +$2 == "icons" { link($0); next } +$2 == "terminfo" { link($0); next } +$2 == "data" { link($0); next } +$2 == "include" { link($0); next } + +{ printf "genlinks ##%s## skipped\n", $0 >>"/dev/stderr" } + +END { + for(fname in x) { printf "DEBUG: x[\"%s\"]=\"%s\"\n", fname, x[fname] >"/dev/stderr" } + for(fname in x) { + if(x[fname]) { + printf "ERROR: missing expected file \"%s\"\n", fname >"/dev/stderr" + exit 3 + } + } +}' >.install-links.new +mv .install-links.new .install-links + diff --git a/variants/root-x86_64/wip.environment b/variants/root-x86_64/wip.environment @@ -3,4 +3,5 @@ #+dune.d71d865a1e049f9cb3345d4588f36c028ef41ae48915a57ce510bfe02d623bf8 #+ocamlbuild.c3517ef4f01ee9188faf3fc292460b4865e24fed652e1079d153e4bc1345bdfc #+ocaml-base.def774f8d6a68e11e8d7e1d3291b67fbd8711662f91cf843e69dd729cb9c566c -#+opam.0024db1cd6d51699e0b9dc7163d9ada59a1503d039065f64b55b7e4433024e03- \ No newline at end of file +#+opam.0024db1cd6d51699e0b9dc7163d9ada59a1503d039065f64b55b7e4433024e03 +#+ocaml-bos.6bafffa3cc8d5d521b6be8c7e5b704a993d97a28777a5b8636c84b2b80be12bb+ \ No newline at end of file