]> CyberLeo.Net >> Repos - FreeBSD/releng/8.1.git/blob - sys/kern/Makefile
Copy stable/8 to releng/8.1 in preparation for 8.1-RC1.
[FreeBSD/releng/8.1.git] / sys / kern / Makefile
1 #       @(#)Makefile    8.2 (Berkeley) 3/21/94
2 # $FreeBSD$
3
4 # Makefile for kernel tags files, init_sysent, etc.
5
6 ARCH=   i386 # luna68k news3400 pmax sparc tahoe vax
7
8 all:
9         @echo "make tags, make links or make sysent only"
10
11 sysent: init_sysent.c syscalls.c ../sys/syscall.h ../sys/syscall.mk \
12 ../sys/sysproto.h
13
14 init_sysent.c syscalls.c systrace_args.c ../sys/syscall.h \
15 ../sys/syscall.mk ../sys/sysproto.h: makesyscalls.sh syscalls.master
16         -mv -f init_sysent.c init_sysent.c.bak
17         -mv -f syscalls.c syscalls.c.bak
18         -mv -f systrace_args.c systrace_args.c.bak
19         -mv -f ../sys/syscall.h ../sys/syscall.h.bak
20         -mv -f ../sys/syscall.mk ../sys/syscall.mk.bak
21         -mv -f ../sys/sysproto.h ../sys/sysproto.h.bak
22         sh makesyscalls.sh syscalls.master
23
24 # Kernel tags:
25 # Tags files are built in the top-level directory for each architecture,
26 # with a makefile listing the architecture-dependent files, etc.  The list
27 # of common files is in ./Make.tags.inc.  Links to the correct tags file
28 # are placed in each source directory.  We need to have links to tags files
29 # from the generic directories that are relative to the machine type, even
30 # via remote mounts; therefore we use symlinks to $SYSTAGS, which points at
31 # ${SYSDIR}/${MACHINE_ARCH}/tags.
32
33 SYSTAGS=/var/db/sys_tags
34 SYSDIR=/sys
35
36 # Directories in which to place tags links (other than machine-dependent)
37 DGEN=   conf \
38         dev dev/scsi \
39         fs fs/deadfs fs/fdescfs fs/fifofs \
40         fs/lofs fs/nullfs fs/portalfs fs/procfs \
41         fs/specfs fs/unionfs \
42         hp hp/dev hp/hpux \
43         kern libkern \
44         net netinet nfs scripts sys \
45         ufs ufs/ffs ufs/lfs ufs/ufs \
46         vm
47
48 tags::
49         -for i in ${ARCH}; do \
50             (cd ../$$i && make ${MFLAGS} tags); done
51
52 links::
53         rm -f ${SYSTAGS}
54         ln -s ${SYSDIR}/${MACHINE_ARCH}/tags ${SYSTAGS}
55         -for i in ${DGEN}; do \
56             (cd ../$$i && { rm -f tags; ln -s ${SYSTAGS} tags; }) done
57         -for i in ${ARCH}; do \
58             (cd ../$$i && make ${MFLAGS} SYSTAGS=${SYSTAGS} links); done