pull-prototypes-to-head-20020821
[openafs.git] / src / libafs / MakefileProto.DARWIN.in
1 #/* Copyright (C) 1995, 1989 Transarc Corporation - All rights reserved */
2 # $Header$
3
4 # MakefileProto for Digital Unix systems
5 #
6 srcdir=@srcdir@
7 include @TOP_OBJDIR@/src/config/Makefile.config
8
9
10 # OS specific object files:
11 AFS_OS_OBJS = \
12         osi_misc.o \
13         osi_file.o \
14         osi_inode.o \
15         osi_groups.o \
16         osi_sleep.o \
17         osi_vm.o \
18         osi_vnodeops.o \
19         osi_module.o
20
21
22 #AFS_OS_NFSOBJS = osi_vfsops_nfs.o
23
24 AFS_OS_NONFSOBJS = osi_vfsops.o
25
26
27 # System specific build commands and flags
28 KDEFS=
29 DBUG = 
30 DEFINES= -D_KERNEL -DKERNEL -DKERNEL_PRIVATE -DDIAGNOSTIC -DUSE_SELECT -DMACH_USER_API -DMACH_KERNEL
31 KOPTS=-no-precomp -static -fno-common -finline -fno-keep-inline-functions -force_cpusubtype_ALL -msoft-float -mlong-branch 
32 CFLAGS=-I. -I.. -I${TOP_OBJDIR}/src/config ${KINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG} ${OPTMZ}
33 KINCLUDES=-I${KROOT}/System/Library/Frameworks/Kernel.Framework/Headers
34
35
36 # Name of directory to hold object files and libraries.
37 KOBJ = MODLOAD
38
39 # This tells Makefile.common to use it's single directory build target.
40 COMPDIRS = single_compdir
41 INSTDIRS = single_instdir
42 DESTDIRS = single_destdir
43
44 include Makefile.common
45
46 setup:
47         -mkdir $(KOBJ)
48         -$(RM) $(KOBJ)/Makefile $(KOBJ)/Makefile.common $(KOBJ)/config
49         ln -fs ../Makefile $(KOBJ)/Makefile
50         ln -fs ../Makefile.common $(KOBJ)/Makefile.common
51         ln -fs ../config $(KOBJ)/config
52         -$(RM) -f  h net netinet rpc ufs nfs  machine sys vm mach kern
53         -ln -fs $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/net net
54         -ln -fs $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/machine machine
55         -ln -fs $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/netinet netinet
56         -ln -fs $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/nfs nfs
57         -ln -fs /usr/include/rpc rpc
58         -ln -fs $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/sys sys
59         -ln -fs $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/ufs ufs
60         -ln -fs $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/sys h
61
62
63 # Below this line are targets when in the COMMON directory:
64 LIBAFS = libafs.o
65 LIBAFSNONFS = libafs.nonfs.o
66
67 INST_LIBAFS = ${DESTDIR}${afskerneldir}/afs-nfs.kext
68 INST_LIBAFSNONFS = ${DESTDIR}${afskerneldir}/afs.kext
69 DEST_LIBAFS = ${DEST}/root.client/usr/vice/etc/afs-nfs.kext
70 DEST_LIBAFSNONFS = ${DEST}/root.client/usr/vice/etc/afs.kext
71
72
73 libafs: $(LIBAFSNONFS) ;
74 install_libafs: $(LIBAFSNONFS) ;
75         -mkdir -p ${INST_LIBAFSNONFS}
76         -mkdir -p ${INST_LIBAFSNONFS}/Contents
77         $(INSTALL) -f ../${DARWIN_INFOFILE} ${INST_LIBAFSNONFS}/Contents/Info.plist
78         -mkdir -p ${INST_LIBAFSNONFS}/Contents/MacOS
79         $(INSTALL) -f ${LIBAFSNONFS} ${INST_LIBAFSNONFS}/Contents/MacOS/afs
80
81 dest_libafs: $(LIBAFSNONFS) ;
82         -mkdir -p ${DEST_LIBAFSNONFS}
83         -mkdir -p ${DEST_LIBAFSNONFS}/Contents
84         $(INSTALL) -f ../${DARWIN_INFOFILE} ${DEST_LIBAFSNONFS}/Contents/Info.plist
85         -mkdir -p ${DEST_LIBAFSNONFS}/Contents/MacOS
86         $(INSTALL) -f ${LIBAFSNONFS} ${DEST_LIBAFSNONFS}/Contents/MacOS/afs
87
88
89 ${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS)
90         $(LD) -r -o ${LIBAFS} ${AFSAOBJS} ${AFSNFSOBJS}
91
92 ${LIBAFSNONFS}:  $(AFSAOBJS) $(AFSNONFSOBJS)
93         $(LD) -r -o ${LIBAFSNONFS} ${AFSAOBJS} ${AFSNONFSOBJS}
94
95
96 # Object build rules:
97 osi_groups.o: $(AFS)/osi_groups.c
98         $(CRULE1)
99 osi_file.o: $(AFS)/osi_file.c
100         $(CRULE1)
101 osi_inode.o: $(AFS)/osi_inode.c
102         $(CRULE1)
103 osi_misc.o: $(AFS)/osi_misc.c
104         $(CRULE1)
105 osi_sleep.o: $(AFS)/osi_sleep.c
106         $(CRULE1)
107 osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c
108         $(CRULE1) -o osi_vfsops_nfs.o
109 osi_vfsops.o: $(AFS)/osi_vfsops.c
110         $(CRULE1) -DAFS_NONFSTRANS
111 osi_vm.o: $(AFS)/osi_vm.c
112         $(CRULE1)
113 osi_vnodeops.o: $(AFS)/osi_vnodeops.c
114         $(CRULE1)
115 osi_module.o: $(AFS)/osi_module.c
116         $(CRULE1)