Merge pull request #12 from davel/davel/sqsh
[debian-nspark.git] / Makefile.gcc
blob4a40b32b86fe575b86a7fb2ff645b5b7a2512f27
2 # nspark makefile
4 # $Header: makefile 1.30 92/12/23 $
6 # SYSTYPE:      POSIX, RISCOS, WINNT
8 SYSTYPE= POSIX
9 INSTALLDIR= /usr/local
10 CC = gcc
12 INSTALL = install -c -m 0644
13 INSTALL_S = install -c -s -m 0755
14 INSTALL_D = install -d
15 # Under System V uncomment the following lines
16 # INSTALL = cp
17 # INSTALL_S = strip
18 # INSTALL_D = mkdir
20 # --- You shouldn't need to edit below this line ---
22 BACKUPFILE = $${HOME}/tmp/nspark.zip
24 CDEFINES = -I. -O
25 CMISC = -D$(SYSTYPE)
26 CFLAGS = $(CDEFINES) $(CMISC) -Wall -Werror
27 LIBS =
28 PROG = nspark$(EXE)
29 SQSH = sqsh$(EXE)
30 TESTPACK = testprog/testpack$(EXE)
31 SRCS = store.c pack.c compress.c crc.c \
32         io.c error.c misc.c date.c arcfs.c garble.c
33 HDRS = store.h pack.h compress.h crc.h \
34         nsparkio.h error.h misc.h date.h os.h spark.h arcfs.h garble.h version.h
36 NSPARKSRCS = main.c arc.c unarc.c
37 NSPARKHDRS = main.h arc.h unarc.h
39 SQSHSRCS = sqshmain.c unarc.c
40 SQSHHDRS = unarc.h
42 TESTPACKSRCS = testprog/pack.c
44 EXE =
45 OBJ = .o
47 ifeq (${SYSTYPE},RISCOS)
48 OS_SRCS = acorn.c
49 CFLAGS += -mlibscl
50 LIBS += -mlibscl
51 endif
53 ifeq (${SYSTYPE},POSIX)
54 OS_SRCS = unix.c
55 # BB: For SGI systems fitted with a MIPS R4000 or better, add -mips2 to CFLAGS.
56 CFLAGS +=
57 # BB: For SGI systems use LIBS -lc_s -s.
58 LIBS +=
59 endif
61 ifeq (${SYSTYPE},WINNT)
62 EXE = .exe
63 OBJ = .obj
64 OS_SRCS = winnt.c
65 endif
67 OBJS = $(SRCS:.c=$(OBJ))
68 NSPARKOBJS = $(NSPARKSRCS:.c=$(OBJ))
69 SQSHOBJS = $(SQSHSRCS:.c=$(OBJ))
70 TESTPACKOBJS = $(TESTPACKSRCS:.c=$(OBJ))
71 OS_OBJS = $(OS_SRCS:.c=$(OBJ))
73 ALL_SRCS = $(SRCS) $(NSPARKSRCS) $(SQSHSRCS) $(TESTPACKSRCS) posix.c acorn.c msdos.c winnt.c
74 ALL_HDRS = $(HDRS) $(NSPARKHDRS) $(SQSHHDRS)
76 .DEFAULT:
77         $(CC) -c $<
79 all:    $(PROG) $(TESTPACK) $(SQSH)
81 $(TESTPACK): $(OBJS) $(OS_OBJS) $(TESTPACKOBJS)
82         $(CC) -o $@ $^ $(LIBS)
84 $(PROG): $(OBJS) $(OS_OBJS) $(NSPARKOBJS)
85         $(CC) -o $@ $^ $(LIBS)
87 $(SQSH): $(OBJS) $(OS_OBJS) $(SQSHOBJS)
88         $(CC) -o $@ $^ $(LIBS)
90 install: $(PROG) $(SQSH)
91          $(INSTALL_D) "$(INSTALLDIR)/bin"
92          $(INSTALL_S) $(PROG) $(INSTALLDIR)/bin
93          $(INSTALL_S) $(SQSH) $(INSTALLDIR)/bin
94          $(INSTALL_D) "$(INSTALLDIR)/share/man/man1"
95          $(INSTALL) man/nspark.1 $(INSTALLDIR)/share/man/man1
96          $(INSTALL) man/sqsh.1 $(INSTALLDIR)/share/man/man1
97          $(INSTALL_D) "$(INSTALLDIR)/share/man/man5"
98          $(INSTALL) man/arcfs.5 $(INSTALLDIR)/share/man/man5
99          $(INSTALL) man/spark.5 $(INSTALLDIR)/share/man/man5
101 depend: $(SRCS) $(HDRS) $(NSPARKSRCS) $(NSPARKHDRS) $(SQSHSRCS) $(SQSHHDRS)
102         makedepend -w200 -f Makefile.gcc -o '$$(OBJ)' $(CDEFINES) -D$(SYSTYPE)  -- $(ALL_SRCS)
103         sed -f nosysdep.sed -i Makefile.gcc
104         makedepend -w200 -f win32/MAKEFILE -o '$$(OBJ)' $(CDEFINES) -DWINNT  -- $(ALL_SRCS)
105         sed -f nosysdep.sed -i win32/MAKEFILE
106         rm -f Makefile.gcc.bak win32/MAKEFILE.bak
108 tags:   $(SRCS) $(HDRS)
109         ctags $(SRCS) $(HDRS)
111 clean:
112         rm -f $(PROG) $(TESTPACK) $(SQSH) $(OBJS) $(NSPARKOBJS) $(TESTPACKOBJS) $(SQSHOBJS)
113         rm -f a.out core *~
115 backup: clean
116         (cd ..; zip -r9y $(BACKUPFILE) nspark)
118 TMPDIR = $$HOME/tmp
119 DISTLEAF = nspark-$(VERSION)
120 DISTDIR = $(TMPDIR)/$(DISTLEAF)
121 dist:   clean $(SRCS) $(HDRS)
122         rm -f RCS/rel-$(VERSION)
123         makerel makefile *.c *.h > RCS/rel-$(VERSION)
124         chmod 444 RCS/rel-$(VERSION)
125         mkdir $(DISTDIR)
126         cp *.c *.h nosysdep.sed README BUGS CHANGES makefile $(DISTDIR)
127         mkdir $(DISTDIR)/mkfiles
128         cp mkfiles/* $(DISTDIR)/mkfiles
129         (cd $(TMPDIR); tar cf - $(DISTLEAF) | compress > $(DISTLEAF).tar.Z)
130         (cd $(TMPDIR); rm -rf $(DISTLEAF))
132 %$(OBJ): %.c
133         $(CC) $(CFLAGS) -c -o $@ $<
135 # DO NOT DELETE THIS LINE -- make depend depends on it.
137 store$(OBJ): spark.h main.h crc.h garble.h
138 store$(OBJ): nsparkio.h
139 pack$(OBJ): spark.h main.h crc.h garble.h
140 pack$(OBJ): nsparkio.h pack.h
141 compress$(OBJ): spark.h pack.h
142 compress$(OBJ): main.h crc.h garble.h nsparkio.h arcfs.h
143 crc$(OBJ): spark.h main.h arcfs.h
144 io$(OBJ): spark.h main.h error.h arcfs.h nsparkio.h
145 error$(OBJ): error.h
146 misc$(OBJ): spark.h main.h date.h misc.h
147 date$(OBJ): spark.h
148 arcfs$(OBJ): spark.h arcfs.h nsparkio.h misc.h
149 garble$(OBJ): garble.h spark.h
150 main$(OBJ): spark.h nsparkio.h error.h misc.h arc.h unarc.h garble.h version.h
151 arc$(OBJ): spark.h error.h
152 unarc$(OBJ): spark.h store.h pack.h compress.h main.h nsparkio.h 
153 unarc$(OBJ): misc.h os.h error.h
154 unarc$(OBJ): crc.h arcfs.h
155 sqshmain$(OBJ): spark.h arcfs.h unarc.h
156 unarc$(OBJ): spark.h store.h pack.h compress.h main.h nsparkio.h 
157 unarc$(OBJ): misc.h os.h error.h
158 unarc$(OBJ): crc.h arcfs.h
159 testprog/pack$(OBJ): spark.h crc.h nsparkio.h pack.h arcfs.h garble.h spark.h
160 acorn$(OBJ): spark.h date.h
161 msdos$(OBJ): spark.h date.h 
162 msdos$(OBJ): os.h
163 winnt$(OBJ): spark.h date.h