diff --git a/include/zephyr/posix/unistd.h b/include/zephyr/posix/unistd.h
index 3857f13..e2e8fdd 100644
--- a/include/zephyr/posix/unistd.h
+++ b/include/zephyr/posix/unistd.h
@@ -43,6 +43,12 @@
 
 #endif /* CONFIG_POSIX_API */
 
+#ifdef CONFIG_GETOPT
+int getopt(int argc, char *const argv[], const char *optstring);
+extern char *optarg;
+extern int opterr, optind, optopt;
+#endif
+
 unsigned sleep(unsigned int seconds);
 int usleep(useconds_t useconds);
 
diff --git a/lib/os/crc_shell.c b/lib/os/crc_shell.c
index 6b6125d..e75d886 100644
--- a/lib/os/crc_shell.c
+++ b/lib/os/crc_shell.c
@@ -5,10 +5,14 @@
  */
 
 #include <errno.h>
-#include <getopt.h>
 #include <stdbool.h>
 #include <stdint.h>
 #include <stdlib.h>
+#ifdef CONFIG_ARCH_POSIX
+#include <unistd.h>
+#else
+#include <zephyr/posix/unistd.h>
+#endif
 
 #include <zephyr/kernel.h>
 #include <zephyr/shell/shell.h>
@@ -71,7 +75,6 @@
 	enum crc_type type = CRC32_IEEE;
 
 	optind = 1;
-	optreset = 1;
 
 	while ((rv = getopt(argc, argv, "fhlp:rs:t:")) != -1) {
 		switch (rv) {
diff --git a/lib/posix/getopt/getopt.c b/lib/posix/getopt/getopt.c
index f1d5c8e..514af72 100644
--- a/lib/posix/getopt/getopt.c
+++ b/lib/posix/getopt/getopt.c
@@ -30,6 +30,11 @@
  */
 
 #include <string.h>
+#ifdef CONFIG_ARCH_POSIX
+#include <unistd.h>
+#else
+#include <zephyr/posix/unistd.h>
+#endif
 #include "getopt.h"
 #include "getopt_common.h"
 
diff --git a/lib/posix/getopt/getopt.h b/lib/posix/getopt/getopt.h
index 0cbdda6..4dfcc8b 100644
--- a/lib/posix/getopt/getopt.h
+++ b/lib/posix/getopt/getopt.h
@@ -28,11 +28,7 @@
 #endif
 };
 
-extern int opterr;	/* if error message should be printed */
-extern int optind;	/* index into parent argv vector */
-extern int optopt;	/* character checked for validity */
 extern int optreset;	/* reset getopt */
-extern char *optarg;	/* argument associated with option */
 
 #define no_argument        0
 #define required_argument  1
@@ -61,27 +57,6 @@
 /**
  * @brief Parses the command-line arguments.
  *
- * It is based on FreeBSD implementation.
- *
- * @param[in] argc	Arguments count.
- * @param[in] argv	Arguments.
- * @param[in] options	String containing the legitimate option characters.
- *
- * @return		If an option was successfully found, function returns
- *			the option character.
- * @return		If options have been detected that is not in @p options
- *			function will return '?'.
- *			If function encounters an option with a missing
- *			argument, then the return value depends on the first
- *			character in optstring: if it is ':', then ':' is
- *			returned; otherwise '?' is returned.
- * @return -1		If all options have been parsed.
- */
-int getopt(int nargc, char *const nargv[], const char *ostr);
-
-/**
- * @brief Parses the command-line arguments.
- *
  * The getopt_long() function works like @ref getopt() except
  * it also accepts long options, started with two dashes.
  *
diff --git a/samples/subsys/shell/shell_module/src/main.c b/samples/subsys/shell/shell_module/src/main.c
index 41275a8..b78490d 100644
--- a/samples/subsys/shell/shell_module/src/main.c
+++ b/samples/subsys/shell/shell_module/src/main.c
@@ -13,6 +13,12 @@
 #include <zephyr/usb/usb_device.h>
 #include <ctype.h>
 
+#ifdef CONFIG_ARCH_POSIX
+#include <unistd.h>
+#else
+#include <zephyr/posix/unistd.h>
+#endif
+
 LOG_MODULE_REGISTER(app);
 
 extern void foo(void);
