From d5da85da1daa374458b6b7afe2b89bb5a23b246e Mon Sep 17 00:00:00 2001 From: goffioul Date: Mon, 14 Feb 2005 10:25:12 +0000 Subject: [PATCH] Make WIN32 port use MSVCRT.DLL: required otherwise the library and the main code does not share the C runtime descriptors. --- msvc/Makefile.msvc6 | 16 ++++++++-------- msvc/c/Makefile.msvc6 | 4 ++-- msvc/gc/Makefile.msvc6 | 6 +++--- msvc/gmp/Makefile.msvc6 | 2 +- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/msvc/Makefile.msvc6 b/msvc/Makefile.msvc6 index d54ac7111..e59a5504b 100644 --- a/msvc/Makefile.msvc6 +++ b/msvc/Makefile.msvc6 @@ -23,9 +23,9 @@ TAR_DIR = %%CD%%\ecl-$(ECL_VERSION) # CC = cl -CFLAGS = +CFLAGS = /MD /DGC_NOT_DLL LIBS = eclgc.lib eclgmp.lib user32.lib ws2_32.lib -LDFLAGS = -Zi +LDFLAGS = -MD -Zi RM = del RMDIR = rmdir /Q /S MKDIR = mkdir @@ -115,7 +115,7 @@ compile.lsp: bare.lsp $(srcdir)/compile.lsp.in Makefile.msvc6 -e "s,@CFLAGS@,$(CFLAGS),g" \ -e "s,@ECL_CFLAGS@,,g" \ -e "s,@LDRPATH@,,g" \ - -e "s,@LDFLAGS@,/link /LIBPATH:~S,g" \ + -e "s,@LDFLAGS@,/MD /link /LIBPATH:~S,g" \ -e "s,@SHARED_LDFLAGS@,/LD,g" \ -e "s,@BUNDLE_LDFLAGS@,/LD,g" \ -e "s,@CLIBS@,user32.lib ws2_32.lib,g" \ @@ -145,7 +145,7 @@ cmp/cmpcfg.lsp: $(srcdir)/cmp/cmpcfg.lsp.in Makefile.msvc6 -e "s,@CFLAGS@,$(CFLAGS),g" \ -e "s,@ECL_CFLAGS@,,g" \ -e "s,@LDRPATH@,,g" \ - -e "s,@LDFLAGS@,/link /LIBPATH:~S,g" \ + -e "s,@LDFLAGS@,/MD /link /LIBPATH:~S,g" \ -e "s,@SHARED_LDFLAGS@,/LD,g" \ -e "s,@BUNDLE_LDFLAGS@,/LD,g" \ -e "s,@CLIBS@,user32.lib ws2_32.lib,g" \ @@ -234,13 +234,13 @@ doc: $(TARGETS) clean: clean_ecl clean_lisp clean_doc -$(RM) .gdbinit cd gc - -$(MAKE) -f Makefile.msvc6 clean + -$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" clean cd .. -for %h in (gc.h gc_local_alloc.h gc_pthread_redirects.h \ gc_config_macros.h leak_detector.h gc_typed.h) \ do $(RM) h\%h cd gmp - $(MAKE) -f Makefile.msvc6 clean + $(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" clean cd .. -$(RM) h\gmp.h clean_ecl: @@ -250,7 +250,7 @@ clean_ecl: ecl$(EXE) *.exp *.ilk *.pdb *.c *.obj ecl-config.bat) \ do $(RM) %i cd c - -$(MAKE) -f Makefile.msvc6 clean + -$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" clean cd .. clean_lisp: -for %i in (lsp cmp clos clx tk) do for %k in (%i.lib %i.fas %i.ilk %i.c %i.obj %i.pdb) do $(RM) %k @@ -258,7 +258,7 @@ clean_lisp: -$(RM) help.doc clean_doc: cd doc - -$(MAKE) -f Makefile.msvc6 clean + -$(MAKE) -f Makefile.msvc6 "ECL_THREADS = $(ECL_THREADS)" clean cd .. distclean: clean realclean: distclean diff --git a/msvc/c/Makefile.msvc6 b/msvc/c/Makefile.msvc6 index a70e6ffc2..615186bdf 100644 --- a/msvc/c/Makefile.msvc6 +++ b/msvc/c/Makefile.msvc6 @@ -16,7 +16,7 @@ THREADS_FLAGS= # TRUE_CC = cl CC = cl -CFLAGS = -c -Zi -I./ -I$(srcdir) -I$(HDIR) -I../h -I$(top_srcdir)/gc/include -DHAVE_ISATTY $(THREADS_FLAGS) +CFLAGS = -c -MD -Zi -I./ -I$(srcdir) -I$(HDIR) -I../h -I$(top_srcdir)/gc/include -DHAVE_ISATTY $(THREADS_FLAGS) -DGC_NOT_DLL # -Wall -W -Wfloat-equal -Wundef -Wendif-labels -Wpointer-arith -Wcast-align \ # -Wwrite-strings -Wconversion -Wsign-compare -Wmissing-prototypes -Wredundant-decls \ # -Wunreachable-code -Winline @@ -97,7 +97,7 @@ flatinstall: $(HFILES) ..\eclmin.lib: $(OBJS:.obj=.c) all_symbols.c $(OBJS) all_symbols.obj all_symbols2.obj -$(RM) $@ - $(LINK) -lib -nodefaultlib -out:$@ $(OBJS) + $(LINK) -lib -out:$@ $(OBJS) clean: -for %f in (..\h\config.h dpp dpp.obj $(DPP) external.h \ diff --git a/msvc/gc/Makefile.msvc6 b/msvc/gc/Makefile.msvc6 index 3444cecc1..83d340971 100644 --- a/msvc/gc/Makefile.msvc6 +++ b/msvc/gc/Makefile.msvc6 @@ -20,15 +20,15 @@ OBJS= alloc.obj reclaim.obj allchblk.obj misc.obj mach_dep.obj os_dep.obj mark_r all: gctest.exe cord\de.exe test_cpp.exe {$(srcdir)}.c{}.obj: - $(cc) $(cdebug) $(cflags) $(cvars) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -D__STDC__ -DGC_NOT_DLL $(THREADS_FLAGS) $< /Fo$*.obj + $(cc) /MD $(cdebug) $(cflags) $(cvars) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -D__STDC__ -DGC_NOT_DLL $(THREADS_FLAGS) $< /Fo$*.obj .cpp.obj: - $(cc) $(cdebug) $(cflags) $(cvars) -I$(srcdir)\include -DSILENT -DALL_INTERIOR_POINTERS -DGC_NOT_DLL $(THREADS_FLAGS) $*.CPP /Fo$*.obj + $(cc) /MD $(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 gc.lib: $(OBJS) - lib /NODEFAULTLIB /MACHINE:i386 /out:gc.lib $(OBJS) + lib /MACHINE:i386 /out:gc.lib $(OBJS) # The original NT SDK used lib32 instead of lib gctest.exe: tests\test.obj gc.lib diff --git a/msvc/gmp/Makefile.msvc6 b/msvc/gmp/Makefile.msvc6 index 423871a9f..9ed474d11 100644 --- a/msvc/gmp/Makefile.msvc6 +++ b/msvc/gmp/Makefile.msvc6 @@ -566,7 +566,7 @@ mpn_p4.lib: msvc-build $(MPN_P4_OBJS) gmp.lib: mpn_$(MPN_TYPE).lib $(GMP_ALL_OBJS) link -lib /NOLOGO /OUT:$@ $(GMP_ALL_OBJS) mpn_$(MPN_TYPE).lib -CFLAGS = /nologo /ML /W3 /GX /I "." /I $(srcdir) /I "$(srcdir)\mpn\generic" /D "WIN32" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "_MBCS" +CFLAGS = /nologo /MD /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$@ $?