Makefile dependencies

mouring at etoh.eviladmin.org mouring at etoh.eviladmin.org
Sat Dec 23 08:15:48 EST 2000


On Fri, 22 Dec 2000, Gert Doering wrote:

> Hi,
> 
> the openssh_cvs Makefile includes the following rules:
> 
> $(LIBSSH_OBJS): config.h
> 
> $(LIBOPENBSD_COMPAT_OBJS): config.h
> 
> but no equivalent for $(LIBSSHD_OBJS) - is this desired or an oversigt?
> 
> In my case, I built the sshd, tested it, reconfigured with SKEY support,
> rebuilt (just running "make", no "make clean"), and tracked down the
> non-working s/key for a while before I noticed that servconf.o hadn't
> been rebuilt, thus the server still had no skey...
> 
LIBSSH_OBJS is used to build the libssh.a library.  SSHOBJS and SSHDOBJS
are used to build the ssh and sshd binaries.

Below is two lines to insert into your Makefile.in which should ensure
that all ssh and sshd objects are recompiled on changes in config.h, but
that still leaves all the other commands (ssh-keygen, ssh-keyscan,
etc) with potentially out of date object files.  

-- Add on Makefile.in after $(LIBSSH_OBJS): config.h line --
$(SSHOBJS): config.h
$(SSHDOBJS): config.h
-- Snip ---

I strongly suggest doing a 'make clean' after any new ./configure (or
change to config.h) to ensure that all object files are up to date.

- Ben






More information about the openssh-unix-dev mailing list