1 # Makefile for gzip (GNU zip) -*- Indented-Text -*-
2 # Copyright (C) 1992-1993 Jean-loup Gailly and the Free Software Foundation
3 # VMS version made by Klaus Reimann <kr@cip.physik.uni-stuttgart.de>,
4 # revised by Roland B Roberts <roberts@nsrl31.nsrl.rochester.edu>.
5 # This version is for gcc.
7 # After constructing gzip.exe with this Makefile, you should set up
8 # symbols for gzip.exe. Edit the example below, changing
9 # "disk:[directory]" as appropriate.
11 # $ gzip == "$disk:[directory]gzip.exe"
12 # $ gunzip == "$disk:[directory]gunzip.exe"
13 # $ zcat == "$disk:[directory]zcat.exe"
16 # This program is free software; you can redistribute it and/or modify
17 # it under the terms of the GNU General Public License as published by
18 # the Free Software Foundation; either version 2, or (at your option)
21 # This program is distributed in the hope that it will be useful,
22 # but WITHOUT ANY WARRANTY; without even the implied warranty of
23 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 # GNU General Public License for more details.
26 # You should have received a copy of the GNU General Public License
27 # along with this program; if not, write to the Free Software
28 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
30 #### Start of system configuration section. ####
39 # Things you might add to DEFS
40 # -DDIRENT Use <dirent.h> for recursion (-r)
41 # -DSYSDIR Use <sys/dir.h> for recursion (-r)
42 # -DSYSNDIR Use <sys/ndir.h> for recursion (-r)
43 # -DNDIR Use <ndir.h> for recursion (-r)
44 # -DSTDC_HEADERS Use <stdlib.h>
45 # -DHAVE_UNISTD_H Use <unistd.h>
46 # -DNO_UTIME_H Don't use <utime.h>
47 # -DHAVE_SYSUTIME_H Use <sys/utime.h>
48 # -DNO_MEMORY_H Don't use <memory.h>. Not needed if STDC_HEADERS.
49 # -DNO_STRING_H Use strings.h, not string.h. Not needed if STDC_HEADERS
50 # -DRETSIGTYPE=int Define this if signal handlers must return an int.
51 # -DNO_SYMLINK OS defines S_IFLNK but does not support symbolic links
52 # -DNO_MULTIPLE_DOTS System does not allow file names with multiple dots
53 # -DNO_UTIME System does not support setting file modification time
54 # -DNO_CHOWN System does not support setting file owner
55 # -DNO_DIR System does not support readdir()
56 # -DPROTO Force function prototypes even if __STDC__ not defined
57 # -DASMV Use asm version match.S
58 # -DMSDOS MSDOS specific
60 # -DVAXC Vax/VMS with Vax C compiler
61 # -DVMS Vax/VMS with gcc
63 # -DDYN_ALLOC Use dynamic allocation of large data structures
64 # -DMAXSEG_64K Maximum array size is 64K (for 16 bit system)
65 # -DRECORD_IO read() and write() are rounded to record sizes.
66 # -DNO_STDIN_FSTAT fstat() is not available on stdin
67 # -DNO_SIZE_CHECK stat() does not give a reliable file size
75 # additional assembly sources for particular systems be required.
78 #### End of system configuration section. ####
80 OBJS = gzip$O zip$O deflate$O trees$O bits$O unzip$O inflate$O util$O \
81 crypt$O lzw$O unlzw$O unpack$O unlzh$O getopt$O vms$O $(OBJA)
86 $(CC) $* $(DEFS) $(CFLAGS)
88 # $(CC) $* $(DEFS) $(CFLAGS)$
92 all: gzip$X #zcmp zdiff zmore znew
94 gzip$X : $(OBJS) #Makefile
97 p = f$locate(" ",linkobjs)
98 if p .lt. f$length(linkobjs)
99 then linkobjs[p,1]:=","
102 write sys$output "linking ''linkobjs'"
103 $(LINK) $(LDFLAGS) /exec=gzip$X 'linkobjs',sys$input/opt
104 GNU_CC:[000000]GCCLIB/LIB,SYS$LIBRARY:VAXCRTL/SHARE $
106 # Create a hard link. To remove both files, use "make clean". Using a hard
107 # link saves disk space, by the way. Note, however, that copying a hard link
108 # copies the data, not just the link. Therefore, set up the link in the
109 # directory in which the executable is to reside, or else rename (move) the
110 # executables into the directory.
112 set file/enter=gunzip.exe gzip.exe
113 set file/enter=zcat.exe gzip.exe
117 set file/remove gunzip.exe;0
118 set file/remove zcat.exe;0
122 # Actual build-related targets
124 gzip$O zip$O deflate$O trees$O bits$O unzip$O inflate$O: gzip.h tailor.h
125 util$O lzw$O unlzw$O unpack$O unlzh$O crypt$O: gzip.h tailor.h
127 gzip$O unlzw$O: revision.h lzw.h
129 bits$O unzip$O util$O zip$O: crypt.h
131 gzip$O getopt$O: getopt.h