[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Comments regarding lem_2022-12-10+dfsg-1_amd64.changes



Hi,

On Sat, Aug 3, 2024 at 11:44 AM Sean Whitton
<ftpmaster@ftp-master.debian.org> wrote:
>
> Hello,
>
> d/rules refers to .ml files generated from .lem files.  I just wanted to check
> that this generation occurs during the package build, i.e., that it doesn't
> require any external resources?

If I understand correctly, we must check some .ml files generated
during the package build. right?

The reason for assembling these .ml files into the binary package is
because if without *.ml files, the lintian will have complaints, see
issue[0]. Yeah, I confirm that these *.ml files were generated from
the building.

The build log is here:
```
...
ln -sf src/main.native lem
1156 make[4]: Leaving directory '/<<PKGBUILDDIR>>'
1157 ../lem -ocaml -outdir ../ocaml-lib -wl ign -wl_auto_import err
-wl_rename err bool.lem basic_classes.lem      function.lem maybe.lem
num.lem tuple.lem list.lem either.lem set_helpers.lem set.lem map.lem
relation.l     em sorting.lem function_extra.lem assert_extra.lem
list_extra.lem string.lem num_extra.lem map_extra.lem
set_extra.lem maybe_extra.lem string_extra.lem word.lem show.lem
show_extra.lem machine_word.lem pervas     ives.lem
pervasives_extra.lem debug.lem -auxiliary_level none
-only_changed_output
...
1201 + ocamlfind ocamldep -package zarith -modules either.ml > either.ml.depends
1202 + ocamlfind ocamldep -package zarith -modules lem.ml > lem.ml.depends
1203 + ocamlfind ocamldep -package zarith -modules lem_assert_extra.ml
> lem_assert_extra.ml.depends
...
1289 + ocamlfind ocamlopt -c -package zarith -I num_impl_zarith -o
lem_list.cmx lem_list.ml
1290 + ocamlfind ocamlopt -c -package zarith -I num_impl_zarith -o
lem_assert_extra.cmx lem_assert_extra.ml
...
```

Let's take lem_assert_extra.ml as an example

```
 cat /usr/lib/ocaml/lem_num/lem_assert_extra.ml
(*Generated by Lem from assert_extra.lem.*)

open Xstring

(* ------------------------------------ *)
(* failing with a proper error message  *)
(* ------------------------------------ *)
...
```
The original source file(assert_extra.lem) is here[1]
```
(* ------------------------------------ *)
(* impure functions for signalling      *)
(* catastrophic failure, or function    *)
(* preconditions.                       *)
(* ------------------------------------ *)
...
```

So it seems these *ml files was regenerated with some build rules to
use source files with the same name.

In this sense, I do not think it requires external resources.


[0]: https://github.com/rems-project/lem/issues/34
[1]: https://salsa.debian.org/ocaml-team/lem/-/blob/debian/master/library/assert_extra.lem?ref_type=heads
>
> I think there are some files in /usr/lib that are arch-independent and so
> should be under /usr/share, btw (not a blocker for NEW).
>
hmm, here if we use Debian Ocaml debhelper by default, we could
install these files automatically to the corresponding place. Maybe I
am missing something here? I understand that multi-arch support is
useful for dev package, but not sure for this package.

Many thanks for reviewing the package!

Please let me know of any issues.

BR,
Bo

> --
> Sean Whitton
>
>


Reply to: