NetBSD/rescue/Makefile

84 lines
1.9 KiB
Makefile
Raw Normal View History

Remove MKCRYPTO option. Originally, MKCRYPTO was introduced because the United States classified cryptography as a munition and restricted its export. The export controls were substantially relaxed fifteen years ago, and are essentially irrelevant for software with published source code. In the intervening time, nobody bothered to remove the option after its motivation -- the US export restriction -- was eliminated. I'm not aware of any other operating system that has a similar option; I expect it is mainly out of apathy for churn that we still have it. Today, cryptography is an essential part of modern computing -- you can't use the internet responsibly without cryptography. The position of the TNF board of directors is that TNF makes no representation that MKCRYPTO=no satisfies any country's cryptography regulations. My personal position is that the availability of cryptography is a basic human right; that any local laws restricting it to a privileged few are fundamentally immoral; and that it is wrong for developers to spend effort crippling cryptography to work around such laws. As proposed on tech-crypto, tech-security, and tech-userlevel to no objections: https://mail-index.netbsd.org/tech-crypto/2017/05/06/msg000719.html https://mail-index.netbsd.org/tech-security/2017/05/06/msg000928.html https://mail-index.netbsd.org/tech-userlevel/2017/05/06/msg010547.html P.S. Reviewing all the uses of MKCRYPTO in src revealed a lot of *bad* crypto that was conditional on it, e.g. DES in telnet... That should probably be removed too, but on the grounds that it is bad, not on the grounds that it is (nominally) crypto.
2017-05-21 18:28:36 +03:00
# $NetBSD: Makefile,v 1.32 2017/05/21 15:28:41 riastradh Exp $
.include <bsd.own.mk>
.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
WARNS= 1
# XXX
.if ${MACHINE_ARCH} != "m68000"
DBG+= -Os
.endif
CRUNCHGEN_FLAGS=-d "${DBG}"
RESCUEDIR= /rescue
CRUNCHBIN= rescue
CRUNCHENV= RESCUEDIR=${RESCUEDIR}
2002-10-17 05:49:18 +04:00
SMALLPROG= 0
LISTS= ${.CURDIR}/list
TARGETDIR= ${DESTDIR}/rescue
PARSELISTENV+= TARGETDIR=${TARGETDIR:Q}
.for f in ldconfig
PROG_${f}!= cd ${NETBSDSRCDIR}/sbin/${f} && ${MAKE} -V PROG
.if (${PROG_${f}} != "")
LISTS+= ${.CURDIR}/list.${f}
.endif
.endfor
.for f in pdisk
2013-03-24 21:05:27 +04:00
PROG_${f}!= cd ${NETBSDSRCDIR}/external/bsd/${f}/bin && ${MAKE} -V PROG
.if (${PROG_${f}} != "")
LISTS+= ${.CURDIR}/list.${f}
.endif
.endfor
.if ${USE_INET6} != "no"
LISTS+= ${.CURDIR}/list.inet6
.endif
LISTS+= ${.CURDIR}/list.crypto
CRUNCHENV+= MKKERBEROS=no # for ssh
LISTS+= ${.CURDIR}/list.ldd
LDD_ELF32DIR!= cd ${NETBSDSRCDIR}/usr.bin/ldd/elf32 && ${PRINTOBJDIR}
LDD_ELF64DIR!= cd ${NETBSDSRCDIR}/usr.bin/ldd/elf64 && ${PRINTOBJDIR}
PARSELISTENV+= LDD_ELF32DIR=${LDD_ELF32DIR} LDD_ELF64DIR=${LDD_ELF64DIR}
2013-12-26 06:25:57 +04:00
SMB_LIBDIR!= cd ${NETBSDSRCDIR}/external/bsd/smbfs/lib/libsmb && ${PRINTOBJDIR}
PARSELISTENV+= SMB_LIBDIR=${SMB_LIBDIR}
# Specially built objects to override the behaviour of
# various library functions
#
OVERRIDEOBJS= rcmd.o
.PATH: ${NETBSDSRCDIR}/lib/libc/net
CPPFLAGS.rcmd.c+=-I${NETBSDSRCDIR}/lib/libc/include -DRESCUEDIR=\"${RESCUEDIR}\"
LIBOVERRIDE= liboverride.o
${LIBOVERRIDE}: ${OVERRIDEOBJS}
2005-01-13 06:25:31 +03:00
${_MKTARGET_LINK}
${LD} -r -o $@ ${OVERRIDEOBJS}
2010-02-13 14:21:55 +03:00
CLEANFILES+= ${OVERRIDEOBJS} ${LIBOVERRIDE}
${CRUNCHBIN}: ${LIBOVERRIDE}
# The primary target ...
#
CLEANFILES+= rescue.unstripped
.include "${DISTRIBDIR}/common/Makefile.crunch"
2010-02-13 14:21:55 +03:00
realall: ${CRUNCHBIN}
install: ${CRUNCHBIN}
# XXX this MKMSG doesn't line up
2005-01-10 13:05:44 +03:00
${_MKMSG} "populate ${TARGETDIR}"
${PARSELIST} -v mode=install ${LISTS} | ${MAKE} -f - install
.include <bsd.prog.mk>