📄 makefile
字号:
# <LIC_AMD_STD># Copyright (C) 2003-2005 Advanced Micro Devices, Inc. All Rights Reserved.# # Unless otherwise designated in writing, this software and any related # documentation are the confidential proprietary information of AMD. # THESE MATERIALS ARE PROVIDED "AS IS" WITHOUT ANY# UNLESS OTHERWISE NOTED IN WRITING, EXPRESS OR IMPLIED WARRANTY OF ANY # KIND, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, # NONINFRINGEMENT, TITLE, FITNESS FOR ANY PARTICULAR PURPOSE AND IN NO # EVENT SHALL AMD OR ITS LICENSORS BE LIABLE FOR ANY DAMAGES WHATSOEVER. # # AMD does not assume any responsibility for any errors which may appear # in the Materials nor any responsibility to support or update the# Materials. AMD retains the right to modify the Materials at any time, # without notice, and is not obligated to provide such modified # Materials to you. AMD is not obligated to furnish, support, or make# any further information available to you.# </LIC_AMD_STD> # <CTL_AMD_STD># </CTL_AMD_STD> # <DOC_AMD_STD># </DOC_AMD_STD> ####################### Build serialLib# #####################.PHONY: all clean clobber allhost docs# Tool-chain used for compilation of code#ifneq ($(MAKECMDGOALS),allhost)#TARGET_PREFIX=mipsel-linux-#elseTARGET_PREFIX=#endifAS=$(TARGET_PREFIX)asCC=$(TARGET_PREFIX)gccCPP=$(TARGET_PREFIX)g++LD=$(TARGET_PREFIX)ldOD=$(TARGET_PREFIX)objdumpOC=$(TARGET_PREFIX)objcopySTRIP=$(TARGET_PREFIX)stripAR=$(TARGET_PREFIX)arINC?=-I.RM = rm -f # -f is force, doesn't complain about non-existant filesCOMPNAME=travissec####################################################################################################BUILD_MODE?=release#BUILD_MODE=debugMAEDRV_INC?=../../../mae/mae-wrapperifeq ("$(BUILD_MODE)","release")CHECK_SLEEP=300 #The number of minutes between serial number checksCFLAGS+=-O3 -Wall -fpic -DCHECK_SLEEP=$(CHECK_SLEEP) -I$(MAEDRV_INC) $(INC)endififeq ("$(BUILD_MODE)","profile")CHECK_SLEEP=300 #The number of minutes between serial number checksCFLAGS+=-pg -Wall -fpic -DCHECK_SLEEP=$(CHECK_SLEEP) -I$(MAEDRV_INC) $(INC)endififeq ("$(BUILD_MODE)","debug")CHECK_SLEEP=0.5 #The number of minutes between serial number checksCFLAGS+=-ggdb3 -Wall -fpic -DCHECK_SLEEP=$(CHECK_SLEEP) -DDEBUG -I$(MAEDRV_INC) $(INC)STRIP= echoendifARCHNAME?=$(strip $(shell uname -m))BUILDSDIR=.# Setup build directories and target file namesBUILDSSUBDIR=$(BUILDSDIR)/$(ARCHNAME)ifeq ("$(BUILD_MODE)", "debug")BUILDSSUBDIR=$(BUILDSDIR)/$(ARCHNAME)dbgendififeq ("$(BUILD_MODE)", "release")BUILDSSUBDIR=$(BUILDSDIR)/$(ARCHNAME)relendififeq ("$(BUILD_MODE)", "profile")BUILDSSUBDIR=$(BUILDSDIR)/$(ARCHNAME)profendif# TARGETINTDIR is the intermediate path (for object files) TARGETINTDIR1=$(BUILDSSUBDIR)/$(COMPNAME)# TARGETDIR1 is the final path for target executablesTARGETDIR1=$(BUILDSSUBDIR)/$(COMPNAME)TARGETDIR2=$(BUILDSSUBDIR)/static# TARGETPATH is full target filename with pathTARGETPATH1=$(TARGETDIR1)/$(TARGETFILE1)TARGETPATH2=$(TARGETDIR2)/$(TARGETFILE2)LIBS = -lserialprivall: $(TARGETDIR1)/setserial $(TARGETDIR1)/serialtest \ $(TARGETDIR2)/libserialpriv.a $(TARGETDIR1)/secserv$(TARGETDIR1)/securityServ_udp.o: securityServ_udp.c sfiles.h secure_serial.h @mkdir -p $(TARGETDIR1) $(CC) $(CFLAGS) -c -o $@ $<$(TARGETDIR1)/sha1.o: sha1.c sfiles.h secure_serial.h @mkdir -p $(TARGETDIR1) $(CC) $(CFLAGS) -c -o $@ $<$(TARGETDIR1)/oem_func.o: oem_func.c @mkdir -p $(TARGETDIR1) $(CC) $(CFLAGS) -c -o $@ $< $(TARGETDIR1)/base64.o: base64.c sfiles.h secure_serial.h @mkdir -p $(TARGETDIR1) $(CC) $(CFLAGS) -c -o $@ $<$(TARGETDIR1)/serialtest.o: serialtest.c sfiles.h secure_serial.h @mkdir -p $(TARGETDIR1) $(CC) $(CFLAGS) -c -o $@ $<$(TARGETDIR1)/setserial.o: setserial.c sfiles.h secure_serial.h @mkdir -p $(TARGETDIR1) $(CC) $(CFLAGS) -c -o $@ $< $(TARGETDIR1)/getserial.o: getserial.c sfiles.h secure_serial.h @mkdir -p $(TARGETDIR1) $(CC) $(CFLAGS) -c -o $@ $<keygen: keygen.o $(CC) -o keygen keygen.o$(TARGETDIR1)/secserv: $(TARGETDIR1)/securityServ_udp.o $(TARGETDIR2)/libserialpriv.a @mkdir -p $(TARGETDIR1) $(CC) -o $(TARGETDIR1)/secserv $(TARGETDIR1)/securityServ_udp.o \ $(TARGETDIR1)/sha1.o $(TARGETDIR1)/base64.o -L$(TARGETDIR2) $(LIBS) -lpthread $(STRIP) $(TARGETDIR1)/secserv$(TARGETDIR1)/serialtest: $(TARGETDIR1)/serialtest.o $(TARGETDIR2)/libserialpriv.a @mkdir -p $(TARGETDIR1) $(CC) -o $(TARGETDIR1)/serialtest $(TARGETDIR1)/serialtest.o \ $(TARGETDIR1)/sha1.o $(TARGETDIR1)/base64.o -L$(TARGETDIR2) $(LIBS) $(STRIP) $(TARGETDIR1)/serialtest$(TARGETDIR1)/setserial: $(TARGETDIR1)/setserial.o $(TARGETDIR2)/libserialpriv.a @mkdir -p $(TARGETDIR1) $(CC) -o $(TARGETDIR1)/setserial $(TARGETDIR1)/setserial.o $(TARGETDIR1)/sha1.o \ $(TARGETDIR1)/base64.o -L$(TARGETDIR2) $(LIBS) $(STRIP) $(TARGETDIR1)/setserial$(TARGETDIR2)/libserialpriv.a: $(TARGETDIR1)/getserial.o $(TARGETDIR1)/sha1.o \ $(TARGETDIR1)/base64.o $(TARGETDIR1)/oem_func.o $(RM) $@ @mkdir -p $(TARGETDIR2) $(AR) r $@ $(TARGETDIR1)/getserial.o $(TARGETDIR1)/sha1.o $(TARGETDIR1)/base64.o \ $(TARGETDIR1)/oem_func.o cp $@ $(BUILDSSUBDIR)/libserialpriv.a ####################################################################################################clean: $(RM) $(TARGETDIR1)/*.a $(TARGETDIR1)/*.o $(TARGETDIR1)/serialtest \ $(TARGETDIR1)/keygen $(TARGETDIR1)/secserv $(TARGETDIR1)/setserial \ $(TARGETDIR1)/libserialpriv.aifeq ("$(INSTALLDIR)", "")install: install -d $(DESTDIR)/usr/lib install -d $(DESTDIR)/usr/include install -d $(DESTDIR)/usr/local/etc install -d $(DESTDIR)/etc install ${BUILDSSUBDIR}/libserialpriv.a $(DESTDIR)/usr/lib install ${BUILDSSUBDIR}/${COMPNAME}/secserv $(DESTDIR)/etc install ${BUILDSSUBDIR}/${COMPNAME}/setserial $(DESTDIR)/usr/local/etc install secure_serial.h $(DESTDIR)/usr/includeelseinstall: @echo Installing $(COMPNAME) for dev into $(INSTALLDIR)... @mkdir -p $(INSTALLDIR)/travissec @cp ${BUILDSSUBDIR}/libserialpriv.a $(INSTALLDIR)/travissec @cp ${BUILDSSUBDIR}/${COMPNAME}/secserv $(INSTALLDIR)/travissec @cp ${BUILDSSUBDIR}/${COMPNAME}/setserial $(INSTALLDIR)/travissec @cp secure_serial.h $(INSTALLDIR)/travissecendif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -