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