42ec8e9307e70658b16366a05c98a70857c64a51
[openafs.git] / src / libuafs / MakefileProto.DUX.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 # System specific build commands and flags
12 DEFINES=-DKERNEL -DUKERNEL -D_NO_PROTO -DOSF
13 KOPTS=
14 DBUG=
15 OPTF=-O
16 CFLAGS=-I. -I.. -I${TOP_OBJDIR}/src/config ${FSINCLUDES} $(DEFINES) $(KOPTS) ${DBUG} -pthread
17 WEBOPTS = -I../nsapi -DNETSCAPE_NSAPI -DNET_SSL -DXP_UNIX -DMCC_HTTPD
18
19 TEST_CFLAGS=-pthread -D_NO_PROTO -D_REENTRANT -DAFS_PTHREAD_ENV -Dosf -DAFS_OSF_ENV -DOSF
20 TEST_LDFLAGS=-pthread
21 TEST_LIBS=-lm
22
23 LIBUAFS = libuafs.a
24 LIBJUAFS = libjuafs.a
25 LIBAFSWEB = nsafs.so
26 LIBAFSWEBKRB = nsafs.krb.so
27
28 include Makefile.common
29
30 setup_common:
31         -$(RM) -f  h net netinet rpc ufs nfs  machine sys inet nsapi
32         -ln -s /usr/include/sys h
33         -ln -s /usr/include/net net
34         -ln -s /usr/include/netinet netinet
35         -ln -s /usr/include/rpc rpc
36         -ln -s /usr/include/sys sys
37         -ln -s /usr/include/nfs nfs
38         -ln -s /usr/include/inet inet
39         -ln -s /usr/include/ufs ufs
40         -ln -s $(NS_INCL) nsapi
41
42 setup_uafs: UAFS setup_common
43         -$(RM) -f UAFS/Makefile UAFS/Makefile.common
44         ln -s ../Makefile UAFS/Makefile
45         ln -s ../Makefile.common UAFS/Makefile.common
46
47 UAFS:
48         mkdir -p $@
49
50 JUAFS:
51         mkdir -p $@
52
53 setup_nsafs: AFSWEB setup_common
54         -$(RM) -f AFSWEB/Makefile AFSWEB/Makefile.common
55         ln -s ../Makefile AFSWEB/Makefile
56         ln -s ../Makefile.common AFSWEB/Makefile.common
57
58 setup_juafs: JUAFS setup_common
59         -$(RM) -f JUAFS/Makefile JUAFS/Makefile.common
60         ln -s ../Makefile JUAFS/Makefile
61         ln -s ../Makefile.common JUAFS/Makefile.common
62
63 AFSWEB: 
64         mkdir -p $@
65
66 UAFS/$(LIBUAFS): setup_uafs
67         cd UAFS; \
68         $(MAKE) $(LIBUAFS) LIBJUAFS_FLAGS=
69
70 JUAFS/$(LIBJUAFS): setup_juafs
71         cd JUAFS; \
72         $(MAKE) $(LIBJUAFS) DESTDIR=${DESTDIR} LIBJUAFS_FLAGS=-DAFS_WEB_ENHANCEMENTS
73
74 AFSWEB/$(LIBAFSWEB): setup_nsafs
75         cd AFSWEB; \
76         $(MAKE) $(LIBAFSWEB)
77
78 AFSWEB/$(LIBAFSWEBKRB): setup_nsafs
79         cd AFSWEB; \
80         $(MAKE) $(LIBAFSWEBKRB)
81
82 # Below this line are targets when in the COMMON directory:
83
84 $(LIBUAFS): $(UAFSOBJ)
85         -$(RM) -f $(LIBUAFS)
86         $(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
87         ranlib $(LIBUAFS)
88
89 $(LIBJUAFS): $(JUAFSOBJ)
90         -$(RM) -f $(LIBJUAFS)
91         $(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)
92         ranlib $(LIBJUAFS)
93
94 $(LIBAFSWEB): $(AFSWEBOBJ) ${DES}/libdes.a
95         -$(RM) -f $(LIBAFSWEB)
96         ld -all -shared -expect_unresolved "*" $(LIBAFSWEB) $(AFSWEBOBJ) ${DES}/libdes.a $(WEBLIBS)
97
98 $(LIBAFSWEBKRB): $(AFSWEBOBJKRB) ${DES}/libdes.a
99         -$(RM) -f $(LIBAFSWEBKRB)
100         ld -all -shared -expect_unresolved "*" $(LIBAFSWEBKRB) $(AFSWEBOBJKRB) ${DES}/libdes.a $(WEBLIBS)