X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2FMakefile;h=9112ff16e94a173487b8323ebb55cabf5dd48f68;hb=51f99c29759e71318c4c575f8a68cf1b5d1c5137;hp=562698ebf0ace89ae43da80cf9c92551e857fe41;hpb=15a23435c82ba0435061a35611c6afbe24d09e32;p=melted diff --git a/src/framework/Makefile b/src/framework/Makefile index 562698e..9112ff1 100644 --- a/src/framework/Makefile +++ b/src/framework/Makefile @@ -1,10 +1,27 @@ +include ../../config.mak -TARGET = libmlt.so +NAME = libmlt$(LIBSUF) +TARGET = $(NAME).$(version) + +ifneq ($(targetos), Darwin) +NAME = libmlt$(LIBSUF) +TARGET = $(NAME).$(version) +SONAME = $(NAME).$(soversion) +SHFLAGS += -Wl,-soname,$(SONAME) +else +NAME = libmlt$(LIBSUF) +TARGET = libmlt.$(version)$(LIBSUF) +SONAME = libmlt.$(soversion)$(LIBSUF) +SHFLAGS += -install_name $(libdir)/$(SONAME) -current_version $(version) -compatibility_version $(soversion) +endif OBJS = mlt_frame.o \ + mlt_geometry.o \ mlt_deque.o \ mlt_property.o \ mlt_properties.o \ + mlt_events.o \ + mlt_parser.o \ mlt_service.o \ mlt_producer.o \ mlt_multitrack.o \ @@ -15,27 +32,75 @@ OBJS = mlt_frame.o \ mlt_field.o \ mlt_tractor.o \ mlt_factory.o \ - mlt_repository.o + mlt_repository.o \ + mlt_pool.o \ + mlt_tokeniser.o \ + mlt_profile.o \ + mlt_log.o + +INCS = mlt_consumer.h \ + mlt_factory.h \ + mlt_filter.h \ + mlt.h \ + mlt_multitrack.h \ + mlt_pool.h \ + mlt_properties.h \ + mlt_events.h \ + mlt_parser.h \ + mlt_repository.h \ + mlt_tractor.h \ + mlt_types.h \ + mlt_deque.h \ + mlt_field.h \ + mlt_frame.h \ + mlt_geometry.h \ + mlt_playlist.h \ + mlt_producer.h \ + mlt_property.h \ + mlt_service.h \ + mlt_transition.h \ + mlt_tokeniser.h \ + mlt_profile.h \ + mlt_log.h SRCS := $(OBJS:.o=.c) -CFLAGS = -g -Wall -D_FILE_OFFSET_BITS=64 -pthread +CFLAGS += $(RDYNAMIC) -DPREFIX="\"$(prefix)\"" -DLIBDIR="\"$(libdir)\"" -LDFLAGS = -lm -ldl -lpthread +LDFLAGS += -lm $(LIBDL) -lpthread all: $(TARGET) $(TARGET): $(OBJS) - $(CC) -shared -o $@ $(OBJS) $(LDFLAGS) + $(CC) $(SHFLAGS) -o $@ $(OBJS) $(LDFLAGS) + ln -sf $(TARGET) $(NAME) + ln -sf $(TARGET) $(SONAME) depend: $(SRCS) - $(CC) -MM $(CFLAGS) $^ 1>.depend + $(CC) -MM $(CFLAGS) $^ 1>.depend -dist-clean: clean +distclean: clean rm -f .depend clean: - rm -f $(OBJS) $(TARGET) + rm -f $(OBJS) $(TARGET) $(NAME) + +install: + install -d $(DESTDIR)$(libdir) + install -m 755 $(TARGET) $(DESTDIR)$(libdir) + ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(SONAME) + ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME) + install -d "$(DESTDIR)$(prefix)/include/mlt/framework" + install -m 644 $(INCS) "$(DESTDIR)$(prefix)/include/mlt/framework" + install -d "$(DESTDIR)$(prefix)/share/mlt" + install -m 644 metaschema.yaml "$(DESTDIR)$(prefix)/share/mlt/" + +uninstall: + rm -f "$(DESTDIR)$(libdir)/$(TARGET)" + rm -f "$(DESTDIR)$(libdir)/$(SONAME)" + rm -f "$(DESTDIR)$(libdir)/$(NAME)" + rm -rf "$(DESTDIR)$(prefix)/include/mlt/framework" + rm "$(DESTDIR)$(prefix)/share/mlt/metaschema.yaml" ifneq ($(wildcard .depend),) include .depend