You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.7 KiB
58 lines
1.7 KiB
4 months ago
|
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
|