1# $OpenBSD: Makefile,v 1.85 2024/08/11 13:04:46 jsing Exp $ 2 3.include <bsd.own.mk> 4.ifndef NOMAN 5SUBDIR= man 6.endif 7 8PC_FILES=openssl.pc libssl.pc 9 10CLEANFILES=${PC_FILES} ${VERSION_SCRIPT} 11 12LIB= ssl 13 14CFLAGS+= -Wall -Wundef 15.if ${COMPILER_VERSION:L} == "clang" 16CFLAGS+= -Werror -Wshadow 17.endif 18CFLAGS+= -DLIBRESSL_INTERNAL 19 20CFLAGS+= -DLIBRESSL_NAMESPACE 21 22.ifdef TLS1_3_DEBUG 23CFLAGS+= -DTLS13_DEBUG 24.endif 25CFLAGS+= -I${.CURDIR} 26CFLAGS+= -I${.CURDIR}/../libcrypto 27CFLAGS+= -I${.CURDIR}/../libcrypto/arch/${MACHINE_CPU} 28CFLAGS+= -I${.CURDIR}/../libcrypto/hidden 29CFLAGS+= -I${.CURDIR}/../libcrypto/bio 30CFLAGS+= -I${.CURDIR}/hidden 31 32LDADD+= -L${BSDOBJDIR}/lib/libcrypto -lcrypto 33 34VERSION_SCRIPT= Symbols.map 35SYMBOL_LIST= ${.CURDIR}/Symbols.list 36 37SRCS= \ 38 bio_ssl.c \ 39 bs_ber.c \ 40 bs_cbb.c \ 41 bs_cbs.c \ 42 d1_both.c \ 43 d1_lib.c \ 44 d1_pkt.c \ 45 d1_srtp.c \ 46 pqueue.c \ 47 s3_cbc.c \ 48 s3_lib.c \ 49 ssl_asn1.c \ 50 ssl_both.c \ 51 ssl_cert.c \ 52 ssl_ciph.c \ 53 ssl_ciphers.c \ 54 ssl_clnt.c \ 55 ssl_err.c \ 56 ssl_init.c \ 57 ssl_kex.c \ 58 ssl_lib.c \ 59 ssl_methods.c \ 60 ssl_packet.c \ 61 ssl_pkt.c \ 62 ssl_rsa.c \ 63 ssl_seclevel.c \ 64 ssl_sess.c \ 65 ssl_sigalgs.c \ 66 ssl_srvr.c \ 67 ssl_stat.c \ 68 ssl_tlsext.c \ 69 ssl_transcript.c \ 70 ssl_txt.c \ 71 ssl_versions.c \ 72 t1_enc.c \ 73 t1_lib.c \ 74 tls12_key_schedule.c \ 75 tls12_lib.c \ 76 tls12_record_layer.c \ 77 tls13_client.c \ 78 tls13_error.c \ 79 tls13_handshake.c \ 80 tls13_handshake_msg.c \ 81 tls13_key_schedule.c \ 82 tls13_legacy.c \ 83 tls13_lib.c \ 84 tls13_quic.c \ 85 tls13_record.c \ 86 tls13_record_layer.c \ 87 tls13_server.c \ 88 tls_buffer.c \ 89 tls_content.c \ 90 tls_key_share.c \ 91 tls_lib.c 92 93HDRS= dtls1.h srtp.h ssl.h ssl3.h tls1.h 94 95.PATH: ${.CURDIR} 96 97includes: 98 @test -d ${DESTDIR}/usr/include/openssl || \ 99 mkdir ${DESTDIR}/usr/include/openssl 100 @cd ${.CURDIR}; for i in $(HDRS); do \ 101 j="cmp -s $$i ${DESTDIR}/usr/include/openssl/`basename $$i` || \ 102 ${INSTALL} ${INSTALL_COPY} -o ${BINOWN} -g ${BINGRP} -m 444 $$i\ 103 ${DESTDIR}/usr/include/openssl"; \ 104 echo $$j; \ 105 eval "$$j"; \ 106 done; 107 108${VERSION_SCRIPT}: ${SYMBOL_LIST} 109 { printf '{\n\tglobal:\n'; \ 110 sed '/^[._a-zA-Z]/s/$$/;/; s/^/ /' ${SYMBOL_LIST}; \ 111 printf '\n\tlocal:\n\t\t*;\n};\n'; } >$@.tmp && mv $@.tmp $@ 112 113.include <bsd.lib.mk> 114 115all: ${PC_FILES} 116${PC_FILES}: ${.CURDIR}/../libcrypto/opensslv.h 117 /bin/sh ${.CURDIR}/generate_pkgconfig.sh -c ${.CURDIR} -o ${.OBJDIR} 118 119beforeinstall: 120 nm -o lib${LIB}.a | egrep -w 'printf|fprintf' && \ 121 (echo please fix stdio usage in this library; false) || true 122.for p in ${PC_FILES} 123 ${INSTALL} ${INSTALL_COPY} -o root -g ${SHAREGRP} \ 124 -m ${SHAREMODE} ${.OBJDIR}/$p ${DESTDIR}/usr/lib/pkgconfig/ 125.endfor 126 127.include <bsd.subdir.mk> 128