Browse Source

Add install/uninstall targets.

Stephen Sinclair 11 năm trước cách đây
mục cha
commit
42d64c5388
2 tập tin đã thay đổi với 21 bổ sung2 xóa
  1. 20 1
      Makefile.in
  2. 1 1
      configure.ac

+ 20 - 1
Makefile.in

@@ -6,7 +6,8 @@ LN = /bin/ln
 
 OBJECTS	= RtMidi.o
 
-STATIC = librtmidi.a
+LIBNAME = librtmidi
+STATIC = $(LIBNAME).a
 SHARED = @sharedlib@
 RELEASE = 2.0.1
 MAJOR = 2
@@ -19,6 +20,8 @@ RANLIB   = @RANLIB@
 DEFS     = @CPPFLAGS@
 CFLAGS   = @CXXFLAGS@ -Iinclude -fPIC
 
+PREFIX   = @prefix@
+
 all : $(LIBRARIES)
 
 tests:
@@ -38,6 +41,20 @@ $(LIBRARIES): $(OBJECTS)
 %.o : include/%.cpp
 	$(CC) $(CFLAGS) $(DEFS) -c $(<) -o $@
 
+install: all
+	install --mode=755 $(STATIC) $(PREFIX)/lib/
+	install --mode=755 @sharedname@ $(PREFIX)/lib/
+	$(LN) -sf @sharedname@ $(PREFIX)/lib/$(SHARED)
+	$(LN) -sf @sharedname@ $(PREFIX)/lib/$(SHARED).$(MAJOR)
+	install --mode=644 $(LIBNAME).pc $(PREFIX)/lib/pkgconfig
+	install --mode=755 rtmidi-config $(PREFIX)/bin/
+	install --mode=644 RtMidi.h RtError.h $(PREFIX)/include
+
+uninstall:
+	-@rm -vf $(patsubst %,$(PREFIX)/lib/%, $(LIBRARIES) $(SHARED).$(MAJOR) $(SHARED).$(RELEASE))
+	-@rm -vf $(PREFIX)/lib/pkgconfig/$(LIBNAME).pc
+	-@rm -vf $(PREFIX)/bin/rtmidi-config
+
 clean : 
 	$(RM) -f $(LIBRARIES) @sharedname@ $(SHARED)*
 	$(RM) -f $(OBJECTS)
@@ -55,3 +72,5 @@ strip :
 	strip $(LIBRARIES)
 	ranlib $(LIBRARIES)
 	cd tests && $(MAKE) strip
+
+.PHONY: strip distclean clean uninstall

+ 1 - 1
configure.ac

@@ -139,4 +139,4 @@ CPPFLAGS="$CPPFLAGS $api"
 
 AC_OUTPUT
 
-chmod oug+x rtmidi-config
+chmod oug+x rtmidi-config