File: makefile.linux

package info (click to toggle)
mush 7.2.5unoff2-25
  • links: PTS
  • area: non-free
  • in suites: etch, etch-m68k
  • size: 1,784 kB
  • ctags: 1,342
  • sloc: ansic: 21,890; sh: 972; makefile: 90; csh: 87
file content (121 lines) | stat: -rw-r--r-- 3,962 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
# Mush makefile for system V.  Note: SIGRET should return void for normal
# sys-v, but Att PC users should *not* have it defined.  See the README!!
#
HDRS1= mush.h config.h
HDRS2= strings.h options.h
HDRS3= bindings.h glob.h
HDRS4= version.h pop.h
SRCS1= commands.c dates.c execute.c expr.c folders.c hostname.c \
	hdrs.c init.c loop.c mail.c main.c misc.c msgs.c pick.c \
	print.c setopts.c signals.c sort.c viewopts.c options.c lock.c \
	sendmime.c
SRCS2= bind.c curs_io.c curses.c file.c string.c strings.c macros.c \
	addrs.c malloc.c glob.c command2.c pop.c pmush.c xcreat.c \
	util.c

OBJS1= commands.o dates.o execute.o expr.o folders.o hostname.o \
	hdrs.o init.o loop.o mail.o main.o misc.o msgs.o pick.o \
	print.o setopts.o signals.o sort.o viewopts.o options.o lock.o \
	sendmime.o
OBJS2= bind.o curs_io.o curses.o file.o string.o strings.o macros.o \
	addrs.o malloc.o glob.o command2.o pop.o pmush.o xcreat.o \
	util.o

HELP= README README-7.0 README-7.1 README-7.2.0 README-7.2.2 \
	README-7.2.4 mush.1 cmd_help Mushrc Mailrc Gnurc \
	sample.mushrc advanced.mushrc digestify

# Sun OS systems who wish to compile with sys-v options:
# CC= /usr/5bin/cc
# CFLAGS= 	-O -DSYSV -DCURSES -DUSG -DDIRECTORY -UREGCMP
# LIBS= -L/usr/5lib -lcurses

# IRIX 3.2 systems (SGI Iris workstations) should add -DDIRECTORY to CFLAGS
# SCO UNIX 3.2 should add -DDIRECTORY -DSELECT and should avoid library -lx
# System V Release 4 (SunOS 5?) should add -DSVR4 -DDIRECTORY to CFLAGS and
#  should replace -lPW with -lgen

CC =gcc
OPT_CFLAGS = -O6 -fomit-frame-pointer
#OPT_CFLAGS = -g
SYS_CFLAGS = -DSYSV -DUSG
CFLAGS= $(OPT_CFLAGS) $(SYS_CFLAGS) -DCURSES -DNO_COMMAS \
	$(OTHER_CFLAGS)
# NO_COMMAS included because it's needed by Qmail (which is used by damn many
# people including myself) and shouldn't hurt anyone anyway
#CFLAGS= -I /usr/include/ncurses -g -m486 -DSYSV -DUSG -DCURSES -DSIGRET=void -DENV_MAIL
LDFLAGS=
#LDFLAGS=-g
LIBS= 		-lncurses #-lPW
OTHERLIBS=
# Use some variant of this one if you #define MMDF in config.h
#OTHERLIBS=/usr/src/mmdf/lib/libmmdf.a
PROG=		mush

$(PROG): $(OBJS1) $(OBJS2)
	$(CC) $(LDFLAGS) $(OBJS1) $(OBJS2) -o $(PROG) $(LIBS) $(OTHERLIBS)

dotlock: lock.c xcreat.o hostname.o string.o malloc.o util.o
	$(CC) -o $@ -DDOT_LOCK -DLOCK_PROG $(SYS_CFLAGS) $(OPT_CFLAGS) $(OTHER_CFLAGS) lock.c xcreat.o hostname.o string.o malloc.o util.o

$(OBJS1): $(HDRS1) $(HDRS2)
$(OBJS2): $(HDRS1) $(HDRS2) $(HDRS3)
loop.o: version.h

config.h: config.h-dist
	ln -s $< $@

BINDIR= /usr/bin
SBINDIR= /usr/sbin
LIBDIR= /usr/lib
MRCDIR= /usr/lib
MANDIR= /usr/man/man1
MANEXT= 1

MUSHRC = Mushrc

OUTFILES = sedscript Mushrc mush.1 cmd_help

Mushrc: Mushrc.in sedscript
	sed -f sedscript Mushrc.in >$@
mush.1: mush.1.in sedscript
	sed -f sedscript mush.1.in >$@
cmd_help: cmd_help.in sedscript
	sed -f sedscript cmd_help.in >$@

sedscript: sedscript.in config.h
	 /lib/cpp -DBINDIR="$(BINDIR)" $(SYS_CFLAGS) $(OTHER_CFLAGS) sedscript.in | sed -e '/^#/d' -e '/^[ ]*$$/d' -e 's/ ,g/,g/' -e 's/,"\(.*\)"/,\1/' >$@

install: $(OUTFILES) mush dotlock digestify
	-mkdir -p $(BINDIR) $(SBINDIR) $(MANDIR) $(MRCDIR) $(LIBDIR)
	cp mush $(BINDIR)
	strip $(BINDIR)/mush
	chmod 0755 $(BINDIR)/mush
	cp dotlock $(SBINDIR)
	strip $(SBINDIR)/dotlock
	chmod 0755 $(SBINDIR)/dotlock
	cp maillock.sh $(BINDIR)/maillock
	chmod 0755 $(BINDIR)/maillock
	cp digestify $(BINDIR)
	chmod 0755 $(BINDIR)/digestify
	cp mush.1 $(MANDIR)/mush.$(MANEXT)
	chmod 0644 $(MANDIR)/mush.$(MANEXT)
	if [ -f dotlock ]; then \
	  cp dotlock.1 $(MANDIR)/dotlock.$(MANEXT); \
	  chmod 0644 $(MANDIR)/dotlock.$(MANEXT); \
	fi
	cp digestify.1 $(MANDIR)/digestify.$(MANEXT)
	chmod 0644 $(MANDIR)/digestify.$(MANEXT)
	cp maillock.1 $(MANDIR)/maillock.$(MANEXT)
	chmod 0644 $(MANDIR)/maillock.$(MANEXT)
	cp cmd_help $(LIBDIR)
	chmod 0644 $(LIBDIR)/cmd_help
	cp Mushrc $(MRCDIR)/$(MUSHRC)
	chmod 0644 $(MRCDIR)/$(MUSHRC)

clean:
	$(RM) *.o

distclean: clean
	$(RM) mush dotlock *~ $(OUTFILES)