X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/818c32a5b56fe2dc8927bcc450c21eb0784bf7d3..3e77fd016eb40c3536b714e2e0782a5063b60eb1:/usr/src/lib/libc/Makefile diff --git a/usr/src/lib/libc/Makefile b/usr/src/lib/libc/Makefile index 9eef3aceae..c027d0da50 100644 --- a/usr/src/lib/libc/Makefile +++ b/usr/src/lib/libc/Makefile @@ -1,66 +1,31 @@ +# @(#)Makefile 5.2 (Berkeley) %G% # -# Copyright (c) 1980 Regents of the University of California. -# All rights reserved. The Berkeley software License Agreement -# specifies the terms and conditions for redistribution. -# -# @(#)Makefile 4.10 (Berkeley) %G% -# -# The system has two monitoring schemes, utilizing either ``prof'' -# or ``gprof''. DFLMON determines the default profiler; mon.o -# specifies that ``prof'' is the default, gmon.o specifies that -# ``gprof'' is the default. -# -# Machine dependent routines are located in a subtree which parallels -# the top directories. This subtree is identified by the machine name. -# -# Compatibility routines are kept in directories with a prefixing -# ``compat'' (so they all sort together). -# -# The C run-time startup code is always machine dependent and expected -# to be located in ${MACHINE}/csu -# -DESTDIR= -INSTALL=install -m 644 -DFLMON= mon.o -MACHINE=vax -COMPAT= compat-4.1 compat-sys5 -ALL= gen inet net stdio ${MACHINE} ${COMPAT} -TAGSFILE=tags - -libc.a libc_p.a: ${MACHINE}/csu ${ALL} - -mkdir tmp - for i in ${ALL}; do (cd tmp; ar x ../$$i/$${i}lib); done - ls tmp/*.o | sort -t/ +1 > t1 - ar cr libc.a `lorder \`cat t1\` | tsort` ${MACHINE}/csu/${DFLMON} - ar ma findiop.o libc.a exit.o - ar ma exit.o libc.a fakcu.o - rm -f t1 tmp/* - for i in ${ALL}; do (cd tmp; ar x ../$$i/$${i}lib_p); done - ls tmp/*.o | sort -t/ +1 > t1 - ar cr libc_p.a `lorder \`cat t1\` | tsort` ${MACHINE}/csu/${DFLMON} - ar ma findiop.o libc_p.a exit.o - ar ma exit.o libc_p.a fakcu.o - rm -rf t1 tmp - -${MACHINE}/csu ${ALL}: FRC - cd $@; make ${MFLAGS} +# All library objects contain sccsid strings by default; they may be +# excluded as a space-saving measure. To produce a library that does +# not contain these strings, delete -DLIBC_SCCS and -DSYSLIBC_SCCS +# from CFLAGS below. To remove these strings from just the system call +# stubs, remove just -DSYSLIBC_SCCS from CFLAGS. +LIB=c +CFLAGS+=-DLIBC_SCCS -DSYSLIBC_SCCS +AINC= -I${.CURDIR}/${MACHINE} -FRC: +.include "${.CURDIR}/compat-43/Makefile.inc" +.include "${.CURDIR}/db/Makefile.inc" +.include "${.CURDIR}/gen/Makefile.inc" +.include "${.CURDIR}/locale/Makefile.inc" +.include "${.CURDIR}/net/Makefile.inc" +.include "${.CURDIR}/stdio/Makefile.inc" +.include "${.CURDIR}/stdlib/Makefile.inc" +.include "${.CURDIR}/string/Makefile.inc" +.include "${.CURDIR}/sys/Makefile.inc" -install: - ${INSTALL} libc.a ${DESTDIR}/lib/libc.a - ranlib ${DESTDIR}/lib/libc.a - ${INSTALL} libc_p.a ${DESTDIR}/usr/lib/libc_p.a - ranlib ${DESTDIR}/usr/lib/libc_p.a - cd ${MACHINE}/csu; make DESTDIR=${DESTDIR} install +beforeinstall: tags + install -c -o bin -g bin -m 444 ${.CURDIR}/tags /var/db/libc.tags -tags: - for i in ${ALL}; do \ - (cd $$i; make ${MFLAGS} TAGSFILE=../${TAGSFILE} tags); \ - done - sort -u +0 -1 tags -o tags +tags: ${SRCS} + cd ${.CURDIR}; ctags ${.ALLSRC:M*.c} + cd ${.CURDIR}; egrep -o "^ENTRY(.*)|^SYSCALL(.*)" ${.ALLSRC:M*.s} | \ + sed "s;\([^:]*\):\([^(]*\)(\([^, )]*\)\(.*\);\3 \1 /^\2(\3\4$$/;" \ + >> tags; sort -o tags tags -clean: - for i in ${MACHINE}/csu ${ALL}; do (cd $$i; make ${MFLAGS} clean); done - rm -f t1 tmp/*.o - -rmdir tmp +.include