initial-freebsd-port-work-20010414
[openafs.git] / src / libafs / MakefileProto.FBSD
1 #/* Copyright (C) 1995, 1989 Transarc Corporation - All rights reserved */
2 #
3 # MakefileProto for Digital Unix systems
4 #
5
6 DESTDIR=DEST/
7 # include $(DESTDIR)/../obj/config/Makefile.${SYS_NAME}
8
9
10 # OS specific object files:
11 AFS_OS_OBJS = \
12         osi_groups.o \
13         osi_file.o \
14         osi_inode.o \
15         osi_misc.o \
16         osi_sleep.o \
17         osi_vm.o \
18         osi_vnodeops.o 
19
20 AFS_OS_NFSOBJS = \
21         osi_vfsops_nfs.o
22
23 AFS_OS_NONFSOBJS = \
24         osi_vfsops.o
25
26
27 # System specific build commands and flags
28 # KDEFS=-DLANGUAGE_C  -I/usr/sys/include -I../include \
29 #        -I/usr/src/sys/${HEADER_RT} -I/usr/src/sys/sys \
30 #       -DSWAPTYPE=1 -DUERF -DOSF -DCOMPAT_43 -DUFS \
31 #       -DRT -DKERNEL -D_KERNEL
32 KDEFS=-Wall -fformat-extensions -ansi -nostdinc -I/usr/include -D_KERNEL \
33         -elf -mpreferred-stack-boundary=2 -I/usr/src/sys/sys -I../afs
34 DBUG = -O2
35 DEFINES= -DAFSDEBUG -DKERNEL -DAFS -DVICE -DNFS -DUFS -DINET -DQUOTA -DGETMOUNT
36 OPTF=${OPT} 
37 OPTF2=${OPT2} 
38 CFLAGS=-I. -I.. ${FSINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG}
39
40
41 # Name of directory to hold object files and libraries.
42 KOBJ = STATIC
43
44 # This tells Makefile.common to use it's single directory build target.
45 COMPDIRS = single_compdir
46
47 include Makefile.common
48
49 setup:
50         -mkdir $(KOBJ)
51         -rm $(KOBJ)/Makefile $(KOBJ)/Makefile.common
52         ln -s ../Makefile $(KOBJ)/Makefile
53         ln -s ../Makefile.common $(KOBJ)/Makefile.common
54         -rm -f  h net netinet rpc ufs nfs  machine sys vm
55         -ln -s /usr/src/sys/net net
56         -ln -s /usr/src/sys/i386/include machine
57         -ln -s /usr/src/sys/netinet netinet
58         -ln -s /usr/src/sys/nfs nfs
59         -ln -s /usr/include/rpc rpc
60         -ln -s /usr/src/sys/sys sys
61         -ln -s /usr/src/sys/ufs/ufs ufs
62         -ln -s /usr/src/sys/sys h
63         -ln -s /usr/src/sys/vm vm
64         -touch $(KOBJ)/sec_net.h
65
66
67 # Below this line are targets when in the COMMON directory:
68 LIBAFS = libafs.o
69 LIBAFSNONFS = libafs.nonfs.o
70
71 DEST_LIBAFS = ${DESTDIR}/root.client/bin/${LIBAFS}
72 DEST_LIBAFSNONFS = ${DESTDIR}/root.client/bin/${LIBAFSNONFS}
73
74
75 # libafs:       $(DEST_LIBAFS) $(DEST_LIBAFSNONFS)
76 # libafs:       $(DEST_LIBAFSNONFS)
77 libafs:
78         echo WARNING: No kernel module for ${SYS_NAME}
79
80
81 $(DEST_LIBAFS): $(LIBAFS)
82         $(INSTALL) -f $? $@
83
84 $(DEST_LIBAFSNONFS): $(LIBAFSNONFS)
85         $(INSTALL) -f $? $@
86
87 ${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS)
88         $(LD) -r -o ${LIBAFS} ${AFSAOBJS} ${AFSNFSOBJS}
89
90 ${LIBAFSNONFS}:  $(AFSAOBJS) $(AFSNONFSOBJS)
91         $(LD) -r -o ${LIBAFSNONFS} ${AFSAOBJS} ${AFSNONFSOBJS}
92
93
94 # Object build rules:
95 osi_groups.o: $(AFS)/osi_groups.c
96         $(CRULE1)
97 osi_file.o: $(AFS)/osi_file.c
98         $(CRULE1)
99 osi_inode.o: $(AFS)/osi_inode.c
100         $(CRULE1)
101 osi_misc.o: $(AFS)/osi_misc.c
102         $(CRULE1)
103 osi_sleep.o: $(AFS)/osi_sleep.c
104         $(CRULE1)
105 osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c
106         $(CRULE1) -o osi_vfsops_nfs.o
107 osi_vfsops.o: $(AFS)/osi_vfsops.c
108         $(CRULE1) -DAFS_NONFSTRANS
109 osi_vm.o: $(AFS)/osi_vm.c
110         $(CRULE1)
111 osi_vnodeops.o: $(AFS)/osi_vnodeops.c
112         $(CRULE1)