diff --git databases/mongodb36/Makefile databases/mongodb36/Makefile
index 7dda788c2c37..449dc6f2b9e8 100644
--- databases/mongodb36/Makefile
+++ databases/mongodb36/Makefile
@@ -3,6 +3,7 @@
 PORTNAME=	mongodb
 DISTVERSIONPREFIX=	r
 DISTVERSION=	3.6.3
+PORTREVISION=	1
 CATEGORIES=	databases net
 MASTER_SITES=	https://fastdl.mongodb.org/src/ \
 		http://fastdl.mongodb.org/src/ \
@@ -58,6 +59,15 @@ SASL_MAKE_ARGS=		--use-sasl-client
 SSL_USES=	ssl
 SSL_MAKE_ARGS=	--ssl
 
+.include <bsd.port.options.mk>
+
+.if ${OPSYS} != FreeBSD || ${OSVERSION} < 1101515 || \
+	${OSVERSION} >= 1200000 && ${OSVERSION} < 1200057
+SUB_LIST+=	LEGACY_LIMITS="" MODERN_LIMITS="@comment "
+.else
+SUB_LIST+=	LEGACY_LIMITS="@comment " MODERN_LIMITS=""
+.endif
+
 ALL_TARGET=	core
 
 PORTSCOUT=	limitw:1,even
diff --git databases/mongodb36/files/mongod.in databases/mongodb36/files/mongod.in
index 47d6b90904c8..0bcf12786012 100644
--- databases/mongodb36/files/mongod.in
+++ databases/mongodb36/files/mongod.in
@@ -9,9 +9,9 @@
 #
 # mongod_enable (bool):  Set to "NO" by default.
 #                        Set it to "YES" to enable mongod.
-# mongod_limits (bool):  Set to "NO" by default.
-#                        Set it to yes to run `limits -e -U mongodb`
-#                        just before mongod starts.
+%%LEGACY_LIMITS%%# mongod_limits (bool):  Set to "NO" by default.
+%%LEGACY_LIMITS%%#                        Set it to yes to run `limits -e -U mongodb`
+%%LEGACY_LIMITS%%#                        just before mongod starts.
 # mongod_dbpath (str):   Default to "/var/db/mongodb"
 #                        Base database directory.
 # mongod_flags (str):    Custom additional arguments to be passed to mongod.
@@ -28,7 +28,7 @@ rcvar=mongod_enable
 load_rc_config $name
 
 : ${mongod_enable="NO"}
-: ${mongod_limits="NO"}
+%%LEGACY_LIMITS%%: ${mongod_limits="NO"}
 : ${mongod_dbpath="/var/db/mongodb"}
 : ${mongod_flags="--logpath ${mongod_dbpath}/mongod.log --logappend"}
 : ${mongod_user="mongodb"}
@@ -51,11 +51,12 @@ mongod_prestart()
         if [ ! -d ${mongod_dbpath} ]; then
                 mongod_create_dbpath || return 1
         fi
-        if checkyesno mongod_limits; then
-                eval `/usr/bin/limits -e -U ${mongod_user}` 2>/dev/null
-        else
-                return 0
-        fi
+%%LEGACY_LIMITS%%        if checkyesno mongod_limits; then
+%%LEGACY_LIMITS%%                eval `/usr/bin/limits -e -U ${mongod_user}` 2>/dev/null
+%%LEGACY_LIMITS%%        else
+%%LEGACY_LIMITS%%                return 0
+%%LEGACY_LIMITS%%        fi
+%%MODERN_LIMITS%%        return 0
 }
 
 run_rc_command "$1"