X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2FMakefile;h=0ce24391adfa5fc08bb06c7921d586196aeec99a;hb=2bd3c395eac9fb8b02f6b39786659c7d1481872d;hp=b9f2c7086732a52a5129ef374f201c5a0eac345d;hpb=a0a988c50fce047427b445d5e21d7354862e8e23;p=melted diff --git a/src/framework/Makefile b/src/framework/Makefile index b9f2c70..0ce2439 100644 --- a/src/framework/Makefile +++ b/src/framework/Makefile @@ -1,11 +1,25 @@ include ../../config.mak -TARGET = libmlt.so +NAME = libmlt$(LIBSUF) +TARGET = $(NAME).$(version) + +ifneq ($(targetos), Darwin) +NAME = libmlt$(LIBSUF) +TARGET = $(NAME).$(version) +SHFLAGS += -Wl,-soname,$(TARGET) +else +NAME = libmlt$(LIBSUF) +TARGET = libmlt.$(version)$(LIBSUF) +SHFLAGS += -install_name $(libdir)/$(TARGET) +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 \ @@ -17,55 +31,64 @@ OBJS = mlt_frame.o \ mlt_tractor.o \ mlt_factory.o \ mlt_repository.o \ - mlt_pool.o + mlt_pool.o \ + mlt_tokeniser.o -SRCS := $(OBJS:.o=.c) +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 -CFLAGS = -g -O3 -Wall -D_FILE_OFFSET_BITS=64 -pthread -DPREFIX="\"$(prefix)\"" +SRCS := $(OBJS:.o=.c) -LDFLAGS = -lm -ldl -lpthread +CFLAGS += $(RDYNAMIC) -DPREFIX="\"$(prefix)\"" -ifeq ($(MLT_GPROF),true) -CFLAGS+=-p -LDFLAGS+=-p -endif +LDFLAGS += -lm $(LIBDL) -lpthread all: $(TARGET) $(TARGET): $(OBJS) - $(CC) -shared -o $@ $(OBJS) $(LDFLAGS) + $(CC) $(SHFLAGS) -o $@ $(OBJS) $(LDFLAGS) + ln -sf $(TARGET) $(NAME) 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 -m 755 $(TARGET) $(prefix)/lib/libmlt.so - mkdir -p "$(prefix)/include/mlt/framework" - install -m 644 mlt_consumer.h \ - mlt_factory.h \ - mlt_filter.h \ - mlt.h \ - mlt_multitrack.h \ - mlt_pool.h \ - mlt_properties.h \ - mlt_repository.h \ - mlt_tractor.h \ - mlt_types.h \ - mlt_deque.h \ - mlt_field.h \ - mlt_frame.h \ - mlt_playlist.h \ - mlt_producer.h \ - mlt_property.h \ - mlt_service.h \ - mlt_transition.h \ - "$(prefix)/include/mlt/framework" + install -d $(DESTDIR)$(libdir) + install -m 755 $(TARGET) $(DESTDIR)$(libdir) + ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME) + install -d "$(DESTDIR)$(prefix)/include/mlt/framework" + install -m 644 $(INCS) "$(DESTDIR)$(prefix)/include/mlt/framework" + +uninstall: + rm -f "$(DESTDIR)$(libdir)/$(TARGET)" + rm -f "$(DESTDIR)$(libdir)/$(NAME)" + rm -rf "$(DESTDIR)$(prefix)/include/mlt/framework" ifneq ($(wildcard .depend),) include .depend