- Make it compile again under MSVC/Win32

- Use -MDd when debug is enabled
This commit is contained in:
goffioul 2005-09-20 08:39:39 +00:00
parent 51136f3ef4
commit 03240111d0
8 changed files with 30 additions and 13 deletions

View file

@ -52,10 +52,12 @@ TAR_DIR = %%CD%%\ecl-$(ECL_VERSION)
#
CC = cl
CFLAGS = -MD -DGC_NOT_DLL -nologo
MFLAGS = -MD
CFLAGS = -DGC_NOT_DLL -nologo
LIBS = eclgc.lib eclgmp.lib user32.lib ws2_32.lib
LDFLAGS = -MD
LDFLAGS =
SHARED_LDFLAGS = -LD
GCFLAGS = nodebug=1
RM = del
RMDIR = rmdir /Q /S
MKDIR = mkdir
@ -95,9 +97,11 @@ DEF = ecl.def
# Enable debug information
#
!if "$(ECL_DEBUG)" != ""
CFLAGS = $(CFLAGS) -Zi
LDFLAGS = $(LDFLAGS) -Zi
CFLAGS = -Zi $(CFLAGS)
LDFLAGS = -Zi $(LDFLAGS)
SHARED_LDFLAGS = -LDd
MFLAGS = -MDd
GCFLAGS =
!endif
# Additional configuration for thread support
@ -134,6 +138,9 @@ ECL_FEATURES = (cons :wants-clx $(ECL_FEATURES))
!MESSAGE $(ECL_MODULES)
!MESSAGE $(ECL_FEATURES)
CFLAGS = $(MFLAGS) $(CFLAGS)
LDFLAGS = $(MFLAGS) $(LDFLAGS)
# Build rules
#
all: $(TARGETS) doc ecl-config.bat
@ -245,7 +252,7 @@ eclmin.lib: eclgmp.lib eclgc.lib lsp/config.lsp
cd ..
eclgc.lib:
cd gc
$(MAKE) nodebug=1 "ECL_THREADS = $(ECL_THREADS)" gc.lib
$(MAKE) $(GCFLAGS) "ECL_THREADS = $(ECL_THREADS)" "MFLAGS = $(MFLAGS)" gc.lib
$(CP) gc.lib ..\eclgc.lib
cd ..
for %h in (gc.h gc_local_alloc.h gc_pthread_redirects.h \
@ -253,7 +260,7 @@ eclgc.lib:
do $(CP) $(srcdir)\gc\include\%h h\%h
eclgmp.lib:
cd gmp
$(MAKE) "MPN_TYPE = $(GMP_TYPE)"
$(MAKE) "MPN_TYPE = $(GMP_TYPE)" "MFLAGS = $(MFLAGS)"
$(CP) gmp.lib ..\eclgmp.lib
$(CP) gmp.h ..\h\gmp.h
cd ..

View file

@ -79,7 +79,7 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/gc/mkinstalldirs
SUBDIR = c gc gmp
LIBRARIES =
LSP_LIBRARIES = cmp.fas clx.fas sockets.fas sysfun.lsp
TARGETS = ecl$(EXE)
TARGETS = ecl2$(EXE)
DEF = ecl.def
# Additional configuration for thread support

View file

@ -16,7 +16,7 @@ THREADS_FLAGS=
#
TRUE_CC = cl
CC = cl
CFLAGS = -c $(ECL_CFLAGS) -I./ -I$(srcdir) -I$(HDIR) -I../h -I$(top_srcdir)/gc/include -DHAVE_ISATTY $(THREADS_FLAGS)
CFLAGS = -c $(ECL_CFLAGS) -I./ -I$(srcdir) -I$(HDIR) -I../h -I$(top_srcdir)/gc/include $(THREADS_FLAGS)
# -Wall -W -Wfloat-equal -Wundef -Wendif-labels -Wpointer-arith -Wcast-align \
# -Wwrite-strings -Wconversion -Wsign-compare -Wmissing-prototypes -Wredundant-decls \
# -Wunreachable-code -Winline

View file

@ -1392,7 +1392,7 @@ EXPORTS
cl_slot_value
; clos\combin.lsp
clos_simple_code_walker
;clos_simple_code_walker
cl_method_combination_error
cl_invalid_method_error

View file

@ -1369,7 +1369,7 @@ EXPORTS
cl_slot_value
; clos\combin.lsp
clos_simple_code_walker
;clos_simple_code_walker
cl_method_combination_error
cl_invalid_method_error

View file

@ -15,15 +15,17 @@ THREADS_OBJ=
THREADS_FLAGS=
!endif
MFLAGS = /MD
OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj mach_dep.obj os_dep.obj mark_rts.obj headers.obj mark.obj obj_map.obj blacklst.obj finalize.obj new_hblk.obj dbg_mlc.obj malloc.obj stubborn.obj dyn_load.obj typd_mlc.obj ptr_chck.obj gc_cpp.obj mallocx.obj $(THREADS_OBJ)
all: gctest.exe cord\de.exe test_cpp.exe
{$(srcdir)}.c{}.obj:
$(cc) $(cdebug) $(cflags) $(cvarsdll) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -D__STDC__ -DGC_NOT_DLL $(THREADS_FLAGS) $< /Fo$*.obj
$(cc) $(MFLAGS) $(cdebug) $(cflags) $(cvars) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -D__STDC__ -DGC_NOT_DLL $(THREADS_FLAGS) $< /Fo$*.obj
.cpp.obj:
$(cc) /MD $(cdebug) $(cflags) $(cvarsdll) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -DGC_NOT_DLL $(THREADS_FLAGS) $*.CPP /Fo$*.obj
$(cc) $(MFLAGS) $(cdebug) $(cflags) $(cvars) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -DGC_NOT_DLL $(THREADS_FLAGS) $*.CPP /Fo$*.obj
$(OBJS) tests\test.obj: $(srcdir)\include\private\gc_priv.h $(srcdir)\include\private\gc_hdrs.h $(srcdir)\include\gc.h $(srcdir)\include\private\gcconfig.h $(srcdir)\include\private\gc_locks.h $(srcdir)\include\private\gc_pmark.h $(srcdir)\include\gc_mark.h

View file

@ -566,7 +566,8 @@ mpn_p4.lib: msvc-build $(MPN_P4_OBJS)
gmp.lib: mpn_$(MPN_TYPE).lib $(GMP_ALL_OBJS)
link -lib /NOLOGO /OUT:$@ *.obj mpf\*.obj mpz\*.obj mpq\*.obj $(PRINTF_OBJS) $(SCANF_OBJS) mpn_$(MPN_TYPE).lib
CFLAGS = /nologo /MD /W3 /GX /I "." /I $(srcdir) /I "$(srcdir)\mpn\generic" /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "_MBCS"
MFLAGS = /MD
CFLAGS = /nologo $(MFLAGS) /W3 /GX /I "." /I $(srcdir) /I "$(srcdir)\mpn\generic" /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "_MBCS"
{$(srcdir)\mpn\generic}.c{mpn\generic}.obj:
cl -c $(CFLAGS) /Fo$@ $?

View file

@ -25,6 +25,9 @@
#define ECL_DYNAMIC_VV
#endif
/* Use GNU Multiple Precision library for bignums */
#define WITH_GMP 1
/* Userland threads? */
/* #undef ECL_THREADS */
@ -186,6 +189,10 @@ typedef unsigned int cl_hashkey;
/* #undef HAVE_MACH_O_DYLD_H */
/* POSIX signals */
/* #undef HAVE_SIGPROCMASK */
/* isatty() checks whether a file is connected to a */
#define HAVE_ISATTY 1
/* compiler understands long long */
#define HAVE_LONG_LONG 1
/* what characters are used to mark beginning of new line */
#define ECL_NEWLINE_IS_CRLF 1