Mentions légales du service

Skip to content
Snippets Groups Projects

adapt to coq/coq#15220

Merged TASSI Enrico requested to merge tassi/coq:dynlink-w-findlib into master

I'd like to do something like

https://github.com/mattam82/Coq-Equations/pull/459/files#diff-76ed074a9305c04054cdebb9e9aad2d818052b07091de1f20cad0bbac34ffb52

but I could not do it in remake, help is appreciated. I suspect the current code does not work well on cygwin.

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • You can write arbitrary shell code inside rules. Just export OCAMLPATH there. But why do you need to do that? This seems awful. If it is to accommodate Findlib, couldn't you just call Findlib.init ~env_ocamlpath:"whatever -I directory passed on the command line"?

    Also, there is just no way I will ever accept a commit that transforms a .v file into a .c file and adds preprocessing directives to it. How am I even supposed to interactively edit it now?

  • TASSI Enrico added 1 commit

    added 1 commit

    Compare with previous version

  • Author Contributor

    Please tell me if this is better.

    About findlib.init, OCAMLPATH points to a place where META files can be found, while -I is for paths where the cm* files are. I can see the concepts are not orthogonal, but they are not the same thing either.

  • Author Contributor

    FTR dune sets OCAMLPATH to include the installation path of the project. I do something similar in coq_makefile with an export (like the code I pointed you to). Can I do a Remakefile-wide export?

    Edited by TASSI Enrico
  • Please tell me if this is better.

    Cannot you just name the plugin coq-gappa.tactic? Or did earlier versions of Coq not support dots in plugin names?

    Can I do a Remakefile-wide export?

    No.

    OCAMLPATH points to a place where META files can be found

    Where do you intend to install META.coq-gappa?

    By the way, do not modify the content of $COQDEP in configure.in. Just change @COQDEP@ into @COQDEP@ @COQDEPMETA@ inside Remakefile.in.

  • Author Contributor

    Cannot you just name the plugin coq-gappa.tactic? Or did earlier versions of Coq not support dots in plugin names?

    I tried but Names.Id.of_string_soft does not cut it to the end...

    The META file should go to .../lib/coq-gappa/META (I forgot to fix that)

  • The META file should go to .../lib/coq-gappa/META (I forgot to fix that)

    And where are gappatac.cm{o,xs} supposed to be installed? In that same directory?

    If so, you could just put the META file in the src directory, then Coq would use -I to call Findlib.init accordingly, and build scripts would never need to mess with OCAMLPATH.

  • TASSI Enrico added 1 commit

    added 1 commit

    Compare with previous version

  • Author Contributor

    Your idea makes sense, but in a few cases I have 1 package with multiple plugins in different directories, not sure I can have multiple META.package in scope (even if they define different package.library).

    I'll give it a try, but I can't promise anything. In the meanwhile please bear with OCAMLPATH.

    In the meanwhile, this commit should fix the installation

  • TASSI Enrico added 1 commit

    added 1 commit

    Compare with previous version

  • TASSI Enrico added 1 commit

    added 1 commit

    Compare with previous version

  • Please merge now

  • mentioned in commit 8a824e7c

Please register or sign in to reply
Loading