d707c67276
Change-Id: I8d67fc6f3ce168f4d8b6330549f766dbf5374d61
58 lines
1.7 KiB
Makefile
58 lines
1.7 KiB
Makefile
CXX := g++
|
|
DEFINES := -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS
|
|
DEFINES += -D__STDC_LIMIT_MACROS
|
|
INCLUDES := -I.
|
|
CXXFLAGS := -W -Wall -g -std=c++11
|
|
ALL_CXXFLAGS := -MMD -MP $(DEFINES) $(INCLUDES) $(CXXFLAGS)
|
|
LIBWEBMA := libwebm.a
|
|
LIBWEBMSO := libwebm.so
|
|
WEBMOBJS := mkvmuxer/mkvmuxer.o mkvmuxer/mkvmuxerutil.o mkvmuxer/mkvwriter.o
|
|
WEBMOBJS += mkvparser/mkvparser.o mkvparser/mkvreader.o
|
|
WEBMOBJS += common/file_util.o common/hdr_util.o
|
|
OBJSA := $(WEBMOBJS:.o=_a.o)
|
|
OBJSSO := $(WEBMOBJS:.o=_so.o)
|
|
VTTOBJS := webvtt/vttreader.o webvtt/webvttparser.o sample_muxer_metadata.o
|
|
EXEOBJS := mkvmuxer_sample.o mkvparser_sample.o dumpvtt.o vttdemux.o
|
|
EXES := mkvparser_sample mkvmuxer_sample dumpvtt vttdemux
|
|
DEPS := $(WEBMOBJS:.o=.d) $(OBJECTS1:.o=.d) $(OBJECTS2:.o=.d)
|
|
DEPS += $(OBJECTS3:.o=.d) $(OBJECTS4:.o=.d) $(OBJSA:.o=.d) $(OBJSSO:.o=.d)
|
|
DEPS += $(VTTOBJS:.o=.d) $(EXEOBJS:.o=.d)
|
|
CLEAN := $(EXEOBJS) $(VTTOBJS) $(WEBMOBJS) $(OBJSA) $(OBJSSO) $(LIBWEBMA)
|
|
CLEAN += $(LIBWEBMSO) $(EXES) $(DEPS) $(INFOOBJS)
|
|
|
|
all: $(EXES)
|
|
|
|
mkvparser_sample: mkvparser_sample.o $(LIBWEBMA)
|
|
$(CXX) $^ -o $@
|
|
|
|
mkvmuxer_sample: mkvmuxer_sample.o $(VTTOBJS) $(LIBWEBMA)
|
|
$(CXX) $^ -o $@
|
|
|
|
dumpvtt: dumpvtt.o $(VTTOBJS) $(WEBMOBJS)
|
|
$(CXX) $^ -o $@
|
|
|
|
vttdemux: vttdemux.o $(VTTOBJS) $(LIBWEBMA)
|
|
$(CXX) $^ -o $@
|
|
|
|
shared: $(LIBWEBMSO)
|
|
|
|
libwebm.a: $(OBJSA)
|
|
$(AR) rcs $@ $^
|
|
|
|
libwebm.so: $(OBJSSO)
|
|
$(CXX) $(ALL_CXXFLAGS) -shared $(OBJSSO) -o $(LIBWEBMSO)
|
|
|
|
%.o: %.cc
|
|
$(CXX) -c $(ALL_CXXFLAGS) $< -o $@
|
|
%_a.o: %.cc
|
|
$(CXX) -c $(ALL_CXXFLAGS) $< -o $@
|
|
%_so.o: %.cc
|
|
$(CXX) -c $(ALL_CXXFLAGS) -fPIC $< -o $@
|
|
|
|
clean:
|
|
$(RM) -f $(CLEAN) Makefile.bak
|
|
|
|
ifneq ($(MAKECMDGOALS), clean)
|
|
-include $(DEPS)
|
|
endif
|