diff options
Diffstat (limited to 'externals/grill/flext/buildsys/win/make-msvc.inc')
-rw-r--r-- | externals/grill/flext/buildsys/win/make-msvc.inc | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/externals/grill/flext/buildsys/win/make-msvc.inc b/externals/grill/flext/buildsys/win/make-msvc.inc new file mode 100644 index 00000000..eb9e87bf --- /dev/null +++ b/externals/grill/flext/buildsys/win/make-msvc.inc @@ -0,0 +1,103 @@ +!ifndef FLEXTBUILD +INCPATH=$(INCPATH) /I$(FLEXTPATH) +LIBPATH=$(LIBPATH) /LIBPATH:$(FLEXTPATH) +LIBS=$(LIBS) $(FLEXTNAME).lib +!endif + +!ifdef MSVCPATH +INCPATH=$(INCPATH) /I$(MSVCPATH)\include +LIBPATH=$(LIBPATH) /LIBPATH:$(MSVCPATH)\lib +!endif + +# for VC7 - enable exception handling +CFLAGS=$(CFLAGS) /EHsc + +############################################## + +!ifdef DEBUG +CFLAGS=$(CFLAGS) /D_DEBUG /DMTd +LDFLAGS=$(LDFLAGS) /DEBUG +!else +CFLAGS=$(CFLAGS) $(OFLAGS) /DNDEBUG /DMT +LDFLAGS=$(LDFLAGS) /INCREMENTAL:NO +!endif + +############################################## + +!ifdef FLEXTBUILD +OUTNAME=$(FLEXTNAME) + +!ifdef SHARED +EXT=dll +!else +EXT=lib +BUILDLIB=1 +!endif + +!else +OUTNAME=$(NAME) +!endif + +############################################## + +TARGETPATH=$(OUTPATH)\$(OUTSUB) +TARGET=$(TARGETPATH)\$(OUTNAME).$(EXT) + +############################################## + +# default target +_all_: $(TARGET) + +# convert both *.c and *.cpp +OBJSTMP= $(SRCS:.c=.obj) +OBJS= $(OBJSTMP:.objpp=.obj) + +$(TARGETPATH): + if not exist $(OUTPATH) mkdir $(OUTPATH) > nul + if not exist $@ mkdir $@ > nul + +{$(SRCDIR)}.cpp{}.obj: + cl /c /LD $(CFLAGS) $(DEFS) $(INCPATH) $** /Fo$(TARGETPATH)\$@ + +{$(SRCDIR)}.c{}.obj: + cl /c /LD $(CFLAGS) $(DEFS) $(INCPATH) $** /Fo$(TARGETPATH)\$@ + +$(TARGET):: $(TARGETPATH) + +$(TARGET):: $(OBJS) + @cd $(TARGETPATH) +!ifdef BUILDLIB + lib /OUT:$(@F) $(OBJS) + cd .. +!else + echo $** + link /DLL $(LDFLAGS) $(LIBPATH) $(OBJS) $(LIBS) /out:$(@F) +!endif + cd .. + +############################################## + +# remove build +_clean_: + -del /q $(TARGET) > nul + -cd $(TARGETPATH) + -del /q $(OBJS) > nul + +############################################## + +$(INSTPATH): + if not exist $@ mkdir $@ > nul + +$(FLEXTPATH): + if not exist $@ mkdir $@ > nul + +_install_:: $(INSTPATH) $(FLEXTPATH) + +_install_:: +!ifdef FLEXTBUILD + -copy $(TARGET) $(FLEXTPATH) > nul + @cd $(SRCDIR) + -for %%i in ($(HDRS)) do @copy %%i $(FLEXTPATH) > nul +!else + copy $(TARGET) $(INSTPATH) > nul +!endif |