1# $OpenBSD: Makefile.inc,v 1.92 2024/05/22 15:24:55 naddy Exp $ 2 3.include <bsd.own.mk> 4 5CFLAGS+= -I${.CURDIR}/.. 6.if ${MACHINE} != "hppa" 7CFLAGS+= -fstack-protector-all 8.endif 9 10CDIAGFLAGS= -Wall 11CDIAGFLAGS+= -Wextra 12CDIAGFLAGS+= -Wformat-security 13CDIAGFLAGS+= -Wmissing-declarations 14CDIAGFLAGS+= -Wmissing-prototypes 15CDIAGFLAGS+= -Wpointer-arith 16CDIAGFLAGS+= -Wshadow 17CDIAGFLAGS+= -Wstrict-prototypes 18CDIAGFLAGS+= -Wunused 19CDIAGFLAGS+= -Wno-unused-parameter # Lots of these in protocol handlers. 20.if ${COMPILER_VERSION:L} == "clang" 21CDIAGFLAGS+= -Widiomatic-parentheses -Wparentheses 22.endif 23.if ${COMPILER_VERSION:L} != "gcc3" 24CDIAGFLAGS+= -Wstrict-aliasing=2 25CDIAGFLAGS+= -Wold-style-definition 26CDIAGFLAGS+= -Werror 27.endif 28 29#CDIAGFLAGS+= -fno-common 30#DEBUG=-g 31#INSTALL_STRIP= 32 33WARNINGS=yes 34 35OPENSSL?= yes 36ZLIB?= yes 37DSAKEY?= yes 38 39.if (${OPENSSL:L} == "yes") 40CFLAGS+= -DWITH_OPENSSL 41.endif 42 43.if (${ZLIB:L} == "yes") 44CFLAGS+= -DWITH_ZLIB 45.endif 46 47.if (${DSAKEY:L} == "yes") 48CFLAGS+= -DWITH_DSA 49.endif 50 51CFLAGS+= -DENABLE_PKCS11 52.ifndef NOPIC 53CFLAGS+= -DHAVE_DLOPEN 54.endif 55 56SRCS_BASE+= sshbuf.c 57SRCS_BASE+= sshbuf-getput-basic.c 58SRCS_BASE+= sshbuf-misc.c 59SRCS_BASE+= ssherr.c 60SRCS_BASE+= log.c 61SRCS_BASE+= xmalloc.c 62SRCS_BASE+= misc.c 63SRCS_BASE+= addr.c 64SRCS_BASE+= addrmatch.c 65SRCS_BASE+= match.c 66 67.if (${OPENSSL:L} == "yes") 68SRCS_KEX+= dh.c 69SRCS_KEX+= kexdh.c 70SRCS_KEX+= kexecdh.c 71SRCS_KEX+= kexgex.c 72SRCS_KEXC+= kexgexc.c 73SRCS_KEXS+= kexgexs.c 74.endif 75SRCS_KEX+= kexc25519.c 76SRCS_KEX+= smult_curve25519_ref.c 77SRCS_KEX+= kexgen.c 78SRCS_KEX+= kexsntrup761x25519.c 79SRCS_KEX+= sntrup761.c 80 81SRCS_KEY+= sshkey.c 82SRCS_KEY+= cipher.c 83SRCS_KEY+= chacha.c 84SRCS_KEY+= poly1305.c 85.if (${OPENSSL:L} == "yes") 86SRCS_KEY+= ssh-ecdsa.c 87SRCS_KEY+= ssh-ecdsa-sk.c 88SRCS_KEY+= ssh-rsa.c 89.if (${DSAKEY:L} == "yes") 90SRCS_KEY+= ssh-dss.c 91.endif 92SRCS_KEY+= sshbuf-getput-crypto.c 93SRCS_KEY+= digest-openssl.c 94SRCS_KEY+= cipher-chachapoly-libcrypto.c 95.else 96SRCS_KEY+= cipher-aesctr.c 97SRCS_KEY+= rijndael.c 98SRCS_KEY+= digest-libc.c 99SRCS_KEY+= cipher-chachapoly.c 100.endif 101SRCS_KEY+= ssh-ed25519.c 102SRCS_KEY+= ssh-ed25519-sk.c 103# ed25519, from supercop 104SRCS_KEY+= ed25519.c 105SRCS_KEY+= hash.c 106 107SRCS_KEYP+= authfile.c 108SRCS_KEYP+= sshbuf-io.c 109SRCS_KEYP+= atomicio.c 110 111SRCS_KRL+= bitmap.c 112SRCS_KRL+= krl.c 113 114SRCS_MAC+= mac.c 115SRCS_MAC+= hmac.c 116SRCS_MAC+= umac.c 117SRCS_MAC+= umac128.c 118 119SRCS_PKT+= canohost.c 120SRCS_PKT+= dispatch.c 121SRCS_PKT+= kex.c 122SRCS_PKT+= kex-names.c 123SRCS_PKT+= packet.c 124SRCS_PKT+= ${SRCS_MAC} 125 126SRCS_PROT+= channels.c 127SRCS_PROT+= monitor_fdpass.c 128SRCS_PROT+= nchan.c 129SRCS_PROT+= ttymodes.c 130 131.if (${OPENSSL:L} == "yes") 132SRCS_PKCS11+= ssh-pkcs11.c 133SRCS_PKCS11_CLIENT+= ssh-pkcs11-client.c 134SRCS_MODULI+= moduli.c 135.else 136SRCS_PKCS11+= 137SRCS_PKCS11_CLIENT+= 138SRCS_MODULI+= 139.endif 140 141SRCS_SK= ssh-sk.c 142SRCS_SK+= sk-usbhid.c 143SRCS_SK_CLIENT= ssh-sk-client.c 144SRCS_SK_CLIENT+= msg.c 145 146WITH_XMSS?= no 147.if (${WITH_XMSS:L} == "yes") 148CFLAGS+= -DWITH_XMSS 149SRCS_KEY+= ssh-xmss.c 150SRCS_KEY+= sshkey-xmss.c 151SRCS_KEY+= xmss_commons.c 152SRCS_KEY+= xmss_fast.c 153SRCS_KEY+= xmss_hash.c 154SRCS_KEY+= xmss_hash_address.c 155SRCS_KEY+= xmss_wots.c 156.endif 157 158.include <bsd.obj.mk> 159