--- indent-2.2.11/configure.ac.orig	2010-01-31 16:22:49.000000000 +0000
+++ indent-2.2.11/configure.ac	2015-03-06 22:12:50.392705100 +0000
@@ -50,6 +50,8 @@
 AC_CHECK_FUNCS(strchr memcpy memmove utime)
 AC_CHECK_HEADERS(unistd.h string.h malloc.h utime.h sys/utime.h)
 
+AM_CONDITIONAL([WIN32], [test "x$host_os" = xmingw32])
+
 if test "$ac_cv_func_utime" = yes ; then
 if test "$ac_cv_header_utime_h" = yes ; then
 indent_UTIMBUF
--- indent-2.2.11/src/Makefile.am.orig	2015-03-06 17:34:02.942327300 +0000
+++ indent-2.2.11/src/Makefile.am	2015-03-06 17:34:15.723827300 +0000
@@ -1,10 +1,15 @@
 AUTOMAKE_OPTIONS = 1.2 gnits
 
 bin_PROGRAMS = indent
+if WIN32
+indent_SOURCES = indent.c args.c backup.c comments.c lexi.c parse.c globs.c code_io.c output.c utils.c handletoken.c wildexp.c
+else
 indent_SOURCES = indent.c args.c backup.c comments.c lexi.c parse.c globs.c code_io.c output.c utils.c handletoken.c
+EXTRA_DIST_WILDEXP_C = wildexp.c
+endif
 noinst_HEADERS = indent.h args.h backup.h comments.h lexi.h parse.h globs.h code_io.h output.h utils.h sys.h libgettext.h handletoken.h
 indent_LDADD =  $(INTLLIBS)
-EXTRA_DIST = @PACKAGE@.gperf @PACKAGE@-cc.gperf wildexp.c gperf.c gperf-cc.c \
+EXTRA_DIST = @PACKAGE@.gperf @PACKAGE@-cc.gperf $(EXTRA_DIST_WILDEXP_C) gperf.c gperf-cc.c \
 	     @PACKAGE@.dsp \
 	     config.h.vc++ \
 	     config.h.vms
--- /dev/null	2018-12-04 15:19:01.000000000 +0300
+++ indent-2.2.12/src/wildexp.h	2018-12-04 15:18:49.403485600 +0300
@@ -0,0 +1,8 @@
+#ifndef INDENT_WILDEXP_H
+#define INDENT_WILDEXP_H
+
+#if defined (_WIN32) && !defined (__CYGWIN__)
+void wildexp(int *argc, char ***argv);
+#endif
+
+#endif /* INDENT_WILDEXP_H */
--- indent-2.2.12/src/wildexp.c.orig	2018-12-04 15:19:49.921992200 +0300
+++ indent-2.2.12/src/wildexp.c	2018-12-04 15:19:53.993599400 +0300
@@ -54,6 +54,7 @@
 #include "sys.h"
 #include "code_io.h"
 #include "indent.h"
+#include "wildexp.h"
 
 #define MAX_PATH 1024
 
@@ -377,7 +378,7 @@
  *
  */
 
-extern void wildexp (
+void wildexp (
    int *argc, 
    char ***argv)
 {
--- indent-2.2.12/src/indent.c.orig	2018-12-04 15:19:34.569565200 +0300
+++ indent-2.2.12/src/indent.c	2018-12-04 15:19:40.216775100 +0300
@@ -1067,7 +1067,7 @@
 #if defined (_WIN32) && !defined (__CYGWIN__)
     /* wildcard expansion of commandline arguments, see wildexp.c */
 
-    extern void wildexp(int *argc, char ***argv);
+    #include "wildexp.h"
 
     wildexp(&argc, &argv);
 #endif /* defined (_WIN32) && !defined (__CYGWIN__) */
