$NetBSD: patch-build_mac_Makefile,v 1.1 2018/03/17 17:16:59 schmonz Exp $

Include Darwin makefile from the "macos" source tarball.

--- build/mac/Makefile.orig	2018-03-17 17:07:25.000000000 +0000
+++ build/mac/Makefile
@@ -0,0 +1,218 @@
+# Make file for Clang compiler on macOS.
+
+# to test on Linux use "make  linux=1"
+
+# list of source files for astyle
+SRC = astyle_main.cpp \
+      ASBeautifier.cpp \
+      ASFormatter.cpp \
+      ASEnhancer.cpp \
+      ASLocalizer.cpp \
+      ASResource.cpp
+
+# list of source files for libraries without ASLocalizer
+SRCx = astyle_main.cpp \
+       ASBeautifier.cpp \
+       ASFormatter.cpp \
+       ASEnhancer.cpp \
+       ASResource.cpp
+
+# source directories
+vpath %.cpp ../../src
+vpath %.h   ../../src
+
+# NOTE for java compiles the environment variable $JAVA_HOME must be set
+# example: export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.00
+ifndef JAVA_HOME
+    JAVA_HOME = /usr/lib/jvm/default-java
+endif
+
+# set prefix if not defined on the command line
+ifndef prefix
+    prefix=/usr
+endif
+SYSCONF_PATH=$(prefix)/share/doc/astyle
+
+# define macros
+dylib = dylib
+dynamiclib = -dynamiclib
+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
+CXX = clang++
+INSTALL=install -o $(USER) -g wheel
+# INSTALL=install -o 0 -g 0
+
+# for testing on linux
+ifdef linux
+    dylib = so
+    dynamiclib = -shared
+    CXX = g++
+    JAVAINCS   = -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux
+endif
+
+##################################################
+
+# define compile options for each build
+ifdef CFLAGS
+    CFLAGSr   = -DNDEBUG $(CBASEFLAGS) $(CFLAGS)
+    CFLAGSd   = -g $(CBASEFLAGS) $(CFLAGS)
+else
+    CFLAGSr   = -DNDEBUG -O3 $(CBASEFLAGS)
+    CFLAGSd   = -g $(CBASEFLAGS)
+endif
+CFLAGSs   = -DASTYLE_LIB -fPIC $(CFLAGSr)
+CFLAGSsd  = -DASTYLE_LIB -fPIC $(CFLAGSd)
+CFLAGSa   = -DASTYLE_LIB $(CFLAGSr)
+CFLAGSad  = -DASTYLE_LIB $(CFLAGSd)
+CFLAGSsj  = -DASTYLE_JNI -fPIC $(CFLAGSr) $(JAVAINCS)
+CFLAGSsjd = -DASTYLE_JNI -fPIC $(CFLAGSd) $(JAVAINCS)
+
+# define link options
+ifdef LDFLAGS
+    LDFLAGSr = $(LDBASEFLAGS) $(LDFLAGS)
+    LDFLAGSd = $(LDBASEFLAGS) $(LDFLAGS)
+else
+    LDFLAGSr = $(LDBASEFLAGS)
+    LDFLAGSd = $(LDBASEFLAGS)
+endif
+
+# object files are built from the source list $(SRC)
+# a suffix is added for each build
+OBJ   = $(patsubst %.cpp,$(objdir)/%.o,$(SRC))
+OBJd  = $(patsubst %.cpp,$(objdir)/%_d.o,$(SRC))
+OBJs  = $(patsubst %.cpp,$(objdir)/%_s.o,$(SRCx))
+OBJsd = $(patsubst %.cpp,$(objdir)/%_sd.o,$(SRCx))
+OBJa  = $(patsubst %.cpp,$(objdir)/%_a.o,$(SRCx))
+OBJad = $(patsubst %.cpp,$(objdir)/%_ad.o,$(SRCx))
+OBJsj  = $(patsubst %.cpp,$(objdir)/%_sj.o,$(SRCx))
+OBJsjd = $(patsubst %.cpp,$(objdir)/%_sjd.o,$(SRCx))
+
+# define object file rule (with the suffix) for each build
+
+# OBJ
+$(objdir)/%.o:  %.cpp  astyle.h  astyle_main.h
+	@ mkdir -p $(objdir)
+	$(CXX) $(CFLAGSr) -c $< -o $@
+
+# OBJd
+$(objdir)/%_d.o:  %.cpp  astyle.h  astyle_main.h
+	@ mkdir -p $(objdir)
+	$(CXX) $(CFLAGSd) -c $< -o $@
+
+# OBJs
+$(objdir)/%_s.o:  %.cpp  astyle.h
+	@ mkdir -p $(objdir)
+	$(CXX) $(CFLAGSs) -c $< -o $@
+
+# OBJsd
+$(objdir)/%_sd.o:  %.cpp  astyle.h
+	@ mkdir -p $(objdir)
+	$(CXX) $(CFLAGSsd) -c $< -o $@
+
+# OBJa
+$(objdir)/%_a.o:  %.cpp  astyle.h
+	@ mkdir -p $(objdir)
+	$(CXX) $(CFLAGSa) -c $< -o $@
+
+# OBJad
+$(objdir)/%_ad.o:  %.cpp  astyle.h
+	@ mkdir -p $(objdir)
+	$(CXX) $(CFLAGSad) -c $< -o $@
+
+# OBJsj
+$(objdir)/%_sj.o:  %.cpp  astyle.h
+	@ mkdir -p $(objdir)
+	$(CXX) $(CFLAGSsj) -c $< -o $@
+
+# OBJsjd
+$(objdir)/%_sjd.o:  %.cpp  astyle.h
+	@ mkdir -p $(objdir)
+	$(CXX) $(CFLAGSsjd) -c $< -o $@
+
+##################################################
+# define build dependencies for each command
+
+release:  astyle
+astyle:  $(OBJ)
+	@ mkdir -p $(bindir)
+	$(CXX) $(LDFLAGSr) -dead_strip -o $(bindir)/AStyle $^
+	strip $(bindir)/AStyle
+	@ echo
+
+debug:  astyled
+astyled:  $(OBJd)
+	@ mkdir -p $(bindir)
+	$(CXX) $(LDFLAGSd) -o $(bindir)/AStyled $^
+	@ echo
+
+shared:  libastyle.$(dylib)
+libastyle.$(dylib):  $(OBJs)
+	@ mkdir -p $(bindir)
+	$(CXX) $(dynamiclib) $(LDFLAGSr) -o $(bindir)/libastyle31.$(dylib) $^
+	@ echo
+
+shareddebug:  libastyled.$(dylib)
+libastyled.$(dylib):  $(OBJsd)
+	@ mkdir -p $(bindir)
+	$(CXX) $(dynamiclib) $(LDFLAGSd) -o $(bindir)/libastyle31d.$(dylib) $^
+	@ echo
+
+static:  libastyle.a
+libastyle.a:  $(OBJa)
+	@ mkdir -p $(bindir)
+	ar crs $(bindir)/$@ $^
+	@ echo
+
+staticdebug:  libastyled.a
+libastyled.a:  $(OBJad)
+	@ mkdir -p $(bindir)
+	ar crs $(bindir)/$@ $^
+	@ echo
+
+java:  libastylej.$(dylib)
+libastylej.$(dylib):  $(OBJsj)
+	@ mkdir -p $(bindir)
+	$(CXX) $(dynamiclib) $(LDFLAGSr) -o $(bindir)/libastyle31j.$(dylib) $^
+	@ echo
+
+javadebug:  libastylejd.$(dylib)
+libastylejd.$(dylib):  $(OBJsjd)
+	@ mkdir -p $(bindir)
+	$(CXX) $(dynamiclib) $(LDFLAGSd) -o $(bindir)/libastyle31jd.$(dylib) $^
+	@ echo
+
+all:  release debug shared shareddebug static staticdebug
+
+javaall:  java javadebug
+
+clean:
+	rm -f $(objdir)/*.o $(bindir)/*astyle*
+
+cleanobj:
+	rm -f $(objdir)/*.o
+
+install:
+	$(INSTALL) -m 755 -d $(ipath)
+	@$(INSTALL) -m 755 $(bindir)/astyle  $(ipath)
+
+	@if [ -d $(SYSCONF_PATH)/html ]; then \
+		rm -rf  $(SYSCONF_PATH)/html; \
+	fi
+
+	$(INSTALL) -m 755 -d $(SYSCONF_PATH)
+	@mkdir -p $(SYSCONF_PATH)/html;
+	@for files in ../../doc/*.html  ../../doc/*.css; \
+	do \
+		$(INSTALL)  -m 644  "$$files"  $(SYSCONF_PATH)/html; \
+	done
+
+uninstall:
+	rm -f $(ipath)/astyle
+	rm -rf $(SYSCONF_PATH)
