added uninstall make targets
[melted] / src / valerie / Makefile
index 7322577..c1a783b 100644 (file)
@@ -1,5 +1,14 @@
+include ../../config.mak
 
-TARGET = libvalerie.so
+ifneq ($(targetos), Darwin)
+NAME = libvalerie$(LIBSUF)
+TARGET = $(NAME).$(version)
+SHFLAGS += -Wl,-soname,$(TARGET)
+else
+NAME = libvalerie$(LIBSUF)
+TARGET = libvalerie.$(version)$(LIBSUF)
+SHFLAGS += -install_name $(libdir)/$(TARGET)
+endif
 
 OBJS = valerie.o \
           valerie_notifier.o \
@@ -11,30 +20,46 @@ OBJS = valerie.o \
           valerie_remote.o \
           valerie_socket.o
 
-SRCS := $(OBJS:.o=.c)
+INCS = valerie.h \
+          valerie_notifier.h \
+          valerie_parser.h \
+          valerie_remote.h \
+          valerie_response.h \
+          valerie_socket.h \
+          valerie_status.h \
+          valerie_tokeniser.h \
+          valerie_util.h
 
-CFLAGS=-O3 -Wall -g -D_FILE_OFFSET_BITS=64 -pthread
+SRCS := $(OBJS:.o=.c)
 
-LDFLAGS=-ldv -lpthread
-
-ifeq ($(MLT_GPROF),true)
-CFLAGS+=-p
-LDFLAGS+=-p
-endif
+CFLAGS += -I.. $(RDYNAMIC)
+LDFLAGS += -L../framework -lmlt -lpthread
 
 all: $(TARGET)
 
 $(TARGET): $(OBJS)
-               $(CC) -shared -o $@ $(OBJS) $(LDFLAGS)
+               $(CC) $(SHFLAGS) -o $@ $(OBJS) $(LDFLAGS)
+               ln -sf $(TARGET) $(NAME)
 
 depend:        $(SRCS)
                $(CC) -MM $(CFLAGS) $^ 1>.depend
 
-dist-clean:    clean
+distclean:     clean
                rm -f .depend
 
 clean: 
-               rm -f $(OBJS) $(TARGET)
+               rm -f $(OBJS) $(TARGET) $(NAME)
+
+install:       all
+       install -m 755 $(TARGET) $(DESTDIR)$(libdir)
+       ln -sf $(TARGET) $(DESTDIR)$(libdir)/$(NAME)
+       mkdir -p "$(DESTDIR)$(prefix)/include/mlt/valerie"
+       install -m 644 $(INCS) "$(DESTDIR)$(prefix)/include/mlt/valerie"
+
+uninstall:
+       rm -f "$(DESTDIR)$(libdir)/$(TARGET)"
+       rm -f "$(DESTDIR)$(libdir)/$(NAME)"
+       rm -rf "$(DESTDIR)$(prefix)/include/mlt/valerie"
 
 ifneq ($(wildcard .depend),)
 include .depend