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