Record XREFs for symbols that name functions.
[sbcl.git] / src / runtime / Config.x86-64-win32
blob3c922ffd3a11b9c29673ab18f7b8a3c4c0ecd1e3
1 # This software is part of the SBCL system. See the README file for
2 # more information.
4 # This software is derived from the CMU CL system, which was
5 # written at Carnegie Mellon University and released into the
6 # public domain. The software is in the public domain and is
7 # provided with absolutely no warranty. See the COPYING and CREDITS
8 # files for more information.
10 TARGET=sbcl.exe
12 ASSEM_SRC = x86-64-assem.S
13 ARCH_SRC = x86-64-arch.c
15 OS_SRC = win32-os.c x86-64-win32-os.c
17 ifdef LISP_FEATURE_SB_LINKABLE_RUNTIME
18   LIBSBCL = libsbcl.a
19   USE_LIBSBCL = -Wl,--whole-archive libsbcl.a -Wl,--no-whole-archive
20 endif
22 # The "--Wl,--export-dynamic" flags are here to help people
23 # experimenting with callbacks from C to SBCL, by allowing linkage to
24 # SBCL src/runtime/*.c symbols from C. Work on this is good, but it's
25 # definitely bleeding edge and not particularly stable. In particular,
26 # not only are the workarounds for the GC relocating Lisp code and
27 # data unstable, but even the basic calling convention might end up
28 # being unstable. Unless you want to do some masochistic maintenance
29 # work when new releases of SBCL come out, please don't try to build
30 # real code on this until a coherent stable interface has been added.
31 # (You *are* encouraged to design and implement a coherent stable
32 # interface, though.:-| As far as I (WHN 2002-05-19) know, no one is
33 # working on one and it would be a nice thing to have.)
34 LINKFLAGS = -Wl,-export-all-symbols
35 LIBSBCL += mswin64.def mswin.def
36 USE_LIBSBCL += -Wl,mswin64.def -Wl,mswin.def
37 __LDFLAGS__ =
39 OS_LIBS = -l ws2_32 -ladvapi32 -lm
40 ifdef LISP_FEATURE_SB_CORE_COMPRESSION
41   OS_LIBS += -lzstd
42 endif
43 ifdef LISP_FEATURE_SB_FUTEX
44   OS_LIBS += -lSynchronization
45 endif
47 ifdef LISP_FEATURE_IMMOBILE_SPACE
48   GC_SRC = fullcgc.c gencgc.c traceroot.c immobile-space.c
49 else
50   GC_SRC = fullcgc.c gencgc.c traceroot.c
51 endif
53 # -Wno-type-limits suppresses a ton of warnings from 'grovel-headers'
54 # which seems to produce C code in which a comparison is always false.
55 CFLAGS += -g -W -Wall \
56        -Wno-unused-function -Wno-unused-parameter -Wno-cast-function-type \
57        -Wno-type-limits \
58        -fno-omit-frame-pointer \
59        -O5 -m64 -DWINVER=0x0501 \
60        -D__W32API_USE_DLLIMPORT__
62 CC = gcc
64 ifeq ($(shell $(LD) --disable-dynamicbase 2>&1 | grep disable-dynamicbase),)
65 LINKFLAGS += -Wl,--disable-dynamicbase
66 endif