annotate buildsys/nmake/tool_msvc.nmake @ 357:d982a00c2177

- PPC64 asm syntax fix, specifying explicitly comparison mode for cmpi (newer toolchains complain, older ones took optional field of instruction which happened to be same value)
author Tassilo Philipp
date Tue, 25 Feb 2020 18:16:13 +0100
parents 3e629dc19168
children f6430d194be6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
1 #//////////////////////////////////////////////////////////////////////////////
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
2 #
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
3 # Copyright (c) 2007,2009 Daniel Adler <dadler@uni-goettingen.de>,
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
4 # Tassilo Philipp <tphilipp@potion-studios.com>
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
5 #
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
6 # Permission to use, copy, modify, and distribute this software for any
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
8 # copyright notice and this permission notice appear in all copies.
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
9 #
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
17 #
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
18 #//////////////////////////////////////////////////////////////////////////////
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
19
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
20 #///////////////////////////////////////////////////
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
21 #
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
22 # MSVC nmake rules
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
23 # tool_MSVC.nmake
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
24 #
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
25 #///////////////////////////////////////////////////
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
26
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
27
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
28
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
29 CC =cl
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
30 CXX =cl
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
31 AR =lib
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
32 !IF "$(BUILD_ARCH)" == "x64"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
33 AS =ml64
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
34 !ELSE IF "$(BUILD_ARCH)" == "x86"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
35 AS =ml
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
36 !ENDIF
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
37 LD =link
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
38
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
39 ASFLAGS = /c /nologo
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
40 CFLAGS = /EHsc /GR- /GS- /Ox /c /nologo /I$(TOP)\dyncall /I$(TOP)\dyncallback
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
41 CXXFLAGS = $(CFLAGS)
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
42 LDFLAGS = /OPT:REF /OPT:ICF /NOLOGO
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
43 ARFLAGS = /NOLOGO
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
44
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
45
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
46 .SUFFIXES:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
47 .SUFFIXES: .obj .exe .dll .lib .pdf .c .cpp .asm .tex .cc
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
48
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
49
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
50 .asm.obj:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
51 echo .asm.obj: Assembling $< ...
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
52 $(AS) $(ASFLAGS) /Fo$@ $<
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
53
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
54 .c.obj:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
55 echo .c.obj: Compiling $< ...
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
56 $(CC) $(CFLAGS) /Fo$@ $<
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
57
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
58 .cpp.obj:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
59 echo .cpp.obj: Compiling $< ...
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
60 $(CXX) $(CXXFLAGS) /Fo$@ $<
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
61
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
62 .cc.obj:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
63 echo .cc.obj: Compiling $< ...
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
64 $(CXX) $(CXXFLAGS) /Fo$@ $<
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
65
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
66 .tex.pdf:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
67 pdflatex $<