diff --git a/.gitignore b/.gitignore
index 39729354..3aef4fdb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,6 +8,7 @@
*~
.deps
Makefile.in
+Makefile
version.m4
docs
build
diff --git a/Makefile b/Makefile
deleted file mode 100644
index 312834a3..00000000
--- a/Makefile
+++ /dev/null
@@ -1,262 +0,0 @@
-prefix = ./usr
-exec_prefix = $(prefix)
-bindir = $(prefix)/bin
-includedir = $(prefix)/include
-libdir = $(exec_prefix)/lib
-
-PACKAGE_VERSION := $(shell git describe --tags 2> /dev/null || cat VERSION 2> /dev/null || echo "Unknown")
-DEBUG = 4
-RELEASE = Generic_$(shell getconf LONG_BIT)
-
-ifeq ($(PACKAGE_VERSION),Unknown)
- $(warning Version is unknown - consider creating a VERSION file or fixing your git setup.)
-endif
-
-CPPFLAGS = -Wall -g -O2 -fPIC
-override CPPFLAGS += -funsigned-char -DDEBUG="$(DEBUG)" -DPACKAGE_VERSION="\"$(PACKAGE_VERSION)\"" -DRELEASE="\"$(RELEASE)\""
-
-ifndef NOSHM
-override CPPFLAGS += -DSHM_ENABLED=1
-endif
-
-ifdef WITH_THREADNAMES
-override CPPFLAGS += -DWITH_THREADNAMES=1
-endif
-
-THREADLIB = -lpthread -lrt
-LDLIBS = ${THREADLIB}
-LDFLAGS = -I${includedir} -L${libdir} -lmist
-
-
-.DEFAULT_GOAL := all
-
-lib: libmist.so libmist.a
-all: install-lib controller analysers inputs outputs
-
-DOXYGEN := $(shell doxygen -v 2> /dev/null)
-ifdef DOXYGEN
-all: docs
-else
-$(warning Doxygen not installed - not building source documentation.)
-endif
-
-controller: MistController
-MistController: override LDLIBS += $(THREADLIB)
-MistController: src/controller/server.html.h src/controller/*
- $(CXX) $(LDFLAGS) $(CPPFLAGS) src/controller/*.cpp $(LDLIBS) -o $@
-
-analysers: MistAnalyserRTMP
-MistAnalyserRTMP: src/analysers/rtmp_analyser.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-analysers: MistAnalyserFLV
-MistAnalyserFLV: src/analysers/flv_analyser.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-analysers: MistAnalyserDTSC
-MistAnalyserDTSC: src/analysers/dtsc_analyser.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-analysers: MistAnalyserAMF
-MistAnalyserAMF: src/analysers/amf_analyser.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-analysers: MistAnalyserMP4
-MistAnalyserMP4: src/analysers/mp4_analyser.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-analysers: MistAnalyserOGG
-MistAnalyserOGG: src/analysers/ogg_analyser.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-analysers: MistInfo
-MistInfo: src/analysers/info.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-inputs: MistInDTSC
-MistInDTSC: override LDLIBS += $(THREADLIB)
-MistInDTSC: override CPPFLAGS += "-DINPUTTYPE=\"input_dtsc.h\""
-MistInDTSC: src/input/mist_in.cpp src/input/input.cpp src/input/input_dtsc.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-inputs: MistInMP3
-MistInMP3: override LDLIBS += $(THREADLIB)
-MistInMP3: override CPPFLAGS += "-DINPUTTYPE=\"input_mp3.h\""
-MistInMP3: src/input/mist_in.cpp src/input/input.cpp src/input/input_mp3.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-inputs: MistInFLV
-MistInFLV: override LDLIBS += $(THREADLIB)
-MistInFLV: override CPPFLAGS += "-DINPUTTYPE=\"input_flv.h\""
-MistInFLV: src/input/mist_in.cpp src/input/input.cpp src/input/input_flv.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-inputs: MistInOGG
-MistInOGG: override LDLIBS += $(THREADLIB)
-MistInOGG: override CPPFLAGS += "-DINPUTTYPE=\"input_ogg.h\""
-MistInOGG: src/input/mist_in.cpp src/input/input.cpp src/input/input_ogg.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-inputs: MistInBuffer
-MistInBuffer: override LDLIBS += $(THREADLIB)
-MistInBuffer: override CPPFLAGS += "-DINPUTTYPE=\"input_buffer.h\""
-MistInBuffer: src/input/mist_in.cpp src/input/input.cpp src/input/input_buffer.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutFLV
-MistOutFLV: override LDLIBS += $(THREADLIB)
-MistOutFLV: override CPPFLAGS += "-DOUTPUTTYPE=\"output_progressive_flv.h\""
-MistOutFLV: src/output/mist_out.cpp src/output/output_http.cpp src/output/output.cpp src/output/output_progressive_flv.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutOGG
-MistOutOGG: override LDLIBS += $(THREADLIB)
-MistOutOGG: override LDLIBS += $(GEOIP)
-MistOutOGG: override CPPFLAGS += "-DOUTPUTTYPE=\"output_progressive_ogg.h\""
-MistOutOGG: src/output/mist_out.cpp src/output/output_http.cpp src/output/output.cpp src/output/output_progressive_ogg.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutMP4
-MistOutMP4: override LDLIBS += $(THREADLIB)
-MistOutMP4: override CPPFLAGS += "-DOUTPUTTYPE=\"output_progressive_mp4.h\""
-MistOutMP4: src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_progressive_mp4.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutMP3
-MistOutMP3: override LDLIBS += $(THREADLIB)
-MistOutMP3: override CPPFLAGS += "-DOUTPUTTYPE=\"output_progressive_mp3.h\""
-MistOutMP3: src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_progressive_mp3.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutRTMP
-MistOutRTMP: override LDLIBS += $(THREADLIB)
-MistOutRTMP: override CPPFLAGS += "-DOUTPUTTYPE=\"output_rtmp.h\""
-MistOutRTMP: src/output/mist_out.cpp src/output/output.cpp src/output/output_rtmp.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutRaw
-MistOutRaw: override LDLIBS += $(THREADLIB)
-MistOutRaw: override CPPFLAGS += "-DOUTPUTTYPE=\"output_raw.h\""
-MistOutRaw: src/output/mist_out.cpp src/output/output.cpp src/output/output_raw.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutHTTPTS
-MistOutHTTPTS: override LDLIBS += $(THREADLIB)
-MistOutHTTPTS: override CPPFLAGS += -DOUTPUTTYPE=\"output_httpts.h\" -DTS_BASECLASS=HTTPOutput
-MistOutHTTPTS: src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_httpts.cpp src/output/output_ts_base.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutTS
-MistOutTS: override LDLIBS += $(THREADLIB)
-MistOutTS: override CPPFLAGS += "-DOUTPUTTYPE=\"output_ts.h\""
-MistOutTS: src/output/mist_out.cpp src/output/output.cpp src/output/output_ts.cpp src/output/output_ts_base.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutHTTP
-MistOutHTTP: override LDLIBS += $(THREADLIB)
-MistOutHTTP: override CPPFLAGS += "-DOUTPUTTYPE=\"output_http_internal.h\""
-MistOutHTTP: src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_http_internal.cpp src/embed.js.h src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_http_internal.cpp $(LDLIBS) -o $@
-
-outputs: MistOutHSS
-MistOutHSS: override LDLIBS += $(THREADLIB)
-MistOutHSS: override CPPFLAGS += "-DOUTPUTTYPE=\"output_hss.h\""
-MistOutHSS: src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_hss.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutHLS
-MistOutHLS: override LDLIBS += $(THREADLIB)
-MistOutHLS: override CPPFLAGS += -DOUTPUTTYPE=\"output_hls.h\" -DTS_BASECLASS=HTTPOutput
-MistOutHLS: src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_hls.cpp src/output/output_ts_base.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutHDS
-MistOutHDS: override LDLIBS += $(THREADLIB)
-MistOutHDS: override CPPFLAGS += "-DOUTPUTTYPE=\"output_hds.h\""
-MistOutHDS: src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_hds.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutSRT
-MistOutSRT: override LDLIBS += $(THREADLIB)
-MistOutSRT: override CPPFLAGS += "-DOUTPUTTYPE=\"output_srt.h\""
-MistOutSRT: src/output/mist_out.cpp src/output/output_http.cpp src/output/output.cpp src/output/output_srt.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-outputs: MistOutJSON
-MistOutJSON: override LDLIBS += $(THREADLIB)
-MistOutJSON: override CPPFLAGS += "-DOUTPUTTYPE=\"output_json.h\""
-MistOutJSON: src/output/mist_out.cpp src/output/output.cpp src/output/output_http.cpp src/output/output_json.cpp src/io.cpp
- $(CXX) $(LDFLAGS) $(CPPFLAGS) $^ $(LDLIBS) -o $@
-
-lspSOURCES=lsp/plugins/md5.js lsp/plugins/cattablesort.js lsp/mist.js
-lspSOURCESmin=lsp/plugins/jquery.js lsp/plugins/jquery.flot.min.js lsp/plugins/jquery.flot.time.min.js lsp/plugins/jquery.qrcode.min.js
-lspDATA=lsp/header.html lsp/main.css lsp/footer.html
-
-JAVA := $(shell which java 2> /dev/null)
-ifdef JAVA
-CLOSURE=java -jar lsp/closure-compiler.jar --warning_level QUIET
-else
-$(warning Java not installed - not compressing javascript codes before inclusion.)
-CLOSURE=cat
-endif
-
-sourcery: src/sourcery.cpp
- $(CXX) -o $@ $(CPPFLAGS) $^
-
-src/embed.js.h: src/embed.js sourcery
- $(CLOSURE) src/embed.js > embed.min.js
- ./sourcery embed.min.js embed_js > src/embed.js.h
- rm embed.min.js
-
-src/controller/server.html: $(lspDATA) $(lspSOURCES) $(lspSOURCESmin)
- cat lsp/header.html > $@
- echo "" >> $@
- cat lsp/footer.html >> $@
-
-src/controller/server.html.h: src/controller/server.html sourcery
- cd src/controller; ../../sourcery server.html server_html > server.html.h
-
-lib_objects := $(patsubst %.cpp,%.o,$(wildcard lib/*.cpp))
-
-libmist.so: $(lib_objects)
- $(CXX) -shared -o $@ $(LDLIBS) $^
-
-libmist.a: $(lib_objects)
- $(AR) -rcs $@ $^
-
-docs: lib/* src/* Doxyfile Doxyfile
- doxygen ./Doxyfile > /dev/null
-
-clean:
- rm -f lib/*.o libmist.so libmist.a
- rm -rf ./docs
- rm -f *.o Mist* sourcery src/controller/server.html src/connectors/embed.js.h src/controller/server.html.h
-
-distclean: clean
-
-install-lib: libmist.so libmist.a lib/*.h
- mkdir -p $(DESTDIR)$(includedir)/mist
- install -m 644 lib/*.h $(DESTDIR)$(includedir)/mist/
- mkdir -p $(DESTDIR)$(libdir)
- install -m 644 libmist.a $(DESTDIR)$(libdir)/libmist.a
- install -m 644 libmist.so $(DESTDIR)$(libdir)/libmist.so
- $(POST_INSTALL)
-
-install: all
- if [ "$$USER" = "root" ]; then ldconfig; else echo "run: sudo ldconfig"; fi
- mkdir -p $(DESTDIR)$(bindir)
- install -m 755 ./Mist* $(DESTDIR)$(bindir)
-
-uninstall:
- rm -f $(DESTDIR)$(bindir)/Mist*
- rm -f $(DESTDIR)$(includedir)/mist/*.h
- rmdir $(DESTDIR)$(includedir)/mist
- rm -f $(DESTDIR)$(libdir)/libmist.so
- rm -f $(DESTDIR)$(libdir)/libmist.a
-
-.PHONY: clean uninstall