61aea37a804e06095d9c5161272b00336a442e9f
[openafs.git] / src / libuafs / MakefileProto.HPUX
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 HP-UX systems
9 #
10
11 include ../config/Makefile.${SYS_NAME}
12
13 MKDIR_IF_NEEDED=[ -d $$1 ] || mkdir -p $$1
14
15 # System specific build commands and flags
16 CC = /opt/ansic/bin/cc
17 DEFINES= -D_REENTRANT -DAFSDEBUG -DKERNEL -DUKERNEL -DAFS -DVICE
18 KOPTS=-Wp,-H200000 -Wl,-a,archive +DA1.0 +z
19 CFLAGS=-I. -I.. -I${TOP_SRCDIR}/config ${FSINCLUDES} $(DEFINES) $(KOPTS) ${DBUG}
20 OPTF=-O
21 WEBOPTS = -I../nsapi -DNETSCAPE_NSAPI -DNET_SSL -DXP_UNIX -DMCC_HTTPD
22
23 TEST_CFLAGS= -Wp,-H200000 +DA1.0 +z -D_POSIX_C_SOURCE=199506L -DAFS_PTHREAD_ENV -Dhpux -DAFS_HPUX_ENV
24 TEST_LDFLAGS=
25 TEST_LIBS=-lnsl -lm -lpthread -ldld -lc
26
27 LIBUAFS = libuafs.a
28 LIBAFSWEB = nsafs.so
29 LIBAFSWEBKRB = nsafs.krb.so
30
31 include Makefile.common
32
33 setup_common:
34         -rm -f  h net netinet rpc ufs nfs  machine sys inet nsapi
35         -ln -s /usr/include/sys h
36         -ln -s /usr/include/net net
37         -ln -s /usr/include/netinet netinet
38         -ln -s /usr/include/rpc rpc
39         -ln -s /usr/include/sys sys
40         -ln -s /usr/include/nfs nfs
41         -ln -s /usr/include/inet inet
42         -ln -s /usr/include/ufs ufs
43         -ln -s $(NS_INCL) nsapi
44
45 setup_uafs: setup_common
46         set UAFS; $(MKDIR_IF_NEEDED)
47         -rm -f UAFS/Makefile UAFS/Makefile.common
48         ln -s ../Makefile UAFS/Makefile
49         ln -s ../Makefile.common UAFS/Makefile.common
50
51 setup_nsafs: setup_common
52         set AFSWEB; $(MKDIR_IF_NEEDED)
53         -rm -f AFSWEB/Makefile AFSWEB/Makefile.common
54         ln -s ../Makefile AFSWEB/Makefile
55         ln -s ../Makefile.common AFSWEB/Makefile.common
56
57 UAFS/$(LIBUAFS): setup_uafs
58         cd UAFS; \
59         $(MAKE) $(LIBUAFS)
60
61 AFSWEB/$(LIBAFSWEB): setup_nsafs
62         cd AFSWEB; \
63         $(MAKE) $(LIBAFSWEB)
64
65 AFSWEB/$(LIBAFSWEBKRB): setup_nsafs
66         cd AFSWEB; \
67         $(MAKE) $(LIBAFSWEBKRB)
68
69 # Below this line are targets when in the COMMON directory:
70
71 $(LIBUAFS): $(UAFSOBJ)
72         -rm -f $(LIBUAFS)
73         $(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
74
75 $(LIBAFSWEB): $(AFSWEBOBJ) ${DES}/libdes.a
76         -rm -f $(LIBAFSWEB)
77         ld -b $(LIBAFSWEB) $(AFSWEBOBJ) ${DES}/libdes.a $(WEBLIBS)
78
79 $(LIBAFSWEBKRB): $(AFSWEBOBJKRB) ${DES}/libdes.a
80         -rm -f $(LIBAFSWEBKRB)
81         ld -b $(LIBAFSWEBKRB) $(AFSWEBOBJKRB) ${DES}/libdes.a $(WEBLIBS)