$NetBSD$

Add minimal NetBSD support.
Don't override CC nor optimisation flags in CFLAGS.
On Darwin, use gsed.

--- src/Makefile.orig	2017-03-03 14:26:59.000000000 +0000
+++ src/Makefile
@@ -21,7 +21,7 @@ UNAME                   := $(patsubst MS
 UNAME                   := $(patsubst MINGW32_NT-%,MSYS2,$(UNAME))
 UNAME                   := $(patsubst MINGW64_NT-%,MSYS2,$(UNAME))
 
-ifeq (,$(filter $(UNAME),Linux FreeBSD Darwin CYGWIN MSYS2))
+ifeq (,$(filter $(UNAME),Linux FreeBSD NetBSD Darwin CYGWIN MSYS2))
 $(error "! Your Operating System ($(UNAME)) is not supported by this Makefile")
 endif
 
@@ -56,7 +56,11 @@ DOCUMENT_FOLDER         ?= $(PREFIX)/sha
 ##
 
 HASHCAT_FRONTEND        := hashcat
+ifeq ($(UNAME),Darwin)
+HASHCAT_LIBRARY         := libhashcat.dylib
+else
 HASHCAT_LIBRARY         := libhashcat.so
+endif
 
 ifeq ($(UNAME),CYGWIN)
 HASHCAT_FRONTEND        := hashcat.exe
@@ -80,21 +84,14 @@ OPENCL_HEADERS_KHRONOS  := deps/OpenCL-H
 ## Native compiler paths
 ##
 
-CC                      := gcc
 FIND                    := find
 INSTALL                 := install
 RM                      := rm
 SED                     := sed
 SED_IN_PLACE            := -i
 
-ifeq ($(UNAME),Darwin)
-CC                      := clang
-# the sed -i option of OSX requires a parameter for the backup file (we just use "")
-SED_IN_PLACE            := -i ""
-endif
 
 ifeq ($(UNAME),FreeBSD)
-CC                      := cc
 SED                     := gsed
 endif
 
@@ -162,7 +159,6 @@ endif
 LFLAGS                  := $(LDFLAGS)
 
 ifeq ($(DEBUG),0)
-CFLAGS                  += -O2
 LFLAGS                  += -s
 else
 ifeq ($(DEBUG),1)
@@ -196,6 +192,13 @@ LFLAGS_NATIVE           += -lpthread
 endif
 endif # FreeBSD
 
+ifeq ($(UNAME),NetBSD)
+CFLAGS_NATIVE           := $(CFLAGS)
+CFLAGS_NATIVE           += -I$(OPENCL_HEADERS_KHRONOS)/
+LFLAGS_NATIVE           := $(LFLAGS)
+LFLAGS_NATIVE           += -lpthread
+endif # NetBSD
+
 ifeq ($(UNAME),Darwin)
 export MACOSX_DEPLOYMENT_TARGET=10.9
 CFLAGS_NATIVE           := $(CFLAGS)
