67e3c39088225584536f4da0ff958066f75ec413
[openafs.git] / src / libafs / MakefileProto.FBSD.in
1 #/* Copyright (C) 1995, 1989 Transarc Corporation - All rights reserved */
2 #
3 # MakefileProto for FreeBSD systems
4 #
5 DEST=@DEST@
6 TOP_INCDIR=@TOP_INCDIR@
7 TOP_LIBDIR=@TOP_LIBDIR@
8 TOP_SRCDIR=@TOP_SRCDIR@
9 prefix=@prefix@
10 exec_prefix=@exec_prefix@
11 bindir=@bindir@
12 sbindir=@sbindir@
13 libexecdir=@libexecdir@
14 libdir=@libdir@
15 includedir=@includedir@
16 mandir=@mandir@
17 afssrvbindir=@afssrvbindir@
18 afssrvsbindir=@afssrvsbindir@
19 afssrvlibexecdir=@afssrvlibexecdir@
20 afskerneldir=@afskerneldir@
21 SYS_NAME=@AFS_SYSNAME@
22
23 # include config/Makefile.${SYS_NAME}
24
25 # OS specific object files:
26 AFS_OS_OBJS = \
27         osi_groups.o \
28         osi_file.o \
29         osi_inode.o \
30         osi_misc.o \
31         osi_sleep.o \
32         osi_vm.o \
33         osi_vnodeops.o \
34         xdr_int64.o
35
36 AFS_OS_NFSOBJS = \
37         osi_vfsops_nfs.o
38
39 AFS_OS_NONFSOBJS = \
40         osi_vfsops.o
41
42
43 # System specific build commands and flags
44 # KDEFS=-DLANGUAGE_C  -I/usr/sys/include -I../include \
45 #        -I/usr/src/sys/${HEADER_RT} -I/usr/src/sys/sys \
46 #       -DSWAPTYPE=1 -DUERF -DOSF -DCOMPAT_43 -DUFS \
47 #       -DRT -DKERNEL -D_KERNEL
48 KDEFS=-Wall -fformat-extensions -ansi -nostdinc -I/usr/include -D_KERNEL \
49         -elf -mpreferred-stack-boundary=2 -I/usr/src/sys/sys -I../afs
50 DBUG = -O2
51 DEFINES= -DAFSDEBUG -DKERNEL -DAFS -DVICE -DNFS -DUFS -DINET -DQUOTA -DGETMOUNT
52 OPTF=${OPT} 
53 OPTF2=${OPT2} 
54 CFLAGS=-I. -I.. -I${TOP_SRCDIR}/config ${FSINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG}
55
56
57 # Name of directory to hold object files and libraries.
58 KOBJ = STATIC
59
60 # This tells Makefile.common to use it's single directory build target.
61 COMPDIRS = single_compdir
62 INSTDIRS = single_instdir
63 DESTDIRS = single_destdir
64
65 include Makefile.common
66
67 setup:
68         -mkdir $(KOBJ)
69         -$(RM) $(KOBJ)/Makefile $(KOBJ)/Makefile.common $(KOBJ)/config
70         ln -s ../Makefile $(KOBJ)/Makefile
71         ln -s ../Makefile.common $(KOBJ)/Makefile.common
72         ln -s ../config $(KOBJ)/config
73         -$(RM) -f  h net netinet rpc ufs nfs  machine sys vm
74         -ln -s /usr/src/sys/net net
75         -ln -s /usr/src/sys/i386/include machine
76         -ln -s /usr/src/sys/netinet netinet
77         -ln -s /usr/src/sys/nfs nfs
78         -ln -s /usr/include/rpc rpc
79         -ln -s /usr/src/sys/sys sys
80         -ln -s /usr/src/sys/ufs/ufs ufs
81         -ln -s /usr/src/sys/sys h
82         -ln -s /usr/src/sys/vm vm
83         -touch $(KOBJ)/sec_net.h
84
85
86 # Below this line are targets when in the COMMON directory:
87 LIBAFS = libafs.o
88 LIBAFSNONFS = libafs.nonfs.o
89
90 INST_LIBAFS ${DESTDIR}${afskerneldir}/${LIBAFS}
91 INST_LIBAFSNONFS = ${DESTDIR}${afskerneldir}/${LIBAFSNONFS}
92
93 DEST_LIBAFS = ${DEST}/root.client/bin/${LIBAFS}
94 DEST_LIBAFSNONFS = ${DEST}/root.client/bin/${LIBAFSNONFS}
95
96
97 # libafs:       $(LIBAFS) $(LIBAFSNONFS)
98 # libafs:       $(LIBAFSNONFS)
99 # install_libafs:       $(INST_LIBAFS) $(INST_LIBAFSNONFS)
100 # install_libafs:       $(INST_LIBAFSNONFS)
101 # dest_libafs:  $(DEST_LIBAFS) $(DEST_LIBAFSNONFS)
102 # dest_libafs:  $(DEST_LIBAFSNONFS)
103 libafs:
104         echo WARNING: No kernel module for ${SYS_NAME}
105
106 install_libafs:
107         echo WARNING: No kernel module for ${SYS_NAME}
108
109 dest_libafs:
110         echo WARNING: No kernel module for ${SYS_NAME}
111
112
113 $(INST_LIBAFS): $(LIBAFS)
114         $(INSTALL) -f $? $@
115
116 $(INST_LIBAFSNONFS): $(LIBAFSNONFS)
117         $(INSTALL) -f $? $@
118
119 $(DEST_LIBAFS): $(LIBAFS)
120         $(INSTALL) -f $? $@
121
122 $(DEST_LIBAFSNONFS): $(LIBAFSNONFS)
123         $(INSTALL) -f $? $@
124
125 ${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS)
126         $(LD) -r -o ${LIBAFS} ${AFSAOBJS} ${AFSNFSOBJS}
127
128 ${LIBAFSNONFS}:  $(AFSAOBJS) $(AFSNONFSOBJS)
129         $(LD) -r -o ${LIBAFSNONFS} ${AFSAOBJS} ${AFSNONFSOBJS}
130
131
132 # Object build rules:
133 osi_groups.o: $(AFS)/osi_groups.c
134         $(CRULE1)
135 osi_file.o: $(AFS)/osi_file.c
136         $(CRULE1)
137 osi_inode.o: $(AFS)/osi_inode.c
138         $(CRULE1)
139 osi_misc.o: $(AFS)/osi_misc.c
140         $(CRULE1)
141 osi_sleep.o: $(AFS)/osi_sleep.c
142         $(CRULE1)
143 osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c
144         $(CRULE1) -o osi_vfsops_nfs.o
145 osi_vfsops.o: $(AFS)/osi_vfsops.c
146         $(CRULE1) -DAFS_NONFSTRANS
147 osi_vm.o: $(AFS)/osi_vm.c
148         $(CRULE1)
149 osi_vnodeops.o: $(AFS)/osi_vnodeops.c
150         $(CRULE1)
151 xdr_int64.o: $(RX)/xdr_int64.c
152         $(CRULE1)