]> git.llucax.com Git - software/druntime.git/blobdiff - src/compiler/dmd/win32.mak
cover.d does not produce output
[software/druntime.git] / src / compiler / dmd / win32.mak
index 0c2ea1e6011175ce7593240e8af2c3f231469dcd..dc9ae28bd3d02fc238ea787987bbe084475bbb12 100644 (file)
-# Makefile to build the compiler runtime D library for Win32\r
-# Designed to work with DigitalMars make\r
-# Targets:\r
-#      make\r
-#              Same as make all\r
-#      make lib\r
-#              Build the compiler runtime library\r
-#   make doc\r
-#       Generate documentation\r
-#      make clean\r
-#              Delete unneeded files created by build process\r
-\r
-LIB_TARGET=druntime-rt-dmd.lib\r
-LIB_MASK=druntime-rt-dmd*.lib\r
-\r
-CP=xcopy /y\r
-RM=del /f\r
-MD=mkdir\r
-\r
-CFLAGS=-mn -6 -r $(ADD_CFLAGS)\r
-#CFLAGS=-g -mn -6 -r $(ADD_CFLAGS)\r
-\r
-DFLAGS=-release -O -inline -w -nofloat $(ADD_DFLAGS)\r
-#DFLAGS=-g -w -nofloat $(ADD_DFLAGS)\r
-\r
-TFLAGS=-O -inline -w  -nofloat $(ADD_DFLAGS)\r
-#TFLAGS=-g -w -nofloat $(ADD_DFLAGS)\r
-\r
-DOCFLAGS=-version=DDoc\r
-\r
-CC=dmc\r
-LC=lib\r
-DC=dmd\r
-\r
-LIB_DEST=..\..\..\lib\r
-\r
-.DEFAULT: .asm .c .cpp .d .html .obj\r
-\r
-.asm.obj:\r
-       $(CC) -c $<\r
-\r
-.c.obj:\r
-       $(CC) -c $(CFLAGS) $< -o$@\r
-\r
-.cpp.obj:\r
-       $(CC) -c $(CFLAGS) $< -o$@\r
-\r
-.d.obj:\r
-       $(DC) -c $(DFLAGS) $< -of$@\r
-\r
-.d.html:\r
-       $(DC) -c -o- $(DOCFLAGS) -Df$*.html dmd.ddoc $<\r
-\r
-targets : lib doc\r
-all     : lib doc\r
-lib     : dmd.lib\r
-doc     : dmd.doc\r
-\r
-######################################################\r
-\r
-OBJ_BASE= \\r
-    aaA.obj \\r
-    aApply.obj \\r
-    aApplyR.obj \\r
-    adi.obj \\r
-    arrayassign.obj \\r
-    arraybyte.obj \\r
-    arraycast.obj \\r
-    arraycat.obj \\r
-    arraydouble.obj \\r
-    arrayfloat.obj \\r
-    arrayint.obj \\r
-    arrayreal.obj \\r
-    arrayshort.obj \\r
-    cast_.obj \\r
-    complex.obj \\r
-    cover.obj \\r
-    critical.obj \\r
-    deh.obj \\r
-    dmain2.obj \\r
-    invariant.obj \\r
-    invariant_.obj \\r
-    lifetime.obj \\r
-    memory.obj \\r
-    memset.obj \\r
-    monitor.obj \\r
-    obj.obj \\r
-    object_.obj \\r
-    qsort.obj \\r
-    switch_.obj \\r
-    trace.obj\r
-# NOTE: trace.obj and cover.obj are not necessary for a successful build\r
-#       as both are used for debugging features (profiling and coverage)\r
-# NOTE: a pre-compiled minit.obj has been provided in dmd for Win32 and\r
-#       minit.asm is not used by dmd for linux\r
-\r
-OBJ_UTIL= \\r
-    util\console.obj \\r
-    util\cpuid.obj \\r
-    util\ctype.obj \\r
-    util\string.obj \\r
-    util\utf.obj\r
-\r
-OBJ_TI= \\r
-    typeinfo\ti_AC.obj \\r
-    typeinfo\ti_Acdouble.obj \\r
-    typeinfo\ti_Acfloat.obj \\r
-    typeinfo\ti_Acreal.obj \\r
-    typeinfo\ti_Adouble.obj \\r
-    typeinfo\ti_Afloat.obj \\r
-    typeinfo\ti_Ag.obj \\r
-    typeinfo\ti_Aint.obj \\r
-    typeinfo\ti_Along.obj \\r
-    typeinfo\ti_Areal.obj \\r
-    typeinfo\ti_Ashort.obj \\r
-    typeinfo\ti_byte.obj \\r
-    typeinfo\ti_C.obj \\r
-    typeinfo\ti_cdouble.obj \\r
-    typeinfo\ti_cfloat.obj \\r
-    typeinfo\ti_char.obj \\r
-    typeinfo\ti_creal.obj \\r
-    typeinfo\ti_dchar.obj \\r
-    typeinfo\ti_delegate.obj \\r
-    typeinfo\ti_double.obj \\r
-    typeinfo\ti_float.obj \\r
-    typeinfo\ti_idouble.obj \\r
-    typeinfo\ti_ifloat.obj \\r
-    typeinfo\ti_int.obj \\r
-    typeinfo\ti_ireal.obj \\r
-    typeinfo\ti_long.obj \\r
-    typeinfo\ti_ptr.obj \\r
-    typeinfo\ti_real.obj \\r
-    typeinfo\ti_short.obj \\r
-    typeinfo\ti_ubyte.obj \\r
-    typeinfo\ti_uint.obj \\r
-    typeinfo\ti_ulong.obj \\r
-    typeinfo\ti_ushort.obj \\r
-    typeinfo\ti_void.obj \\r
-    typeinfo\ti_wchar.obj\r
-\r
-ALL_OBJS= \\r
-    $(OBJ_BASE) \\r
-    $(OBJ_UTIL) \\r
-    $(OBJ_TI)\r
-\r
-######################################################\r
-\r
-ALL_DOCS=\r
-\r
-######################################################\r
-\r
-dmd.lib : $(LIB_TARGET)\r
-\r
-$(LIB_TARGET) : $(ALL_OBJS)\r
-       $(RM) $@\r
-       $(LC) -c -n $@ $(ALL_OBJS) minit.obj\r
-\r
-dmd.doc : $(ALL_DOCS)\r
-       @echo No documentation available.\r
-\r
-######################################################\r
-\r
-clean :\r
-       $(RM) /s *.di\r
-       $(RM) $(ALL_OBJS)\r
-       $(RM) $(ALL_DOCS)\r
-       $(RM) $(LIB_MASK)\r
-\r
-install :\r
-       $(MD) $(LIB_DEST)\r
-       $(CP) $(LIB_MASK) $(LIB_DEST)\.\r
+# Makefile to build the compiler runtime D library for Win32
+# Designed to work with DigitalMars make
+# Targets:
+#      make
+#              Same as make all
+#      make lib
+#              Build the compiler runtime library
+#   make doc
+#       Generate documentation
+#      make clean
+#              Delete unneeded files created by build process
+
+LIB_BASE=druntime-rt-dmd
+LIB_BUILD=
+LIB_TARGET=$(LIB_BASE)$(LIB_BUILD).lib
+LIB_MASK=$(LIB_BASE)*.lib
+
+CP=xcopy /y
+RM=del /f
+MD=mkdir
+
+ADD_CFLAGS=
+ADD_DFLAGS=
+
+CFLAGS_RELEASE=-mn -6 -r $(ADD_CFLAGS)
+CFLAGS_DEBUG=-g -mn -6 -r $(ADD_CFLAGS)
+CFLAGS=$(CFLAGS_RELEASE)
+
+DFLAGS_RELEASE=-release -O -inline -w -nofloat $(ADD_DFLAGS)
+DFLAGS_DEBUG=-g -w -nofloat $(ADD_DFLAGS)
+DFLAGS=$(DFLAGS_RELEASE)
+
+TFLAGS_RELEASE=-O -inline -w  -nofloat $(ADD_DFLAGS)
+TFLAGS_DEBUG=-g -w -nofloat $(ADD_DFLAGS)
+TFLAGS=$(TFLAGS_RELEASE)
+
+DOCFLAGS=-version=DDoc
+
+CC=dmc
+LC=lib
+DC=dmd
+
+LIB_DEST=..\..\..\lib
+
+.DEFAULT: .asm .c .cpp .d .html .obj
+
+.asm.obj:
+       $(CC) -c $<
+
+.c.obj:
+       $(CC) -c $(CFLAGS) $< -o$@
+
+.cpp.obj:
+       $(CC) -c $(CFLAGS) $< -o$@
+
+.d.obj:
+       $(DC) -c $(DFLAGS) $< -of$@
+
+.d.html:
+       $(DC) -c -o- $(DOCFLAGS) -Df$*.html dmd.ddoc $<
+
+targets : lib doc
+all     : lib doc
+lib     : dmd.lib
+doc     : dmd.doc
+
+######################################################
+
+OBJ_BASE= \
+    aaA.obj \
+    aApply.obj \
+    aApplyR.obj \
+    adi.obj \
+    arrayassign.obj \
+    arraybyte.obj \
+    arraycast.obj \
+    arraycat.obj \
+    arraydouble.obj \
+    arrayfloat.obj \
+    arrayint.obj \
+    arrayreal.obj \
+    arrayshort.obj \
+    cast_.obj \
+    complex.obj \
+    cover.obj \
+    critical.obj \
+    deh.obj \
+    dmain2.obj \
+    invariant.obj \
+    invariant_.obj \
+    lifetime.obj \
+    memory.obj \
+    memset.obj \
+    monitor.obj \
+    obj.obj \
+    object_.obj \
+    qsort.obj \
+    switch_.obj \
+    trace.obj
+# NOTE: trace.obj and cover.obj are not necessary for a successful build
+#       as both are used for debugging features (profiling and coverage)
+# NOTE: a pre-compiled minit.obj has been provided in dmd for Win32 and
+#       minit.asm is not used by dmd for linux
+
+OBJ_UTIL= \
+    util\console.obj \
+    util\cpuid.obj \
+    util\ctype.obj \
+    util\string.obj \
+    util\utf.obj
+
+OBJ_TI= \
+    typeinfo\ti_AC.obj \
+    typeinfo\ti_Acdouble.obj \
+    typeinfo\ti_Acfloat.obj \
+    typeinfo\ti_Acreal.obj \
+    typeinfo\ti_Adouble.obj \
+    typeinfo\ti_Afloat.obj \
+    typeinfo\ti_Ag.obj \
+    typeinfo\ti_Aint.obj \
+    typeinfo\ti_Along.obj \
+    typeinfo\ti_Areal.obj \
+    typeinfo\ti_Ashort.obj \
+    typeinfo\ti_byte.obj \
+    typeinfo\ti_C.obj \
+    typeinfo\ti_cdouble.obj \
+    typeinfo\ti_cfloat.obj \
+    typeinfo\ti_char.obj \
+    typeinfo\ti_creal.obj \
+    typeinfo\ti_dchar.obj \
+    typeinfo\ti_delegate.obj \
+    typeinfo\ti_double.obj \
+    typeinfo\ti_float.obj \
+    typeinfo\ti_idouble.obj \
+    typeinfo\ti_ifloat.obj \
+    typeinfo\ti_int.obj \
+    typeinfo\ti_ireal.obj \
+    typeinfo\ti_long.obj \
+    typeinfo\ti_ptr.obj \
+    typeinfo\ti_real.obj \
+    typeinfo\ti_short.obj \
+    typeinfo\ti_ubyte.obj \
+    typeinfo\ti_uint.obj \
+    typeinfo\ti_ulong.obj \
+    typeinfo\ti_ushort.obj \
+    typeinfo\ti_void.obj \
+    typeinfo\ti_wchar.obj
+
+ALL_OBJS= \
+    $(OBJ_BASE) \
+    $(OBJ_UTIL) \
+    $(OBJ_TI)
+
+######################################################
+
+ALL_DOCS=
+
+######################################################
+
+unittest :
+       make -fwin32.mak DC="$(DC)" LIB_BUILD="" DFLAGS="$(DFLAGS_RELEASE) -unittest"
+
+release :
+       make -fwin32.mak DC="$(DC)" LIB_BUILD="" DFLAGS="$(DFLAGS_RELEASE)"
+
+debug :
+       make -fwin32.mak DC="$(DC)" LIB_BUILD="-d" DFLAGS="$(DFLAGS_DEBUG)"
+
+######################################################
+
+dmd.lib : $(LIB_TARGET)
+
+$(LIB_TARGET) : $(ALL_OBJS)
+       $(RM) $@
+       $(LC) -c -n $@ $(ALL_OBJS) minit.obj
+
+dmd.doc : $(ALL_DOCS)
+       @echo No documentation available.
+
+######################################################
+
+clean :
+       $(RM) /s *.di
+       $(RM) $(ALL_OBJS)
+       $(RM) $(ALL_DOCS)
+       $(RM) $(LIB_MASK)
+
+install :
+       $(MD) $(LIB_DEST)
+       $(CP) $(LIB_MASK) $(LIB_DEST)\.