rrthomas / libpaper

Library and command-line tools for configuring and getting information on paper sizes
GNU Lesser General Public License v2.1
9 stars 11 forks source link

help2man fails due to paper not being executable #4

Closed balducci closed 4 years ago

balducci commented 4 years ago

hello

just tried to build master with:

----8<----
./bootstrap --skip-git --skip-po
./configure  --prefix=/opt/stow.d/versions/paper-163/usr            \
             --libdir=/opt/stow.d/versions/paper-163/usr/lib64      \
             --sysconfdir=/opt/stow.d/versions/paper-163/etc/paper  \
             --disable-silent-rules
make
---->8----

and getting:

----8<----
Making all in man
make[3]: Entering directory '/home/balducci/tmp/install-us-d/paper-161.d/paper-163/man'
if ( touch paper.1.w && rm -f paper.1.w; ) >/dev/null 2>&1; then \
  ../build-aux/missing --run /usr/bin/help2man --no-info \
        --no-discard-stderr \
        --include=./paper-include.man \
        --output=paper.1 /home/balducci/tmp/install-us-d/paper-161.d/paper-163/src/paper; \
fi
help2man: can't get `--help' info from /home/balducci/tmp/install-us-d/paper-161.d/paper-163/src/paper
make[3]: *** [Makefile:609: paper.1] Error 13
make[3]: Leaving directory '/home/balducci/tmp/install-us-d/paper-161.d/paper-163/man'
---->8----

Reason seems to be that the paper script generated by paper.in isn't executable (thus help2man not getting the output of "paper --help")

I don't know if this is a problem with my build script or with paper itself. The following works around for me:

----8<----
*** src/Makefile.am.MAKE_PAPER_EXECUTABLE   Sat Jan 25 16:17:01 2020
--- src/Makefile.am Sat Jan 25 16:17:01 2020
***************
*** 12,18 ****
  edit = sed -e 's|$$[{]prefix[}]|$(prefix)|g' -e 's|$$[{]exec_prefix[}]|$(exec_prefix)|g'

  paper: $(builddir)/paper.in
!   $(edit) $(builddir)/$@.in >$@

  install-exec-hook:
        if test "x$(EXEEXT)" != "x"; then \
--- 12,18 ----
  edit = sed -e 's|$$[{]prefix[}]|$(prefix)|g' -e 's|$$[{]exec_prefix[}]|$(exec_prefix)|g'

  paper: $(builddir)/paper.in
!   $(edit) $(builddir)/$@.in >$@ && chmod 755 $@

  install-exec-hook:
        if test "x$(EXEEXT)" != "x"; then \
---->8----

thanks a lot for your valuable work

ciao gabriele

rrthomas commented 4 years ago

Coincidentally, I fixed this a few hours ago!