⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile.base

📁 JVT-S203 contains the JSVM 6 reference software. It corresponds to CVS tag “JSVM_5_12_1”. For obt
💻 BASE
📖 第 1 页 / 共 2 页
字号:

# create dynamic release objects
{$(SRC_DIR4)}.asm{$(OBJ_DIR)}.sr_o: 
	@ $(ASM) $(ASMFLAGS) $(RELEASE_ASMFLAGS) -o $@ $<

# create dynamic debug objects
{$(SRC_DIR4)}.asm{$(OBJ_DIR)}.sd_o: 
	@ $(ASM) $(ASMFLAGS) $(DEBUG_ASMFLAGS) -o $@ $<




#########################################################
# c rules
#########################################################


# create dynamic release objects
{$(SRC_DIR)}.cpp{$(OBJ_DIR)}.dr_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(DYN_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create dynamic debug objects
{$(SRC_DIR)}.cpp{$(OBJ_DIR)}.dd_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(DYN_DEBUG_CPPFLAGS) -c -Fo$@ $<

# create static release objects
{$(SRC_DIR)}.cpp{$(OBJ_DIR)}.sr_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(STAT_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create static debug objects
{$(SRC_DIR)}.cpp{$(OBJ_DIR)}.sd_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(STAT_DEBUG_CPPFLAGS) -c -Fo$@ $<


# create dynamic release objects
{$(SRC_DIR1)}.cpp{$(OBJ_DIR)}.dr_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(DYN_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create dynamic debug objects
{$(SRC_DIR1)}.cpp{$(OBJ_DIR)}.dd_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(DYN_DEBUG_CPPFLAGS) -c -Fo$@ $<

# create static release objects
{$(SRC_DIR1)}.cpp{$(OBJ_DIR)}.sr_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(STAT_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create static debug objects
{$(SRC_DIR1)}.cpp{$(OBJ_DIR)}.sd_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(STAT_DEBUG_CPPFLAGS) -c -Fo$@ $<


# create dynamic release objects
{$(SRC_DIR2)}.cpp{$(OBJ_DIR)}.dr_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(DYN_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create dynamic debug objects
{$(SRC_DIR2)}.cpp{$(OBJ_DIR)}.dd_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(DYN_DEBUG_CPPFLAGS) -c -Fo$@ $<

# create static release objects
{$(SRC_DIR2)}.cpp{$(OBJ_DIR)}.sr_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(STAT_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create static debug objects
{$(SRC_DIR2)}.cpp{$(OBJ_DIR)}.sd_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(STAT_DEBUG_CPPFLAGS) -c -Fo$@ $<


# create dynamic release objects
{$(SRC_DIR3)}.cpp{$(OBJ_DIR)}.dr_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(DYN_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create dynamic debug objects
{$(SRC_DIR3)}.cpp{$(OBJ_DIR)}.dd_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(DYN_DEBUG_CPPFLAGS) -c -Fo$@ $<

# create static release objects
{$(SRC_DIR3)}.cpp{$(OBJ_DIR)}.sr_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(STAT_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create static debug objects
{$(SRC_DIR3)}.cpp{$(OBJ_DIR)}.sd_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(STAT_DEBUG_CPPFLAGS) -c -Fo$@ $<


# create dynamic release objects
{$(SRC_DIR4)}.cpp{$(OBJ_DIR)}.dr_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(DYN_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create dynamic debug objects
{$(SRC_DIR4)}.cpp{$(OBJ_DIR)}.dd_o: 
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(DYN_DEBUG_CPPFLAGS) -c -Fo$@ $<

# create static release objects
{$(SRC_DIR4)}.cpp{$(OBJ_DIR)}.sr_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(STAT_RELEASE_CPPFLAGS) -c -Fo$@ $<

# create static debug objects
{$(SRC_DIR4)}.cpp{$(OBJ_DIR)}.sd_o: 
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(USE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(STAT_DEBUG_CPPFLAGS) -c -Fo$@ $<


#########################################################
# directory settings
#########################################################

!IF "$(CONFIG)" == "LIBRARY"
# directories that have to be created for a library
CHECK_DIRS = $(OBJ_DIR) $(LIB_DIR) $(BIN_DIR)
#
!ELSEIF ("$(CONFIG)" == "CONSOLE") || ("$(CONFIG)" == "MFC")
# directories that have to be created for console and MFC
CHECK_DIRS = $(OBJ_DIR) $(BIN_DIR)
#
!ENDIF


#########################################################
# targets
#########################################################

all: 			debug release

debug: 			$(CHECK_DIRS) \
				$(DYN_DEBUG_RES) \
				$(DYN_DEBUG_PCH_OBJ) \
				$(DYN_DEBUG_OUT) \
				$(STAT_DEBUG_RES) \
				$(STAT_DEBUG_PCH_OBJ) \
				$(STAT_DEBUG_OUT)

release: 		$(CHECK_DIRS) \
				$(DYN_RELEASE_RES) \
				$(DYN_RELEASE_PCH_OBJ) \
				$(DYN_RELEASE_OUT) \
				$(STAT_RELEASE_RES) \
				$(STAT_RELEASE_PCH_OBJ) \
				$(STAT_RELEASE_OUT)

stat_debug: 	$(CHECK_DIRS) \
				$(STAT_DEBUG_RES) \
				$(STAT_DEBUG_PCH_OBJ) \
				$(STAT_DEBUG_OUT)
					
dyn_debug: 		$(CHECK_DIRS) \
				$(DYN_DEBUG_RES) \
				$(DYN_DEBUG_PCH_OBJ) \
				$(DYN_DEBUG_OUT)

stat_release: 	$(CHECK_DIRS) \
				$(STAT_RELEASE_RES) \
				$(STAT_RELEASE_PCH_OBJ) \
				$(STAT_RELEASE_OUT)
				
dyn_release: 	$(CHECK_DIRS) \
				$(DYN_RELEASE_RES) \
				$(DYN_RELEASE_PCH_OBJ) \
				$(DYN_RELEASE_OUT)

##########################################################
# create directories
##########################################################

$(OBJ_DIR):
    @ if not exist "$(OBJ_DIR)" mkdir "$(OBJ_DIR)"

$(LIB_DIR):
    @ if not exist "$(LIB_DIR)" mkdir "$(LIB_DIR)"

$(BIN_DIR):
    @ if not exist "$(BIN_DIR)" mkdir "$(BIN_DIR)"


##########################################################
# create resources
##########################################################

!IF "$(RSC_NAME)" != ""
# dynamic release resources
$(DYN_RELEASE_RES) : $(SRC_DIR)\$(RSC_NAME).rc
	@ $(RSC) $(RSCFLAGS) -fo$(DYN_RELEASE_RES) -i $(SRC_DIR) -d NDEBUG $(SRC_DIR)\$(RSC_NAME).rc
#
# dynamic debug resources
$(DYN_DEBUG_RES) : $(SRC_DIR)\$(RSC_NAME).rc
	@ $(RSC) $(RSCFLAGS) -fo$(DYN_DEBUG_RES) -i $(SRC_DIR) -d _DEBUG $(SRC_DIR)\$(RSC_NAME).rc
#
!IF ("$(CONFIG)" == "CONSOLE") || ("$(CONFIG)" == "MFC")
#
# static release resources
$(STAT_RELEASE_RES) : $(SRC_DIR)\$(RSC_NAME).rc
	@ $(RSC) $(RSCFLAGS) -fo$(STAT_RELEASE_RES) -i $(SRC_DIR) -d NDEBUG $(SRC_DIR)\$(RSC_NAME).rc
#
# static debug resources
$(STAT_DEBUG_RES) : $(SRC_DIR)\$(RSC_NAME).rc
	@ $(RSC) $(RSCFLAGS) -fo$(STAT_DEBUG_RES) -i $(SRC_DIR) -d _DEBUG $(SRC_DIR)\$(RSC_NAME).rc
#
!ENDIF
#
!ENDIF


##########################################################
# create precomiled header objects
##########################################################

# create precompiled header dynamic debug object
$(DYN_DEBUG_PCH_OBJ):	$(SRC_DIR)\$(PCH_NAME).cpp $(OBJ_DIR)
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(CREATE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(DYN_DEBUG_CPPFLAGS) -c -Fo$@ $(SRC_DIR)\$(PCH_NAME).cpp

# create precompiled header dynamic release object
$(DYN_RELEASE_PCH_OBJ):	$(SRC_DIR)\$(PCH_NAME).cpp $(OBJ_DIR)
	@ $(CPP) $(CPPFLAGS) $(DYN_CPPFLAGS) $(CREATE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(DYN_RELEASE_CPPFLAGS) -c -Fo$@ $(SRC_DIR)\$(PCH_NAME).cpp

# create precompiled header static debug object
$(STAT_DEBUG_PCH_OBJ):	$(SRC_DIR)\$(PCH_NAME).cpp $(OBJ_DIR)
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(CREATE_PCH_CPPFLAGS) $(DEBUG_CPPFLAGS) $(STAT_DEBUG_CPPFLAGS) -c -Fo$@ $(SRC_DIR)\$(PCH_NAME).cpp

# create precompiled header static release object
$(STAT_RELEASE_PCH_OBJ):	$(SRC_DIR)\$(PCH_NAME).cpp $(OBJ_DIR)
	@ $(CPP) $(CPPFLAGS) $(STAT_CPPFLAGS) $(CREATE_PCH_CPPFLAGS) $(RELEASE_CPPFLAGS) $(STAT_RELEASE_CPPFLAGS) -c -Fo$@ $(SRC_DIR)\$(PCH_NAME).cpp


##########################################################
# create output files
##########################################################

# STAT_DEBUG_OUT		= $(LIB_DIR)\lib$(PRJ_NAME)d.lib
# STAT_RELEASE_OUT	= $(LIB_DIR)\lib$(PRJ_NAME).lib
# DYN_DEBUG_OUT		= $(BIN_DIR)\$(PRJ_NAME)d.dll
# DYN_RELEASE_OUT		= $(BIN_DIR)\$(PRJ_NAME).dll



!IF "$(CONFIG)" == "LIBRARY"
#
# create static debug out
$(STAT_DEBUG_OUT): $(STAT_DEBUG_OBJS)
	@ $(AR) -out:$@ $(STAT_DEBUG_OBJS)
#
#
# create release debug out
$(STAT_RELEASE_OUT): $(STAT_RELEASE_OBJS)
	@ $(AR) -out:$@ $(STAT_RELEASE_OBJS)
#
#
# create dynamic debug out
$(DYN_DEBUG_OUT): $(DYN_DEBUG_OBJS) 
	@ $(LD) $(LDFLAGS) $(DEBUG_LDFLAGS) $(DYN_DEBUG_LDFLAGS) $(DYN_DEBUG_OBJS) $(USER_LIB_DIRS) $(LIBS) $(DEBUG_LIBS) $(DYN_DEBUG_LIBS)
	
#
#
# create dynamic release out
$(DYN_RELEASE_OUT): $(DYN_RELEASE_OBJS)
	@ $(LD) $(LDFLAGS) $(RELEASE_LDFLAGS) $(DYN_RELEASE_LDFLAGS) $(DYN_RELEASE_OBJS) $(USER_LIB_DIRS) $(LIBS) $(RELEASE_LIBS) $(DYN_RELEASE_LIBS)
#
#
#
#
#
!ELSEIF ("$(CONFIG)" == "CONSOLE") || ("$(CONFIG)" == "MFC")
#
# create static debug out
$(STAT_DEBUG_OUT): $(STAT_DEBUG_OBJS)
	@ $(LD) $(LDFLAGS) $(DEBUG_LDFLAGS) $(STAT_DEBUG_LDFLAGS) $(STAT_DEBUG_OBJS) $(USER_LIB_DIRS) $(LIBS) $(DEBUG_LIBS) $(STAT_DEBUG_LIBS)
#
#
# create static release out
$(STAT_RELEASE_OUT): $(STAT_RELEASE_OBJS)
	@ $(LD) $(LDFLAGS) $(RELEASE_LDFLAGS) $(STAT_RELEASE_LDFLAGS) $(STAT_RELEASE_OBJS) $(USER_LIB_DIRS) $(LIBS) $(RELEASE_LIBS) $(STAT_RELEASE_LIBS)
#
#
# create dynamic debug out
$(DYN_DEBUG_OUT): $(DYN_DEBUG_OBJS)
	@ $(LD) $(LDFLAGS) $(DEBUG_LDFLAGS) $(DYN_DEBUG_LDFLAGS) $(DYN_DEBUG_OBJS) $(USER_LIB_DIRS) $(LIBS) $(DEBUG_LIBS) $(DYN_DEBUG_LIBS)
#
#
# create dynamic release out
$(DYN_RELEASE_OUT): $(DYN_RELEASE_OBJS)
	@ $(LD) $(LDFLAGS) $(RELEASE_LDFLAGS) $(DYN_RELEASE_LDFLAGS) $(DYN_RELEASE_OBJS) $(USER_LIB_DIRS) $(LIBS) $(RELEASE_LIBS) $(DYN_RELEASE_LIBS)
#
#
!ENDIF


##########################################################
# delete all produced files
##########################################################

!IF "$(CONFIG)" == "LIBRARY"
#
clean:
	-@erase 	/q "$(LIB_DIR)\lib$(PRJ_NAME)d.lib" >nul 2>&1
	-@erase 	/q "$(LIB_DIR)\lib$(PRJ_NAME).lib" >nul 2>&1
	-@erase 	/q "$(LIB_DIR)\$(PRJ_NAME).lib" >nul 2>&1
	-@erase 	/q "$(LIB_DIR)\$(PRJ_NAME).exp" >nul 2>&1
	-@erase 	/q "$(LIB_DIR)\$(PRJ_NAME)d.lib" >nul 2>&1
	-@erase 	/q "$(LIB_DIR)\$(PRJ_NAME)d.exp" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)d.dll" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME).dll" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)d.ilk" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)d.pdb" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME).ilk" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME).pdb" >nul 2>&1
	-@erase		/s /q "$(OBJ_DIR)" >nul 2>&1
	-@rmdir		"$(OBJ_DIR)" >nul 2>&1

!ELSEIF ("$(CONFIG)" == "CONSOLE") || ("$(CONFIG)" == "MFC")
#
clean:
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)sd.exe" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)s.exe" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)d.exe" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME).exe" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)sd.pdb" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)sd.ilk" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)s.pdb" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)s.ilk" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)d.pdb" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME)d.ilk" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME).pdb" >nul 2>&1
	-@erase 	/q "$(BIN_DIR)\$(PRJ_NAME).ilk" >nul 2>&1
	-@erase		/s /q "$(OBJ_DIR)" >nul 2>&1
	-@rmdir		"$(OBJ_DIR)" >nul 2>&1

# add your dependencies here
#
!ENDIF

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -