diff --git a/android/ipc-tester.c b/android/ipc-tester.c
index 780e1dc..68e2ad1 100644
--- a/android/ipc-tester.c
+++ b/android/ipc-tester.c
#include <unistd.h>
#include <errno.h>
#include <poll.h>
+#include <limits.h>
#include <sys/socket.h>
#include <sys/types.h>
diff --git a/android/system-emulator.c b/android/system-emulator.c
index bf1499d..50bb088 100644
--- a/android/system-emulator.c
+++ b/android/system-emulator.c
#include <stdlib.h>
#include <signal.h>
#include <string.h>
+#include <limits.h>
#include <libgen.h>
#include <poll.h>
#include <sys/wait.h>
diff --git a/android/tester-main.c b/android/tester-main.c
index 317c1de..361c519 100644
--- a/android/tester-main.c
+++ b/android/tester-main.c
#define _GNU_SOURCE
#include <stdbool.h>
#include <unistd.h>
+#include <limits.h>
#include <libgen.h>
#include <sys/un.h>
diff --git a/client/mgmt.c b/client/mgmt.c
index 44bf4d2..fba409f 100644
--- a/client/mgmt.c
+++ b/client/mgmt.c
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
+#include <limits.h>
#include <sys/types.h>
#include <sys/param.h>
#include <sys/socket.h>
diff --git a/emulator/serial.c b/emulator/serial.c
index c9e6d7c..b74556b 100644
--- a/emulator/serial.c
+++ b/emulator/serial.c
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
+#include <limits.h>
#include <sys/param.h>
#include <sys/epoll.h>
#include <sys/uio.h>
diff --git a/emulator/vhci.c b/emulator/vhci.c
index 355ab63..cab3535 100644
--- a/emulator/vhci.c
+++ b/emulator/vhci.c
#include <fcntl.h>
#include <unistd.h>
#include <dirent.h>
+#include <limits.h>
#include "lib/bluetooth.h"
#include "lib/hci.h"
diff --git a/monitor/att.c b/monitor/att.c
index 73a6165..3f41c2b 100644
--- a/monitor/att.c
+++ b/monitor/att.c
#include <inttypes.h>
#include <stdbool.h>
#include <errno.h>
-#include <linux/limits.h>
+#include <limits.h>
#include <sys/stat.h>
#include <glib.h>
diff --git a/peripheral/efivars.c b/peripheral/efivars.c
index 987572b..d4e724e 100644
--- a/peripheral/efivars.c
+++ b/peripheral/efivars.c
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
+#include <limits.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/param.h>
diff --git a/profiles/audio/a2dp.c b/profiles/audio/a2dp.c
index a6489a7..d6c97e7 100644
--- a/profiles/audio/a2dp.c
+++ b/profiles/audio/a2dp.c
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
+#include <limits.h>
#include <dbus/dbus.h>
#include <glib.h>
diff --git a/src/adapter.c b/src/adapter.c
index f5a8763..6fbfcdf 100644
--- a/src/adapter.c
+++ b/src/adapter.c
#include <sys/file.h>
#include <sys/stat.h>
#include <dirent.h>
+#include <limits.h>
#include <glib.h>
#include <dbus/dbus.h>
diff --git a/src/device.c b/src/device.c
index 0f18c8c..20566c9 100644
--- a/src/device.c
+++ b/src/device.c
#include <errno.h>
#include <dirent.h>
#include <time.h>
+#include <limits.h>
#include <sys/stat.h>
#include <glib.h>
diff --git a/src/gatt-database.c b/src/gatt-database.c
index 6c84b08..a86e528 100644
--- a/src/gatt-database.c
+++ b/src/gatt-database.c
#include <stdlib.h>
#include <errno.h>
#include <unistd.h>
+#include <limits.h>
#include "lib/bluetooth.h"
#include "lib/sdp.h"
diff --git a/src/main.c b/src/main.c
index 62453bf..69ae1b1 100644
--- a/src/main.c
+++ b/src/main.c
#include <string.h>
#include <signal.h>
#include <stdbool.h>
+#include <limits.h>
#include <sys/signalfd.h>
#include <sys/types.h>
#include <sys/stat.h>
diff --git a/src/rfkill.c b/src/rfkill.c
index 8a0e48f..88cad1c 100644
--- a/src/rfkill.c
+++ b/src/rfkill.c
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
+#include <limits.h>
#include <glib.h>
diff --git a/src/storage.c b/src/storage.c
index 6e69be9..187ba15 100644
--- a/src/storage.c
+++ b/src/storage.c
#include <unistd.h>
#include <stdlib.h>
#include <time.h>
+#include <limits.h>
#include <sys/file.h>
#include <sys/stat.h>
diff --git a/src/textfile.c b/src/textfile.c
index a5b9e73..313098f 100644
--- a/src/textfile.c
+++ b/src/textfile.c
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
+#include <limits.h>
#include <sys/file.h>
#include <sys/stat.h>
#include <sys/mman.h>
diff --git a/tools/bluemoon.c b/tools/bluemoon.c
index f50107a..9aaf642 100644
--- a/tools/bluemoon.c
+++ b/tools/bluemoon.c
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
+#include <limits.h>
#include <getopt.h>
#include <sys/stat.h>
#include <sys/param.h>
diff --git a/tools/hciattach.c b/tools/hciattach.c
index 276a4e5..adf79ba 100644
--- a/tools/hciattach.c
+++ b/tools/hciattach.c
#include <termios.h>
#include <time.h>
#include <poll.h>
+#include <limits.h>
#include <sys/time.h>
#include <sys/param.h>
#include <sys/ioctl.h>
diff --git a/tools/hciattach_ath3k.c b/tools/hciattach_ath3k.c
index d119155..8922b48 100644
--- a/tools/hciattach_ath3k.c
+++ b/tools/hciattach_ath3k.c
#include <string.h>
#include <ctype.h>
#include <time.h>
+#include <limits.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <sys/types.h>
diff --git a/tools/hciattach_intel.c b/tools/hciattach_intel.c
index e243b3d..b686789 100644
--- a/tools/hciattach_intel.c
+++ b/tools/hciattach_intel.c
#include <string.h>
#include <errno.h>
#include <fcntl.h>
+#include <limits.h>
#include <sys/param.h>
#include <sys/ioctl.h>
#include <time.h>
diff --git a/tools/hciattach_st.c b/tools/hciattach_st.c
index 4a7186a..def7613 100644
--- a/tools/hciattach_st.c
+++ b/tools/hciattach_st.c
#include <config.h>
#endif
+#include <limits.h>
#include <stdio.h>
#include <errno.h>
#include <fcntl.h>
diff --git a/tools/hciattach_ti.c b/tools/hciattach_ti.c
index 24efcea..c0a0025 100644
--- a/tools/hciattach_ti.c
+++ b/tools/hciattach_ti.c
#endif
#define _GNU_SOURCE
+#include <limits.h>
#include <stdio.h>
#include <errno.h>
#include <unistd.h>
diff --git a/tools/test-runner.c b/tools/test-runner.c
index de0f226..f0dbb4c 100644
--- a/tools/test-runner.c
+++ b/tools/test-runner.c
#include <string.h>
#include <getopt.h>
#include <poll.h>
+#include <limits.h>
#include <sys/wait.h>
#include <sys/stat.h>
#include <sys/types.h>