Mailing List Archive

problems compiling 1.2.2 on HP-UX 10.20 (gcc)
The problem seems to be that if you #include <utmpx.h>
without suitable -DPOSIX_SOMETHING magic, you get no struct
utmpx (all that stuff is wrapped w/ "#ifdef
_INCLUDE_XOPEN_SOURCE_EXTENDED").

I'm not sure how you all are handling such portability
issues. Thx,

Will

==================
I configured with
# ./configure --prefix=/.=our-deploy/openssh-1.2.2 --without-shadow --with-rsh=/usr/bin/remsh --with-egd-pool=/tmp/EGD-pool

Build with...
% ourmake --platform=hppa1.1-hp-hpux10.20::ekbdc002
+ [ -d /item/our-builds/pkgs/openssh-1.2.2 ]
+ [ -d /.=blob/our-install-hppa1.1-hp-hpux10.20/openssh-1.2.2 ]
+ /mot/bin/symlink-if-needed /.=blob/our-install-hppa1.1-hp-hpux10.20/openssh-1.2.2 /.=our-deploy/openssh-1.2.2

=== hppa1.1-hp-hpux10.20::ekbdc002 ==============================
ourmake patch: patching already done
ourmake: skipping linktree step...
ourmake: skipping configure step...
ourmake: hppa1.1-hp-hpux10.20/Makefile doesn't mention `depend'... skipping
/mot/bin/ersh ekbdc002 'PATH=/usr/local/bin:/mot/swdevp/bin:/mot/bin:$PATH:/usr/bin/X11:/usr/ccs/bin:/bin:/usr/bin:/usr/local/sbin:/mot/sbin:/mot/sysadmin/bin:/mot/sysadmin/sbin:/usr/sbin:/etc; export PATH; umask 002; prefix=/.=our-deploy/openssh-1.2.2; export prefix; our_package_id="openssh-1.2.2"; export our_package_id; OUR_SITE="ekbdt0"; export OUR_SITE; OUR_NSROOT="/mot"; export OUR_NSROOT; OUR_SPECIAL_ROOT="/usr/local"; export OUR_SPECIAL_ROOT; OUR_INCDIR="/mot/share/our-unix-rollout/common/perl"; export OUR_INCDIR; cd /item/our-builds/pkgs/openssh-1.2.2/hppa1.1-hp-hpux10.20 && /mot/bin/make all '
/mot/swdevp/bin/gcc -O2 -fstrict-aliasing -march=1.1 -mschedule=7200 -I/mot/swdevp/include -I/mot/include -L/mot/swdevp/lib -L/mot/lib -Wall -I/mot/swdevp/include -D_HPUX_SOURCE -DETCDIR=\"/.=our-deploy/openssh-1.2.2/etc\" -DSSH_PROGRAM=\"/.=our-deploy/openssh-1.2.2/bin/ssh\" -DSSH_ASKPASS_DEFAULT=\"/.=our-deploy/openssh-1.2.2/libexec/ssh/ssh-askpass\" -DHAVE_CONFIG_H -c login.c -o login.o
login.c:236: parse error before `&'
login.c:236: warning: type defaults to `int' in declaration of `login'
login.c:236: conflicting types for `login'
bsd-login.h:12: previous declaration of `login'
login.c:236: warning: data definition has no type or storage class
make: *** [login.o] Error 1
ourmake failed
Re: problems compiling 1.2.2 on HP-UX 10.20 (gcc) [ In reply to ]
On Fri, Feb 04, 2000 at 03:15:39PM +0000, Will Partain wrote:
> The problem seems to be that if you #include <utmpx.h>
> without suitable -DPOSIX_SOMETHING magic, you get no struct
> utmpx (all that stuff is wrapped w/ "#ifdef
> _INCLUDE_XOPEN_SOURCE_EXTENDED").
>
> I'm not sure how you all are handling such portability
> issues. Thx,
>

Send 'em in! In this case though, it isn't a portability issue. It's not
a problem with utmpx.h, it's a typo in login.c. A patch is attached.

The login stuff is really system dependent, hence the profusion of
'#ifdef's. Efforts are under way to clean it up.

8<
> login.c:236: conflicting types for `login'
> bsd-login.h:12: previous declaration of `login'
> login.c:236: warning: data definition has no type or storage class
> make: *** [login.o] Error 1
> ourmake failed

Damien, is it time for a FAQ yet ;-)

Ta,
-Andre

--
Andre Lucas <andre.lucas@dial.pipex.com>
http://dspace.dial.pipex.com/andre.lucas/



--- openssh-1.2.2/login.c Wed Jan 26 00:04:48 2000
+++ openssh-1.2.2.new/login.c Fri Jan 28 14:59:56 2000
@@ -210,7 +210,7 @@
# endif /* HAVE_SYSLEN_IN_UTMPX */
# endif
#if defined(HAVE_ADDR_IN_UTMPX)
- if (addr)
+ if (addr) {
switch (addr->sa_family) {
case AF_INET: {
struct sockaddr_in *in = (struct sockaddr_in*)addr;