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
|
*** imap/ANSI/c-client/Makefile.orig Fri Sep 20 13:44:01 1996
--- imap/ANSI/c-client/Makefile Fri Sep 20 13:44:42 1996
***************
*** 32,41 ****
--- 32,43 ----
ARCHIVE=c-client.a
+ SHLIB=libc-client.so.1.3
ARRC=ar rc
BINARIES=mail.o bezerk.o mtx.o tenex2.o mbox.o mh.o mmdf.o imap2.o pop3.o \
news.o nntpcunx.o phile.o dummy.o smtp.o nntp.o rfc822.o misc.o \
osdep.o sm_unix.o newsrc.o
+ SOFILES= ${BINARIES:.o=.so}
CC=cc
CFLAGS=$(EXTRACFLAGS)
DEFAULTDRIVERS=imap nntp pop3 mh tenex mtx mmdf bezerk news phile dummy
***************
*** 48,53 ****
--- 50,58 ----
RSHPATH=/usr/ucb/rsh
SHELL=/bin/sh
+ # Need this for the shared library rule to work correctly
+ .SUFFIXES: .o .so
+
missing:
@echo "You must specify what type of system"
@false
***************
*** 126,131 ****
--- 131,143 ----
ACTIVEFILE=/usr/lib/news/active NEWSSPOOL=/usr/spool/news \
RSHPATH=/usr/bin/rsh CFLAGS="-g -O -pipe -DNFSKLUDGE $(EXTRACFLAGS)"
+ bsf: # FreeBSD
+ $(MAKE) mtest OS=bsi EXTRADRIVERS="$(EXTRADRIVERS)" \
+ STDPROTO=bezerkproto MAILSPOOL=/var/mail \
+ ACTIVEFILE=/usr/local/news/lib/active NEWSSPOOL=/var/news \
+ RSHPATH=/usr/bin/rsh CFLAGS="-O -pipe -DNFSKLUDGE $(EXTRACFLAGS)" \
+ LDFLAGS="-lcrypt"
+
cvx: # Convex
$(MAKE) mtest OS=$@ EXTRADRIVERS="$(EXTRADRIVERS)" \
STDPROTO=bezerkproto MAILSPOOL=/usr/spool/mail \
***************
*** 409,417 ****
# From here on down is OS-independent
clean:
! $(RM) *.o linkage.[ch] mtest $(ARCHIVE) osdep.* CCTYPE CFLAGS LDFLAGS
! mtest: $(ARCHIVE) mtest.o
$(CC) $(CFLAGS) -o mtest mtest.o $(ARCHIVE) $(LDFLAGS)
$(ARCHIVE): $(BINARIES)
--- 421,429 ----
# From here on down is OS-independent
clean:
! $(RM) *.o *.so linkage.[ch] mtest $(SHLIB) $(ARCHIVE) osdep.* CCTYPE CFLAGS LDFLAGS
! mtest: $(ARCHIVE) $(SHLIB) mtest.o
$(CC) $(CFLAGS) -o mtest mtest.o $(ARCHIVE) $(LDFLAGS)
$(ARCHIVE): $(BINARIES)
***************
*** 419,424 ****
--- 431,443 ----
$(ARRC) $(ARCHIVE) $(BINARIES)
$(RANLIB) $(ARCHIVE)
+ $(SHLIB): $(SOFILES)
+ ld -Bshareable -o $(SHLIB) $(SOFILES)
+ strip $(SHLIB)
+
+ .c.so: osdep.h
+ $(CC) -fpic -DPIC -c $(CFLAGS) ${@:.so=.c} -o $@
+
# Dependencies
bezerk.o: mail.h bezerk.h rfc822.h misc.h osdep.h
***************
*** 459,464 ****
--- 478,499 ----
-DRSH=\"$(RSH)\" -DRSHPATH=\"$(RSHPATH)\" \
$(EXTRAOSDEFS) -c os_$(OS).c
$(MV) os_$(OS).o osdep.o
+
+ osdep.so: mail.h misc.h env.h fs.h ftl.h nl.h tcp.h \
+ osdep.h env_unix.h tcp_unix.h \
+ os_$(OS).c env_unix.c fs_unix.c ftl_unix.c nl_unix.c tcp_unix.c \
+ log_std.c log_sv4.c log_ssn.c log_ult.c \
+ gr_wait.c gr_wait4.c gr_waitp.c \
+ flock.c ingroups.c opendir.c scandir.c \
+ memmove.c memmove2.c memset.c \
+ write.c writev.c writevs.c \
+ tz_bsd.c tz_nul.c tz_sv4.c \
+ strerror.c strpbrk.c strstr.c strtok.c strtol.c strtoul.c
+ $(CC) -fpic -DPIC $(CFLAGS) -DSTDPROTO=$(STDPROTO) -DMAILSPOOL=\"$(MAILSPOOL)\" \
+ -DACTIVEFILE=\"$(ACTIVEFILE)\" -DNEWSSPOOL=\"$(NEWSSPOOL)\" \
+ -DRSH=\"$(RSH)\" -DRSHPATH=\"$(RSHPATH)\" \
+ $(EXTRAOSDEFS) -c os_$(OS).c -o os_$(OS).so
+ $(MV) os_$(OS).so osdep.so
osdep.h: os_$(OS).h linkage
$(RM) CCTYPE CFLAGS LDFLAGS osdep.h
|