diff options
author | Tom Finegan <tomfinegan@google.com> | 2015-02-13 11:23:40 -0800 |
---|---|---|
committer | Tom Finegan <tomfinegan@google.com> | 2015-02-13 16:07:01 -0800 |
commit | b386aa5c6bbf5a50d5799687475469be6ec89086 (patch) | |
tree | dc2f61a4fb5321958fd25d43000f4221dd9b99ad /Makefile.unix | |
parent | b0f8a81df906a83249baccd8955c98a819774d54 (diff) | |
download | libwebm-b386aa5c6bbf5a50d5799687475469be6ec89086.tar.gz |
Add CMakeLists.txt and msvc_runtime.cmake.
- These files facilitate project/makefile generation.
- Remove old Visual Studio projects.
- Rename Makefile to Makefile.unix.
Change-Id: If786edd75d44c462538526c286eccc5cbf15d828
Diffstat (limited to 'Makefile.unix')
-rw-r--r-- | Makefile.unix | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/Makefile.unix b/Makefile.unix new file mode 100644 index 0000000..e9a60a4 --- /dev/null +++ b/Makefile.unix @@ -0,0 +1,53 @@ +CXX := g++ +CXXFLAGS := -W -Wall -g -MMD -MP +LIBWEBMA := libwebm.a +LIBWEBMSO := libwebm.so +WEBMOBJS := mkvparser.o mkvreader.o mkvmuxer.o mkvmuxerutil.o mkvwriter.o +OBJSA := $(WEBMOBJS:.o=_a.o) +OBJSSO := $(WEBMOBJS:.o=_so.o) +OBJECTS1 := sample.o +OBJECTS2 := sample_muxer.o vttreader.o webvttparser.o sample_muxer_metadata.o +OBJECTS3 := dumpvtt.o vttreader.o webvttparser.o +OBJECTS4 := vttdemux.o webvttparser.o +INCLUDES := -I. +DEPS := $(WEBMOBJS:.o=.d) $(OBJECTS1:.o=.d) $(OBJECTS2:.o=.d) +DEPS += $(OBJECTS3:.o=.d) $(OBJECTS4:.o=.d) +EXES := samplemuxer sample dumpvtt vttdemux + +all: $(EXES) + +sample: sample.o $(LIBWEBMA) + $(CXX) $^ -o $@ + +samplemuxer: $(OBJECTS2) $(LIBWEBMA) + $(CXX) $^ -o $@ + +dumpvtt: $(OBJECTS3) + $(CXX) $^ -o $@ + +shared: $(LIBWEBMSO) + +vttdemux: $(OBJECTS4) $(LIBWEBMA) + $(CXX) $^ -o $@ + +libwebm.a: $(OBJSA) + $(AR) rcs $@ $^ + +libwebm.so: $(OBJSSO) + $(CXX) $(CXXFLAGS) -shared $(OBJSSO) -o $(LIBWEBMSO) + +%.o: %.cpp + $(CXX) -c $(CXXFLAGS) $(INCLUDES) $< -o $@ + +%_a.o: %.cpp + $(CXX) -c $(CXXFLAGS) $(INCLUDES) $< -o $@ + +%_so.o: %.cpp + $(CXX) -c $(CXXFLAGS) -fPIC $(INCLUDES) $< -o $@ + +clean: + $(RM) -f $(OBJECTS1) $(OBJECTS2) $(OBJECTS3) $(OBJECTS4) $(OBJSA) $(OBJSSO) $(LIBWEBMA) $(LIBWEBMSO) $(EXES) $(DEPS) Makefile.bak + +ifneq ($(MAKECMDGOALS), clean) + -include $(DEPS) +endif |