diff --git a/boards/native/Makefile b/boards/native/Makefile
index 4bd97629910c663a6d1a61e5589884ffa8c15a74..1f64a6ab76208b2ce1f3a9ba5cd656944a9c8620 100644
--- a/boards/native/Makefile
+++ b/boards/native/Makefile
@@ -3,5 +3,3 @@ MODULE = board
 DIRS = drivers
 
 include $(RIOTBASE)/Makefile.base
-
-INCLUDES = $(NATIVEINCLUDES)
diff --git a/boards/native/Makefile.include b/boards/native/Makefile.include
index 92151fd84f63d59980045e855c2fe9f18fc1e799..811b2ac5a1fc96ca584c5c5225c0a3365ea6098b 100644
--- a/boards/native/Makefile.include
+++ b/boards/native/Makefile.include
@@ -1,10 +1,8 @@
-export NATIVEINCLUDES += -DNATIVE_INCLUDES
-export NATIVEINCLUDES += -I$(RIOTBOARD)/$(BOARD)/include/
-export NATIVEINCLUDES += -I$(RIOTBASE)/core/include/
-export NATIVEINCLUDES += -I$(RIOTBASE)/drivers/include/
-
 export CPU = native
 
+# Configuration for core/include/kernel_types.h
+CFLAGS += -DNATIVE_INCLUDES
+
 USEMODULE += native-drivers
 
 # toolchain:
@@ -117,7 +115,7 @@ debug-valgrind-server: export VALGRIND_FLAGS ?= --vgdb=yes --vgdb-error=0 -v \
 term-cachegrind: export CACHEGRIND_FLAGS += --tool=cachegrind
 term-gprof: export TERMPROG = GMON_OUT_PREFIX=gmon.out $(ELFFILE)
 all-valgrind: export CFLAGS += -DHAVE_VALGRIND_H -g
-all-valgrind: export NATIVEINCLUDES += $(shell pkg-config valgrind --cflags)
+all-valgrind: export CFLAGS += $(shell pkg-config valgrind --cflags)
 all-debug: export CFLAGS += -g
 all-cachegrind: export CFLAGS += -g
 all-gprof: export CFLAGS += -pg
@@ -126,8 +124,6 @@ all-asan: export CFLAGS += -fsanitize=address -fno-omit-frame-pointer -g
 all-asan: export CFLAGS += -DNATIVE_IN_CALLOC
 all-asan: export LINKFLAGS += -fsanitize=address -fno-omit-frame-pointer -g
 
-export INCLUDES += $(NATIVEINCLUDES)
-
 export CFLAGS += -DDEBUG_ASSERT_VERBOSE
 
 # workaround for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52624
diff --git a/boards/native/drivers/Makefile b/boards/native/drivers/Makefile
index 3aae3fd5803c4f777f2e59e642f336b17d5a057c..e717c6fd8e758aee24f9f69d08dc86b9e1e511af 100644
--- a/boards/native/drivers/Makefile
+++ b/boards/native/drivers/Makefile
@@ -1,5 +1,3 @@
 MODULE = native-drivers
 
 include $(RIOTBASE)/Makefile.base
-
-INCLUDES = $(NATIVEINCLUDES)
diff --git a/cpu/native/Makefile b/cpu/native/Makefile
index 9c2b87b7091d3e792169be8f695b605be39d54bf..a3db928a085a2f6f7fdd1cc3b811ae3a7b773cde 100644
--- a/cpu/native/Makefile
+++ b/cpu/native/Makefile
@@ -27,5 +27,3 @@ ifneq (,$(filter trace,$(USEMODULE)))
 endif
 
 include $(RIOTBASE)/Makefile.base
-
-INCLUDES = $(NATIVEINCLUDES)
diff --git a/cpu/native/Makefile.include b/cpu/native/Makefile.include
index b02f64a1daf92a461c64c48dd1811aa510a9c3f6..07013f62cd9ff05d4bd369a385d0afb8f9d35055 100644
--- a/cpu/native/Makefile.include
+++ b/cpu/native/Makefile.include
@@ -1,8 +1,6 @@
-export NATIVEINCLUDES += -I$(RIOTCPU)/native/include -I$(RIOTBASE)/sys/include
-
 # Local include for OSX
 ifeq ($(BUILDOSXNATIVE),1)
-    export NATIVEINCLUDES += -I$(RIOTCPU)/native/osx-libc-extra
+    INCLUDES += -I$(RIOTCPU)/native/osx-libc-extra
 endif
 
 USEMODULE += periph
diff --git a/cpu/native/mtd/Makefile b/cpu/native/mtd/Makefile
index f0006b95d8d75053eea36e91dd8a96268c012d2a..b7dc90ebfc1f7bd5eb82dfb5a329ca773fa18bce 100644
--- a/cpu/native/mtd/Makefile
+++ b/cpu/native/mtd/Makefile
@@ -1,5 +1,3 @@
 MODULE := mtd_native
 
 include $(RIOTBASE)/Makefile.base
-
-INCLUDES = $(NATIVEINCLUDES)
diff --git a/cpu/native/netdev_tap/Makefile b/cpu/native/netdev_tap/Makefile
index 7d178b6174522e5864eb1770e5088aa590f02ee4..48422e909a47d7cd428d10fa73825060ccc8d8c2 100644
--- a/cpu/native/netdev_tap/Makefile
+++ b/cpu/native/netdev_tap/Makefile
@@ -1,3 +1 @@
 include $(RIOTBASE)/Makefile.base
-
-INCLUDES = $(NATIVEINCLUDES)
diff --git a/cpu/native/socket_zep/Makefile b/cpu/native/socket_zep/Makefile
index 7d178b6174522e5864eb1770e5088aa590f02ee4..48422e909a47d7cd428d10fa73825060ccc8d8c2 100644
--- a/cpu/native/socket_zep/Makefile
+++ b/cpu/native/socket_zep/Makefile
@@ -1,3 +1 @@
 include $(RIOTBASE)/Makefile.base
-
-INCLUDES = $(NATIVEINCLUDES)
diff --git a/sys/posix/include/sys/bytes.h b/sys/posix/include/sys/bytes.h
index fbdef4f495fe36d3754c2daf1dfa3b88e257f978..eeae5100710fe0262f93844911b705bdc05fb706 100644
--- a/sys/posix/include/sys/bytes.h
+++ b/sys/posix/include/sys/bytes.h
@@ -28,7 +28,12 @@
 extern "C" {
 #endif
 
+#ifndef __MACH__
 typedef size_t socklen_t;           /**< socket address length */
+#else
+/* Defined for OSX with a different type */
+typedef __darwin_socklen_t socklen_t;   /**< socket address length */
+#endif
 
 #ifdef __cplusplus
 }
diff --git a/sys/posix/include/sys/socket.h b/sys/posix/include/sys/socket.h
index 8bac3ce55840c9271824acf3f6a828b8ccd13f04..d8207ccf3fd15c99186dee265fef45bc0a46327b 100644
--- a/sys/posix/include/sys/socket.h
+++ b/sys/posix/include/sys/socket.h
@@ -36,6 +36,9 @@
   sa_family_t sa_prefix##family
 
 #define __SOCKADDR_COMMON_SIZE  (sizeof (unsigned short int))
+#ifdef __MACH__
+#define AF_LINK (18)    /* Link layer interface */
+#endif
 #endif
 
 #include <stdlib.h>