Hades and Koegler patches for ALSA and general efficiency.
[rtaudio-cdist.git] / Makefile.in
index 10b7ac39d852da5aa972a27747f77cbfe284988d..74d648d7781c34725720e003bead9253cd09d40d 100644 (file)
@@ -6,9 +6,11 @@ LN = /bin/ln
 
 OBJECTS        = RtAudio.o @objects@
 
-STATIC = librtaudio.a
+LIBNAME = librtaudio
+STATIC = $(LIBNAME).a
 SHARED = @sharedlib@
-RELEASE = 4.0.7
+RELEASE = 4.1.0
+MAJOR = 4
 LIBRARIES = $(STATIC) $(SHARED)
 
 CC       = @CXX@
@@ -18,6 +20,8 @@ RANLIB   = @RANLIB@
 DEFS     = @CPPFLAGS@
 CFLAGS   = @CXXFLAGS@ -Iinclude -fPIC
 
+PREFIX   = @prefix@
+
 all : $(LIBRARIES)
 
 tests:
@@ -27,9 +31,8 @@ $(LIBRARIES): $(OBJECTS)
        $(AR) ruv $(STATIC) $(OBJECTS)
        ranlib $(STATIC)
        $(CC) -fPIC @libflags@ $(OBJECTS) @LIBS@
-       $(LN) -s @sharedname@ $(SHARED)
-
-#      $(CC) -shared $(OBJECTS) -o $(SHARED) @LIBS@
+       $(LN) -sf @sharedname@ $(SHARED)
+       $(LN) -sf @sharedname@ $(SHARED).$(MAJOR)
 
 %.o : %.cpp
        $(CC) $(CFLAGS) $(DEFS) -c $(<) -o $@
@@ -37,6 +40,20 @@ $(LIBRARIES): $(OBJECTS)
 %.o : include/%.cpp
        $(CC) $(CFLAGS) $(DEFS) -c $(<) -o $@
 
+install:
+       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=644 RtAudio.h $(PREFIX)/include/
+       install --mode=755 rtaudio-config $(PREFIX)/bin/
+
+uninstall:
+       -@rm -vf $(patsubst %,$(PREFIX)/lib/%, $(LIBRARIES) $(SHARED).$(MAJOR) $(SHARED).$(RELEASE))
+       -@rm -vf $(PREFIX)/lib/pkgconfig/$(LIBNAME).pc
+       -@rm -vf $(PREFIX)/bin/rtaudio-config
+
 clean : 
        $(RM) -f $(LIBRARIES) @sharedname@ $(SHARED)*
        $(RM) -f $(OBJECTS)
@@ -47,10 +64,12 @@ distclean:
        $(RM) -f $(LIBRARIES) @sharedname@ $(SHARED)*
        $(RM) -f $(OBJECTS)
        $(RM) -f *~
-       $(RM) -rf config.log config.status autom4te.cache Makefile rtaudio-config
+       $(RM) -rf config.log config.status autom4te.cache Makefile rtaudio-config $(LIBNAME).pc
        cd tests && $(MAKE) distclean
 
 strip : 
        strip $(LIBRARIES)
        ranlib $(LIBRARIES)
        cd tests && $(MAKE) strip
+
+.PHONY: clean distclean strip install uninstall