]> git.sesse.net Git - mlt/blobdiff - src/framework/Makefile
Fix compile error on Windows.
[mlt] / src / framework / Makefile
index dff362913427b03467d3479ba71fadff568c90f5..2c3eac9d5804e7b7a70640ce0a74e0669b70421c 100644 (file)
@@ -1,4 +1,5 @@
 include ../../config.mak
+include config.mak
 
 NAME = libmlt$(LIBSUF)
 TARGET = $(NAME).$(version)
@@ -11,7 +12,7 @@ SHFLAGS += -install_name $(libdir)/$(SONAME) -current_version $(version) -compat
 else ifeq ($(targetos), MinGW)
 NAME = libmlt$(LIBSUF)
 TARGET = libmlt-$(soversion)$(LIBSUF)
-libdir = $(prefix)
+SHFLAGS += -Wl,--output-def,libmlt.def
 else
 NAME = libmlt$(LIBSUF)
 TARGET = $(NAME).$(version)
@@ -19,6 +20,10 @@ SONAME = $(NAME).$(soversion)
 SHFLAGS += -Wl,-soname,$(SONAME)
 endif
 
+ifeq ($(targetos), Linux)
+SHFLAGS += -Wl,--version-script=mlt.vers
+endif
+
 OBJS = mlt_frame.o \
           mlt_version.o \
           mlt_geometry.o \
@@ -42,7 +47,8 @@ OBJS = mlt_frame.o \
           mlt_tokeniser.o \
           mlt_profile.o \
           mlt_log.o \
-          mlt_cache.o
+          mlt_cache.o \
+          mlt_animation.o
 
 INCS = mlt_consumer.h \
           mlt_version.h \
@@ -69,13 +75,19 @@ INCS = mlt_consumer.h \
           mlt_tokeniser.h \
           mlt_profile.h \
           mlt_log.h \
-          mlt_cache.h
+          mlt_cache.h \
+          mlt_animation.h
 
 SRCS := $(OBJS:.o=.c)
 
-CFLAGS += $(RDYNAMIC) -DPREFIX="\"$(prefix)\"" -DLIBDIR="\"$(libdir)\""
+ifeq ($(targetos), MinGW)
+OBJS += ../win32/win32.o
+SRCS += ../win32/win32.c
+endif
 
-LDFLAGS += $(LIBDL) -lpthread
+CFLAGS += $(RDYNAMIC) -DPREFIX_DATA="\"$(mltdatadir)\"" -DPREFIX_LIB="\"$(moduledir)\""
+
+LDFLAGS += $(LIBDL) -lpthread -lm
 
 all:   $(TARGET)
 
@@ -97,15 +109,19 @@ clean:
 
 install:
        install -d $(DESTDIR)$(libdir)
-       install -m 755 $(TARGET) $(DESTDIR)$(libdir)
-       if [ "$(targetos)" != "MinGW" ]; then \
+       if [ "$(targetos)" = "MinGW" ]; then \
+               install -m 755 $(TARGET) $(DESTDIR)$(prefix) ; \
+               install -m 755 $(TARGET) $(DESTDIR)$(libdir)/libmlt.dll ; \
+               install -m 644 libmlt.def $(DESTDIR)$(libdir) ; \
+       else \
+               install -m 755 $(TARGET) $(DESTDIR)$(libdir) ; \
                ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(SONAME) ; \
                ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME) ; \
        fi
        install -d "$(DESTDIR)$(prefix)/include/mlt/framework"
        install -m 644 $(INCS) "$(DESTDIR)$(prefix)/include/mlt/framework"
-       install -d "$(DESTDIR)$(datadir)/mlt"
-       install -m 644 metaschema.yaml "$(DESTDIR)$(datadir)/mlt/"
+       install -d "$(DESTDIR)$(mltdatadir)"
+       install -m 644 metaschema.yaml "$(DESTDIR)$(mltdatadir)"
 
 uninstall:
        rm -f "$(DESTDIR)$(libdir)/$(TARGET)"
@@ -114,7 +130,7 @@ uninstall:
                rm -f "$(DESTDIR)$(libdir)/$(NAME)" ; \
        fi
        rm -rf "$(DESTDIR)$(prefix)/include/mlt/framework"
-       rm -f "$(DESTDIR)$(datadir)/mlt/metaschema.yaml"
+       rm -f "$(DESTDIR)$(mltdatadir)/metaschema.yaml"
 
 ifneq ($(wildcard .depend),)
 include .depend