1CC=gcc 2CFLAGS=-m64 -Os -Wall -MMD -fno-asynchronous-unwind-tables -g -Wno-sign-compare -Wno-unused-but-set-variable 3LDFLAGS= -m64 -g 4CFLAGS+=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE 5PWD:=$(shell pwd) 6CFLAGS+=-I$(PWD) 7 8CXX=g++ 9CXXFLAGS=$(CFLAGS) 10 11PROGS=TAppEncoder jsenc 12 13 14all: $(PROGS) 15 16ENC_OBJS=$(addprefix TLibEncoder/, SyntaxElementWriter.o TEncSbac.o \ 17TEncBinCoderCABACCounter.o TEncGOP.o\ 18TEncSampleAdaptiveOffset.o TEncBinCoderCABAC.o TEncAnalyze.o\ 19TEncEntropy.o TEncTop.o SEIwrite.o TEncPic.o TEncRateCtrl.o\ 20WeightPredAnalysis.o TEncSlice.o TEncCu.o NALwrite.o TEncCavlc.o\ 21TEncSearch.o TEncPreanalyzer.o) 22ENC_OBJS+=TLibVideoIO/TVideoIOYuv.o 23ENC_OBJS+=$(addprefix TLibCommon/, TComWeightPrediction.o TComLoopFilter.o\ 24TComBitStream.o TComMotionInfo.o TComSlice.o ContextModel3DBuffer.o\ 25TComPic.o TComRdCostWeightPrediction.o TComTU.o TComPicSym.o\ 26TComPicYuv.o TComYuv.o TComTrQuant.o TComInterpolationFilter.o\ 27ContextModel.o TComSampleAdaptiveOffset.o SEI.o TComPrediction.o\ 28TComDataCU.o TComChromaFormat.o Debug.o TComRom.o\ 29TComPicYuvMD5.o TComRdCost.o TComPattern.o TComCABACTables.o) 30ENC_OBJS+=libmd5/libmd5.o 31ENC_OBJS+=TAppEncCfg.o TAppEncTop.o program_options_lite.o 32 33TAppEncoder: $(ENC_OBJS) encmain.o 34 $(CXX) -o $@ $(LDFLAGS) $^ -lm 35 36jsenc: jsenc.o jctvc_glue.o $(ENC_OBJS) 37 $(CXX) -o $@ $(LDFLAGS) $^ -lpng -lm 38 39%.o: %.c 40 $(CC) $(CFLAGS) -c -o $@ $< 41 42%.o: %.cpp 43 $(CXX) $(CXXFLAGS) -c -o $@ $< 44 45clean: 46 rm -f *.o *.d *~ \ 47 TLibEncoder/*.o TLibEncoder/*.d TLibEncoder/*~ \ 48 TLibVideoIO/*.o TLibVideoIO/*.d TLibVideoIO/*~ \ 49 TLibCommon/*.o TLibCommon/*.d TLibCommon/*~ 50 51-include $(wildcard *.d) 52-include $(wildcard TLibEncoder/*.d) 53-include $(wildcard TLibVideoIO/*.d) 54-include $(wildcard TLibCommon/*.d) 55