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

📄 makefile.base

📁 SVC最新更新代码
💻 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 + -