diff --git a/archive/dar/PRE_BUILD b/archive/dar/PRE_BUILD
new file mode 100755
index 0000000..c230ad1
--- /dev/null
+++ b/archive/dar/PRE_BUILD
@@ -0,0 +1,3 @@
+default_pre_build &&
+cd "$SOURCE_DIRECTORY" &&
+apply_patch_dir patches
diff --git a/archive/dar/patches/musl-getopt.patch
b/archive/dar/patches/musl-getopt.patch
new file mode 100644
index 0000000..c2d9478
--- /dev/null
+++ b/archive/dar/patches/musl-getopt.patch
@@ -0,0 +1,13 @@
+--- a/src/dar_suite/my_getopt_long.h
++++ b/src/dar_suite/my_getopt_long.h
+@@ -27,6 +27,10 @@
+ #ifndef MY_GETOPT_LONG_H
+ #define MY_GETOPT_LONG_H
+
++#if !defined(__GLIBC__) && defined(__linux__)
++extern int optreset; /* not defined by musl */
++#endif
++
+ // getopt may be declated in <unistd.h> on systems like FreeBSD.
+ // if you want to use libgnugetopt you need to include <getopt.h>
+ // on this system. Thus a conflict appear because the getopt is
[SM-Commit] GIT changes to master grimoire by Ismael Luceno (b6ebff83504a696911efec1ed38c0e0b63006114),
Ismael Luceno, 08/30/2019