$NetBSD: patch-native_Makefile,v 1.1 2018/03/15 03:13:29 khorben Exp $

Add support for anything like Linux.

--- native/Makefile.orig	2018-02-25 22:30:58.000000000 +0000
+++ native/Makefile
@@ -1,27 +1,34 @@
 UNAME := $(shell uname)
 ifeq ($(UNAME), Darwin)
 	LIB_ANGR_NATIVE=angr_native.dylib
-endif
-ifeq ($(UNAME), Linux)
+else
 	LIB_ANGR_NATIVE=angr_native.so
 endif
 
 CC := gcc
 C++C := g++
-CFLAGS := -I ${UNICORN_INCLUDE_PATH} -I ${PYVEX_INCLUDE_PATH} \
-	-L ${UNICORN_LIB_PATH} -L ${PYVEX_LIB_PATH} \
-	-O3 -fPIC -std=c++11
 
-OBJS := log.o
+OBJS := log.o sim_unicorn.o
 LIBS := -lunicorn -lpyvex
+PREFIX ?= /usr/local
+LIBDIR ?= ${PREFIX}/lib
+
+CFLAGS := -I ${UNICORN_INCLUDE_PATH} -I ${PYVEX_INCLUDE_PATH} \
+	-O3 -fPIC
+CXXFLAGS := ${CFLAGS} -std=c++11
+LDFLAGS := -shared ${LIBS} -L${LIBDIR} -L${UNICORN_LIB_PATH} -L${PYVEX_LIB_PATH} \
+	-Wl,-rpath,${LIBDIR} -Wl,-rpath,${UNICORN_LIB_PATH} -Wl,-rpath,${PYVEX_LIB_PATH}
 
 all: ${LIB_ANGR_NATIVE}
 
 log.o: log.c log.h
-	${CC} -fPIC -c -O3 -o $@ $<
+	${CC} ${CFLAGS} -o $@ -c $<
+
+sim_unicorn.o: sim_unicorn.cpp
+	${C++C} ${CXXFLAGS} -o $@ -c $^
 
-${LIB_ANGR_NATIVE}: ${OBJS} sim_unicorn.cpp
-	${C++C} ${CFLAGS} -shared -o $@ $^ ${LIBS}
+${LIB_ANGR_NATIVE}: ${OBJS}
+	${C++C} ${LDFLAGS} -o $@ $^
 
 clean:
 	rm -f ${LIB_ANGR_NATIVE} *.o arch/*.o
