]> git.sesse.net Git - mlt/blob - src/mlt++/Makefile
Fix over- and under-linking.
[mlt] / src / mlt++ / Makefile
1 include ../../config.mak
2 include config.mak
3 INSTALL = install
4
5 ifneq ($(targetos), Darwin)
6 NAME = libmlt++$(LIBSUF)
7 TARGET = $(NAME).$(version)
8 SONAME = $(NAME).$(soversion)
9 LIBFLAGS += -Wl,-soname,$(SONAME)
10 else
11 NAME = libmlt++$(LIBSUF)
12 TARGET = libmlt++.$(version)$(LIBSUF)
13 SONAME = libmlt++.$(soversion)$(LIBSUF)
14 LIBFLAGS += -install_name $(libdir)/$(SONAME) -current_version $(version) -compatibility_version $(soversion)
15 endif
16
17 CXXFLAGS += -I.. $(RDYNAMIC) -DVERSION=\"$(version)\"
18
19 LDFLAGS += -L../framework -lmlt
20
21 OBJS = MltConsumer.o \
22            MltDeque.o \
23            MltEvent.o \
24            MltFactory.o \
25            MltField.o \
26            MltFilter.o \
27            MltFilteredConsumer.o \
28            MltFrame.o \
29            MltGeometry.o \
30            MltMultitrack.o \
31            MltParser.o \
32            MltPlaylist.o \
33            MltProducer.o \
34            MltProfile.o \
35            MltProperties.o \
36            MltPushConsumer.o \
37            MltRepository.o \
38            MltService.o \
39            MltTokeniser.o \
40            MltTractor.o \
41            MltTransition.o
42
43 SRCS = $(OBJS:.o=.cpp)
44 HEADERS = config.h Mlt.h $(OBJS:.o=.h)
45
46 all:            $(TARGET)
47
48 $(TARGET):      $(OBJS)
49         $(CXX) $(LIBFLAGS) -o $@ $(OBJS) $(LDFLAGS)
50         ln -sf $(TARGET) $(NAME)
51         ln -sf $(TARGET) $(SONAME)
52
53 depend: $(SRCS)
54         $(CXX) -MM $(CXXFLAGS) $^ 1>.depend
55
56 clean:
57         $(RM) $(OBJS) $(TARGET) $(NAME) $(SONAME)
58
59 distclean:      clean
60
61 install:
62         $(INSTALL) -d "$(DESTDIR)$(libdir)"
63         $(INSTALL) -m 755 $(TARGET) $(DESTDIR)$(libdir)
64         ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME)
65         ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(SONAME)
66         $(INSTALL) -d "$(DESTDIR)$(prefix)/include/mlt++"
67         $(INSTALL) -m 644 $(HEADERS) "$(DESTDIR)$(prefix)/include/mlt++"
68
69 uninstall:
70         rm -f "$(DESTDIR)$(libdir)/$(TARGET)"
71         rm -f "$(DESTDIR)$(libdir)/$(NAME)"
72         rm -f "$(DESTDIR)$(libdir)/$(SONAME)"
73         rm -rf "$(DESTDIR)$(prefix)/include/mlt++"
74
75 ifneq ($(wildcard .depend),)
76 include .depend
77 endif