1# WARNING!!!!
2# SUPPORT FOR MINGW32 AND RSXNT COMPILERS IN MSGED IS CURRENTLY BROKEN!
3# Both Mingw32 and RsxNT compiled Msged versions show strange
4# behaviour. After scanning some areas, they will suddenly return a number of
5# 0 - 0 messages for each area because they fail to open the area, both on
6# NT/i386 and on NT/alpha. The Rsxnt compiled version for i386 will even kill
7# the LAN Requester services when run on NT/alpha with FX32. I don't have an
8# exact idea as to what the problem is, probably something with file locking
9# or directory search services (the latter because it is the only platform
10# dependent code that is shared between rsxnt and mingw32).
11# Until I get to fixing this (which I want to do because it is the only way
12# of getting an Alpha/NT executable for my DEC Multia),
13# THE ONLY RELIABLE WAY OF PRODUCING A WIN32 EXECUTABLE OF MSGED IS TO USE
14# BORLAND C++ 4.0 OR HIHGER WITH MAKEFILE.BCW
15
16# Makefile for building a Windows 95/NT verison of MsgEd using
17# the RSXNT GNU compiler. This can be used to either compile MsgEd
18# on a Windows box or to cross-compile from an OS/2 machine.
19
20# Note: If the final linkage fails with the linker complaining about
21# multiple definitions of "_func_rsxnt_wait_debuggee", you are experiencing
22# a bug in the RSXNT system library. You can either fix this bug in the
23# library, or simply leave out the "-Zsys" switch  (at the expense that
24# the resulting executable then requires RSXNT.DLL at runtime)
25
26# look for libs in c:\lib
27LIBDIR=c:\lib
28
29# install programs in c:\bin
30BINDIR=c:\bin
31
32# look for includes here
33INCDIR=c:\include
34
35# options for installing programs
36IBOPT=-s
37
38
39CC=     gcc
40
41ifeq ($(DEBUG), 1)
42  CFLAGS= -Wall -pedantic -Zwin32 -I$(INCDIR) -g
43else
44  CFLAGS= -Wall -pedantic -Zwin32 -I$(INCDIR) -s
45endif
46
47CDEFS=  -D__NT__ -DWINNT  -DUSE_MSGAPI
48LFLAGS= -Zwin32 -Zsys -s
49COPT=
50
51
52TARGET= msgednt.exe
53TMPLIB= msgedrxw.a
54LIB=    ar
55MSGAPI= $(LIBDIR)/smapirxw.a
56
57objs=   addr.o     \
58	areas.o    \
59	bmg.o      \
60	charset.o  \
61	config.o   \
62	control.o  \
63	date.o     \
64	dialogs.o  \
65	dirute.o   \
66	dlgbox.o   \
67	dlist.o    \
68	echotoss.o \
69	environ.o  \
70	fconf.o    \
71	fecfg145.o \
72	fido.o     \
73	filedlg.o  \
74	flags.o    \
75	freq.o     \
76	gestr120.o \
77	getopts.o  \
78	group.o    \
79	help.o     \
80	helpcmp.o  \
81	helpinfo.o \
82	init.o     \
83	keycode.o  \
84	list.o     \
85	maintmsg.o \
86	makemsgn.o \
87	memextra.o \
88	menu.o     \
89	misc.o     \
90	mnu.o      \
91	msg.o      \
92	msged.o    \
93	mxbt.o     \
94	normalc.o  \
95	nshow.o    \
96	quick.o    \
97	quote.o    \
98	readmail.o \
99	screen.o   \
100	strextra.o \
101	system.o   \
102	template.o \
103	textfile.o \
104	timezone.o \
105	userlist.o \
106	vsev.o     \
107	vsevops.o  \
108	win.o      \
109	winntscr.o \
110	wrap.o
111
112all: $(TARGET)
113
114.c.o:
115	$(CC) $(COPT) $(CFLAGS) $(CDEFS) -c $<
116	$(LIB) r $(TMPLIB) $@
117
118$(TARGET): $(objs)
119	$(CC) $(LFLAGS) -o $(TARGET) msged.o $(TMPLIB) $(MSGAPI)
120
121clean:
122	del *.o
123        del *.bak
124
125distclean: clean
126	del $(TARGET)
127
128install: $(TARGET)
129	copy $(TARGET) $(BINDIR)
130
131