START_DIR = C:\MATLAB\Demos\OPTIMI~1\SIMPLE~1 MATLAB_ROOT = C:\MATLAB~1\R2016a MAKEFILE = myMult_mex.mk include myMult_mex.mki SRC_FILES = \ myMult_data.c \ myMult_initialize.c \ myMult_terminate.c \ myMult.c \ _coder_myMult_info.c \ _coder_myMult_api.c \ _coder_myMult_mex.c MEX_FILE_NAME_WO_EXT = myMult_mex MEX_FILE_NAME = $(MEX_FILE_NAME_WO_EXT).mexw64 TARGET = $(MEX_FILE_NAME) SYS_LIBS = libmwblas.lib # #==================================================================== # gmake makefile fragment for building MEX functions using MSVC # Copyright 2007-2015 The MathWorks, Inc. #==================================================================== # SHELL = cmd OBJEXT = obj CC = $(COMPILER) LD = $(LINKER) .SUFFIXES: .$(OBJEXT) OBJLISTC = $(SRC_FILES:.c=.$(OBJEXT)) OBJLIST = $(OBJLISTC:.cpp=.$(OBJEXT)) ifneq (,$(findstring $(EMC_COMPILER),msvc80 msvc90 msvc100 msvc100free msvc110 msvc120 msvc140 msvcsdk)) TARGETMT = $(TARGET).manifest MEX = $(TARGETMT) STRICTFP = /fp:strict else MEX = $(TARGET) STRICTFP = /Op endif target: $(MEX) MATLAB_INCLUDES = /I "$(MATLAB_ROOT)\simulink\include" MATLAB_INCLUDES+= /I "$(MATLAB_ROOT)\toolbox\shared\simtargets" SYS_INCLUDE = $(MATLAB_INCLUDES) # Additional includes SYS_INCLUDE += /I "$(START_DIR)" SYS_INCLUDE += /I "$(START_DIR)\codegen\mex\myMult" SYS_INCLUDE += /I ".\interface" SYS_INCLUDE += /I "$(MATLAB_ROOT)\extern\include" SYS_INCLUDE += /I "." DIRECTIVES = $(MEX_FILE_NAME_WO_EXT)_mex.arf COMP_FLAGS = $(COMPFLAGS) $(OMPFLAGS) LINK_FLAGS = $(filter-out /export:mexFunction, $(LINKFLAGS)) LINK_FLAGS += /NODEFAULTLIB:LIBCMT ifeq ($(EMC_CONFIG),optim) COMP_FLAGS += $(OPTIMFLAGS) $(STRICTFP) LINK_FLAGS += $(LINKOPTIMFLAGS) else COMP_FLAGS += $(DEBUGFLAGS) LINK_FLAGS += $(LINKDEBUGFLAGS) endif LINK_FLAGS += $(OMPLINKFLAGS) LINK_FLAGS += /OUT:$(TARGET) LINK_FLAGS += /LIBPATH:"$(MATLAB_ROOT)\extern\lib\win64\microsoft" CFLAGS = $(COMP_FLAGS) $(USER_INCLUDE) $(SYS_INCLUDE) CPPFLAGS = $(CFLAGS) %.$(OBJEXT) : %.c $(CC) $(CFLAGS) "$<" %.$(OBJEXT) : %.cpp $(CC) $(CPPFLAGS) "$<" # Additional sources %.$(OBJEXT) : $(START_DIR)/%.c $(CC) $(CFLAGS) "$<" %.$(OBJEXT) : $(START_DIR)\codegen\mex\myMult/%.c $(CC) $(CFLAGS) "$<" %.$(OBJEXT) : interface/%.c $(CC) $(CFLAGS) "$<" %.$(OBJEXT) : $(START_DIR)/%.cpp $(CC) $(CPPFLAGS) "$<" %.$(OBJEXT) : $(START_DIR)\codegen\mex\myMult/%.cpp $(CC) $(CPPFLAGS) "$<" %.$(OBJEXT) : interface/%.cpp $(CC) $(CPPFLAGS) "$<" $(TARGET): $(OBJLIST) $(MAKEFILE) $(DIRECTIVES) $(LD) $(LINK_FLAGS) $(OBJLIST) $(USER_LIBS) $(SYS_LIBS) @$(DIRECTIVES) @cmd /C "echo Build completed using compiler $(EMC_COMPILER)" $(TARGETMT): $(TARGET) mt -outputresource:"$(TARGET);2" -manifest "$(TARGET).manifest" #====================================================================