xref: /freebsd/crypto/openssh/Makefile.in (revision 3d9fd9fcb432750f3716b28f6ccb0104cd9d351a)
187c1498dSEd MasteSHELL=@SH@
2ce3adf43SDag-Erling Smørgrav
3ce3adf43SDag-Erling SmørgravAUTORECONF=autoreconf
4ce3adf43SDag-Erling Smørgrav
5ce3adf43SDag-Erling Smørgravprefix=@prefix@
6ce3adf43SDag-Erling Smørgravexec_prefix=@exec_prefix@
7ce3adf43SDag-Erling Smørgravbindir=@bindir@
8ce3adf43SDag-Erling Smørgravsbindir=@sbindir@
9ce3adf43SDag-Erling Smørgravlibexecdir=@libexecdir@
10ce3adf43SDag-Erling Smørgravdatadir=@datadir@
11ce3adf43SDag-Erling Smørgravdatarootdir=@datarootdir@
12ce3adf43SDag-Erling Smørgravmandir=@mandir@
13ce3adf43SDag-Erling Smørgravmansubdir=@mansubdir@
14ce3adf43SDag-Erling Smørgravsysconfdir=@sysconfdir@
15ce3adf43SDag-Erling Smørgravpiddir=@piddir@
16ce3adf43SDag-Erling Smørgravsrcdir=@srcdir@
17ce3adf43SDag-Erling Smørgravtop_srcdir=@top_srcdir@
1819261079SEd Masteabs_top_srcdir=@abs_top_srcdir@
191323ec57SEd Masteabs_top_builddir=@abs_top_builddir@
20ce3adf43SDag-Erling Smørgrav
21ce3adf43SDag-Erling SmørgravDESTDIR=
22ce3adf43SDag-Erling SmørgravVPATH=@srcdir@
23ce3adf43SDag-Erling SmørgravSSH_PROGRAM=@bindir@/ssh
24ce3adf43SDag-Erling SmørgravASKPASS_PROGRAM=$(libexecdir)/ssh-askpass
25ce3adf43SDag-Erling SmørgravSFTP_SERVER=$(libexecdir)/sftp-server
26ce3adf43SDag-Erling SmørgravSSH_KEYSIGN=$(libexecdir)/ssh-keysign
270fdf8faeSEd MasteSSHD_SESSION=$(libexecdir)/sshd-session
28ce3adf43SDag-Erling SmørgravSSH_PKCS11_HELPER=$(libexecdir)/ssh-pkcs11-helper
2919261079SEd MasteSSH_SK_HELPER=$(libexecdir)/ssh-sk-helper
30ce3adf43SDag-Erling SmørgravPRIVSEP_PATH=@PRIVSEP_PATH@
31ce3adf43SDag-Erling SmørgravSSH_PRIVSEP_USER=@SSH_PRIVSEP_USER@
32ce3adf43SDag-Erling SmørgravSTRIP_OPT=@STRIP_OPT@
33a0ee8cc6SDag-Erling SmørgravTEST_SHELL=@TEST_SHELL@
341323ec57SEd MasteBUILDDIR=@abs_top_builddir@
35ce3adf43SDag-Erling Smørgrav
36ce3adf43SDag-Erling SmørgravPATHS= -DSSHDIR=\"$(sysconfdir)\" \
37ce3adf43SDag-Erling Smørgrav	-D_PATH_SSH_PROGRAM=\"$(SSH_PROGRAM)\" \
38ce3adf43SDag-Erling Smørgrav	-D_PATH_SSH_ASKPASS_DEFAULT=\"$(ASKPASS_PROGRAM)\" \
39ce3adf43SDag-Erling Smørgrav	-D_PATH_SFTP_SERVER=\"$(SFTP_SERVER)\" \
40ce3adf43SDag-Erling Smørgrav	-D_PATH_SSH_KEY_SIGN=\"$(SSH_KEYSIGN)\" \
410fdf8faeSEd Maste	-D_PATH_SSHD_SESSION=\"$(SSHD_SESSION)\" \
42ce3adf43SDag-Erling Smørgrav	-D_PATH_SSH_PKCS11_HELPER=\"$(SSH_PKCS11_HELPER)\" \
4319261079SEd Maste	-D_PATH_SSH_SK_HELPER=\"$(SSH_SK_HELPER)\" \
44ce3adf43SDag-Erling Smørgrav	-D_PATH_SSH_PIDDIR=\"$(piddir)\" \
45ce3adf43SDag-Erling Smørgrav	-D_PATH_PRIVSEP_CHROOT_DIR=\"$(PRIVSEP_PATH)\"
46ce3adf43SDag-Erling Smørgrav
47ce3adf43SDag-Erling SmørgravCC=@CC@
48ce3adf43SDag-Erling SmørgravLD=@LD@
49ce3adf43SDag-Erling SmørgravCFLAGS=@CFLAGS@
5019261079SEd MasteCFLAGS_NOPIE=@CFLAGS_NOPIE@
51ce3adf43SDag-Erling SmørgravCPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@
5219261079SEd MastePICFLAG=@PICFLAG@
53ce3adf43SDag-Erling SmørgravLIBS=@LIBS@
5438a52bd3SEd MasteCHANNELLIBS=@CHANNELLIBS@
55ce3adf43SDag-Erling SmørgravK5LIBS=@K5LIBS@
56ce3adf43SDag-Erling SmørgravGSSLIBS=@GSSLIBS@
57ce3adf43SDag-Erling SmørgravSSHDLIBS=@SSHDLIBS@
58ce3adf43SDag-Erling SmørgravLIBEDIT=@LIBEDIT@
5919261079SEd MasteLIBFIDO2=@LIBFIDO2@
60ce3adf43SDag-Erling SmørgravAR=@AR@
61ce3adf43SDag-Erling SmørgravAWK=@AWK@
62ce3adf43SDag-Erling SmørgravRANLIB=@RANLIB@
63ce3adf43SDag-Erling SmørgravINSTALL=@INSTALL@
64ce3adf43SDag-Erling SmørgravSED=@SED@
65ce3adf43SDag-Erling SmørgravXAUTH_PATH=@XAUTH_PATH@
66ce3adf43SDag-Erling SmørgravLDFLAGS=-L. -Lopenbsd-compat/ @LDFLAGS@
6719261079SEd MasteLDFLAGS_NOPIE=-L. -Lopenbsd-compat/ @LDFLAGS_NOPIE@
68ce3adf43SDag-Erling SmørgravEXEEXT=@EXEEXT@
69ce3adf43SDag-Erling SmørgravMANFMT=@MANFMT@
7047dd1d1bSDag-Erling SmørgravMKDIR_P=@MKDIR_P@
71ce3adf43SDag-Erling Smørgrav
7219261079SEd Maste.SUFFIXES: .lo
7319261079SEd Maste
740fdf8faeSEd MasteTARGETS=ssh$(EXEEXT) sshd$(EXEEXT) sshd-session$(EXEEXT) ssh-add$(EXEEXT) ssh-keygen$(EXEEXT) ssh-keyscan${EXEEXT} ssh-keysign${EXEEXT} ssh-pkcs11-helper$(EXEEXT) ssh-agent$(EXEEXT) scp$(EXEEXT) sftp-server$(EXEEXT) sftp$(EXEEXT) ssh-sk-helper$(EXEEXT)
75ce3adf43SDag-Erling Smørgrav
7647dd1d1bSDag-Erling SmørgravXMSS_OBJS=\
7747dd1d1bSDag-Erling Smørgrav	ssh-xmss.o \
7847dd1d1bSDag-Erling Smørgrav	sshkey-xmss.o \
7947dd1d1bSDag-Erling Smørgrav	xmss_commons.o \
8047dd1d1bSDag-Erling Smørgrav	xmss_fast.o \
8147dd1d1bSDag-Erling Smørgrav	xmss_hash.o \
8247dd1d1bSDag-Erling Smørgrav	xmss_hash_address.o \
8347dd1d1bSDag-Erling Smørgrav	xmss_wots.o
8447dd1d1bSDag-Erling Smørgrav
85a0ee8cc6SDag-Erling SmørgravLIBOPENSSH_OBJS=\
86bc5531deSDag-Erling Smørgrav	ssh_api.o \
87a0ee8cc6SDag-Erling Smørgrav	ssherr.o \
88a0ee8cc6SDag-Erling Smørgrav	sshbuf.o \
89a0ee8cc6SDag-Erling Smørgrav	sshkey.o \
90a0ee8cc6SDag-Erling Smørgrav	sshbuf-getput-basic.o \
91a0ee8cc6SDag-Erling Smørgrav	sshbuf-misc.o \
92bc5531deSDag-Erling Smørgrav	sshbuf-getput-crypto.o \
93bc5531deSDag-Erling Smørgrav	krl.o \
9447dd1d1bSDag-Erling Smørgrav	bitmap.o \
9547dd1d1bSDag-Erling Smørgrav	${XMSS_OBJS}
96a0ee8cc6SDag-Erling Smørgrav
97a0ee8cc6SDag-Erling SmørgravLIBSSH_OBJS=${LIBOPENSSH_OBJS} \
98190cef3dSDag-Erling Smørgrav	authfd.o authfile.o \
99bc5531deSDag-Erling Smørgrav	canohost.o channels.o cipher.o cipher-aes.o cipher-aesctr.o \
10038a52bd3SEd Maste	cleanup.o \
10119261079SEd Maste	compat.o fatal.o hostfile.o \
10219261079SEd Maste	log.o match.o moduli.o nchan.o packet.o \
10319261079SEd Maste	readpass.o ttymodes.o xmalloc.o addr.o addrmatch.o \
10419261079SEd Maste	atomicio.o dispatch.o mac.o misc.o utf8.o \
10519261079SEd Maste	monitor_fdpass.o rijndael.o ssh-dss.o ssh-ecdsa.o ssh-ecdsa-sk.o \
10619261079SEd Maste	ssh-ed25519-sk.o ssh-rsa.o dh.o \
107ce3adf43SDag-Erling Smørgrav	msg.o progressmeter.o dns.o entropy.o gss-genr.o umac.o umac128.o \
108bc5531deSDag-Erling Smørgrav	ssh-pkcs11.o smult_curve25519_ref.o \
10919261079SEd Maste	poly1305.o chacha.o cipher-chachapoly.o cipher-chachapoly-libcrypto.o \
11019261079SEd Maste	ssh-ed25519.o digest-openssl.o digest-libc.o \
111f374ba41SEd Maste	hmac.o ed25519.o hash.o \
1120fdf8faeSEd Maste	kex.o kex-names.o kexdh.o kexgex.o kexecdh.o kexc25519.o \
11319261079SEd Maste	kexgexc.o kexgexs.o \
114*3d9fd9fcSEd Maste	kexsntrup761x25519.o kexmlkem768x25519.o sntrup761.o kexgen.o \
11519261079SEd Maste	sftp-realpath.o platform-pledge.o platform-tracing.o platform-misc.o \
11619261079SEd Maste	sshbuf-io.o
11719261079SEd Maste
11819261079SEd MasteSKOBJS=	ssh-sk-client.o
119ce3adf43SDag-Erling Smørgrav
120ce3adf43SDag-Erling SmørgravSSHOBJS= ssh.o readconf.o clientloop.o sshtty.o \
12119261079SEd Maste	sshconnect.o sshconnect2.o mux.o $(SKOBJS)
122ce3adf43SDag-Erling Smørgrav
1230fdf8faeSEd MasteSSHDOBJS=sshd.o \
1240fdf8faeSEd Maste	platform-listen.o \
1250fdf8faeSEd Maste	servconf.o sshpty.o srclimit.o groupaccess.o auth2-methods.o \
1260fdf8faeSEd Maste	dns.o fatal.o compat.o utf8.o authfd.o canohost.o \
1270fdf8faeSEd Maste	$(SKOBJS)
1280fdf8faeSEd Maste
1290fdf8faeSEd MasteSSHD_SESSION_OBJS=sshd-session.o auth-rhosts.o auth-passwd.o \
130ce3adf43SDag-Erling Smørgrav	audit.o audit-bsm.o audit-linux.o platform.o \
131ce3adf43SDag-Erling Smørgrav	sshpty.o sshlogin.o servconf.o serverloop.o \
1320fdf8faeSEd Maste	auth.o auth2.o auth2-methods.o auth-options.o session.o \
133ca86bcf2SDag-Erling Smørgrav	auth2-chall.o groupaccess.o \
134190cef3dSDag-Erling Smørgrav	auth-bsdauth.o auth2-hostbased.o auth2-kbdint.o \
13538a52bd3SEd Maste	auth2-none.o auth2-passwd.o auth2-pubkey.o auth2-pubkeyfile.o \
136ca86bcf2SDag-Erling Smørgrav	monitor.o monitor_wrap.o auth-krb5.o \
137ce3adf43SDag-Erling Smørgrav	auth2-gss.o gss-serv.o gss-serv-krb5.o \
1381323ec57SEd Maste	loginrec.o auth-pam.o auth-shadow.o auth-sia.o \
1390fdf8faeSEd Maste	sftp-server.o sftp-common.o \
140ce3adf43SDag-Erling Smørgrav	sandbox-null.o sandbox-rlimit.o sandbox-systrace.o sandbox-darwin.o \
141acc1a9efSDag-Erling Smørgrav	sandbox-seccomp-filter.o sandbox-capsicum.o sandbox-pledge.o \
14219261079SEd Maste	sandbox-solaris.o uidswap.o $(SKOBJS)
143ce3adf43SDag-Erling Smørgrav
14419261079SEd MasteSFTP_CLIENT_OBJS=sftp-common.o sftp-client.o sftp-glob.o
14519261079SEd Maste
14619261079SEd MasteSCP_OBJS=	scp.o progressmeter.o $(SFTP_CLIENT_OBJS)
14719261079SEd Maste
14819261079SEd MasteSSHADD_OBJS=	ssh-add.o $(SKOBJS)
14919261079SEd Maste
15019261079SEd MasteSSHAGENT_OBJS=	ssh-agent.o ssh-pkcs11-client.o $(SKOBJS)
15119261079SEd Maste
15219261079SEd MasteSSHKEYGEN_OBJS=	ssh-keygen.o sshsig.o $(SKOBJS)
15319261079SEd Maste
15419261079SEd MasteSSHKEYSIGN_OBJS=ssh-keysign.o readconf.o uidswap.o $(SKOBJS)
15519261079SEd Maste
15619261079SEd MasteP11HELPER_OBJS=	ssh-pkcs11-helper.o ssh-pkcs11.o $(SKOBJS)
15719261079SEd Maste
15819261079SEd MasteSKHELPER_OBJS=	ssh-sk-helper.o ssh-sk.o sk-usbhid.o
15919261079SEd Maste
16019261079SEd MasteSSHKEYSCAN_OBJS=ssh-keyscan.o $(SKOBJS)
16119261079SEd Maste
16219261079SEd MasteSFTPSERVER_OBJS=sftp-common.o sftp-server.o sftp-server-main.o
16319261079SEd Maste
16438a52bd3SEd MasteSFTP_OBJS=	sftp.o sftp-usergroup.o progressmeter.o $(SFTP_CLIENT_OBJS)
16519261079SEd Maste
16619261079SEd MasteMANPAGES	= moduli.5.out 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 ssh-keysign.8.out ssh-pkcs11-helper.8.out ssh-sk-helper.8.out sshd_config.5.out ssh_config.5.out
16719261079SEd MasteMANPAGES_IN	= moduli.5 scp.1 ssh-add.1 ssh-agent.1 ssh-keygen.1 ssh-keyscan.1 ssh.1 sshd.8 sftp-server.8 sftp.1 ssh-keysign.8 ssh-pkcs11-helper.8 ssh-sk-helper.8 sshd_config.5 ssh_config.5
168ce3adf43SDag-Erling SmørgravMANTYPE		= @MANTYPE@
169ce3adf43SDag-Erling Smørgrav
170ce3adf43SDag-Erling SmørgravCONFIGFILES=sshd_config.out ssh_config.out moduli.out
171ce3adf43SDag-Erling SmørgravCONFIGFILES_IN=sshd_config ssh_config moduli
172ce3adf43SDag-Erling Smørgrav
173ce3adf43SDag-Erling SmørgravPATHSUBS	= \
174ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/ssh_config|$(sysconfdir)/ssh_config|g' \
175ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/ssh_known_hosts|$(sysconfdir)/ssh_known_hosts|g' \
176ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/sshd_config|$(sysconfdir)/sshd_config|g' \
177ce3adf43SDag-Erling Smørgrav	-e 's|/usr/libexec|$(libexecdir)|g' \
178ce3adf43SDag-Erling Smørgrav	-e 's|/etc/shosts.equiv|$(sysconfdir)/shosts.equiv|g' \
179ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/ssh_host_key|$(sysconfdir)/ssh_host_key|g' \
180ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/ssh_host_ecdsa_key|$(sysconfdir)/ssh_host_ecdsa_key|g' \
181ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/ssh_host_dsa_key|$(sysconfdir)/ssh_host_dsa_key|g' \
182ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/ssh_host_rsa_key|$(sysconfdir)/ssh_host_rsa_key|g' \
183f7167e0eSDag-Erling Smørgrav	-e 's|/etc/ssh/ssh_host_ed25519_key|$(sysconfdir)/ssh_host_ed25519_key|g' \
184ce3adf43SDag-Erling Smørgrav	-e 's|/var/run/sshd.pid|$(piddir)/sshd.pid|g' \
185ce3adf43SDag-Erling Smørgrav	-e 's|/etc/moduli|$(sysconfdir)/moduli|g' \
186ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/moduli|$(sysconfdir)/moduli|g' \
187ce3adf43SDag-Erling Smørgrav	-e 's|/etc/ssh/sshrc|$(sysconfdir)/sshrc|g' \
188ce3adf43SDag-Erling Smørgrav	-e 's|/usr/X11R6/bin/xauth|$(XAUTH_PATH)|g' \
189ce3adf43SDag-Erling Smørgrav	-e 's|/var/empty|$(PRIVSEP_PATH)|g' \
190ce3adf43SDag-Erling Smørgrav	-e 's|/usr/bin:/bin:/usr/sbin:/sbin|@user_path@|g'
191ce3adf43SDag-Erling Smørgrav
192ce3adf43SDag-Erling SmørgravFIXPATHSCMD	= $(SED) $(PATHSUBS)
193ce3adf43SDag-Erling SmørgravFIXALGORITHMSCMD= $(SHELL) $(srcdir)/fixalgorithms $(SED) \
194ce3adf43SDag-Erling Smørgrav		     @UNSUPPORTED_ALGORITHMS@
195ce3adf43SDag-Erling Smørgrav
19638a52bd3SEd Masteall: $(CONFIGFILES) $(MANPAGES) $(TARGETS)
197ce3adf43SDag-Erling Smørgrav
198ce3adf43SDag-Erling Smørgrav$(LIBSSH_OBJS): Makefile.in config.h
199ce3adf43SDag-Erling Smørgrav$(SSHOBJS): Makefile.in config.h
200ce3adf43SDag-Erling Smørgrav$(SSHDOBJS): Makefile.in config.h
201ce3adf43SDag-Erling Smørgrav
202ce3adf43SDag-Erling Smørgrav.c.o:
203a0ee8cc6SDag-Erling Smørgrav	$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
204ce3adf43SDag-Erling Smørgrav
205ce3adf43SDag-Erling SmørgravLIBCOMPAT=openbsd-compat/libopenbsd-compat.a
206ce3adf43SDag-Erling Smørgrav$(LIBCOMPAT): always
207ce3adf43SDag-Erling Smørgrav	(cd openbsd-compat && $(MAKE))
208ce3adf43SDag-Erling Smørgravalways:
209ce3adf43SDag-Erling Smørgrav
210ce3adf43SDag-Erling Smørgravlibssh.a: $(LIBSSH_OBJS)
211ce3adf43SDag-Erling Smørgrav	$(AR) rv $@ $(LIBSSH_OBJS)
212ce3adf43SDag-Erling Smørgrav	$(RANLIB) $@
213ce3adf43SDag-Erling Smørgrav
214ce3adf43SDag-Erling Smørgravssh$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHOBJS)
21538a52bd3SEd Maste	$(LD) -o $@ $(SSHOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(GSSLIBS) $(CHANNELLIBS)
216ce3adf43SDag-Erling Smørgrav
217ce3adf43SDag-Erling Smørgravsshd$(EXEEXT): libssh.a	$(LIBCOMPAT) $(SSHDOBJS)
2180fdf8faeSEd Maste	$(LD) -o $@ $(SSHDOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHDLIBS) $(LIBS) $(CHANNELLIBS)
2190fdf8faeSEd Maste
2200fdf8faeSEd Mastesshd-session$(EXEEXT): libssh.a	$(LIBCOMPAT) $(SSHD_SESSION_OBJS)
2210fdf8faeSEd Maste	$(LD) -o $@ $(SSHD_SESSION_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHDLIBS) $(LIBS) $(GSSLIBS) $(K5LIBS) $(CHANNELLIBS)
222ce3adf43SDag-Erling Smørgrav
22319261079SEd Mastescp$(EXEEXT): $(LIBCOMPAT) libssh.a $(SCP_OBJS)
22419261079SEd Maste	$(LD) -o $@ $(SCP_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
225ce3adf43SDag-Erling Smørgrav
22619261079SEd Mastessh-add$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHADD_OBJS)
22738a52bd3SEd Maste	$(LD) -o $@ $(SSHADD_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(CHANNELLIBS)
228ce3adf43SDag-Erling Smørgrav
22919261079SEd Mastessh-agent$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHAGENT_OBJS)
23038a52bd3SEd Maste	$(LD) -o $@ $(SSHAGENT_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(CHANNELLIBS)
231ce3adf43SDag-Erling Smørgrav
23219261079SEd Mastessh-keygen$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHKEYGEN_OBJS)
23338a52bd3SEd Maste	$(LD) -o $@ $(SSHKEYGEN_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(CHANNELLIBS)
234ce3adf43SDag-Erling Smørgrav
23519261079SEd Mastessh-keysign$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHKEYSIGN_OBJS)
23638a52bd3SEd Maste	$(LD) -o $@ $(SSHKEYSIGN_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(CHANNELLIBS)
237ce3adf43SDag-Erling Smørgrav
23819261079SEd Mastessh-pkcs11-helper$(EXEEXT): $(LIBCOMPAT) libssh.a $(P11HELPER_OBJS)
23938a52bd3SEd Maste	$(LD) -o $@ $(P11HELPER_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS) $(CHANNELLIBS)
240ce3adf43SDag-Erling Smørgrav
24119261079SEd Mastessh-sk-helper$(EXEEXT): $(LIBCOMPAT) libssh.a $(SKHELPER_OBJS)
24238a52bd3SEd Maste	$(LD) -o $@ $(SKHELPER_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS) $(LIBFIDO2) $(CHANNELLIBS)
243ce3adf43SDag-Erling Smørgrav
24419261079SEd Mastessh-keyscan$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHKEYSCAN_OBJS)
24538a52bd3SEd Maste	$(LD) -o $@ $(SSHKEYSCAN_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat -lssh $(LIBS) $(CHANNELLIBS)
246ce3adf43SDag-Erling Smørgrav
24719261079SEd Mastesftp-server$(EXEEXT): $(LIBCOMPAT) libssh.a $(SFTPSERVER_OBJS)
24819261079SEd Maste	$(LD) -o $@ $(SFTPSERVER_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat -lssh $(LIBS)
24919261079SEd Maste
25019261079SEd Mastesftp$(EXEEXT): $(LIBCOMPAT) libssh.a $(SFTP_OBJS)
25119261079SEd Maste	$(LD) -o $@ $(SFTP_OBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(LIBEDIT)
252ce3adf43SDag-Erling Smørgrav
253ce3adf43SDag-Erling Smørgrav# test driver for the loginrec code - not built by default
254ce3adf43SDag-Erling Smørgravlogintest: logintest.o $(LIBCOMPAT) libssh.a loginrec.o
255ce3adf43SDag-Erling Smørgrav	$(LD) -o $@ logintest.o $(LDFLAGS) loginrec.o -lopenbsd-compat -lssh $(LIBS)
256ce3adf43SDag-Erling Smørgrav
257ce3adf43SDag-Erling Smørgrav$(MANPAGES): $(MANPAGES_IN)
258ce3adf43SDag-Erling Smørgrav	if test "$(MANTYPE)" = "cat"; then \
259ce3adf43SDag-Erling Smørgrav		manpage=$(srcdir)/`echo $@ | sed 's/\.[1-9]\.out$$/\.0/'`; \
260ce3adf43SDag-Erling Smørgrav	else \
261ce3adf43SDag-Erling Smørgrav		manpage=$(srcdir)/`echo $@ | sed 's/\.out$$//'`; \
262ce3adf43SDag-Erling Smørgrav	fi; \
263ce3adf43SDag-Erling Smørgrav	if test "$(MANTYPE)" = "man"; then \
264ce3adf43SDag-Erling Smørgrav		$(FIXPATHSCMD) $${manpage} | $(FIXALGORITHMSCMD) | \
265ce3adf43SDag-Erling Smørgrav		    $(AWK) -f $(srcdir)/mdoc2man.awk > $@; \
266ce3adf43SDag-Erling Smørgrav	else \
267ce3adf43SDag-Erling Smørgrav		$(FIXPATHSCMD) $${manpage} | $(FIXALGORITHMSCMD) > $@; \
268ce3adf43SDag-Erling Smørgrav	fi
269ce3adf43SDag-Erling Smørgrav
270ce3adf43SDag-Erling Smørgrav$(CONFIGFILES): $(CONFIGFILES_IN)
271ce3adf43SDag-Erling Smørgrav	conffile=`echo $@ | sed 's/.out$$//'`; \
272ce3adf43SDag-Erling Smørgrav	$(FIXPATHSCMD) $(srcdir)/$${conffile} > $@
273ce3adf43SDag-Erling Smørgrav
274ce3adf43SDag-Erling Smørgrav# fake rule to stop make trying to compile moduli.o into a binary "moduli.o"
275ce3adf43SDag-Erling Smørgravmoduli:
276ce3adf43SDag-Erling Smørgrav	echo
277ce3adf43SDag-Erling Smørgrav
278ce3adf43SDag-Erling Smørgravclean:	regressclean
27919261079SEd Maste	rm -f *.o *.lo *.a $(TARGETS) logintest config.cache config.log
280ce3adf43SDag-Erling Smørgrav	rm -f *.out core survey
2814f52dfbbSDag-Erling Smørgrav	rm -f regress/check-perm$(EXEEXT)
282190cef3dSDag-Erling Smørgrav	rm -f regress/mkdtemp$(EXEEXT)
283a0ee8cc6SDag-Erling Smørgrav	rm -f regress/unittests/test_helper/*.a
284a0ee8cc6SDag-Erling Smørgrav	rm -f regress/unittests/test_helper/*.o
28519261079SEd Maste	rm -f regress/unittests/authopt/*.o
28619261079SEd Maste	rm -f regress/unittests/authopt/test_authopt$(EXEEXT)
287bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/bitmap/*.o
2884f52dfbbSDag-Erling Smørgrav	rm -f regress/unittests/bitmap/test_bitmap$(EXEEXT)
289d93a896eSDag-Erling Smørgrav	rm -f regress/unittests/conversion/*.o
2904f52dfbbSDag-Erling Smørgrav	rm -f regress/unittests/conversion/test_conversion$(EXEEXT)
291bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/hostkeys/*.o
2924f52dfbbSDag-Erling Smørgrav	rm -f regress/unittests/hostkeys/test_hostkeys$(EXEEXT)
293bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/kex/*.o
2944f52dfbbSDag-Erling Smørgrav	rm -f regress/unittests/kex/test_kex$(EXEEXT)
295ca86bcf2SDag-Erling Smørgrav	rm -f regress/unittests/match/*.o
2964f52dfbbSDag-Erling Smørgrav	rm -f regress/unittests/match/test_match$(EXEEXT)
29719261079SEd Maste	rm -f regress/unittests/misc/*.o
29819261079SEd Maste	rm -f regress/unittests/misc/test_misc$(EXEEXT)
29919261079SEd Maste	rm -f regress/unittests/sshbuf/*.o
30019261079SEd Maste	rm -f regress/unittests/sshbuf/test_sshbuf$(EXEEXT)
30119261079SEd Maste	rm -f regress/unittests/sshkey/*.o
30219261079SEd Maste	rm -f regress/unittests/sshkey/test_sshkey$(EXEEXT)
30319261079SEd Maste	rm -f regress/unittests/sshsig/*.o
30419261079SEd Maste	rm -f regress/unittests/sshsig/test_sshsig$(EXEEXT)
305ca86bcf2SDag-Erling Smørgrav	rm -f regress/unittests/utf8/*.o
3064f52dfbbSDag-Erling Smørgrav	rm -f regress/unittests/utf8/test_utf8$(EXEEXT)
30719261079SEd Maste	rm -f regress/misc/sk-dummy/*.o
30819261079SEd Maste	rm -f regress/misc/sk-dummy/*.lo
30919261079SEd Maste	rm -f regress/misc/sk-dummy/sk-dummy.so
310ce3adf43SDag-Erling Smørgrav	(cd openbsd-compat && $(MAKE) clean)
311ce3adf43SDag-Erling Smørgrav
312ce3adf43SDag-Erling Smørgravdistclean:	regressclean
313ce3adf43SDag-Erling Smørgrav	rm -f *.o *.a $(TARGETS) logintest config.cache config.log
314ce3adf43SDag-Erling Smørgrav	rm -f *.out core opensshd.init openssh.xml
315ce3adf43SDag-Erling Smørgrav	rm -f Makefile buildpkg.sh config.h config.status
316ce3adf43SDag-Erling Smørgrav	rm -f survey.sh openbsd-compat/regress/Makefile *~
317ce3adf43SDag-Erling Smørgrav	rm -rf autom4te.cache
318190cef3dSDag-Erling Smørgrav	rm -f regress/check-perm
319190cef3dSDag-Erling Smørgrav	rm -f regress/mkdtemp
320a0ee8cc6SDag-Erling Smørgrav	rm -f regress/unittests/test_helper/*.a
321a0ee8cc6SDag-Erling Smørgrav	rm -f regress/unittests/test_helper/*.o
32219261079SEd Maste	rm -f regress/unittests/authopt/*.o
32319261079SEd Maste	rm -f regress/unittests/authopt/test_authopt
324bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/bitmap/*.o
325bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/bitmap/test_bitmap
326d93a896eSDag-Erling Smørgrav	rm -f regress/unittests/conversion/*.o
327d93a896eSDag-Erling Smørgrav	rm -f regress/unittests/conversion/test_conversion
328bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/hostkeys/*.o
329bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/hostkeys/test_hostkeys
330bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/kex/*.o
331bc5531deSDag-Erling Smørgrav	rm -f regress/unittests/kex/test_kex
332ca86bcf2SDag-Erling Smørgrav	rm -f regress/unittests/match/*.o
333ca86bcf2SDag-Erling Smørgrav	rm -f regress/unittests/match/test_match
33419261079SEd Maste	rm -f regress/unittests/misc/*.o
33519261079SEd Maste	rm -f regress/unittests/misc/test_misc
33619261079SEd Maste	rm -f regress/unittests/sshbuf/*.o
33719261079SEd Maste	rm -f regress/unittests/sshbuf/test_sshbuf
33819261079SEd Maste	rm -f regress/unittests/sshkey/*.o
33919261079SEd Maste	rm -f regress/unittests/sshkey/test_sshkey
34019261079SEd Maste	rm -f regress/unittests/sshsig/*.o
34119261079SEd Maste	rm -f regress/unittests/sshsig/test_sshsig
342ca86bcf2SDag-Erling Smørgrav	rm -f regress/unittests/utf8/*.o
343ca86bcf2SDag-Erling Smørgrav	rm -f regress/unittests/utf8/test_utf8
3441323ec57SEd Maste	rm -f regress/misc/sk-dummy/*.o
3451323ec57SEd Maste	rm -f regress/misc/sk-dummy/*.lo
3461323ec57SEd Maste	rm -f regress/misc/sk-dummy/sk-dummy.so
347ce3adf43SDag-Erling Smørgrav	(cd openbsd-compat && $(MAKE) distclean)
348ce3adf43SDag-Erling Smørgrav	if test -d pkg ; then \
349ce3adf43SDag-Erling Smørgrav		rm -fr pkg ; \
350ce3adf43SDag-Erling Smørgrav	fi
351ce3adf43SDag-Erling Smørgrav
352ce3adf43SDag-Erling Smørgravveryclean: distclean
353ce3adf43SDag-Erling Smørgrav	rm -f configure config.h.in *.0
354ce3adf43SDag-Erling Smørgrav
355ce3adf43SDag-Erling Smørgravcleandir: veryclean
356ce3adf43SDag-Erling Smørgrav
357ce3adf43SDag-Erling Smørgravmrproper: veryclean
358ce3adf43SDag-Erling Smørgrav
359ce3adf43SDag-Erling Smørgravrealclean: veryclean
360ce3adf43SDag-Erling Smørgrav
361ce3adf43SDag-Erling Smørgravcatman-do:
362ce3adf43SDag-Erling Smørgrav	@for f in $(MANPAGES_IN) ; do \
363ce3adf43SDag-Erling Smørgrav		base=`echo $$f | sed 's/\..*$$//'` ; \
364ce3adf43SDag-Erling Smørgrav		echo "$$f -> $$base.0" ; \
365ce3adf43SDag-Erling Smørgrav		$(MANFMT) $$f | cat -v | sed -e 's/.\^H//g' \
366ce3adf43SDag-Erling Smørgrav			>$$base.0 ; \
367ce3adf43SDag-Erling Smørgrav	done
368ce3adf43SDag-Erling Smørgrav
36947dd1d1bSDag-Erling Smørgravdepend: depend-rebuild
37047dd1d1bSDag-Erling Smørgrav	rm -f .depend.bak
37147dd1d1bSDag-Erling Smørgrav
37247dd1d1bSDag-Erling Smørgravdepend-rebuild:
37319261079SEd Maste	mv .depend .depend.old
37419261079SEd Maste	rm -f config.h .depend
37519261079SEd Maste	touch config.h .depend
37647dd1d1bSDag-Erling Smørgrav	makedepend -w1000 -Y. -f .depend *.c 2>/dev/null
37719261079SEd Maste	(echo '# Automatically generated by makedepend.'; \
37819261079SEd Maste	 echo '# Run "make depend" to rebuild.'; sort .depend ) >.depend.tmp
37919261079SEd Maste	mv .depend.tmp .depend
38019261079SEd Maste	rm -f .depend.bak
38119261079SEd Maste	mv .depend.old .depend.bak
38247dd1d1bSDag-Erling Smørgrav	rm -f config.h
38347dd1d1bSDag-Erling Smørgrav
38447dd1d1bSDag-Erling Smørgravdepend-check: depend-rebuild
38547dd1d1bSDag-Erling Smørgrav	cmp .depend .depend.bak || (echo .depend stale && exit 1)
38647dd1d1bSDag-Erling Smørgrav
38747dd1d1bSDag-Erling Smørgravdistprep: catman-do depend-check
388ce3adf43SDag-Erling Smørgrav	$(AUTORECONF)
38947dd1d1bSDag-Erling Smørgrav	-rm -rf autom4te.cache .depend.bak
390ce3adf43SDag-Erling Smørgrav
391ce3adf43SDag-Erling Smørgravinstall: $(CONFIGFILES) $(MANPAGES) $(TARGETS) install-files install-sysconf host-key check-config
392ce3adf43SDag-Erling Smørgravinstall-nokeys: $(CONFIGFILES) $(MANPAGES) $(TARGETS) install-files install-sysconf
393ce3adf43SDag-Erling Smørgravinstall-nosysconf: $(CONFIGFILES) $(MANPAGES) $(TARGETS) install-files
394ce3adf43SDag-Erling Smørgrav
395ce3adf43SDag-Erling Smørgravcheck-config:
396ce3adf43SDag-Erling Smørgrav	-$(DESTDIR)$(sbindir)/sshd -t -f $(DESTDIR)$(sysconfdir)/sshd_config
397ce3adf43SDag-Erling Smørgrav
398ce3adf43SDag-Erling Smørgravinstall-files:
39947dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) $(DESTDIR)$(bindir)
40047dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) $(DESTDIR)$(sbindir)
40147dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)1
40247dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)5
40347dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) $(DESTDIR)$(mandir)/$(mansubdir)8
40447dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) $(DESTDIR)$(libexecdir)
40547dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) -m 0755 $(DESTDIR)$(PRIVSEP_PATH)
406ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) ssh$(EXEEXT) $(DESTDIR)$(bindir)/ssh$(EXEEXT)
407ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) scp$(EXEEXT) $(DESTDIR)$(bindir)/scp$(EXEEXT)
408ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) ssh-add$(EXEEXT) $(DESTDIR)$(bindir)/ssh-add$(EXEEXT)
409ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) ssh-agent$(EXEEXT) $(DESTDIR)$(bindir)/ssh-agent$(EXEEXT)
410ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) ssh-keygen$(EXEEXT) $(DESTDIR)$(bindir)/ssh-keygen$(EXEEXT)
411ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) ssh-keyscan$(EXEEXT) $(DESTDIR)$(bindir)/ssh-keyscan$(EXEEXT)
412ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) sshd$(EXEEXT) $(DESTDIR)$(sbindir)/sshd$(EXEEXT)
4130fdf8faeSEd Maste	$(INSTALL) -m 0755 $(STRIP_OPT) sshd-session$(EXEEXT) $(DESTDIR)$(SSHD_SESSION)$(EXEEXT)
414ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 4711 $(STRIP_OPT) ssh-keysign$(EXEEXT) $(DESTDIR)$(SSH_KEYSIGN)$(EXEEXT)
415ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) ssh-pkcs11-helper$(EXEEXT) $(DESTDIR)$(SSH_PKCS11_HELPER)$(EXEEXT)
41619261079SEd Maste	$(INSTALL) -m 0755 $(STRIP_OPT) ssh-sk-helper$(EXEEXT) $(DESTDIR)$(SSH_SK_HELPER)$(EXEEXT)
417ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) sftp$(EXEEXT) $(DESTDIR)$(bindir)/sftp$(EXEEXT)
418ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 0755 $(STRIP_OPT) sftp-server$(EXEEXT) $(DESTDIR)$(SFTP_SERVER)$(EXEEXT)
419ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 ssh.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh.1
420ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 scp.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/scp.1
421ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 ssh-add.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-add.1
422ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 ssh-agent.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-agent.1
423ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 ssh-keygen.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-keygen.1
424ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 ssh-keyscan.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-keyscan.1
425ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 moduli.5.out $(DESTDIR)$(mandir)/$(mansubdir)5/moduli.5
426ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 sshd_config.5.out $(DESTDIR)$(mandir)/$(mansubdir)5/sshd_config.5
427ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 ssh_config.5.out $(DESTDIR)$(mandir)/$(mansubdir)5/ssh_config.5
428ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 sshd.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/sshd.8
429ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 sftp.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/sftp.1
430ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 sftp-server.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/sftp-server.8
431ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 ssh-keysign.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-keysign.8
432ce3adf43SDag-Erling Smørgrav	$(INSTALL) -m 644 ssh-pkcs11-helper.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-pkcs11-helper.8
43319261079SEd Maste	$(INSTALL) -m 644 ssh-sk-helper.8.out $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-sk-helper.8
434ce3adf43SDag-Erling Smørgrav
435ce3adf43SDag-Erling Smørgravinstall-sysconf:
43647dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) $(DESTDIR)$(sysconfdir)
437ce3adf43SDag-Erling Smørgrav	@if [ ! -f $(DESTDIR)$(sysconfdir)/ssh_config ]; then \
438ce3adf43SDag-Erling Smørgrav		$(INSTALL) -m 644 ssh_config.out $(DESTDIR)$(sysconfdir)/ssh_config; \
439ce3adf43SDag-Erling Smørgrav	else \
440ce3adf43SDag-Erling Smørgrav		echo "$(DESTDIR)$(sysconfdir)/ssh_config already exists, install will not overwrite"; \
441ce3adf43SDag-Erling Smørgrav	fi
442ce3adf43SDag-Erling Smørgrav	@if [ ! -f $(DESTDIR)$(sysconfdir)/sshd_config ]; then \
443ce3adf43SDag-Erling Smørgrav		$(INSTALL) -m 644 sshd_config.out $(DESTDIR)$(sysconfdir)/sshd_config; \
444ce3adf43SDag-Erling Smørgrav	else \
445ce3adf43SDag-Erling Smørgrav		echo "$(DESTDIR)$(sysconfdir)/sshd_config already exists, install will not overwrite"; \
446ce3adf43SDag-Erling Smørgrav	fi
447ce3adf43SDag-Erling Smørgrav	@if [ ! -f $(DESTDIR)$(sysconfdir)/moduli ]; then \
448ce3adf43SDag-Erling Smørgrav		if [ -f $(DESTDIR)$(sysconfdir)/primes ]; then \
449ce3adf43SDag-Erling Smørgrav			echo "moving $(DESTDIR)$(sysconfdir)/primes to $(DESTDIR)$(sysconfdir)/moduli"; \
450ce3adf43SDag-Erling Smørgrav			mv "$(DESTDIR)$(sysconfdir)/primes" "$(DESTDIR)$(sysconfdir)/moduli"; \
451ce3adf43SDag-Erling Smørgrav		else \
452ce3adf43SDag-Erling Smørgrav			$(INSTALL) -m 644 moduli.out $(DESTDIR)$(sysconfdir)/moduli; \
453ce3adf43SDag-Erling Smørgrav		fi ; \
454ce3adf43SDag-Erling Smørgrav	else \
455ce3adf43SDag-Erling Smørgrav		echo "$(DESTDIR)$(sysconfdir)/moduli already exists, install will not overwrite"; \
456ce3adf43SDag-Erling Smørgrav	fi
457ce3adf43SDag-Erling Smørgrav
458ce3adf43SDag-Erling Smørgravhost-key: ssh-keygen$(EXEEXT)
459ce3adf43SDag-Erling Smørgrav	@if [ -z "$(DESTDIR)" ] ; then \
460acc1a9efSDag-Erling Smørgrav		./ssh-keygen -A; \
461acc1a9efSDag-Erling Smørgrav	fi
462ce3adf43SDag-Erling Smørgrav
463acc1a9efSDag-Erling Smørgravhost-key-force: ssh-keygen$(EXEEXT) ssh$(EXEEXT)
464ce3adf43SDag-Erling Smørgrav	./ssh-keygen -t dsa -f $(DESTDIR)$(sysconfdir)/ssh_host_dsa_key -N ""
465ce3adf43SDag-Erling Smørgrav	./ssh-keygen -t rsa -f $(DESTDIR)$(sysconfdir)/ssh_host_rsa_key -N ""
466f7167e0eSDag-Erling Smørgrav	./ssh-keygen -t ed25519 -f $(DESTDIR)$(sysconfdir)/ssh_host_ed25519_key -N ""
467acc1a9efSDag-Erling Smørgrav	if ./ssh -Q key | grep ecdsa >/dev/null ; then \
468acc1a9efSDag-Erling Smørgrav		./ssh-keygen -t ecdsa -f $(DESTDIR)$(sysconfdir)/ssh_host_ecdsa_key -N ""; \
469acc1a9efSDag-Erling Smørgrav	fi
470ce3adf43SDag-Erling Smørgrav
471ce3adf43SDag-Erling Smørgravuninstallall:	uninstall
472ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(sysconfdir)/ssh_config
473ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(sysconfdir)/sshd_config
474ce3adf43SDag-Erling Smørgrav	-rmdir $(DESTDIR)$(sysconfdir)
475ce3adf43SDag-Erling Smørgrav	-rmdir $(DESTDIR)$(bindir)
476ce3adf43SDag-Erling Smørgrav	-rmdir $(DESTDIR)$(sbindir)
477ce3adf43SDag-Erling Smørgrav	-rmdir $(DESTDIR)$(mandir)/$(mansubdir)1
478ce3adf43SDag-Erling Smørgrav	-rmdir $(DESTDIR)$(mandir)/$(mansubdir)8
479ce3adf43SDag-Erling Smørgrav	-rmdir $(DESTDIR)$(mandir)
480ce3adf43SDag-Erling Smørgrav	-rmdir $(DESTDIR)$(libexecdir)
481ce3adf43SDag-Erling Smørgrav
482ce3adf43SDag-Erling Smørgravuninstall:
483ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(bindir)/ssh$(EXEEXT)
484ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(bindir)/scp$(EXEEXT)
485ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(bindir)/ssh-add$(EXEEXT)
486ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(bindir)/ssh-agent$(EXEEXT)
487ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(bindir)/ssh-keygen$(EXEEXT)
488ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(bindir)/ssh-keyscan$(EXEEXT)
489ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(bindir)/sftp$(EXEEXT)
490ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(sbindir)/sshd$(EXEEXT)
491ce3adf43SDag-Erling Smørgrav	-rm -r $(DESTDIR)$(SFTP_SERVER)$(EXEEXT)
492ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(SSH_KEYSIGN)$(EXEEXT)
493ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(SSH_PKCS11_HELPER)$(EXEEXT)
49419261079SEd Maste	-rm -f $(DESTDIR)$(SSH_SK_HELPER)$(EXEEXT)
495ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh.1
496ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/scp.1
497ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-add.1
498ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-agent.1
499ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-keygen.1
500ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/sftp.1
501ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/ssh-keyscan.1
502ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/sshd.8
503ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/sftp-server.8
504ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-keysign.8
505ce3adf43SDag-Erling Smørgrav	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-pkcs11-helper.8
50619261079SEd Maste	-rm -f $(DESTDIR)$(mandir)/$(mansubdir)8/ssh-sk-helper.8
507ce3adf43SDag-Erling Smørgrav
508a0ee8cc6SDag-Erling Smørgravregress-prep:
50947dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) `pwd`/regress/unittests/test_helper
51019261079SEd Maste	$(MKDIR_P) `pwd`/regress/unittests/authopt
51147dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) `pwd`/regress/unittests/bitmap
51247dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) `pwd`/regress/unittests/conversion
51347dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) `pwd`/regress/unittests/hostkeys
51447dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) `pwd`/regress/unittests/kex
51547dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) `pwd`/regress/unittests/match
51619261079SEd Maste	$(MKDIR_P) `pwd`/regress/unittests/misc
51719261079SEd Maste	$(MKDIR_P) `pwd`/regress/unittests/sshbuf
51819261079SEd Maste	$(MKDIR_P) `pwd`/regress/unittests/sshkey
51919261079SEd Maste	$(MKDIR_P) `pwd`/regress/unittests/sshsig
52047dd1d1bSDag-Erling Smørgrav	$(MKDIR_P) `pwd`/regress/unittests/utf8
52119261079SEd Maste	$(MKDIR_P) `pwd`/regress/misc/sk-dummy
522ce3adf43SDag-Erling Smørgrav	[ -f `pwd`/regress/Makefile ] || \
523ce3adf43SDag-Erling Smørgrav	    ln -s `cd $(srcdir) && pwd`/regress/Makefile `pwd`/regress/Makefile
524a0ee8cc6SDag-Erling Smørgrav
525076ad2f8SDag-Erling SmørgravREGRESSLIBS=libssh.a $(LIBCOMPAT)
52638a52bd3SEd MasteTESTLIBS=$(LIBS) $(CHANNELLIBS)
527076ad2f8SDag-Erling Smørgrav
528076ad2f8SDag-Erling Smørgravregress/modpipe$(EXEEXT): $(srcdir)/regress/modpipe.c $(REGRESSLIBS)
529076ad2f8SDag-Erling Smørgrav	$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $(srcdir)/regress/modpipe.c \
53038a52bd3SEd Maste	$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
531ce3adf43SDag-Erling Smørgrav
5324d3fc8b0SEd Masteregress/timestamp$(EXEEXT): $(srcdir)/regress/timestamp.c $(REGRESSLIBS)
5334d3fc8b0SEd Maste	$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $(srcdir)/regress/timestamp.c \
5344d3fc8b0SEd Maste	$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
5354d3fc8b0SEd Maste
536076ad2f8SDag-Erling Smørgravregress/setuid-allowed$(EXEEXT): $(srcdir)/regress/setuid-allowed.c $(REGRESSLIBS)
537076ad2f8SDag-Erling Smørgrav	$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $(srcdir)/regress/setuid-allowed.c \
53838a52bd3SEd Maste	$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
539f7167e0eSDag-Erling Smørgrav
540076ad2f8SDag-Erling Smørgravregress/netcat$(EXEEXT): $(srcdir)/regress/netcat.c $(REGRESSLIBS)
541076ad2f8SDag-Erling Smørgrav	$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $(srcdir)/regress/netcat.c \
54238a52bd3SEd Maste	$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
543bc5531deSDag-Erling Smørgrav
544076ad2f8SDag-Erling Smørgravregress/check-perm$(EXEEXT): $(srcdir)/regress/check-perm.c $(REGRESSLIBS)
545076ad2f8SDag-Erling Smørgrav	$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $(srcdir)/regress/check-perm.c \
54638a52bd3SEd Maste	$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
547acc1a9efSDag-Erling Smørgrav
548190cef3dSDag-Erling Smørgravregress/mkdtemp$(EXEEXT): $(srcdir)/regress/mkdtemp.c $(REGRESSLIBS)
549190cef3dSDag-Erling Smørgrav	$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $(srcdir)/regress/mkdtemp.c \
55038a52bd3SEd Maste	$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
551190cef3dSDag-Erling Smørgrav
552a0ee8cc6SDag-Erling SmørgravUNITTESTS_TEST_HELPER_OBJS=\
553a0ee8cc6SDag-Erling Smørgrav	regress/unittests/test_helper/test_helper.o \
554a0ee8cc6SDag-Erling Smørgrav	regress/unittests/test_helper/fuzz.o
555a0ee8cc6SDag-Erling Smørgrav
556a0ee8cc6SDag-Erling Smørgravregress/unittests/test_helper/libtest_helper.a: ${UNITTESTS_TEST_HELPER_OBJS}
557a0ee8cc6SDag-Erling Smørgrav	$(AR) rv $@ $(UNITTESTS_TEST_HELPER_OBJS)
558a0ee8cc6SDag-Erling Smørgrav	$(RANLIB) $@
559a0ee8cc6SDag-Erling Smørgrav
560a0ee8cc6SDag-Erling SmørgravUNITTESTS_TEST_SSHBUF_OBJS=\
561a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshbuf/tests.o \
562a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshbuf/test_sshbuf.o \
563a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshbuf/test_sshbuf_getput_basic.o \
564a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshbuf/test_sshbuf_getput_crypto.o \
565a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshbuf/test_sshbuf_misc.o \
566a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshbuf/test_sshbuf_fuzz.o \
567a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshbuf/test_sshbuf_getput_fuzz.o \
568a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshbuf/test_sshbuf_fixed.o
569a0ee8cc6SDag-Erling Smørgrav
570a0ee8cc6SDag-Erling Smørgravregress/unittests/sshbuf/test_sshbuf$(EXEEXT): ${UNITTESTS_TEST_SSHBUF_OBJS} \
571a0ee8cc6SDag-Erling Smørgrav    regress/unittests/test_helper/libtest_helper.a libssh.a
572a0ee8cc6SDag-Erling Smørgrav	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_SSHBUF_OBJS) \
573a0ee8cc6SDag-Erling Smørgrav	    regress/unittests/test_helper/libtest_helper.a \
57438a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
575a0ee8cc6SDag-Erling Smørgrav
576a0ee8cc6SDag-Erling SmørgravUNITTESTS_TEST_SSHKEY_OBJS=\
577a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshkey/test_fuzz.o \
578a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshkey/tests.o \
579a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshkey/common.o \
580a0ee8cc6SDag-Erling Smørgrav	regress/unittests/sshkey/test_file.o \
58119261079SEd Maste	regress/unittests/sshkey/test_sshkey.o \
58219261079SEd Maste	$(SKOBJS)
583a0ee8cc6SDag-Erling Smørgrav
584a0ee8cc6SDag-Erling Smørgravregress/unittests/sshkey/test_sshkey$(EXEEXT): ${UNITTESTS_TEST_SSHKEY_OBJS} \
585a0ee8cc6SDag-Erling Smørgrav    regress/unittests/test_helper/libtest_helper.a libssh.a
586a0ee8cc6SDag-Erling Smørgrav	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_SSHKEY_OBJS) \
587a0ee8cc6SDag-Erling Smørgrav	    regress/unittests/test_helper/libtest_helper.a \
58838a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
589a0ee8cc6SDag-Erling Smørgrav
59019261079SEd MasteUNITTESTS_TEST_SSHSIG_OBJS=\
59119261079SEd Maste	sshsig.o \
59219261079SEd Maste	regress/unittests/sshsig/tests.o \
59319261079SEd Maste	$(SKOBJS)
59419261079SEd Maste
59519261079SEd Masteregress/unittests/sshsig/test_sshsig$(EXEEXT): ${UNITTESTS_TEST_SSHSIG_OBJS} \
59619261079SEd Maste    regress/unittests/test_helper/libtest_helper.a libssh.a
59719261079SEd Maste	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_SSHSIG_OBJS) \
59819261079SEd Maste	    regress/unittests/test_helper/libtest_helper.a \
59938a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
60019261079SEd Maste
601bc5531deSDag-Erling SmørgravUNITTESTS_TEST_BITMAP_OBJS=\
602bc5531deSDag-Erling Smørgrav	regress/unittests/bitmap/tests.o
603bc5531deSDag-Erling Smørgrav
604bc5531deSDag-Erling Smørgravregress/unittests/bitmap/test_bitmap$(EXEEXT): ${UNITTESTS_TEST_BITMAP_OBJS} \
605bc5531deSDag-Erling Smørgrav    regress/unittests/test_helper/libtest_helper.a libssh.a
606bc5531deSDag-Erling Smørgrav	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_BITMAP_OBJS) \
607bc5531deSDag-Erling Smørgrav	    regress/unittests/test_helper/libtest_helper.a \
60838a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
609bc5531deSDag-Erling Smørgrav
61019261079SEd MasteUNITTESTS_TEST_AUTHOPT_OBJS=\
61119261079SEd Maste	regress/unittests/authopt/tests.o \
61219261079SEd Maste	auth-options.o \
61319261079SEd Maste	$(SKOBJS)
61419261079SEd Maste
61519261079SEd Masteregress/unittests/authopt/test_authopt$(EXEEXT): \
61619261079SEd Maste    ${UNITTESTS_TEST_AUTHOPT_OBJS} \
61719261079SEd Maste    regress/unittests/test_helper/libtest_helper.a libssh.a
61819261079SEd Maste	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_AUTHOPT_OBJS) \
61919261079SEd Maste	    regress/unittests/test_helper/libtest_helper.a \
62038a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
62119261079SEd Maste
622d93a896eSDag-Erling SmørgravUNITTESTS_TEST_CONVERSION_OBJS=\
623d93a896eSDag-Erling Smørgrav	regress/unittests/conversion/tests.o
624d93a896eSDag-Erling Smørgrav
625d93a896eSDag-Erling Smørgravregress/unittests/conversion/test_conversion$(EXEEXT): \
626d93a896eSDag-Erling Smørgrav    ${UNITTESTS_TEST_CONVERSION_OBJS} \
627d93a896eSDag-Erling Smørgrav    regress/unittests/test_helper/libtest_helper.a libssh.a
628d93a896eSDag-Erling Smørgrav	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_CONVERSION_OBJS) \
629d93a896eSDag-Erling Smørgrav	    regress/unittests/test_helper/libtest_helper.a \
63038a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
631d93a896eSDag-Erling Smørgrav
632bc5531deSDag-Erling SmørgravUNITTESTS_TEST_KEX_OBJS=\
633bc5531deSDag-Erling Smørgrav	regress/unittests/kex/tests.o \
63419261079SEd Maste	regress/unittests/kex/test_kex.o \
635f374ba41SEd Maste	regress/unittests/kex/test_proposal.o \
63619261079SEd Maste	$(SKOBJS)
637bc5531deSDag-Erling Smørgrav
638bc5531deSDag-Erling Smørgravregress/unittests/kex/test_kex$(EXEEXT): ${UNITTESTS_TEST_KEX_OBJS} \
639bc5531deSDag-Erling Smørgrav    regress/unittests/test_helper/libtest_helper.a libssh.a
640bc5531deSDag-Erling Smørgrav	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_KEX_OBJS) \
641bc5531deSDag-Erling Smørgrav	    regress/unittests/test_helper/libtest_helper.a \
64238a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
643bc5531deSDag-Erling Smørgrav
644bc5531deSDag-Erling SmørgravUNITTESTS_TEST_HOSTKEYS_OBJS=\
645bc5531deSDag-Erling Smørgrav	regress/unittests/hostkeys/tests.o \
64619261079SEd Maste	regress/unittests/hostkeys/test_iterate.o \
64719261079SEd Maste	$(SKOBJS)
648bc5531deSDag-Erling Smørgrav
649bc5531deSDag-Erling Smørgravregress/unittests/hostkeys/test_hostkeys$(EXEEXT): \
650bc5531deSDag-Erling Smørgrav    ${UNITTESTS_TEST_HOSTKEYS_OBJS} \
651bc5531deSDag-Erling Smørgrav    regress/unittests/test_helper/libtest_helper.a libssh.a
652bc5531deSDag-Erling Smørgrav	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_HOSTKEYS_OBJS) \
653bc5531deSDag-Erling Smørgrav	    regress/unittests/test_helper/libtest_helper.a \
65438a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
655bc5531deSDag-Erling Smørgrav
656ca86bcf2SDag-Erling SmørgravUNITTESTS_TEST_MATCH_OBJS=\
657ca86bcf2SDag-Erling Smørgrav	regress/unittests/match/tests.o
658ca86bcf2SDag-Erling Smørgrav
659ca86bcf2SDag-Erling Smørgravregress/unittests/match/test_match$(EXEEXT): \
660ca86bcf2SDag-Erling Smørgrav    ${UNITTESTS_TEST_MATCH_OBJS} \
661ca86bcf2SDag-Erling Smørgrav    regress/unittests/test_helper/libtest_helper.a libssh.a
662ca86bcf2SDag-Erling Smørgrav	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_MATCH_OBJS) \
663ca86bcf2SDag-Erling Smørgrav	    regress/unittests/test_helper/libtest_helper.a \
66438a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
665ca86bcf2SDag-Erling Smørgrav
66619261079SEd MasteUNITTESTS_TEST_MISC_OBJS=\
66719261079SEd Maste	regress/unittests/misc/tests.o \
66819261079SEd Maste	regress/unittests/misc/test_parse.o \
66919261079SEd Maste	regress/unittests/misc/test_expand.o \
67019261079SEd Maste	regress/unittests/misc/test_convtime.o \
67119261079SEd Maste	regress/unittests/misc/test_argv.o \
6721323ec57SEd Maste	regress/unittests/misc/test_strdelim.o \
673f374ba41SEd Maste	regress/unittests/misc/test_hpdelim.o \
674f374ba41SEd Maste	regress/unittests/misc/test_ptimeout.o
67519261079SEd Maste
67619261079SEd Masteregress/unittests/misc/test_misc$(EXEEXT): \
67719261079SEd Maste    ${UNITTESTS_TEST_MISC_OBJS} \
67819261079SEd Maste    regress/unittests/test_helper/libtest_helper.a libssh.a
67919261079SEd Maste	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_MISC_OBJS) \
68019261079SEd Maste	    regress/unittests/test_helper/libtest_helper.a \
68138a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
68219261079SEd Maste
683ca86bcf2SDag-Erling SmørgravUNITTESTS_TEST_UTF8_OBJS=\
684ca86bcf2SDag-Erling Smørgrav	regress/unittests/utf8/tests.o
685ca86bcf2SDag-Erling Smørgrav
686ca86bcf2SDag-Erling Smørgravregress/unittests/utf8/test_utf8$(EXEEXT): \
687ca86bcf2SDag-Erling Smørgrav    ${UNITTESTS_TEST_UTF8_OBJS} \
688ca86bcf2SDag-Erling Smørgrav    regress/unittests/test_helper/libtest_helper.a libssh.a
689ca86bcf2SDag-Erling Smørgrav	$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_UTF8_OBJS) \
690ca86bcf2SDag-Erling Smørgrav	    regress/unittests/test_helper/libtest_helper.a \
69138a52bd3SEd Maste	    -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(TESTLIBS)
692ca86bcf2SDag-Erling Smørgrav
69319261079SEd Maste# These all need to be compiled -fPIC, so they are treated differently.
69419261079SEd MasteSK_DUMMY_OBJS=\
69519261079SEd Maste	regress/misc/sk-dummy/sk-dummy.lo \
69619261079SEd Maste	regress/misc/sk-dummy/fatal.lo \
697f374ba41SEd Maste	ed25519.lo hash.lo
698076ad2f8SDag-Erling Smørgrav
69919261079SEd MasteSK_DUMMY_LIBRARY=@SK_DUMMY_LIBRARY@
700076ad2f8SDag-Erling Smørgrav
70119261079SEd Maste.c.lo: Makefile.in config.h
70219261079SEd Maste	$(CC) $(CFLAGS_NOPIE) $(PICFLAG) $(CPPFLAGS) -c $< -o $@
70319261079SEd Maste
70419261079SEd Masteregress/misc/sk-dummy/sk-dummy.so: $(SK_DUMMY_OBJS)
70587c1498dSEd Maste	$(CC) $(CFLAGS) $(CPPFLAGS) $(PICFLAG) -shared -o $@ $(SK_DUMMY_OBJS) \
70638a52bd3SEd Maste	    -L. -Lopenbsd-compat -lopenbsd-compat $(LDFLAGS_NOPIE) $(TESTLIBS)
70719261079SEd Maste
70819261079SEd Masteregress-binaries: regress-prep $(LIBCOMPAT) \
70919261079SEd Maste	regress/modpipe$(EXEEXT) \
7104d3fc8b0SEd Maste	regress/timestamp$(EXEEXT) \
711a0ee8cc6SDag-Erling Smørgrav	regress/setuid-allowed$(EXEEXT) \
712bc5531deSDag-Erling Smørgrav	regress/netcat$(EXEEXT) \
713acc1a9efSDag-Erling Smørgrav	regress/check-perm$(EXEEXT) \
714190cef3dSDag-Erling Smørgrav	regress/mkdtemp$(EXEEXT) \
71519261079SEd Maste	$(SK_DUMMY_LIBRARY)
71619261079SEd Maste
71719261079SEd Masteregress-unit-binaries: regress-prep $(REGRESSLIBS) \
71819261079SEd Maste	regress/unittests/authopt/test_authopt$(EXEEXT) \
719bc5531deSDag-Erling Smørgrav	regress/unittests/bitmap/test_bitmap$(EXEEXT) \
720d93a896eSDag-Erling Smørgrav	regress/unittests/conversion/test_conversion$(EXEEXT) \
721bc5531deSDag-Erling Smørgrav	regress/unittests/hostkeys/test_hostkeys$(EXEEXT) \
722076ad2f8SDag-Erling Smørgrav	regress/unittests/kex/test_kex$(EXEEXT) \
723ca86bcf2SDag-Erling Smørgrav	regress/unittests/match/test_match$(EXEEXT) \
72419261079SEd Maste	regress/unittests/misc/test_misc$(EXEEXT) \
72519261079SEd Maste	regress/unittests/sshbuf/test_sshbuf$(EXEEXT) \
72619261079SEd Maste	regress/unittests/sshkey/test_sshkey$(EXEEXT) \
72719261079SEd Maste	regress/unittests/sshsig/test_sshsig$(EXEEXT) \
72819261079SEd Maste	regress/unittests/utf8/test_utf8$(EXEEXT)
729a0ee8cc6SDag-Erling Smørgrav
730069ac184SEd Mastetests:	file-tests t-exec interop-tests extra-tests unit
73119261079SEd Maste	echo all tests passed
73219261079SEd Maste
73319261079SEd Masteunit: regress-unit-binaries
734ce3adf43SDag-Erling Smørgrav	cd $(srcdir)/regress || exit $$?; \
735ce3adf43SDag-Erling Smørgrav	$(MAKE) \
7361323ec57SEd Maste		.CURDIR="$(abs_top_srcdir)/regress" \
7371323ec57SEd Maste		.OBJDIR="$(BUILDDIR)/regress" \
7381323ec57SEd Maste		OBJ="$(BUILDDIR)/regress" \
73919261079SEd Maste		$@ && echo $@ tests passed
74019261079SEd Maste
741069ac184SEd Masteinterop-tests t-exec file-tests extra-tests: regress-prep regress-binaries $(TARGETS)
74219261079SEd Maste	cd $(srcdir)/regress || exit $$?; \
74319261079SEd Maste	EGREP='@EGREP@' \
744f374ba41SEd Maste	OPENSSL_BIN='@OPENSSL_BIN@' \
74519261079SEd Maste	$(MAKE) \
7461323ec57SEd Maste		.CURDIR="$(abs_top_srcdir)/regress" \
7471323ec57SEd Maste		.OBJDIR="$(BUILDDIR)/regress" \
7481323ec57SEd Maste		BUILDDIR="$(BUILDDIR)" \
7491323ec57SEd Maste		OBJ="$(BUILDDIR)/regress" \
7501323ec57SEd Maste		PATH="$(BUILDDIR):$${PATH}" \
751f7167e0eSDag-Erling Smørgrav		TEST_ENV=MALLOC_OPTIONS="@TEST_MALLOC_OPTIONS@" \
752076ad2f8SDag-Erling Smørgrav		TEST_MALLOC_OPTIONS="@TEST_MALLOC_OPTIONS@" \
7531323ec57SEd Maste		TEST_SSH_SCP="$(BUILDDIR)/scp" \
7541323ec57SEd Maste		TEST_SSH_SSH="$(BUILDDIR)/ssh" \
7551323ec57SEd Maste		TEST_SSH_SSHD="$(BUILDDIR)/sshd" \
7560fdf8faeSEd Maste		TEST_SSH_SSHD_SESSION="$(BUILDDIR)/sshd-session" \
7571323ec57SEd Maste		TEST_SSH_SSHAGENT="$(BUILDDIR)/ssh-agent" \
7581323ec57SEd Maste		TEST_SSH_SSHADD="$(BUILDDIR)/ssh-add" \
7591323ec57SEd Maste		TEST_SSH_SSHKEYGEN="$(BUILDDIR)/ssh-keygen" \
7601323ec57SEd Maste		TEST_SSH_SSHPKCS11HELPER="$(BUILDDIR)/ssh-pkcs11-helper" \
7611323ec57SEd Maste		TEST_SSH_SSHKEYSCAN="$(BUILDDIR)/ssh-keyscan" \
7621323ec57SEd Maste		TEST_SSH_SFTP="$(BUILDDIR)/sftp" \
7631323ec57SEd Maste		TEST_SSH_PKCS11_HELPER="$(BUILDDIR)/ssh-pkcs11-helper" \
7641323ec57SEd Maste		TEST_SSH_SK_HELPER="$(BUILDDIR)/ssh-sk-helper" \
7651323ec57SEd Maste		TEST_SSH_SFTPSERVER="$(BUILDDIR)/sftp-server" \
76619261079SEd Maste		TEST_SSH_MODULI_FILE="$(abs_top_srcdir)/moduli" \
767069ac184SEd Maste		TEST_SSH_PLINK="@PLINK@" \
768069ac184SEd Maste		TEST_SSH_PUTTYGEN="@PUTTYGEN@" \
769069ac184SEd Maste		TEST_SSH_CONCH="@CONCH@" \
770069ac184SEd Maste		TEST_SSH_DROPBEAR="@DROPBEAR@" \
771069ac184SEd Maste		TEST_SSH_DROPBEARKEY="@DROPBEARKEY@" \
772069ac184SEd Maste		TEST_SSH_DROPBEARCONVERT="@DROPBEARCONVERT@" \
773069ac184SEd Maste		TEST_SSH_DBCLIENT="@DBCLIENT@" \
77419261079SEd Maste		TEST_SSH_IPV6="@TEST_SSH_IPV6@" \
77519261079SEd Maste		TEST_SSH_UTF8="@TEST_SSH_UTF8@" \
7761323ec57SEd Maste		TEST_SHELL="$(TEST_SHELL)" \
777ce3adf43SDag-Erling Smørgrav		EXEEXT="$(EXEEXT)" \
77819261079SEd Maste		$@ && echo all $@ passed
779ce3adf43SDag-Erling Smørgrav
780ce3adf43SDag-Erling Smørgravcompat-tests: $(LIBCOMPAT)
781ce3adf43SDag-Erling Smørgrav	(cd openbsd-compat/regress && $(MAKE))
782ce3adf43SDag-Erling Smørgrav
783ce3adf43SDag-Erling Smørgravregressclean:
784ce3adf43SDag-Erling Smørgrav	if [ -f regress/Makefile ] && [ -r regress/Makefile ]; then \
785ce3adf43SDag-Erling Smørgrav		(cd regress && $(MAKE) clean) \
786ce3adf43SDag-Erling Smørgrav	fi
787ce3adf43SDag-Erling Smørgrav
788ce3adf43SDag-Erling Smørgravsurvey: survey.sh ssh
789ce3adf43SDag-Erling Smørgrav	@$(SHELL) ./survey.sh > survey
790ce3adf43SDag-Erling Smørgrav	@echo 'The survey results have been placed in the file "survey" in the'
791ce3adf43SDag-Erling Smørgrav	@echo 'current directory.  Please review the file then send with'
792ce3adf43SDag-Erling Smørgrav	@echo '"make send-survey".'
793ce3adf43SDag-Erling Smørgrav
794ce3adf43SDag-Erling Smørgravsend-survey:	survey
795ce3adf43SDag-Erling Smørgrav	mail portable-survey@mindrot.org <survey
796ce3adf43SDag-Erling Smørgrav
797ce3adf43SDag-Erling Smørgravpackage: $(CONFIGFILES) $(MANPAGES) $(TARGETS)
798ce3adf43SDag-Erling Smørgrav	if [ "@MAKE_PACKAGE_SUPPORTED@" = yes ]; then \
799ce3adf43SDag-Erling Smørgrav		sh buildpkg.sh; \
800ce3adf43SDag-Erling Smørgrav	fi
80147dd1d1bSDag-Erling Smørgrav
80247dd1d1bSDag-Erling Smørgrav# @DEPEND@
803