Fix memory management issues with expanded %include
[nasm/avx512.git] / Mkfiles / netware.mak
blob8b786a71072ed57c8678e94d1b5a2c99257c1166
1 # -* makefile -*- GNU Makefile for NetWare target
3 PROOT=.
4 OBJDIR=release
6 -include $(OBJDIR)/version.inc
8 TARGETS=nasm.nlm ndisasm.nlm
10 PERL=perl
12 CROSSPREFIX=i586-netware-
14 CC=$(CROSSPREFIX)gcc
15 LD=$(CC)
17 BINSUFFIX=.nlm
19 VERSION=$(NASM_MAJOR_VER).$(NASM_MINOR_VER).$(NASM_SUBMINOR_VER)
21 CFLAGS=-g -O2 -Wall -std=c99 -pedantic -D__NETWARE__ -D_POSIX_SOURCE -DHAVE_CONFIG_H -I.
22 LDFLAGS=-Wl,--nlm-description="NASM $(NASM_VER) - the Netwide Assembler (gcc build)"
23 LDFLAGS+=-Wl,--nlm-copyright="NASM is licensed under LGPL."
24 LDFLAGS+=-Wl,--nlm-version=$(VERSION)
25 LDFLAGS+=-Wl,--nlm-kernelspace
26 LDFLAGS+=-Wl,--nlm-posixflag
27 LDFLAGS+=-s
29 O = o
31 NASM = nasm.$(O) nasmlib.$(O) float.$(O) insnsa.$(O) insnsb.$(O) \
32 assemble.$(O) labels.$(O) hashtbl.$(O) crc64.$(O) parser.$(O) \
33 outform.$(O) output/outbin.$(O) \
34 output/outaout.$(O) output/outcoff.$(O) \
35 output/outelf32.$(O) output/outelf64.$(O) \
36 output/outobj.$(O) output/outas86.$(O) output/outrdf2.$(O) \
37 output/outdbg.$(O) output/outieee.$(O) output/outmacho.$(O) \
38 preproc.$(O) quote.$(O) pptok.$(O) macros.$(O) \
39 listing.$(O) eval.$(O) exprlib.$(O) stdscan.$(O) tokhash.$(O) \
40 regvals.$(O) regflags.$(O)
42 NDISASM = ndisasm.$(O) disasm.$(O) sync.$(O) nasmlib.$(O) \
43 insnsd.$(O) insnsb.$(O) insnsn.$(O) regs.$(O) regdis.$(O)
45 NASM_OBJ = $(addprefix $(OBJDIR)/,$(notdir $(NASM))) $(EOLIST)
46 NDIS_OBJ = $(addprefix $(OBJDIR)/,$(notdir $(NDISASM))) $(EOLIST)
48 VPATH = *.c $(PROOT) $(PROOT)/output
51 all: $(OBJDIR) config.h $(TARGETS)
53 $(OBJDIR)/%.o: %.c
54 $(CC) $(CFLAGS) -c -o $@ $<
56 nasm$(BINSUFFIX): $(NASM_OBJ)
57 $(LD) $(LDFLAGS) -o $@ $^
59 ndisasm$(BINSUFFIX): $(NDIS_OBJ)
60 $(LD) $(LDFLAGS) -o $@ $^
62 $(OBJDIR):
63 @mkdir $@
65 config.h: $(PROOT)/Mkfiles/netware.mak
66 @echo Creating $@
67 @echo $(DL)/* $@ for NetWare target.$(DL) > $@
68 @echo $(DL)** Do not edit this file - it is created by make!$(DL) >> $@
69 @echo $(DL)** All your changes will be lost!!$(DL) >> $@
70 @echo $(DL)*/$(DL) >> $@
71 @echo $(DL)#ifndef __NETWARE__$(DL) >> $@
72 @echo $(DL)#error This $(notdir $@) is created for NetWare platform!$(DL) >> $@
73 @echo $(DL)#endif$(DL) >> $@
74 @echo $(DL)#define PACKAGE_VERSION "$(NASM_VER)"$(DL) >> $@
75 @echo $(DL)#define OS "i586-pc-libc-NetWare"$(DL) >> $@
76 @echo $(DL)#define HAVE_DECL_STRCASECMP 1$(DL) >> $@
77 @echo $(DL)#define HAVE_DECL_STRICMP 1$(DL) >> $@
78 @echo $(DL)#define HAVE_DECL_STRNCASECMP 1$(DL) >> $@
79 @echo $(DL)#define HAVE_DECL_STRNICMP 1$(DL) >> $@
80 @echo $(DL)#define HAVE_INTTYPES_H 1$(DL) >> $@
81 @echo $(DL)#define HAVE_LIMITS_H 1$(DL) >> $@
82 @echo $(DL)#define HAVE_MEMORY_H 1$(DL) >> $@
83 @echo $(DL)#define HAVE_SNPRINTF 1$(DL) >> $@
84 @echo $(DL)#define HAVE_STDBOOL_H 1$(DL) >> $@
85 @echo $(DL)#define HAVE_STDINT_H 1$(DL) >> $@
86 @echo $(DL)#define HAVE_STDLIB_H 1$(DL) >> $@
87 @echo $(DL)#define HAVE_STRCASECMP 1$(DL) >> $@
88 @echo $(DL)#define HAVE_STRCSPN 1$(DL) >> $@
89 @echo $(DL)#define HAVE_STRICMP 1$(DL) >> $@
90 @echo $(DL)#define HAVE_STRINGS_H 1$(DL) >> $@
91 @echo $(DL)#define HAVE_STRING_H 1$(DL) >> $@
92 @echo $(DL)#define HAVE_STRNCASECMP 1$(DL) >> $@
93 @echo $(DL)#define HAVE_STRNICMP 1$(DL) >> $@
94 @echo $(DL)#define HAVE_STRSPN 1$(DL) >> $@
95 @echo $(DL)#define HAVE_SYS_STAT_H 1$(DL) >> $@
96 @echo $(DL)#define HAVE_SYS_TYPES_H 1$(DL) >> $@
97 @echo $(DL)#define HAVE_UNISTD_H 1$(DL) >> $@
98 @echo $(DL)#define HAVE_VSNPRINTF 1$(DL) >> $@
99 @echo $(DL)#define STDC_HEADERS 1$(DL) >> $@
100 @echo $(DL)#ifndef _GNU_SOURCE$(DL) >> $@
101 @echo $(DL)#define _GNU_SOURCE 1$(DL) >> $@
102 @echo $(DL)#endif$(DL) >> $@
103 @echo $(DL)#define ldiv __CW_ldiv$(DL) >> $@
105 clean:
106 -$(RM) -r $(OBJDIR)
107 -$(RM) config.h
109 distclean: clean
110 -$(RM) $(TARGETS)
112 $(OBJDIR)/version.inc: $(PROOT)/version $(PROOT)/version.pl $(OBJDIR)
113 @$(PERL) $(PROOT)/version.pl make < $< > $@
115 #-- Magic hints to mkdep.pl --#
116 # @object-ending: ".o"
117 # @path-separator: ""
118 # @continuation: "\"
119 #-- Everything below is generated by mkdep.pl - do not edit --#
120 assemble.o: assemble.c assemble.h compiler.h config.h insns.h insnsi.h \
121 nasm.h nasmlib.h regs.h tables.h tokens.h version.h
122 crc64.o: crc64.c compiler.h config.h
123 disasm.o: disasm.c compiler.h config.h disasm.h insns.h insnsi.h nasm.h \
124 nasmlib.h regdis.h regs.h sync.h tables.h tokens.h version.h
125 eval.o: eval.c compiler.h config.h eval.h float.h insnsi.h labels.h nasm.h \
126 nasmlib.h regs.h version.h
127 exprlib.o: exprlib.c compiler.h config.h insnsi.h nasm.h nasmlib.h regs.h \
128 version.h
129 float.o: float.c compiler.h config.h float.h insnsi.h nasm.h nasmlib.h \
130 regs.h version.h
131 hashtbl.o: hashtbl.c compiler.h config.h hashtbl.h insnsi.h nasm.h nasmlib.h \
132 regs.h version.h
133 insnsa.o: insnsa.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
134 regs.h tokens.h version.h
135 insnsb.o: insnsb.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
136 regs.h tokens.h version.h
137 insnsd.o: insnsd.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
138 regs.h tokens.h version.h
139 insnsn.o: insnsn.c compiler.h config.h insnsi.h tables.h
140 labels.o: labels.c compiler.h config.h hashtbl.h insnsi.h nasm.h nasmlib.h \
141 regs.h version.h
142 snprintf.o: snprintf.c compiler.h config.h nasmlib.h
143 vsnprintf.o: vsnprintf.c compiler.h config.h nasmlib.h
144 listing.o: listing.c compiler.h config.h insnsi.h listing.h nasm.h nasmlib.h \
145 regs.h version.h
146 macros.o: macros.c compiler.h config.h insnsi.h tables.h
147 nasm.o: nasm.c assemble.h compiler.h config.h eval.h float.h insns.h \
148 insnsi.h labels.h listing.h nasm.h nasmlib.h outform.h parser.h pptok.h \
149 preproc.h regs.h stdscan.h tokens.h version.h
150 nasmlib.o: nasmlib.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
151 regs.h tokens.h version.h
152 ndisasm.o: ndisasm.c compiler.h config.h disasm.h insns.h insnsi.h nasm.h \
153 nasmlib.h regs.h sync.h tokens.h version.h
154 outform.o: outform.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
155 regs.h version.h
156 outaout.o: outaout.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
157 regs.h stdscan.h version.h
158 outas86.o: outas86.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
159 regs.h version.h
160 outbin.o: outbin.c compiler.h config.h eval.h insnsi.h labels.h nasm.h \
161 nasmlib.h outform.h regs.h stdscan.h version.h
162 outcoff.o: outcoff.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
163 regs.h version.h
164 outdbg.o: outdbg.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
165 regs.h version.h
166 outelf32.o: outelf32.c compiler.h config.h insnsi.h nasm.h nasmlib.h \
167 outform.h regs.h stdscan.h version.h wsaa.h
168 outelf64.o: outelf64.c compiler.h config.h insnsi.h nasm.h nasmlib.h \
169 outform.h regs.h stdscan.h version.h wsaa.h
170 outieee.o: outieee.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
171 regs.h version.h
172 outmacho.o: outmacho.c compiler.h config.h insnsi.h nasm.h nasmlib.h \
173 outform.h regs.h version.h
174 outobj.o: outobj.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
175 regs.h stdscan.h version.h
176 outrdf.o: outrdf.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
177 regs.h version.h
178 outrdf2.o: outrdf2.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
179 rdoff.h regs.h version.h
180 parser.o: parser.c compiler.h config.h float.h insns.h insnsi.h nasm.h \
181 nasmlib.h parser.h regs.h stdscan.h tables.h tokens.h version.h
182 pptok.o: pptok.c compiler.h config.h hashtbl.h nasmlib.h pptok.h preproc.h
183 preproc.o: preproc.c compiler.h config.h hashtbl.h insnsi.h nasm.h nasmlib.h \
184 pptok.h preproc.h quote.h regs.h stdscan.h tables.h tokens.h version.h
185 quote.o: quote.c compiler.h config.h nasmlib.h quote.h
186 regdis.o: regdis.c regdis.h regs.h
187 regflags.o: regflags.c compiler.h config.h insnsi.h nasm.h nasmlib.h regs.h \
188 tables.h version.h
189 regs.o: regs.c compiler.h config.h insnsi.h tables.h
190 regvals.o: regvals.c compiler.h config.h insnsi.h tables.h
191 stdscan.o: stdscan.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
192 quote.h regs.h stdscan.h tokens.h version.h
193 sync.o: sync.c compiler.h config.h nasmlib.h sync.h
194 tokhash.o: tokhash.c compiler.h config.h hashtbl.h insns.h insnsi.h nasm.h \
195 nasmlib.h regs.h tokens.h version.h