summaryrefslogtreecommitdiff
blob: 1953b852a673991196a3afe7589bcec777d410d7 (plain)
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
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
####This file was automatically created by 'configure.'
# This is a make file inclusion, to be included in all the Netpbm make
# files.

# This file is meant to contain variable settings that customize the
# build for a particular target system configuration.

# The distribution contains the file Makefile.config.in.  You edit
# Makefile.config.in in ways relevant to your particular environment 
# to create Makefile.config.  The "configure" program will do this
# for you in simple cases.

# Some of the variables that the including make file must set for this
# file to work:
#
#  SRCDIR: The directory at the top of the Netpbm source tree.  Note that
#  this is typically a relative directory, and it must be relative to the
#  make file that includes this file.  So it's normally "..".
#
#  CDEBUG: temporary extra compiler options for every compile.  Normally, 
#  you set this this via the Make command line, e.g. "make CDEBUG=-g" or
#  "make CDEBUG=-Werror".

# STATICLIB = Y means to build the Netpbm and Tiff libraries (if
# built) as static libraries instead of shared.  With static
# libraries, you should consider doing a merge build ('make merge')
# instead of the default to save disk space and memory.
#
# For cygwin, only static libraries work, so set STATICLIB = Y  .

STATICLIB = N
#STATICLIB = Y

# The following are commands for the build process to use.  These values
# do not get built into anything.

# The C compiler (including macro preprocessor)
#Tru64 (= Digital Unix):
#CC = cc
#CC = gcc
CC = gcc

# The linker.
LD = $(CC)
#LD = ld
#Tru64:
#LD = cc
#LD = gcc 

# MAKE is set automatically by Make to what was used to invoke Make.

#INSTALL = ginstall
#Solaris:
#INSTALL = /usr/ucb/install
#Tru64:
#INSTALL = installbsd
#OSF1:
#INSTALL = installosf
#Red Hat Linux:
INSTALL = install

# STRIPFLAG is the option you pass to the above install program to make it
# strip unnecessary information out of binaries.
#STRIPFLAG = -s
# If you don't want to strip the binaries, just leave it null:
STRIPFLAG = 

# Normally the man pages are installed using "install".  But via this
# variable, you can use something else, for example a script that
# calls compress or pack.  Mantocat, included with Netpbm, is used on
# systems which use man pages in the "cat" format.

MANCP =	$(INSTALL) -m $(INSTALL_PERM_MAN)
#DJGPP/Windows:
#MANCP = $(SRCDIR)/mantocat

AR = ar
RANLIB = ranlib


# C compiler options 

# gcc:
# -ansi and -Werror should work too, but are not included
# by default because there's no point in daring the build to fail.
# -pedantic isn't a problem because it causes at worst a warning.
CFLAGS = -pedantic -O3 -Wall -Wno-uninitialized $(CDEBUG)
# On DEC Tru64 4.0F (at least), you need -DLONG_32 for ppmtompeg.
#Tru64:
#CFLAGS = -O2 -std1 -DLONG_32 $(CDEBUG)

# EXE is a suffix that the linker puts on any executable it generates.
# In cygwin, this is .exe and most programs deal with its existence without
# us having to know about it.  Some don't though, so set this:

EXE =
#Cygwin, DJGPP/Windows:
#EXE = .exe
  
# linker options.  

LDFLAGS =
# Eunice users may want to use -noshare so that the executables can
# run standalone:
#LDFLAGS = -noshare
#Tru64:
#LDFLAGS = -call_shared
# Many systems, including SunOS and Solaris, and NetBSD, need options to 
# tell where Netpbm libraries will be at runtime.  Even if you don't need
# it, you may prefer to use it than to set up environment variables or 
# configuration files at runtime to give the same information.
# For a traditional linker:
#LDFLAGS = -R$(INSTALLLIBS)
#If the linker is gcc (e.g. NetBSD):
#LDFLAGS = -Wl,--rpath,$(INSTALLLIBS)

# Linker options for created Netpbm shared libraries.

# Here, $(SONAME) resolves to the soname for the shared library being created.
# The following are gcc options.  This works on GNU libc systems.
LDSHLIB = -shared -Wl,-soname,$(SONAME)
# You need -nostart instead of -shared on BeOS.  Though the BeOS compiler is
# ostensibly gcc, it has the -nostart option, which is not mentioned in gcc
# documentation and doesn't exist in at least one non-BeOS installation.
# BeOS doesn't have sonames built in.
#LDSHLIB = -nostart
#LDSHLIB = -G
# Solaris, SunOS with GNU Ld:
# (You need -R here, as above, because the Netpbm
# libraries depend on each other.  These systems have no soname option).
#LDSHLIB = -shared -R$(INSTALLLIBS)
# Solaris with Sun Ld:
#LDSHLIB = -Wl,-B,dynamic,-G,-h,$(SONAME) 
#Tru64:
#LDSHLIB = -shared -expect_unresolved "*"

# On older systems, you have to make shared libraries out of position 
# independent code, so you need -fpic or fPIC here.  (The rule is: if 
# -fpic works, use it.  If it bombs, go to fPIC).

#CFLAGS_SHLIB = 
# Solaris, SunOS, and NetBSD:
#CFLAGS_SHLIB = -fpic
CFLAGS_SHLIB = -fPIC

# The netpbm package contains a version of the Tiff library,
# libtiff.  If you want to use your own, fill in the appropriate paths
# below for the library and its interface headers

# Put the location of the TIFF library here.  Netpbm comes with a version
# of the TIFF library, so you can just specify the library in the Netpbm
# source tree unless you want to use your own TIFF library.  If you 
# specify the included TIFF library, 'make install' will also install it,
# but otherwise will not.

# Use the Tiff library included with Netpbm:
TIFFHDR_DIR = /usr/include
TIFFLIB_DIR = /usr/lib
#NetBSD:
#TIFFHDR_DIR = $(LOCALBASE)/include
#TIFFLIB_DIR = $(LOCALBASE)/lib
# OSF, Tru64:
#TIFFHDR_DIR = /usr/local1/DEC/include
#TIFFLIB_DIR = /usr/local1/DEC/lib

# If your Tiff library depends on libraries other than libc and libm, 
# put the required linker options here.
TIFFLIB_LDFLAGS = -ljpeg -lz
# libtiff 3.5.5 with the lzw patch needs libz:
#TIFFLIB_LDFLAGS = -lz

# Put the location of your JPEG library here.
# If you want to build the jpeg converters or tiff
# converters that use jpeg compression in tiff files, you must have
# the jpeg library already installed.  Put the locations of the link
# library and the interface header files here.  If you do not have the
# JPEG library, and still want to successully build everything else,
# including non-JPEG versions of the tiff converters, put NONE for
# these.

# Special note for people using an already-installed Tiff library:  If
# your library was built with the JPEG stuff statically linked in, you
# don't need the JPEG library and the tiff converters will still do jpeg.
# If your library references a dynamic JPEG library, you must specify
# at least JPEGLIB_DIR here, or the tiff converters will not build at
# all.

JPEGLIB_DIR = /usr/lib
JPEGHDR_DIR = /usr/include
# Netbsd:
#JPEGLIB_DIR = ${LOCALBASE}/lib
#JPEGHDR_DIR = ${LOCALBASE}/include
# OSF, Tru64:
#JPEGLIB_DIR = /usr/local1/DEC/lib
#JPEGHDR_DIR = /usr/local1/DEC/include
# Typical:
#JPEGLIB_DIR = /usr/local/lib
#JPEGHDR_DIR = /usr/local/include
# Don't build JPEG stuff:
#JPEGLIB_DIR = NONE
#JPEGHDR_DIR = NONE


# Put the location of your PNG library here.  If you want to build the
# PNG converters you must have the PNG library already installed.  Put
# the locations of the link library and the interface header files
# here.  If you do not have the PNG library, and still want to
# successully build everything else, put NONE for these.

PNGLIB_DIR = /usr/lib
PNGHDR_DIR = /usr/include
# NetBSD:
#PNGLIB_DIR = $(LOCALBASE)/lib
#PNGHDR_DIR = $(LOCALBASE)/include
# OSF/Tru64:
#PNGLIB_DIR = /usr/local1/DEC/lib
#PNGHDR_DIR = /usr/local1/DEC/include
# Typical:
#PNGLIB_DIR = /usr/local/lib
#PNGHDR_DIR = /usr/local/include
# No PNG:
#PNGLIB_DIR = NONE
#PNGHDR_DIR = NONE

# Put the location of your zlib compression library here.  You need it
# to build anything that needs the PNG library (see above).  If you 
# selected NONE for the PNG library, it doesn't matter what you specify
# here -- it won't get used.

ZLIB_DIR = /lib
ZHDR_DIR = /usr/include

# And the Utah Raster Toolkit (aka URT aka RLE) library:

URTHDR_DIR = $(SRCDIR)/urt
URTLIB_DIR = $(SRCDIR)/urt

# These are -l options to link in the network libraries.  Often, these are
# built into the standard C library, so this can be null.  If you don't 
# want any network functions, make it NONE.  The only thing that requires
# network functions is the option in ppmtompeg to run it on multiple
# computers simultaneously.

NETWORKLD = -lnsl
# Solaris, SunOS:
#NETWORKLD = -lsocket -lnsl
# Don't build network functions:
#DJGPP/Windows, Tru64:
#   (there's some minor header problem that prevents network functions from 
#   building on Tru64 2000.10.06)
#NETWORKLD = NONE

VMS = 
#VMS:
#VMS = yes

# The following variables are used only by 'make install' (and the
# variants of it).  Paths here don't, for example, get built into any
# programs.

# EXCEPTION: If you used a -R $(INSTALL_LIBS) option above,
# then INSTALL_LIBS gets built into your shared libraries.

# File permissions for installed files.
# Note that on some systems (e.g. Solaris), 'install' can't use the 
# mnemonic permissions - you have to use octal.

# binaries (pbmmake, etc)
INSTALL_PERM_BIN =  755       # u=rwx,go=rx
# shared libraries (libpbm.so, etc)
INSTALL_PERM_LIBD = 755       # u=rwx,go=rx
# static libraries (libpbm.a, etc)
INSTALL_PERM_LIBS = 644       # u=rw,go=r
# header files (pbm.h, etc)
INSTALL_PERM_HDR =  644       # u=rw,go=r
# man pages (pbmmake.1, etc)
INSTALL_PERM_MAN =  644       # u=rw,go=r
# data files (pnmtopalm color maps, etc)
INSTALL_PERM_DATA = 644       # u=rw,go=r

# Everything gets installed relative to directory INSTALL_PREFIX.  If
# you're spreading Netpbm across your system, use "/".

# DEC Tru64:
#INSTALL_PREFIX = /usr/local1/DEC/packages/netpbm
# DJGPP/Windows:
#INSTALL_PREFIX = /djgpp
# Typical:
#INSTALL_PREFIX = /usr/local/
INSTALL_PREFIX = /usr

# Specify the directory where you want the executables.
# If you need scripts and binaries to be in different directories, you
# can set that up too.

INSTALLBINARIES = $(INSTALL_PREFIX)/bin
#INSTALLBINARIES = /usr/local/bin/netpbm
INSTALLSCRIPTS = $(INSTALLBINARIES)

# Specify the directory where you want the shared libraries
# installed.  For this to be effective, you must have set up this location
# to be searched by your system's program executor for runtime libraries.

INSTALLLIBS = $(INSTALL_PREFIX)/lib
#INSTALLLIBS = /usr/local/lib/netpbm 

# Specify the directories that you want the man page sources,
# plus the suffix you want them to have.

INSTALLMANUALS1 =	$(INSTALL_PREFIX)/share/man/man1
SUFFIXMANUALS1 =	1
INSTALLMANUALS3 =	$(INSTALL_PREFIX)/share/man/man3
SUFFIXMANUALS3 =	3
INSTALLMANUALS5 =	$(INSTALL_PREFIX)/share/man/man5
SUFFIXMANUALS5 =	5

# Specify the directory where you want the interface header files for
# the Netpbm (and possibly Tiff) libraries installed.

INSTALLHDRS = $(INSTALL_PREFIX)/include

# Specify the directory where you want data files that the Netpbm programs
# access to be installed

INSTALLDATA = $(INSTALL_PREFIX)/share/netpbm


#NETPBMLIBSUFFIX is the suffix on the filename of the generated and installed
#Netpbm libraries.  But you can't make it just anything, because there has to
#be a rule in the makefiles to make whatever the filename turns out to be.
#Only .a and .so work.
# For static libraries:
#NETPBMLIBSUFFIX = a
#LIBTIFFSUFFIX = a
# For shared libraries:
NETPBMLIBSUFFIX = so
LIBTIFFSUFFIX = so




####Lines above were copied from Makefile.config.in by 'configure'.
####Lines below were added by 'configure' based on the GNU platform.
INSTALL_PREFIX = /usr
# Some people specify PREFIX= on the command line, because that's conventional
ifneq ($(PREFIX)x,x)
  INSTALL_PREFIX = $(PREFIX)
endif
NETPBMLIBSUFFIX=so
LIBTIFFSUFFIX=so