File: Makefile.bsdi

package info (click to toggle)
mosaic 2.7b5-8
  • links: PTS
  • area: non-free
  • in suites: hamm, slink
  • size: 6,176 kB
  • ctags: 7,643
  • sloc: ansic: 86,415; sh: 1,831; makefile: 240; fortran: 160
file content (238 lines) | stat: -rwxr-xr-x 9,042 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
# Toplevel Makefile for NCSA Mosaic.

# You shouldn't need to touch any of the Makefiles in the various
# subdirectories if you configure this Makefile correctly.

# If you need to make serious changes to get Mosaic to compile on your
# platform, send context diffs to mosaic-x@ncsa.uiuc.edu.
# -------------------------- CUSTOMIZABLE OPTIONS ----------------------------

prereleaseflags = -DPRERELEASE

RANLIB = ranlib

CC = gcc

#### Linker Flags -- Primarily for linking static on linux-elf.
ldflags =

#### For a few files in the source, some compilers may need to be kicked
#### in K&R mode.  E.g., on SGI's, -cckr does this.
#### On most systems, no flag is needed.
knrflag =


#### Random system configuration flags.
#### --> *** For Motif 1.2 ON ANY PLATFORM, do -DMOTIF1_2 *** <--
#### For IBM AIX 3.2, do -D_BSD
#### For NeXT, do -DNEXT
#### For HP/UX, do -Aa -D_HPUX_SOURCE
#### For Dell SVR4, do -DSVR4
#### For Solaris, do -DSVR4 
#### For Esix 4.0.4 and Solaris x86 2.1, do -DSVR4
#### For Convex whatever, do -DCONVEX
#### For SCO ODT 3.0, do -DSCO -DSVR4 -DMOTIF1_2
#### For Motorola SVR4, do -DSVR4 -DMOTOROLA -DMOTIF1_2
sysconfigflags = -DMOTIF1_2

#### System libraries.
syslibs = -lipc

#### X include file locations -- if your platform puts the X include
xinc = -I/usr/X11/include
xlibs = -L/usr/X11/lib -lXm -lXmu -lXt -lXext -lSM -lICE -lXpm -lX11


#### DTM AND HDF SUPPORT; READ CAREFULLY

#### If you want to compile with DTM and HDF support, you should leave
#### the following lines uncommented and make sure you have a copy of
#### HDF 3.3 (r1 or later) installed and ready.  You can find HDF on
#### ftp.ncsa.uiuc.edu in /HDF.

#### If you do not want to compile with DTM and HDF support, comment
#### the following lines out.  (If you are compiling from source for
#### the first time, you should probably not bother with HDF and DTM
#### support.)

#### dtmmachtype needs to be set to one of the following:
####   sun, sgi, dec, ibm, next, cray, convex
#### If your platform is not one of the above, then either do not compile
#### with HDF/DTM support or try hacking libdtm/makefile.

#dtmmachtype = sun
#dtmdirs = libdtm libnet
#dtmlibs = ../libnet/libnet.a ../libdtm/libdtm.a
#dtmflags = -DHAVE_DTM -I.. -I../libnet
#hdfdir = /hdf2/install/sun
#hdflibs = $(hdfdir)/lib/libmfhdf.a $(hdfdir)/lib/libdf.a
#hdfflags = -DHAVE_HDF -DHDF -I$(hdfdir)/include


#### PNG SUPPORT
#### For inline PNG support, the following should be defined:
#### The libraries currently used are PNGLIB 0.81 and ZLIB 0.95

pngdir = /xdev/mosaic/libpng/bsdi
pnglibdir = $(pngdir)/lib
pngincludedir = $(pngdir)/include
pnglibs = $(pnglibdir)/libpng.a $(pnglibdir)/libz.a -lm
pngflags =  -I$(pngincludedir) -DHAVE_PNG

#pngdir = /work2/mosaic-libs/libpng
#pnglibdir = $(pngdir)
#pngincludedir = $(pngdir)
#pnglibs = $(pnglibdir)/libpng.a $(pnglibdir)/libz.a -lm
#pngflags =  -I$(pngincludedir) -DHAVE_PNG


#### JPEG SUPPORT
#### For inline JPEG support, the following should be defined:
#### The library used is Independent JPEG Group (IJG's) 5.0a.

jpegdir = /work2/mosaic-libs/libjpeg-6
jpeglibs = $(jpegdir)/libjpeg.a
jpegflags = -I$(jpegdir) -DHAVE_JPEG


#### KERBEROS SUPPORT
####
#### If you want Mosaic to support Kerberos authentication, set the 
#### following flags appropriately.  You can support Kerberos V4 and/or V5,
#### although it's most likely that your realm supports one or the other.
#### To enable DES-encryption of HTTP messages via Kerberos key exchange, 
#### define the KRB-ENCRYPT flag.

##krb4dir   = /usr/athena
#krb4dir   = /xdev/mosaic/libkrb4/sun
#krb4libs  = $(krb4dir)/lib/libkrb.a $(krb4dir)/lib/libdes.a
#krb4flags = -DKRB4 -I$(krb4dir)/include

##krb5dir   = /krb5
#krb5dir   = /xdev/mosaic/libkrb5/sun
#krb5libs  = $(krb5dir)/lib/libkrb5.a $(krb5dir)/lib/libcrypto.a $(krb5dir)/util/et/libcom_err.a
#krb5flags = -DKRB5 -I$(krb5dir)/include -I$(krb5dir)/include/krb5

#Do not comment out.
krbflags  = $(krb4flags) $(krb5flags)
krblibs   = $(krb4libs) $(krb5libs) 


#### DIRECT WAIS SUPPORT

#### If you want to have Mosaic be able to communicate directly with
#### WAIS servers, do set the following flags appropriately.  We
#### recommend linking with CNIDR's freeWAIS 0.5 distribution; other
#### WAIS distributions may work but we have not tested them with
#### Mosaic.  freeWAIS 0.5 can currently (Sept.1995) be found at
#### ftp://sunsite.unc.edu/pub/wais/servers/freeWAIS 

#### If you do not wish to link to the WAIS libraries, then comment
#### the following lines out.  Mosaic will then communicate with WAIS
#### servers via a HTTP gateway.

#### -lm is required for freeWAIS 0.5, as ceil() is used.

#waisroot = /xdev/mosaic/freeWAIS/sun4
#waisflags = -DDIRECT_WAIS -I$(waisroot)/include
#waislibdir = $(waisroot)/bin
#waislibs = $(waislibdir)/inv.a $(waislibdir)/wais.a $(waislibdir)/libftw.a -lm


#### Customization flags:
#### . If you want Mosaic to come up with monochrome colors by default,
####   use -DMONO_DEFAULT
#### . If you want to define the default Mosaic home page, set
####   -DHOME_PAGE_DEFAULT=\\\"url\\\"
#### . If you want to define the default Mosaic documentation directory
####   (should be a URL), set -DDOCS_DIRECTORY_DEFAULT=\\\"url\\\"
#### . Other things you can define are spelled out in src/mosaic.h.
customflags =




########
########
####      NOTE! If you get errors because of the following line, it means
####      you are NOT using GNUs Make program. The following line is basically
####      for the developers at NCSA to customize the build process without
####      modifying the Makefiles, so you may comment it out without harm.
########
########
-include local-defines/$(DEV_ARCH)



# ---------------------- END OF CUSTOMIZABLE OPTIONS -------------------------
# --------------------- Do Not Modify Below This Line ------------------------
#

CFLAGS = -g $(sysconfigflags) $(prereleaseflags)

# Don't worry about these -- for development purposes only.
PURIFY = purify
QUANTIFY = quantify

default: $(dtmdirs) libwww2 libXmx libhtmlw libnut src
	@echo \*\*\* Welcome to NCSA Mosaic.
purifyd: $(dtmdirs) libwww2 libXmx libhtmlw libnut src-purifyd
	@echo \*\*\* Welcome to Purify'd NCSA Mosaic.
quantifyd: $(dtmdirs) libwww2 libXmx libhtmlw libnut src-quantifyd
	@echo \*\*\* Welcome to Quantify'd NCSA Mosaic.

libXmx::
	@echo --- Building libXmx
	cd libXmx; $(MAKE) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(xinc)"

libhtmlw::
	@echo --- Building libhtmlw
	cd libhtmlw; $(MAKE) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag) $(xinc) -DMOTIF -DXMOSAIC"

libwww2::
	@echo --- Building libwww2
	cd libwww2; $(MAKE) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag) $(waisflags) $(krbflags) $(xinc)"

libnut::
	@echo --- Building libnut
	cd libnut; $(MAKE) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag)"

src::
	@echo --- Building src
	cd src; $(MAKE) CC=$(CC) RANLIB=$(RANLIB) LDFLAGS="$(ldflags)" CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(jpegflags) $(dtmflags) $(hdfflags) $(pngflags) $(krbflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(sockslibs) $(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2 JPEG_LIBS="$(jpeglibs)" PNG_LIBS="$(pnglibs)" KRB_LIBS="$(krblibs)" LIBNUT_DIR=../libnut MOSAIC="Mosaic"

src-purifyd::
	@echo --- Building Purify'd src
	cd src; $(MAKE) PURIFY=$(PURIFY) CC=$(CC) RANLIB=$(RANLIB) LDFLAGS="$(ldflags)" CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(jpegflags) $(dtmflags) $(hdfflags) $(pngflags) $(krbflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(sockslibs) $(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2 JPEG_LIBS="$(jpeglibs)" PNG_LIBS="$(pnglibs)" KRB_LIBS="$(krblibs)" LIBNUT_DIR=../libnut MOSAIC="Mosaic-p"

src-quantifyd::
	@echo --- Building Quantify'd src
	cd src; $(MAKE) PURIFY=$(QUANTIFY) CC=$(CC) RANLIB=$(RANLIB) LDFLAGS="$(ldflags)" CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(jpegflags) $(dtmflags) $(hdfflags) $(pngflags) $(krbflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(sockslibs) $(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2 JPEG_LIBS="$(jpeglibs)" PNG_LIBS="$(pnglibs)" KRB_LIBS="$(krblibs)" LIBNUT_DIR=../libnut MOSAIC="Mosaic-q"

libnet::
	@echo --- Building libnet
	cd libnet; $(MAKE) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(dtmflags)"

libdtm::
	@echo --- Building libdtm
	cd libdtm; $(MAKE) $(dtmmachtype) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(dtmflags)"

clean:
	cd libXmx; $(MAKE) $@
	cd libhtmlw; $(MAKE) $@
	cd libwww2; $(MAKE) $@
	cd src; $(MAKE) MOSAIC="Mosaic" $@
	cd libnet; $(MAKE) $@
	cd libdtm; $(MAKE) $@
	cd libnut; $(MAKE) $@

wclean:
	cd libhtmlw; $(MAKE) $@
	cd src; $(MAKE) MOSAIC="Mosaic" $@

commit:
	cvs commit
update:
	cvs update
countlines:
	wc libdtm/*.[ch] libnet/*.[ch] libXmx/*.[ch] libhtmlw/*.[ch] libwww2/*.[ch] src/*.[ch]