Latest CVS: small portability issues
Lutz Jaenicke
Lutz.Jaenicke at aet.TU-Cottbus.DE
Wed Apr 18 02:48:54 EST 2001
On Tue, Apr 17, 2001 at 10:56:18AM -0500, mouring at etoh.eviladmin.org wrote:
> On Tue, 17 Apr 2001, Lutz Jaenicke wrote:
> > I just run a test build of the latest CVS on HP-UX 10.20 and found two
> > issues, both related to the new mdoc2man.pl support:
> > - In Makefile.in, line 122, the construction
> > $(MANPAGES): %.out: %
> > is used. HP's "make" command does not understand this syntax (gmake does).
>
> This is part of the new rewrite of to provide manpages in multiple
> formats. Do you have a non-gnu suggestion? I don't have an HP/UX near
> me.
"make" says:
Make: Don't know how to make %.out:. Stop.
So it seems that "%" is not supported at all.
I have changed the construction to be similar to that of CONFIGFILES,
patch is attached.
> > - In configure, the first "perl" command in the PATH seems to be found.
> > On HP-UX this is an ancient Perl-4, that cannot handle mdoc2man.pl.
> > I would recommend to try to detect a "perl5" in PATH first and only then
> > fall back to "perl" in the PATH.
> >
>
> I'm unconfortable with guessing at which is the perl we want. It's been
> over two years since perl4 has been abandoned. And I've not met very many
> correctly written perl applications that won't work in perl 5.
>
> Maybe someone in perl4 should look at making it perl5/perl4 compatable
> instead.
I don't have the slightest clue about perl, so I don't know what it takes
to make the script Perl-4 compatible...
I have checked out some packages that require Perl-5 and they typically use
a construct like
AC_CHECK_PROGS(PERL, perl5 perl)
or
AC_PATH_PROGS(PERL, perl5 perl)
in configure.in. All of them work flawlessly for me (since perl5 is
available as binary name for Perl-5).
HP's Q4 debugger needs Perl-4 so it is still on the system (even though
your comment on perl4 being abandoned applies).
Of course, I can always specify PERL=... ./configure, in a certain sense
I however anticipate what is going to happen on this and other mailing
lists and newsgroups about 'I get a syntax error in mdoc2man.pl'.
Of course, those systems _not_ needing mdoc2man.pl typically have perl5
installed and those, which need it by default come with perl4 (!?).
Best regards,
Lutz
--
Lutz Jaenicke Lutz.Jaenicke at aet.TU-Cottbus.DE
BTU Cottbus http://www.aet.TU-Cottbus.DE/personen/jaenicke/
Lehrstuhl Allgemeine Elektrotechnik Tel. +49 355 69-4129
Universitaetsplatz 3-4, D-03044 Cottbus Fax. +49 355 69-4153
-------------- next part --------------
--- Makefile.in.orig Mon Apr 16 16:10:23 2001
+++ Makefile.in Tue Apr 17 18:39:50 2001
@@ -49,7 +49,7 @@
SSHDOBJS= sshd.o auth.o auth1.o auth2.o auth-chall.o auth2-chall.o auth-rhosts.o auth-options.o auth-krb4.o auth-pam.o auth2-pam.o auth-passwd.o auth-rsa.o auth-rh-rsa.o auth-sia.o sshpty.o sshlogin.o loginrec.o servconf.o serverloop.o md5crypt.o session.o groupaccess.o
-MANPAGES = scp.1.out ssh-add.1.out ssh-agent.1.out ssh-keygen.1.out ssh-keyscan.1.out ssh.1.out sshd.8.out sftp-server.8.out sftp.1.out
+MANPAGES = scp.1 ssh-add.1 ssh-agent.1 ssh-keygen.1 ssh-keyscan.1 ssh.1 sshd.8 sftp-server.8 sftp.1
MANTYPE = @MANTYPE@
CONFIGFILES=sshd_config ssh_config primes
@@ -119,16 +119,16 @@
logintest: logintest.o $(LIBCOMPAT) libssh.a loginrec.o
$(LD) -o $@ logintest.o $(LDFLAGS) loginrec.o -lopenbsd-compat -lssh $(LIBS)
-$(MANPAGES): %.out: %
+$(MANPAGES)::
if test "$(MANTYPE)" = "cat"; then \
- manpage=`echo $< | sed 's/\.[1-9]$$/\.0/'`; \
+ manpage=`echo $@ | sed 's/\.[1-9]$$/\.0/'`; \
else \
- manpage=$<; \
+ manpage=$@; \
fi; \
if test "$(MANTYPE)" = "man"; then \
- $(FIXPATHSCMD) $(srcdir)/$${manpage} | $(PERL) $(srcdir)/mdoc2man.pl > $@; \
+ $(FIXPATHSCMD) $(srcdir)/$${manpage} | $(PERL) $(srcdir)/mdoc2man.pl > $@.out; \
else \
- $(FIXPATHSCMD) $(srcdir)/$${manpage} > $@; \
+ $(FIXPATHSCMD) $(srcdir)/$${manpage} > $@.out; \
fi
$(CONFIGFILES)::
More information about the openssh-unix-dev
mailing list