mirror of
https://github.com/opnsense/src.git
synced 2026-03-09 09:41:05 -04:00
According to /etc/mtree/BSD.root.dist /root should have 0750 permissions, but the build target 'make installworld' changes these to 0755. This is caused by the installation of the configuration files of sh(1) and csh(1). Correct this by specifying the correct default /root permissions. PR: 273342 Reviewed by: jilles Approved by: jilles MFC after: 2 weeks Differential Revision:https://reviews.freebsd.org/D42395 (cherry picked from commit a6ed8c9593031abf6fa73661be55c226caa362d6)
173 lines
5.4 KiB
Makefile
173 lines
5.4 KiB
Makefile
# @(#)Makefile 8.1 (Berkeley) 5/31/93
|
|
#
|
|
# C Shell with process control; VM/UNIX VAX Makefile
|
|
# Bill Joy UC Berkeley; Jim Kulp IIASA, Austria
|
|
#
|
|
# To profile, put -DPROF in DEFS and -pg in CFLAGS, and recompile.
|
|
|
|
.include <src.opts.mk>
|
|
|
|
PACKAGE= csh
|
|
|
|
CONFGROUPS= ETC ROOT
|
|
ETCPACKAGE= csh
|
|
ROOTPACKAGE= csh
|
|
ETC= csh.cshrc csh.login csh.logout
|
|
ROOT= dot.cshrc dot.login
|
|
ROOTDIR= /root
|
|
ROOTDIR_MODE= 0750
|
|
ROOTNAME_dot.cshrc= .cshrc
|
|
ROOTNAME_dot.login= .login
|
|
TCSHDIR= ${SRCTOP}/contrib/tcsh
|
|
.PATH: ${TCSHDIR}
|
|
|
|
PROG= csh
|
|
.if defined(RESCUE)
|
|
DFLAGS= -D_PATH_TCSHELL='"/rescue/${PROG}"'
|
|
.else
|
|
DFLAGS= -D_PATH_TCSHELL='"/bin/${PROG}"'
|
|
.endif
|
|
CFLAGS+= -I. -I${.CURDIR} -I${TCSHDIR} ${DFLAGS}
|
|
WARNS?= 1
|
|
SRCS= sh.c sh.dir.c sh.dol.c sh.err.c sh.exec.c sh.char.c \
|
|
sh.exp.c sh.file.c sh.func.c sh.glob.c sh.hist.c sh.init.c \
|
|
sh.lex.c sh.misc.c sh.parse.c sh.print.c sh.proc.c sh.sem.c \
|
|
sh.set.c sh.time.c sh.char.h sh.dir.h sh.proc.h sh.h
|
|
SRCS+= sh.decls.h glob.c glob.h mi.termios.c mi.wait.h mi.varargs.h
|
|
SRCS+= tw.decls.h tw.h tw.help.c tw.init.c tw.parse.c tw.spell.c \
|
|
tw.comp.c tw.color.c
|
|
SRCS+= ed.chared.c ed.decls.h ed.defns.c ed.h ed.init.c ed.inputl.c \
|
|
ed.refresh.c ed.screen.c ed.xmap.c ed.term.c ed.term.h
|
|
SRCS+= tc.alloc.c tc.bind.c tc.const.c tc.decls.h tc.disc.c \
|
|
tc.func.c tc.nls.c tc.os.c tc.os.h tc.printf.c tc.prompt.c \
|
|
tc.sched.c tc.sig.c tc.sig.h tc.str.c sh.types.h tc.vers.c tc.wait.h \
|
|
tc.who.c tc.h
|
|
SRCS+= dotlock.c dotlock.h
|
|
GENHDRS= ed.defns.h sh.err.h tc.const.h tc.defs.c
|
|
SRCS+= ${GENHDRS}
|
|
|
|
MLINKS= csh.1 tcsh.1
|
|
# MLINKS for Shell built in commands for which there are no userland
|
|
# utilities of the same name are handled with the associated manpage,
|
|
# builtin.1 in share/man/man1/.
|
|
|
|
LIBADD= termcapw crypt
|
|
|
|
LINKS= ${BINDIR}/csh ${BINDIR}/tcsh
|
|
|
|
CLEANFILES= ${GENHDRS} gethost csh.1
|
|
|
|
.if ${MK_EXAMPLES} != "no"
|
|
FILESDIR= ${SHAREDIR}/examples/tcsh
|
|
FILES= complete.tcsh csh-mode.el
|
|
.endif
|
|
|
|
CATALOGS= et:et_EE.UTF-8 \
|
|
finnish:fi_FI.UTF-8 \
|
|
french:fr_FR.UTF-8 \
|
|
german:de_DE.UTF-8 \
|
|
greek:el_GR.UTF-8 \
|
|
italian:it_IT.UTF-8 \
|
|
ja:ja_JP.UTF-8 \
|
|
russian:ru_RU.UTF-8 \
|
|
spanish:es_ES.UTF-8 \
|
|
ukrainian:uk_UA.UTF-8
|
|
|
|
NLSLINKS_de_DE.UTF-8 = de_AT.UTF-8 de_CH.UTF-8
|
|
NLSLINKS_fr_FR.UTF-8 = fr_BE.UTF-8 fr_CA.UTF-8 fr_CH.UTF-8
|
|
NLSLINKS_it_IT.UTF-8 = it_CH.UTF-8
|
|
|
|
.if ${MK_NLS_CATALOGS} == "no" || defined(RESCUE)
|
|
CFLAGS+= -DNO_NLS_CATALOGS
|
|
.else
|
|
CFLAGS+= -DHAVE_ICONV
|
|
.if ${MK_ICONV} != "no"
|
|
NLSLINKS_de_DE.UTF-8 += de_AT.ISO8859-1 de_AT.ISO8859-15 de_CH.ISO8859-1 \
|
|
de_CH.ISO8859-15 de_DE.ISO8859-1 de_DE.ISO8859-15
|
|
NLSLINKS_el_GR.UTF-8 = el_GR.ISO8859-7
|
|
NLSLINKS_es_ES.UTF-8 = es_ES.ISO8859-1 es_ES.ISO8859-15
|
|
NLSLINKS_et_EE.UTF-8 = et_EE.ISO8859-15
|
|
NLSLINKS_fi_FI.UTF-8 = fi_FI.ISO8859-1 fi_FI.ISO8859-15
|
|
NLSLINKS_fr_FR.UTF-8 += fr_BE.ISO8859-1 fr_BE.ISO8859-15 \
|
|
fr_CA.ISO8859-1 fr_CA.ISO8859-15 fr_CH.ISO8859-1 \
|
|
fr_CH.ISO8859-15 fr_FR.ISO8859-1 fr_FR.ISO8859-15
|
|
NLSLINKS_it_IT.UTF-8 += it_CH.ISO8859-1 it_CH.ISO8859-15 it_IT.ISO8859-1 \
|
|
it_IT.ISO8859-15
|
|
NLSLINKS_ja_JP.UTF-8 = ja_JP.SJIS ja_JP.eucJP
|
|
NLSLINKS_ru_RU.UTF-8 = ru_RU.CP1251 ru_RU.CP866 ru_RU.ISO8859-5 ru_RU.KOI8-R
|
|
NLSLINKS_uk_UA.UTF-8 = uk_UA.ISO8859-5 uk_UA.KOI8-U
|
|
.else
|
|
# Above links can be installed from ports/shells/tcsh_nls
|
|
|
|
GENHDRS+= iconv.h
|
|
SRCS+= iconv_stub.c
|
|
|
|
iconv.h: ${.CURDIR}/iconv_stub.h
|
|
${CP} ${.CURDIR}/iconv_stub.h ${.TARGET}
|
|
.endif
|
|
.endif
|
|
|
|
NLSNAME= tcsh
|
|
|
|
.for catalog in ${CATALOGS}
|
|
NLS+= ${catalog:C/.*://}
|
|
NLSSRCDIR_${catalog:C/.*://}= ${TCSHDIR}/nls/${catalog:C/:.*//}
|
|
NLSSRCFILES_${catalog:C/.*://}!= cd ${NLSSRCDIR_${catalog:C/.*://}}; echo charset set[0-9]*
|
|
.endfor
|
|
|
|
csh.1: tcsh.man
|
|
cat ${.ALLSRC} > ${.TARGET}
|
|
|
|
.if ${MACHINE} == "host" || ${MK_DIRDEPS_BUILD} == "no"
|
|
build-tools: gethost
|
|
tc.defs.c: gethost
|
|
|
|
DEPENDOBJS+= gethost
|
|
gethost: gethost.c sh.err.h tc.const.h sh.h ${BUILD_TOOLS_META}
|
|
@rm -f ${.TARGET}
|
|
${CC:N${CCACHE_BIN}} -o gethost ${LDFLAGS} ${CFLAGS:C/-DHAVE_ICONV//} \
|
|
${TCSHDIR}/gethost.c
|
|
.endif
|
|
|
|
tc.defs.c: ${TCSHDIR}/host.defs
|
|
@rm -f ${.TARGET}
|
|
@echo "/* Do not edit this file, make creates it */" > ${.TARGET}
|
|
${BTOOLSPATH:U.}/gethost ${TCSHDIR}/host.defs >> ${.TARGET}
|
|
|
|
ed.defns.h: ed.defns.c
|
|
@rm -f ${.TARGET}
|
|
@echo '/* Do not edit this file, make creates it. */' > ${.TARGET}
|
|
@echo '#ifndef _h_ed_defns' >> ${.TARGET}
|
|
@echo '#define _h_ed_defns' >> ${.TARGET}
|
|
grep '[FV]_' ${TCSHDIR}/ed.defns.c | grep '^#define' >> ${.TARGET}
|
|
@echo '#endif /* _h_ed_defns */' >> ${.TARGET}
|
|
|
|
sh.err.h: sh.err.c
|
|
@rm -f ${.TARGET}
|
|
@echo '/* Do not edit this file, make creates it. */' > ${.TARGET}
|
|
@echo '#ifndef _h_sh_err' >> ${.TARGET}
|
|
@echo '#define _h_sh_err' >> ${.TARGET}
|
|
grep 'ERR_' ${.ALLSRC} | grep '^#define' >> ${.TARGET}
|
|
@echo '#endif /* _h_sh_err */' >> ${.TARGET}
|
|
|
|
tc.const.h: tc.const.c sh.char.h config.h config_f.h sh.types.h sh.err.h ${BUILD_TOOLS_META}
|
|
@rm -f ${.TARGET}
|
|
@echo '/* Do not edit this file, make creates it. */' > ${.TARGET}
|
|
@echo '#ifndef _h_tc_const' >> ${.TARGET}
|
|
@echo '#define _h_tc_const' >> ${.TARGET}
|
|
${CC:N${CCACHE_BIN}} -E ${CFLAGS:C/-DHAVE_ICONV//} ${.ALLSRC} -D_h_tc_const | \
|
|
grep 'Char STR' | \
|
|
sed -e 's/Char \([a-zA-Z0-9_]*\)\(.*\)/extern Char \1[];/' | \
|
|
sort >> ${.TARGET}
|
|
@echo '#endif /* _h_tc_const */' >> ${.TARGET}
|
|
|
|
beforeinstallconfig:
|
|
rm -f ${DESTDIR}/.cshrc
|
|
|
|
afterinstallconfig:
|
|
# XXX Set link mode explicitly via -m. We cannot use LINKMODE for this
|
|
# link, as it would also apply to the tcsh link above.
|
|
${INSTALL_LINK} ${TAG_ARGS} -m ${CONFMODE} ${DESTDIR}/root/.cshrc \
|
|
${DESTDIR}/.cshrc
|
|
|
|
.include <bsd.prog.mk>
|