d029c3aa25
Make sure everything linking to a privatelib and/or an internallib does it directly from the OBJDIR rather than DESTDIR. Add src.libnames.mk so bsd.libnames.mk is not polluted by libraries not existsing in final installation Introduce the LD* variable which is what ld(1) is expecting (via LDADD) to link to internal/privatelib Directly link to the .so in case of private library to avoid having to complexify LDFLAGS. Phabric: https://phabric.freebsd.org/D553 Reviewed by: imp, emaste
82 lines
2.4 KiB
Makefile
82 lines
2.4 KiB
Makefile
# $FreeBSD$
|
|
|
|
.include <src.opts.mk>
|
|
|
|
PROG= sshd
|
|
SRCS= sshd.c auth-rhosts.c auth-passwd.c auth-rsa.c auth-rh-rsa.c \
|
|
audit.c audit-bsm.c audit-linux.c platform.c \
|
|
sshpty.c sshlogin.c servconf.c serverloop.c \
|
|
auth.c auth1.c auth2.c auth-options.c session.c \
|
|
auth-chall.c auth2-chall.c groupaccess.c \
|
|
auth-skey.c auth-bsdauth.c auth2-hostbased.c auth2-kbdint.c \
|
|
auth2-none.c auth2-passwd.c auth2-pubkey.c \
|
|
monitor_mm.c monitor.c monitor_wrap.c kexdhs.c kexgexs.c kexecdhs.c \
|
|
kexc25519s.c auth-krb5.c \
|
|
auth2-gss.c gss-serv.c gss-serv-krb5.c \
|
|
loginrec.c auth-pam.c auth-shadow.c auth-sia.c md5crypt.c \
|
|
sftp-server.c sftp-common.c \
|
|
roaming_common.c roaming_serv.c \
|
|
sandbox-null.c sandbox-rlimit.c sandbox-systrace.c sandbox-darwin.c \
|
|
sandbox-seccomp-filter.c sandbox-capsicum.c
|
|
|
|
# gss-genr.c really belongs in libssh; see src/secure/lib/libssh/Makefile
|
|
SRCS+= gss-genr.c
|
|
|
|
MAN= sshd.8 sshd_config.5
|
|
CFLAGS+=-I${SSHDIR} -include ssh_namespace.h
|
|
|
|
DPADD= ${LIBSSH} ${LIBUTIL} ${LIBWRAP} ${LIBPAM}
|
|
LDADD= ${LDSSH} -lutil -lwrap ${MINUSLPAM}
|
|
USEPRIVATELIB= ssh
|
|
|
|
.if ${MK_LDNS} != "no"
|
|
CFLAGS+= -DHAVE_LDNS=1
|
|
#DPADD+= ${LIBLDNS}
|
|
#LDADD+= -lldns
|
|
#USEPRIVATELIB+= ldns
|
|
.endif
|
|
|
|
.if ${MK_AUDIT} != "no"
|
|
CFLAGS+= -DUSE_BSM_AUDIT -DHAVE_GETAUDIT_ADDR
|
|
DPADD+= ${LIBBSM}
|
|
LDADD+= -lbsm
|
|
.endif
|
|
|
|
.if ${MK_KERBEROS_SUPPORT} != "no"
|
|
CFLAGS+= -include krb5_config.h
|
|
DPADD+= ${LIBGSSAPI_KRB5} ${LIBGSSAPI} ${LIBKRB5} ${LIBHX509} ${LIBASN1} \
|
|
${LIBCOM_ERR} ${LIBROKEN} ${LIBWIND} ${LIBHEIMBASE} ${LIBHEIMIPCC}
|
|
LDADD+= -lgssapi_krb5 -lgssapi -lkrb5 -lhx509 -lasn1 \
|
|
-lcom_err -lroken -lwind -lheimbase ${LDHEIMIPCC}
|
|
.endif
|
|
|
|
.if ${MK_OPENSSH_NONE_CIPHER} != "no"
|
|
CFLAGS+= -DNONE_CIPHER_ENABLED
|
|
.endif
|
|
|
|
DPADD+= ${LIBCRYPT} ${LIBCRYPTO} ${LIBZ}
|
|
LDADD+= -lcrypt -lcrypto -lz
|
|
|
|
# Fix the order of NEEDED entries for libthr and libc. The libthr
|
|
# needs to interpose libc symbols, leaving the libthr loading as
|
|
# dependency of krb causes reversed order and broken interposing. Put
|
|
# the threading library last on the linker command line, just before
|
|
# the -lc added by a compiler driver.
|
|
.if ${MK_KERBEROS_SUPPORT} != "no"
|
|
DPADD+= ${LIBPTHREAD}
|
|
LDADD+= -lpthread
|
|
.endif
|
|
|
|
.if defined(LOCALBASE)
|
|
CFLAGS+= -DXAUTH_PATH=\"${LOCALBASE}/bin/xauth\"
|
|
.endif
|
|
|
|
.include <bsd.prog.mk>
|
|
|
|
.PATH: ${SSHDIR}
|
|
|
|
${OBJS} ${POBJS} ${SOBJS}: ssh_namespace.h
|
|
.if ${MK_KERBEROS_SUPPORT} != "no"
|
|
${OBJS} ${POBJS} ${SOBJS}: krb5_config.h
|
|
.endif
|