]> git.sesse.net Git - mlt/blobdiff - src/mlt++/Makefile
Initial port to Windows using MinGW.
[mlt] / src / mlt++ / Makefile
index 651a4432a3a8d25a7d3cdc7cbea9702f934e1680..efaa9a1b2e476b349e87fb23c21f497f783daf1b 100644 (file)
@@ -1,18 +1,27 @@
-include ../config.mak
+include ../../config.mak
+include config.mak
 INSTALL = install
 
-ifneq ($(targetos), Darwin)
-NAME = libmlt++$(LIBSUF)
-TARGET = $(NAME).$(version)
-SONAME = $(NAME).$(soversion)
-LIBFLAGS += -Wl,-soname,$(SONAME)
-else
+ifeq ($(targetos), Darwin)
 NAME = libmlt++$(LIBSUF)
 TARGET = libmlt++.$(version)$(LIBSUF)
 SONAME = libmlt++.$(soversion)$(LIBSUF)
 LIBFLAGS += -install_name $(libdir)/$(SONAME) -current_version $(version) -compatibility_version $(soversion)
+else ifeq ($(targetos), MinGW)
+NAME = libmlt++$(LIBSUF)
+TARGET = libmlt++-$(soversion)$(LIBSUF)
+libdir = $(prefix)
+else
+NAME = libmlt++$(LIBSUF)
+TARGET = $(NAME).$(version)
+SONAME = $(NAME).$(soversion)
+LIBFLAGS += -Wl,-soname,$(SONAME)
 endif
 
+CXXFLAGS += -I.. $(RDYNAMIC) -DVERSION=\"$(version)\"
+
+LDFLAGS += -L../framework -lmlt
+
 OBJS = MltConsumer.o \
           MltDeque.o \
           MltEvent.o \
@@ -20,9 +29,9 @@ OBJS = MltConsumer.o \
           MltField.o \
           MltFilter.o \
           MltFilteredConsumer.o \
+          MltFilteredProducer.o \
           MltFrame.o \
           MltGeometry.o \
-          MltMiracle.o \
           MltMultitrack.o \
           MltParser.o \
           MltPlaylist.o \
@@ -31,7 +40,6 @@ OBJS = MltConsumer.o \
           MltProperties.o \
           MltPushConsumer.o \
           MltRepository.o \
-          MltResponse.o \
           MltService.o \
           MltTokeniser.o \
           MltTractor.o \
@@ -45,24 +53,36 @@ all:                $(TARGET)
 $(TARGET):     $(OBJS)
        $(CXX) $(LIBFLAGS) -o $@ $(OBJS) $(LDFLAGS)
        ln -sf $(TARGET) $(NAME)
-       ln -sf $(TARGET) $(SONAME)
+       if [ "$(targetos)" != "MinGW" ]; then \
+               ln -sf $(TARGET) $(SONAME) ; \
+       fi
+
+depend:        $(SRCS)
+       $(CXX) -MM $(CXXFLAGS) $^ 1>.depend
 
 clean:
-       $(RM) $(OBJS) $(TARGET) $(NAME)
+       $(RM) $(OBJS) $(TARGET) $(NAME) $(SONAME)
 
 distclean:     clean
 
 install:
        $(INSTALL) -d "$(DESTDIR)$(libdir)"
        $(INSTALL) -m 755 $(TARGET) $(DESTDIR)$(libdir)
-       ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME)
-       ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(SONAME)
+       if [ "$(targetos)" != "MinGW" ]; then \
+               ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME) ; \
+               ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(SONAME) ; \
+       fi
        $(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)"
+       if [ "$(targetos)" != "MinGW" ]; then \
+               rm -f "$(DESTDIR)$(libdir)/$(NAME)" ; \
+               rm -f "$(DESTDIR)$(libdir)/$(SONAME)" ; \
+       fi
        rm -rf "$(DESTDIR)$(prefix)/include/mlt++"
+
+ifneq ($(wildcard .depend),)
+include .depend
+endif