X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=mlt%2B%2B%2Fsrc%2FMakefile;h=651a4432a3a8d25a7d3cdc7cbea9702f934e1680;hb=55757b000043f6e370b9e963ce2e3542962c03c0;hp=a52bde96c07e17903d0ad7702e1eb9a0ec2cf686;hpb=01c1d44e8df201c3061cf20addf5421d21d8bcb0;p=melted diff --git a/mlt++/src/Makefile b/mlt++/src/Makefile index a52bde9..651a443 100644 --- a/mlt++/src/Makefile +++ b/mlt++/src/Makefile @@ -1,35 +1,68 @@ -prefix = /usr/local -CXXFLAGS = -Wall -pthread `mlt-config --cflags` -LDFLAGS = `mlt-config --libs` +include ../config.mak INSTALL = install -TARGET = libmlt++.so +ifneq ($(targetos), Darwin) +NAME = libmlt++$(LIBSUF) +TARGET = $(NAME).$(version) +SONAME = $(NAME).$(soversion) +LIBFLAGS += -Wl,-soname,$(SONAME) +else +NAME = libmlt++$(LIBSUF) +TARGET = libmlt++.$(version)$(LIBSUF) +SONAME = libmlt++.$(soversion)$(LIBSUF) +LIBFLAGS += -install_name $(libdir)/$(SONAME) -current_version $(version) -compatibility_version $(soversion) +endif OBJS = MltConsumer.o \ + MltDeque.o \ + MltEvent.o \ MltFactory.o \ + MltField.o \ MltFilter.o \ + MltFilteredConsumer.o \ MltFrame.o \ + MltGeometry.o \ + MltMiracle.o \ + MltMultitrack.o \ + MltParser.o \ MltPlaylist.o \ MltProducer.o \ + MltProfile.o \ MltProperties.o \ + MltPushConsumer.o \ + MltRepository.o \ + MltResponse.o \ MltService.o \ + MltTokeniser.o \ + MltTractor.o \ MltTransition.o SRCS = $(OBJS:.o=.cpp) - -HEADERS = $(OBJS:.o=.h) - -CC=g++ +HEADERS = config.h Mlt.h $(OBJS:.o=.h) all: $(TARGET) $(TARGET): $(OBJS) - $(CC) -shared -o $@ $(OBJS) $(LDFLAGS) + $(CXX) $(LIBFLAGS) -o $@ $(OBJS) $(LDFLAGS) + ln -sf $(TARGET) $(NAME) + ln -sf $(TARGET) $(SONAME) clean: - $(RM) $(OBJS) $(TARGET) + $(RM) $(OBJS) $(TARGET) $(NAME) + +distclean: clean install: - $(INSTALL) -m 755 $(TARGET) $(prefix)/lib - $(INSTALL) -d "$(prefix)/include/mlt++" - $(INSTALL) -m 644 $(HEADERS) "$(prefix)/include/mlt++" + $(INSTALL) -d "$(DESTDIR)$(libdir)" + $(INSTALL) -m 755 $(TARGET) $(DESTDIR)$(libdir) + ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME) + ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(SONAME) + $(INSTALL) -d "$(DESTDIR)$(prefix)/include/mlt++" + $(INSTALL) -m 644 $(HEADERS) "$(DESTDIR)$(prefix)/include/mlt++" + /sbin/ldconfig 2> /dev/null || true + +uninstall: + rm -f "$(DESTDIR)$(libdir)/$(TARGET)" + rm -f "$(DESTDIR)$(libdir)/$(NAME)" + rm -f "$(DESTDIR)$(libdir)/$(SONAME)" + rm -rf "$(DESTDIR)$(prefix)/include/mlt++"