libuafs-build-juafs-everywhere-20020702
[openafs.git] / src / libuafs / MakefileProto.AIX.in
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
4 # This software has been released under the terms of the IBM Public
5 # License.  For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
7
8 srcdir=@srcdir@
9 include @TOP_OBJDIR@/src/config/Makefile.config
10
11
12
13 # System specific build commands and flags
14 DEFINES= -DKERNEL -DUKERNEL
15 CFLAGS=-I. -I.. -I${TOP_OBJDIR}/src/config ${FSINCLUDES} $(DEFINES) $(KOPTS) ${DBUG}
16 AR = /usr/bin/ar
17 ARFLAGS = -r
18 RANLIB = /bin/ranlib
19 CC = xlc_r
20 DEF_LIBPATH=/usr/lib/threads:/usr/lib:/lib
21 EXPFILE=../nsafslib.exp 
22 LD_FLAGS=-bM:SRE -bE:$(EXPFILE) -berok -bnoentry -blibpath:$(DEF_LIBPATH)
23
24 TEST_CFLAGS=-DAFS_PTHREAD_ENV -Daix -DAFS_AIX_ENV
25 TEST_LDFLAGS=
26 TEST_LIBS=-lm -lpthreads
27
28 LIBUAFS = libuafs.a
29 LIBJUAFS = libjuafs.a
30 LIBAFSWEB = nsafs.a
31 LIBAFSWEBKRB = nsafs.krb.a
32
33 OPTF=-O
34 WEBOPTS = -I../nsapi -qarch=com -DNETSCAPE_NSAPI -DAIX -DNET_SSL -DXP_UNIX -DMCC_HTTPD
35
36 include Makefile.common
37
38 setup_common:
39         -$(RM) -f  h net netinet rpc ufs nfs  machine sys inet nsapi
40         -ln -s /usr/include/sys h
41         -ln -s /usr/include/net net
42         -ln -s /usr/include/netinet netinet
43         -ln -s /usr/include/rpc rpc
44         -ln -s /usr/include/sys sys
45         -ln -s /usr/include/nfs nfs
46         -ln -s /usr/include/inet inet
47         -ln -s /usr/include/ufs ufs
48         -ln -s $(NS_INCL) nsapi
49
50 setup_uafs: UAFS setup_common
51         -$(RM) -f UAFS/Makefile UAFS/Makefile.common
52         ln -s ../Makefile UAFS/Makefile
53         ln -s ../Makefile.common UAFS/Makefile.common
54
55 setup_juafs: JUAFS setup_common
56         -$(RM) -f JUAFS/Makefile JUAFS/Makefile.common
57         ln -s ../Makefile JUAFS/Makefile
58         ln -s ../Makefile.common JUAFS/Makefile.common
59
60 UAFS:
61         mkdir -p $@
62
63 JUAFS:
64         mkdir -p $@
65
66 setup_nsafs: AFSWEB setup_common
67         -$(RM) -f AFSWEB/Makefile AFSWEB/Makefile.common
68         ln -s ../Makefile AFSWEB/Makefile
69         ln -s ../Makefile.common AFSWEB/Makefile.common
70
71 AFSWEB:
72         mkdir -p $@
73
74 UAFS/$(LIBUAFS): setup_uafs
75         cd UAFS; \
76         $(MAKE) $(LIBUAFS) LIBJUAFS_FLAGS=
77
78 JUAFS/$(LIBJUAFS): setup_juafs
79         cd JUAFS; \
80         $(MAKE) $(LIBJUAFS) LIBJUAFS_FLAGS=-DAFS_WEB_ENHANCEMENTS
81
82 AFSWEB/$(LIBAFSWEB): setup_nsafs
83         cd AFSWEB; \
84         $(MAKE) $(LIBAFSWEB)
85
86 AFSWEB/$(LIBAFSWEBKRB): setup_nsafs
87         cd AFSWEB; \
88         $(MAKE) $(LIBAFSWEBKRB)
89
90 # Below this line are targets when in the COMMON directory:
91
92 $(LIBUAFS): $(UAFSOBJ)
93         -$(RM) -f $(LIBUAFS)
94         $(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ) $(AFS)/afsl.exp
95         $(RANLIB) libuafs.a
96
97 $(LIBJUAFS): $(JUAFSOBJ)
98         -$(RM) -f $(LIBJUAFS)
99         $(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ) $(AFS)/afsl.exp
100         $(RANLIB) libjuafs.a
101
102 $(LIBAFSWEB): $(AFSWEBOBJ) ${DES}/libdes.a ${DESTDIR}/lib/afs/libsys.a
103         -$(RM) -f $(LIBAFSWEB)
104         ld -o $(LIBAFSWEB) $(LD_FLAGS) $(AFSWEBOBJ) ${DES}/libdes.a ${DESTDIR}/lib/afs/libsys.a -lm -lc
105
106 ##
107 ## Use Kerberos authentication instead of kaservers
108 ##
109 $(LIBAFSWEBKRB): $(AFSWEBOBJKRB) ${DES}/libdes.a ${DESTDIR}/lib/afs/libsys.a 
110         -$(RM) -f $(LIBAFSWEBKRB)
111         ld -o $(LIBAFSWEBKRB) $(LD_FLAGS) $(AFSWEBOBJKRB) ${DES}/libdes.a ${DESTDIR}/lib/afs/libsys.a -lm -lc