+include ../../config.mak
-FRAMEWORK_OBJS = mlt_frame.o \
- mlt_property.o \
- mlt_properties.o \
- mlt_service.o \
- mlt_producer.o \
- mlt_multitrack.o \
- mlt_consumer.o \
- mlt_filter.o \
- mlt_transition.o \
- mlt_tractor.o \
- mlt_factory.o \
- mlt_repository.o
-
-OBJS = $(FRAMEWORK_OBJS)
+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 \
+ mlt_playlist.o \
+ mlt_consumer.o \
+ mlt_filter.o \
+ mlt_transition.o \
+ mlt_field.o \
+ mlt_tractor.o \
+ mlt_factory.o \
+ mlt_repository.o \
+ mlt_pool.o \
+ mlt_tokeniser.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
SRCS := $(OBJS:.o=.c)
-CFLAGS=-g -Wall -D_FILE_OFFSET_BITS=64 -pthread
+CFLAGS += $(RDYNAMIC) -DPREFIX="\"$(prefix)\""
+
+LDFLAGS += -lm $(LIBDL) -lpthread
-all: libmlt.a
+all: $(TARGET)
-libmlt.a: $(OBJS)
- $(AR) rvu $@ $(OBJS)
- ranlib $@
+$(TARGET): $(OBJS)
+ $(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 $(FRAMEWORK_OBJS) libmlt.a
+ rm -f $(OBJS) $(TARGET) $(NAME)
+
+install:
+ 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"
ifneq ($(wildcard .depend),)
include .depend