1 # -*- makefile -*- for the C-level run-time support for SBCL
3 # This software is part of the SBCL system. See the README file for
6 # This software is derived from the CMU CL system, which was
7 # written at Carnegie Mellon University and released into the
8 # public domain. The software is in the public domain and is
9 # provided with absolutely no warranty. See the COPYING and CREDITS
10 # files for more information.
14 ASSEM_SRC = x86-assem.S
17 OS_SRC = win32-os.c x86-win32-os.c pthreads_win32.c
19 ifdef LISP_FEATURE_SB_LINKABLE_RUNTIME
21 USE_LIBSBCL = -Wl,--whole-archive libsbcl.a -Wl,--no-whole-archive
24 # The "--Wl,--export-dynamic" flags are here to help people
25 # experimenting with callbacks from C to SBCL, by allowing linkage to
26 # SBCL src/runtime/*.c symbols from C. Work on this is good, but it's
27 # definitely bleeding edge and not particularly stable. In particular,
28 # not only are the workarounds for the GC relocating Lisp code and
29 # data unstable, but even the basic calling convention might end up
30 # being unstable. Unless you want to do some masochistic maintenance
31 # work when new releases of SBCL come out, please don't try to build
32 # real code on this until a coherent stable interface has been added.
33 # (You *are* encouraged to design and implement a coherent stable
34 # interface, though.:-| As far as I (WHN 2002-05-19) know, no one is
35 # working on one and it would be a nice thing to have.)
36 LINKFLAGS = -Wl,-export-all-symbols
37 LIBSBCL += mswin64.def mswin.def
38 USE_LIBSBCL += -Wl,mswin64.def -Wl,mswin.def
41 OS_LIBS = -l ws2_32 -ladvapi32
42 ifdef LISP_FEATURE_SB_CORE_COMPRESSION
46 GC_SRC = gencgc.c hopscotch.c
48 CFLAGS = -g -Wall -O3 \
49 -fno-omit-frame-pointer -march=i686 -DWINVER=0x0501 \
50 -D__W32API_USE_DLLIMPORT__ \
51 -mpreferred-stack-boundary=2
52 # We assume Windows ABI 4-byte alignment, but GCC decided to change to
57 # Nothing to do for after-grovel-headers.
58 .PHONY: after-grovel-headers