annotate dyncall/Nmakefile @ 425:2d9f1cb06352

- dynload: corrected comparison of size of optional PE header info to what is pointed to (ptr arithmetic was incorrect, only broke ReactOS builds and runtime, though)
author Tassilo Philipp
date Fri, 17 Dec 2021 18:50:58 +0100
parents d18f1a65e34f
children 71c884e610f0
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 # nmake makefile
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
23 # Nmakefile
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 TOP=..
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
29
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
30 !INCLUDE $(TOP)\buildsys\nmake\prolog.nmake
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
31
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
32
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
33 !IF "$(BUILD_OS)" == "windows"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
34
400
d18f1a65e34f windows lib name consistency changes for nmake builds
Tassilo Philipp
parents: 0
diff changeset
35 TARGETS = dyncall_s.lib #dyncall.lib dyncall.dll
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
36
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
37 OBJS = dyncall_call_$(BUILD_ARCH)_generic_masm.obj dyncall_vector.obj dyncall_vector.obj dyncall_callvm.obj dyncall_callvm_base.obj dyncall_api.obj dyncall_callf.obj dyncall_struct.obj
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
38
400
d18f1a65e34f windows lib name consistency changes for nmake builds
Tassilo Philipp
parents: 0
diff changeset
39 dyncall_s.lib: $(OBJS)
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
40 echo Creating library $@ ...
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
41 $(AR) $(ARFLAGS) /OUT:"$@" $(OBJS) > nul
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
42
400
d18f1a65e34f windows lib name consistency changes for nmake builds
Tassilo Philipp
parents: 0
diff changeset
43 dyncall.dll dyncall.lib: $(OBJS)
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
44 echo Creating shared/import library $@ ...
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
45 $(LD) /DLL $(LDFLAGS) $(OBJS) > nul
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
46
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
47
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
48 !ELSE IF "$(BUILD_OS)" == "nds"
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
49
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
50 TARGETS = libdyncall_s.a
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
51
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
52 OBJS = dyncall_call.o dyncall_vector.o dyncall_vector.o dyncall_callvm.o dyncall_callvm_base.o dyncall_api.o dyncall_callf.o
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
53
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
54 libdyncall_s.a: $(OBJS)
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
55 echo Creating library $@ ...
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
56 $(AR) -rc $(ARFLAGS) "$@" $(OBJS)
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
57
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
58 !ENDIF
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
59
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
60
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
61 !INCLUDE $(TOP)\buildsys\nmake\epilog.nmake
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
62