]> git.sesse.net Git - cubemap/blobdiff - Makefile.in
Add a LD_PRELOAD-able library to force Metacube output from FFmpeg.
[cubemap] / Makefile.in
index b4d84569948d3ae34e4215496cb923a9d904c2e2..5f9f0534f7e11cf3a9cad3ff4b5c4dd832d63d71 100644 (file)
@@ -5,12 +5,17 @@ PROTOC=protoc
 CPPFLAGS=@CPPFLAGS@
 CPPFLAGS += -Itlse -DWITH_KTLS -DNO_TLS_LEGACY_SUPPORT -DNO_SSL_COMPATIBLE_INTERFACE -DLTM_DESC -DTLS_REEXPORTABLE -DNO_TLS_WITH_CHACHA20_POLY1305
 CXXFLAGS=-Wall @CXXFLAGS@ @protobuf_CFLAGS@ @libsystemd_CFLAGS@ @libtomcrypt_CFLAGS@ -pthread
+CFLAGS=-Wall @CFLAGS@
 LDFLAGS=@LDFLAGS@ -pthread
 LIBS=@LIBS@ @protobuf_LIBS@ @libsystemd_LIBS@ @libtomcrypt_LIBS@
 
 OBJS=main.o client.o server.o stream.o udpstream.o serverpool.o input.o input_stats.o httpinput.o udpinput.o parse.o config.o acceptor.o stats.o accesslog.o thread.o util.o log.o metacube2.o sa_compare.o timespec.o state.pb.o tlse/tlse.o
 
+ifeq (@have_ffmpeg@,yes)
+all: cubemap ffmpeg_metacube_hack.so
+else
 all: cubemap
+endif
 
 %.pb.cc %.pb.h : %.proto
        $(PROTOC) --cpp_out=. $<
@@ -23,16 +28,19 @@ all: cubemap
        $(CXX) -MMD -MP $(CPPFLAGS) $(CXXFLAGS) -o $@ -c $<
 cubemap: $(OBJS)
        $(CXX) -o cubemap $(OBJS) $(LIBS) $(LDFLAGS)
+ffmpeg_metacube_hack.so: ffmpeg_metacube_hack.c
+       $(CC) -shared $(CPPFLAGS) $(CFLAGS) -fPIC -o $@ $< -ldl
 
 DEPS=$(OBJS:.o=.d)
 -include $(DEPS)
 
 clean:
-       $(RM) cubemap $(OBJS) $(DEPS) state.pb.h state.pb.cc
+       $(RM) cubemap $(OBJS) $(DEPS) state.pb.h state.pb.cc ffmpeg_metacube_hack.so
 
 PREFIX=@prefix@
 SYSCONFDIR=@sysconfdir@
 LOCALSTATEDIR=@localstatedir@
+LIBDIR=@libdir@
 install:
        $(INSTALL) -m 755 -o root -g root -d \
                $(DESTDIR)$(PREFIX)/bin \
@@ -44,6 +52,9 @@ install:
                $(DESTDIR)/lib/systemd/system
        $(INSTALL) -m 755 -o root -g root cubemap $(DESTDIR)$(PREFIX)/bin/cubemap
        $(INSTALL) -m 755 -o root -g root munin/cubemap munin/cubemap_input $(DESTDIR)$(PREFIX)/share/munin/plugins/
+ifeq (@have_ffmpeg@,yes)
+       $(INSTALL) -m 755 -o root -g root ffmpeg_metacube_hack.so $(DESTDIR)$(LIBDIR)/
+endif
        gzip -c cubemap.1 > $(DESTDIR)$(PREFIX)/share/man/man1/cubemap.1.gz
        sed \
                -e "s,@prefix[@],$(PREFIX),g" \