Use a phash to decode directives
[platform/upstream/nasm.git] / Mkfiles / netware.mak
1 # -*- makefile -*- GNU Makefile for NetWare target
2
3 PROOT=.
4 OBJDIR=release
5
6 -include $(OBJDIR)/version.mak
7
8 TARGETS=nasm.nlm ndisasm.nlm
9
10 PERL=perl
11
12 CROSSPREFIX=i586-netware-
13
14 CC=$(CROSSPREFIX)gcc
15 LD=$(CC)
16
17 BINSUFFIX=.nlm
18
19 VERSION=$(NASM_MAJOR_VER).$(NASM_MINOR_VER).$(NASM_SUBMINOR_VER)
20
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
28
29 O = o
30
31 #-- Begin File Lists --#
32 # Edit in Makefile.in, not here!
33 NASM =  nasm.o nasmlib.o ver.o \
34         raa.o saa.o rbtree.o \
35         float.o insnsa.o insnsb.o \
36         directives.o \
37         assemble.o labels.o hashtbl.o crc64.o parser.o \
38         outform.o outlib.o nulldbg.o \
39         outbin.o outaout.o outcoff.o \
40         outelf.o outelf32.o outelf64.o \
41         outobj.o outas86.o outrdf2.o \
42         outdbg.o outieee.o outmacho32.o \
43         outmacho64.o preproc.o quote.o pptok.o \
44         macros.o listing.o eval.o exprlib.o stdscan.o \
45         strfunc.o tokhash.o regvals.o regflags.o
46
47 NDISASM = ndisasm.o disasm.o sync.o nasmlib.o ver.o \
48         insnsd.o insnsb.o insnsn.o regs.o regdis.o
49 #-- End File Lists --#
50
51 NASM_OBJ = $(addprefix $(OBJDIR)/,$(notdir $(NASM))) $(EOLIST)
52 NDIS_OBJ = $(addprefix $(OBJDIR)/,$(notdir $(NDISASM))) $(EOLIST)
53
54 VPATH  = *.c $(PROOT) $(PROOT)/output
55
56
57 all: $(OBJDIR) config.h $(TARGETS)
58
59 $(OBJDIR)/%.o: %.c
60         $(CC) $(CFLAGS) -c -o $@ $<
61
62 nasm$(BINSUFFIX): $(NASM_OBJ)
63         $(LD) $(LDFLAGS) -o $@ $^
64
65 ndisasm$(BINSUFFIX): $(NDIS_OBJ)
66         $(LD) $(LDFLAGS) -o $@ $^
67
68 $(OBJDIR):
69         @mkdir $@
70
71 config.h: $(PROOT)/Mkfiles/netware.mak
72         @echo Creating $@
73         @echo $(DL)/* $@ for NetWare target.$(DL) > $@
74         @echo $(DL)** Do not edit this file - it is created by make!$(DL) >> $@
75         @echo $(DL)** All your changes will be lost!!$(DL) >> $@
76         @echo $(DL)*/$(DL) >> $@
77         @echo $(DL)#ifndef __NETWARE__$(DL) >> $@
78         @echo $(DL)#error This $(notdir $@) is created for NetWare platform!$(DL) >> $@
79         @echo $(DL)#endif$(DL) >> $@
80         @echo $(DL)#define PACKAGE_VERSION "$(NASM_VER)"$(DL) >> $@
81         @echo $(DL)#define OS "i586-pc-libc-NetWare"$(DL) >> $@
82         @echo $(DL)#define HAVE_DECL_STRCASECMP 1$(DL) >> $@
83         @echo $(DL)#define HAVE_DECL_STRICMP 1$(DL) >> $@
84         @echo $(DL)#define HAVE_DECL_STRNCASECMP 1$(DL) >> $@
85         @echo $(DL)#define HAVE_DECL_STRNICMP 1$(DL) >> $@
86         @echo $(DL)#define HAVE_INTTYPES_H 1$(DL) >> $@
87         @echo $(DL)#define HAVE_LIMITS_H 1$(DL) >> $@
88         @echo $(DL)#define HAVE_MEMORY_H 1$(DL) >> $@
89         @echo $(DL)#define HAVE_SNPRINTF 1$(DL) >> $@
90         @echo $(DL)#define HAVE_STDBOOL_H 1$(DL) >> $@
91         @echo $(DL)#define HAVE_STDINT_H 1$(DL) >> $@
92         @echo $(DL)#define HAVE_STDLIB_H 1$(DL) >> $@
93         @echo $(DL)#define HAVE_STRCASECMP 1$(DL) >> $@
94         @echo $(DL)#define HAVE_STRCSPN 1$(DL) >> $@
95         @echo $(DL)#define HAVE_STRICMP 1$(DL) >> $@
96         @echo $(DL)#define HAVE_STRINGS_H 1$(DL) >> $@
97         @echo $(DL)#define HAVE_STRING_H 1$(DL) >> $@
98         @echo $(DL)#define HAVE_STRNCASECMP 1$(DL) >> $@
99         @echo $(DL)#define HAVE_STRNICMP 1$(DL) >> $@
100         @echo $(DL)#define HAVE_STRSPN 1$(DL) >> $@
101         @echo $(DL)#define HAVE_SYS_STAT_H 1$(DL) >> $@
102         @echo $(DL)#define HAVE_SYS_TYPES_H 1$(DL) >> $@
103         @echo $(DL)#define HAVE_UNISTD_H 1$(DL) >> $@
104         @echo $(DL)#define HAVE_VSNPRINTF 1$(DL) >> $@
105         @echo $(DL)#define STDC_HEADERS 1$(DL) >> $@
106         @echo $(DL)#ifndef _GNU_SOURCE$(DL) >> $@
107         @echo $(DL)#define _GNU_SOURCE 1$(DL) >> $@
108         @echo $(DL)#endif$(DL) >> $@
109         @echo $(DL)#define ldiv __CW_ldiv$(DL) >> $@
110
111 clean:
112         -$(RM) -r $(OBJDIR)
113         -$(RM) config.h
114
115 distclean: clean
116         -$(RM) $(TARGETS)
117
118 $(OBJDIR)/version.mak: $(PROOT)/version $(PROOT)/version.pl $(OBJDIR)
119         @$(PERL) $(PROOT)/version.pl make < $< > $@
120
121 #-- Magic hints to mkdep.pl --#
122 # @object-ending: ".o"
123 # @path-separator: ""
124 # @continuation: "\"
125 #-- Everything below is generated by mkdep.pl - do not edit --#
126 assemble.o: assemble.c assemble.h compiler.h config.h insns.h insnsi.h \
127  nasm.h nasmlib.h pptok.h preproc.h regs.h tables.h tokens.h
128 crc64.o: crc64.c compiler.h config.h nasmlib.h
129 directives.o: directives.c compiler.h config.h directives.h hashtbl.h \
130  insnsi.h nasm.h nasmlib.h pptok.h preproc.h regs.h
131 disasm.o: disasm.c compiler.h config.h disasm.h insns.h insnsi.h nasm.h \
132  nasmlib.h pptok.h preproc.h regdis.h regs.h sync.h tables.h tokens.h
133 eval.o: eval.c compiler.h config.h eval.h float.h insnsi.h labels.h nasm.h \
134  nasmlib.h pptok.h preproc.h regs.h
135 exprlib.o: exprlib.c compiler.h config.h insnsi.h nasm.h nasmlib.h pptok.h \
136  preproc.h regs.h
137 float.o: float.c compiler.h config.h float.h insnsi.h nasm.h nasmlib.h \
138  pptok.h preproc.h regs.h
139 hashtbl.o: hashtbl.c compiler.h config.h hashtbl.h insnsi.h nasm.h nasmlib.h \
140  pptok.h preproc.h regs.h
141 insnsa.o: insnsa.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
142  pptok.h preproc.h regs.h tokens.h
143 insnsb.o: insnsb.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
144  pptok.h preproc.h regs.h tokens.h
145 insnsd.o: insnsd.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
146  pptok.h preproc.h regs.h tokens.h
147 insnsn.o: insnsn.c compiler.h config.h insnsi.h tables.h
148 labels.o: labels.c compiler.h config.h hashtbl.h insnsi.h nasm.h nasmlib.h \
149  pptok.h preproc.h regs.h
150 snprintf.o: snprintf.c compiler.h config.h nasmlib.h
151 vsnprintf.o: vsnprintf.c compiler.h config.h nasmlib.h
152 listing.o: listing.c compiler.h config.h insnsi.h listing.h nasm.h nasmlib.h \
153  pptok.h preproc.h regs.h
154 macros.o: macros.c compiler.h config.h hashtbl.h insnsi.h nasm.h nasmlib.h \
155  outform.h pptok.h preproc.h regs.h tables.h
156 nasm.o: nasm.c assemble.h compiler.h config.h directives.h eval.h float.h \
157  insns.h insnsi.h labels.h listing.h nasm.h nasmlib.h outform.h parser.h \
158  pptok.h preproc.h raa.h regs.h saa.h stdscan.h tokens.h
159 nasmlib.o: nasmlib.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
160  pptok.h preproc.h regs.h tokens.h
161 ndisasm.o: ndisasm.c compiler.h config.h disasm.h insns.h insnsi.h nasm.h \
162  nasmlib.h pptok.h preproc.h regs.h sync.h tokens.h
163 nulldbg.o: nulldbg.c compiler.h config.h insnsi.h nasm.h nasmlib.h pptok.h \
164  preproc.h regs.h
165 outaout.o: outaout.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
166  outlib.h pptok.h preproc.h raa.h regs.h saa.h stdscan.h
167 outas86.o: outas86.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
168  outlib.h pptok.h preproc.h raa.h regs.h saa.h
169 outbin.o: outbin.c compiler.h config.h eval.h insnsi.h labels.h nasm.h \
170  nasmlib.h outform.h outlib.h pptok.h preproc.h regs.h saa.h stdscan.h
171 outcoff.o: outcoff.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
172  outlib.h pptok.h preproc.h raa.h regs.h saa.h
173 outdbg.o: outdbg.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
174  pptok.h preproc.h regs.h
175 outelf.o: outelf.c compiler.h config.h insnsi.h nasm.h nasmlib.h dwarf.h \
176  elfcommon.h outelf.h outform.h pptok.h preproc.h regs.h
177 outelf32.o: outelf32.c compiler.h config.h insnsi.h nasm.h nasmlib.h dwarf.h \
178  elf32.h elfcommon.h outelf.h outform.h outlib.h pptok.h preproc.h raa.h \
179  rbtree.h regs.h saa.h stdscan.h
180 outelf64.o: outelf64.c compiler.h config.h insnsi.h nasm.h nasmlib.h dwarf.h \
181  elf64.h elfcommon.h outelf.h outform.h outlib.h pptok.h preproc.h raa.h \
182  rbtree.h regs.h saa.h stdscan.h
183 outexe.o: outexe.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
184  pptok.h preproc.h regs.h
185 outform.o: outform.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
186  pptok.h preproc.h regs.h
187 outieee.o: outieee.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
188  outlib.h pptok.h preproc.h regs.h
189 outlib.o: outlib.c compiler.h config.h insnsi.h nasm.h nasmlib.h outlib.h \
190  pptok.h preproc.h regs.h
191 outmacho32.o: outmacho32.c compiler.h config.h insnsi.h nasm.h nasmlib.h \
192  outform.h outlib.h pptok.h preproc.h raa.h regs.h saa.h
193 outmacho64.o: outmacho64.c compiler.h config.h insnsi.h nasm.h nasmlib.h \
194  outform.h outlib.h pptok.h preproc.h raa.h regs.h saa.h
195 outobj.o: outobj.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
196  outlib.h pptok.h preproc.h regs.h stdscan.h
197 outrdf.o: outrdf.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
198  pptok.h preproc.h regs.h
199 outrdf2.o: outrdf2.c compiler.h config.h insnsi.h nasm.h nasmlib.h outform.h \
200  outlib.h pptok.h preproc.h rdoff.h regs.h saa.h
201 parser.o: parser.c compiler.h config.h float.h insns.h insnsi.h nasm.h \
202  nasmlib.h parser.h pptok.h preproc.h regs.h stdscan.h tables.h tokens.h
203 pptok.o: pptok.c compiler.h config.h hashtbl.h nasmlib.h pptok.h preproc.h
204 preproc.o: preproc.c compiler.h config.h hashtbl.h insnsi.h nasm.h nasmlib.h \
205  pptok.h preproc.h quote.h regs.h stdscan.h tables.h tokens.h
206 quote.o: quote.c compiler.h config.h nasmlib.h quote.h
207 raa.o: raa.c compiler.h config.h nasmlib.h raa.h
208 rbtree.o: rbtree.c compiler.h config.h rbtree.h
209 regdis.o: regdis.c regdis.h regs.h
210 regflags.o: regflags.c compiler.h config.h insnsi.h nasm.h nasmlib.h pptok.h \
211  preproc.h regs.h tables.h
212 regs.o: regs.c compiler.h config.h insnsi.h tables.h
213 regvals.o: regvals.c compiler.h config.h insnsi.h tables.h
214 saa.o: saa.c compiler.h config.h nasmlib.h saa.h
215 stdscan.o: stdscan.c compiler.h config.h insns.h insnsi.h nasm.h nasmlib.h \
216  pptok.h preproc.h quote.h regs.h stdscan.h tokens.h
217 strfunc.o: strfunc.c compiler.h config.h insnsi.h nasm.h nasmlib.h pptok.h \
218  preproc.h regs.h
219 sync.o: sync.c compiler.h config.h nasmlib.h sync.h
220 tokhash.o: tokhash.c compiler.h config.h hashtbl.h insns.h insnsi.h nasm.h \
221  nasmlib.h pptok.h preproc.h regs.h tokens.h
222 ver.o: ver.c compiler.h config.h insnsi.h nasm.h nasmlib.h pptok.h preproc.h \
223  regs.h version.h