--- Makefile.orig	2018-10-21 15:13:22.000000000 -0400
+++ Makefile	2018-10-22 13:36:03.000000000 -0400
@@ -36,23 +36,23 @@
 # define macros
 dylib = dylib
 dynamiclib = -dynamiclib
+installname = -install_name $(prefix)/lib/
 bindir = bin
 objdir = obj
 ipath=$(prefix)/bin
 CBASEFLAGS = -W -Wall -std=c++11 -stdlib=libc++ -fno-rtti -fno-exceptions  \
 -mmacosx-version-min=10.9
-LDBASEFLAGS = 
-JAVAINCS  = -I/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/include \
--I/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/include/darwin \
--I/System/Library/Frameworks/JavaVM.framework/Headers
+LDBASEFLAGS =
+JAVAINCS  = -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin
 CXX = clang++
-INSTALL=install -o $(USER) -g wheel
+INSTALL=install
 # INSTALL=install -o 0 -g 0
 
 # for testing on linux
 ifdef linux
     dylib = so
     dynamiclib = -shared
+    installname = -Wl,-soname,
     CXX = g++
     JAVAINCS   = -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux
 endif
@@ -152,10 +152,10 @@
 	$(CXX) $(LDFLAGSd) -o $(bindir)/AStyled $^
 	@ echo
 
-shared:  libastyle.$(dylib)
-libastyle.$(dylib):  $(OBJs)
+shared:  libastyle31.$(dylib)
+libastyle31.$(dylib):  $(OBJs)
 	@ mkdir -p $(bindir)
-	$(CXX) $(dynamiclib) $(LDFLAGSr) -o $(bindir)/libastyle31.$(dylib) $^
+	$(CXX) $(dynamiclib) $(installname)libastyle31.$(dylib) $(LDFLAGSr) -o $(bindir)/$@ $^
 	@ echo
 
 shareddebug:  libastyled.$(dylib)
@@ -176,10 +176,10 @@
 	ar crs $(bindir)/$@ $^
 	@ echo
 
-java:  libastylej.$(dylib)
-libastylej.$(dylib):  $(OBJsj)
+java:  libastyle31j.$(dylib)
+libastyle31j.$(dylib):  $(OBJsj)
 	@ mkdir -p $(bindir)
-	$(CXX) $(dynamiclib) $(LDFLAGSr) -o $(bindir)/libastyle31j.$(dylib) $^
+	$(CXX) $(dynamiclib) $(installname)libastyle31j.$(dylib) $(LDFLAGSr) -o $(bindir)/$@ $^
 	@ echo
 
 javadebug:  libastylejd.$(dylib)
@@ -198,21 +198,31 @@
 cleanobj:
 	rm -f $(objdir)/*.o
 
-install:
-	$(INSTALL) -m 755 -d $(ipath)
-	@$(INSTALL) -m 755 $(bindir)/astyle  $(ipath)
+install: release
+	$(INSTALL) -m 755 -d $(DESTDIR)$(ipath)
+	@$(INSTALL) -m 755 $(bindir)/astyle  $(DESTDIR)$(ipath)
 
-	@if [ -d $(SYSCONF_PATH)/html ]; then \
-		rm -rf  $(SYSCONF_PATH)/html; \
+	@if [ -d $(DESTDIR)$(SYSCONF_PATH)/html ]; then \
+		rm -rf  $(DESTDIR)$(SYSCONF_PATH)/html; \
 	fi
 
-	$(INSTALL) -m 755 -d $(SYSCONF_PATH)
-	@mkdir -p $(SYSCONF_PATH)/html;
+	$(INSTALL) -m 755 -d $(DESTDIR)$(SYSCONF_PATH)
+	@mkdir -p $(DESTDIR)$(SYSCONF_PATH)/html;
 	@for files in ../../doc/*.html  ../../doc/*.css; \
 	do \
-		$(INSTALL)  -m 644  "$$files"  $(SYSCONF_PATH)/html; \
+		$(INSTALL)  -m 644  "$$files"  $(DESTDIR)$(SYSCONF_PATH)/html; \
 	done
 
+install-lib:  static shared
+	$(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/lib
+	$(INSTALL) $(bindir)/libastyle.a $(bindir)/libastyle31.$(dylib) $(DESTDIR)$(prefix)/lib
+	ln -s libastyle31$(dylib) $(DESTDIR)$(prefix)/lib/libastyle.$(dylib)
+
+install-jnilib:  java
+	$(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/lib
+	$(INSTALL) $(bindir)/libastyle31j.$(dylib) $(DESTDIR)$(prefix)/lib
+	ln -s libastyle31j.$(dylib) $(DESTDIR)$(prefix)/lib/libastylej.$(dylib)
+
 uninstall:
 	rm -f $(ipath)/astyle
 	rm -rf $(SYSCONF_PATH)