-
Notifications
You must be signed in to change notification settings - Fork 470
man dir does not change as specified by --mandir #10229
Copy link
Copy link
Closed
Description
Problem
dune has been failing to build from source on pkgsrc because they can't get dune to put the man pages in a different location (share/man/*) from dune's default man/* (https://us-central.manta.mnx.io/pkgsrc/public/reports/upstream-trunk/20240305.1526/ocaml-dune-3.11.1/install.log).
As an experiment, I cloned dune from github to build it the make way. I executed the following sequence, from what I understood through various conversations on the github repo:
$ cd dune/
$ ./configure --mandir=./fake_root/share/man
$ PREFIX=fake_root make release
$ PREFIX=fake_root make install
configure.ml seems to be doing what it is intended to - it creates/modifies src/dune_rules/setup.ml:
let library_path = []
let roots : string option Install.Roots.t =
{ lib_root = None
; man = Some "/Users/jb/projects/dune/./fake_root/share/man"
; doc_root = None
; etc_root = None
; share_root = None
; bin = None
; sbin = None
; libexec_root = None
}
Expected Behavior
man pages should be installed at fake_root/share/man/*.
Actual Behavior
man pages are still installed at man/* instead of share/man/*.
> tree -d fake_root
fake_root
├── bin
├── doc
│ └── dune
│ └── odoc-pages
├── lib
│ └── dune
├── man
│ ├── man1
│ └── man5
└── share
└── emacs
└── site-lisp
Reproduction
- Clone dune repo
- Execute the following sequence of commands.
$ cd dune/
$ ./configure --mandir=./fake_root/share/man
$ PREFIX=fake_root make release
$ PREFIX=fake_root make install
Specifications
- Version of
dune(output ofdune --version):mainbranch - Version of
ocaml(output ofocamlc --version): 4.14.1 - Operating system (distribution and version): macOS Sonoma 14.3 (Silicon aarm64 architecture)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels