1# $Id: Makefile,v 2.20.2.2 2014/08/20 06:12:39 gul Exp $
2#
3# Usage: wmake [DEBUG=1] [NOFORK=1] [ZLIB=1] [BZLIB2=1] [ZLIBDL=1] [BW_LIM=1]
4#
5
6.SILENT
7
8.SUFFIXES:
9.SUFFIXES: .res .rc .lst .obj .c .asm .hlp .itl .ipf .cpp
10
11.c:  .;os2;ntlm
12
13CC        = wcc386 -D_Optlink= -bt=os2 -bc
14PP        = wpp386 -D_Optlink= -bt=os2 -bc
15
16LFLAGS    = -zq -bm -k1024k -x -l=os2v2
17CFLAGS    = -DOS2 -DHAVE_THREADS -DHAVE_IO_H -DHAVE_SYS_TIME_H      &
18            -DHAVE_SYS_IOCTL_H -DHAVE_SNPRINTF -Dsnprintf=_bprintf  &
19            -DHAVE_VSNPRINTF -Dvsnprintf=_vbprintf -DHAVE_DOS_H     &
20            -DHAVE_STDARG_H -DIBMTCPIP -DVOID_SLEEP                 &
21            -DHTTPS -DNTLM -DAMIGADOS_4D_OUTBOUND -DHAVE_RESOLV_H   &
22            -DHAVE_NETINET_IN_H -DHAVE_NETDB_H                      &
23            -DHAVE_ARPA_NAMESER_H -w4 -bm -zq
24
25!ifeq DEBUG 1
26CFLAGS    += -d3 -hw
27LFLAGS    += -d3 -hw -fm=binkd.map
28!else
29CFLAGS    += -oxs
30!endif
31
32!ifeq NOFORK 1
33CFLAGS    += -DDEBUGCHILD
34!endif
35
36!ifeq ZLIB 1
37CFLAGS    += -DWITH_ZLIB
38COMPRESS  = 1
39!ifeq ZLIBDL 1
40!else
41LIBS      += z.lib
42!endif
43!endif
44
45!ifeq BZLIB2 1
46CFLAGS    += -DWITH_BZLIB2
47COMPRESS  = 1
48!ifeq ZLIBDL 1
49!else
50LIBS      += bz2.lib
51!endif
52!endif
53
54!ifeq COMPRESS 1
55ZOBJS     = compress.obj
56!ifeq ZLIBDL 1
57ZOBJS     += zlibdl.obj
58CFLAGS    += -DZLIBDL
59!endif
60!endif
61
62!ifeq BW_LIM 1
63CFLAGS    += -DBW_LIM
64!endif
65
66LINK      = wcl386
67NTLM_OBJS = des_enc.obj   helpers.obj    ecb_enc.obj  md4_dgst.obj  &
68            set_key.obj
69OBJS      = binkd.obj     readcfg.obj    tools.obj    ftnaddr.obj   &
70            ftnq.obj      client.obj     server.obj   protocol.obj  &
71            bsy.obj       gettid.obj     tcperr.obj   inbound.obj   &
72            sem.obj       breaksig.obj   branch.obj   ftndom.obj    &
73            ftnnode.obj   getfree.obj    srif.obj     pmatch.obj    &
74            readflo.obj   prothlp.obj    iptools.obj  run.obj       &
75            binlog.obj    exitproc.obj   getw.obj     xalloc.obj    &
76            setpttl.obj   dirent.obj     md5b.obj     crypt.obj     &
77            getopt.obj    https.obj      rfc2553.obj  srv_gai.obj   &
78            ns_parse.obj                                            &
79            $(NTLM_OBJS) $(ZOBJS)
80
81.c.obj: .autodepend
82	-echo Compile  $<
83	$(CC) $(CFLAGS) -fo=$@ $<
84
85all: binkd2.exe .SYMBOLIC
86
87before:	.SYMBOLIC
88!ifeq DEBUG 1
89	-echo Make binkd debug version from $(%cdrive):$(%cwd)
90!else
91	-echo Make binkd release version from $(%cdrive):$(%cwd)
92!endif
93
94binkd2.exe: before $(OBJS)
95	-echo Link     $@
96	$(LINK) $(LFLAGS) -fe=$@ $(OBJS) $(LIBS)
97
98clean:  .SYMBOLIC
99	-del /n *.RES *.obj os2\*.obj *.o *.map *~ *.bak *.b *.ini &
100	*.err core >nul 2> nul
101