]> git.sesse.net Git - mlt/blobdiff - src/modules/gtk2/Makefile
Fix pango producer from loading with empty string arg.
[mlt] / src / modules / gtk2 / Makefile
index 3130918d53bb461e97c9d9f2b86c0e1140f69ddf..e6b2266cec58fcdeb4329d96c8e08e4bc25da2d0 100644 (file)
@@ -1,29 +1,83 @@
+CFLAGS += -I../..
 
-TARGET = ../libmltgtk2.so
+LDFLAGS += -L../../framework -lmlt -lpthread -lm
 
-OBJS = factory.o \
-          producer_pixbuf.o \
-          producer_pango.o
+include ../../../config.mak
+include config.mak
 
-CFLAGS = `pkg-config gdk-pixbuf-2.0 --cflags` `pkg-config pangoft2 --cflags` -I../../ -Wall -g -D_FILE_OFFSET_BITS=64 -pthread
+TARGET = ../libmltgtk2$(LIBSUF)
 
-LDFLAGS = `pkg-config gdk-pixbuf-2.0 --libs` `pkg-config pangoft2 --libs`
+OBJS = factory.o
+
+ifdef USE_GTK2
+OBJS += consumer_gtk2.o
+CFLAGS += `pkg-config gtk+-2.0 --cflags`
+LDFLAGS += `pkg-config gtk+-2.0 --libs`
+endif
+
+ifdef USE_PIXBUF
+OBJS += producer_pixbuf.o pixops.o filter_rescale.o
+CFLAGS += `pkg-config gdk-pixbuf-2.0 --cflags`
+LDFLAGS += `pkg-config gdk-pixbuf-2.0 --libs`
+endif
+
+ifdef USE_EXIF
+CFLAGS += $(EXIFCXXFLAGS) 
+LDFLAGS += $(EXIFLIBS)
+endif
+
+ifdef MMX_FLAGS
+ifndef ARCH_X86_64
+ASM_OBJS = have_mmx.o scale_line_22_yuv_mmx.o
+endif
+endif
+
+ifdef USE_PANGO
+OBJS += producer_pango.o
+CFLAGS += `pkg-config pangoft2 --cflags`
+LDFLAGS += `pkg-config pangoft2 --libs`
+ifeq ($(targetos),Darwin)
+LDFLAGS += -liconv
+endif
+ifeq ($(targetos),FreeBSD)
+LDFLAGS += -liconv
+endif
+ifeq ($(targetos), MinGW)
+LDFLAGS += -liconv
+endif
+endif
 
 SRCS := $(OBJS:.o=.c)
 
+ifeq ($(targetos), MinGW)
+OBJS += ../../win32/win32.o
+SRCS += ../../win32/win32.c
+endif
+
 all:   $(TARGET)
 
-$(TARGET): $(OBJS)
-               $(CC) -shared -o $@ $(OBJS) $(LDFLAGS)
+$(TARGET): $(OBJS) $(ASM_OBJS)
+               $(CC) $(SHFLAGS) -o $@ $(OBJS) $(ASM_OBJS) $(LDFLAGS)
+
+have_mmx.o:
+       $(CC) -o $@ -c have_mmx.S
+
+scale_line_22_yuv_mmx.o: scale_line_22_yuv_mmx.S
+       $(CC) -o $@ -c scale_line_22_yuv_mmx.S
 
 depend:        $(SRCS)
                $(CC) -MM $(CFLAGS) $^ 1>.depend
 
-dist-clean:    clean
+distclean:     clean
                rm -f .depend
 
 clean: 
-               rm -f $(OBJS) $(TARGET)
+               rm -f $(OBJS) $(ASM_OBJS) $(TARGET)
+
+install: all
+       install -m 755 $(TARGET) "$(DESTDIR)$(libdir)/mlt"
+       install -d "$(DESTDIR)$(datadir)/mlt/gtk2"
+       install -m 644 *.yml "$(DESTDIR)$(datadir)/mlt/gtk2"
 
 ifneq ($(wildcard .depend),)
 include .depend