diff --git a/GLUT.cabal b/GLUT.cabal
--- a/GLUT.cabal
+++ b/GLUT.cabal
@@ -1,5 +1,5 @@
 name:		GLUT
-version:	2.1.1.1
+version:	2.1.1.2
 license:	BSD3
 license-file:	LICENSE
 maintainer:	Sven Panne <sven.panne@aedion.de>
diff --git a/configure b/configure
--- a/configure
+++ b/configure
@@ -652,7 +652,6 @@
 build_alias
 host_alias
 target_alias
-GLUT_BUILD_PACKAGE
 CC
 CFLAGS
 LDFLAGS
@@ -660,6 +659,7 @@
 ac_ct_CC
 EXEEXT
 OBJEXT
+GLUT_BUILD_PACKAGE
 XMKMF
 CPP
 X_CFLAGS
@@ -1292,6 +1292,7 @@
 Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+C compiler
   --with-x                use the X Window System
 
 Some influential environment variables:
@@ -1746,32 +1747,13 @@
 ac_config_headers="$ac_config_headers include/HsGLUTConfig.h include/HsGLUT.h"
 
 
-# We set this to "yes" later when we have found GLUT libs and headers.
-GLUT_BUILD_PACKAGE=no
-
-
-# Shall we build this package at all?
-# Check whether --enable-opengl was given.
-if test "${enable_opengl+set}" = set; then
-  enableval=$enable_opengl; enable_opengl=$enableval
-else
-  enable_opengl=yes
-fi
-
-
+# Necessary for Cabal, which passes with --with-cc flag on Windows:
 
-# Check whether --enable-glut was given.
-if test "${enable_glut+set}" = set; then
-  enableval=$enable_glut; enable_glut=$enableval
-else
-  enable_glut=yes
+# Check whether --with-cc was given.
+if test "${with_cc+set}" = set; then
+  withval=$with_cc; CC=$withval
 fi
 
-
-
-if test x"$enable_glut" = xyes; then
-
-# Check for GLUT include paths and libraries
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2692,6 +2674,33 @@
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
+# We set this to "yes" later when we have found GLUT libs and headers.
+GLUT_BUILD_PACKAGE=no
+
+
+# Shall we build this package at all?
+# Check whether --enable-opengl was given.
+if test "${enable_opengl+set}" = set; then
+  enableval=$enable_opengl; enable_opengl=$enableval
+else
+  enable_opengl=yes
+fi
+
+
+
+# Check whether --enable-glut was given.
+if test "${enable_glut+set}" = set; then
+  enableval=$enable_glut; enable_glut=$enableval
+else
+  enable_glut=yes
+fi
+
+
+
+if test x"$enable_glut" = xyes; then
+
+# Check for GLUT include paths and libraries
+
 { echo "$as_me:$LINENO: checking for Windows environment" >&5
 echo $ECHO_N "checking for Windows environment... $ECHO_C" >&6; }
 if test "${fp_cv_is_win32+set}" = set; then
@@ -6686,7 +6695,6 @@
 build_alias!$build_alias$ac_delim
 host_alias!$host_alias$ac_delim
 target_alias!$target_alias$ac_delim
-GLUT_BUILD_PACKAGE!$GLUT_BUILD_PACKAGE$ac_delim
 CC!$CC$ac_delim
 CFLAGS!$CFLAGS$ac_delim
 LDFLAGS!$LDFLAGS$ac_delim
@@ -6694,6 +6702,7 @@
 ac_ct_CC!$ac_ct_CC$ac_delim
 EXEEXT!$EXEEXT$ac_delim
 OBJEXT!$OBJEXT$ac_delim
+GLUT_BUILD_PACKAGE!$GLUT_BUILD_PACKAGE$ac_delim
 XMKMF!$XMKMF$ac_delim
 CPP!$CPP$ac_delim
 X_CFLAGS!$X_CFLAGS$ac_delim
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -8,6 +8,12 @@
 # contains all kinds of stuff which is needed for using this package.
 AC_CONFIG_HEADERS([include/HsGLUTConfig.h include/HsGLUT.h])
 
+# Necessary for Cabal, which passes with --with-cc flag on Windows:
+AC_ARG_WITH([cc],
+            [C compiler],
+            [CC=$withval])
+AC_PROG_CC()
+
 # We set this to "yes" later when we have found GLUT libs and headers.
 GLUT_BUILD_PACKAGE=no
 AC_SUBST([GLUT_BUILD_PACKAGE])
diff --git a/include/HsGLUT.h b/include/HsGLUT.h
--- a/include/HsGLUT.h
+++ b/include/HsGLUT.h
@@ -1,47 +0,0 @@
-/* include/HsGLUT.h.  Generated from HsGLUT.h.in by configure.  */
-/* -----------------------------------------------------------------------------
- *
- * Module      :  C support for Graphics.UI.GLUT.Fonts
- * Copyright   :  (c) Sven Panne 2002-2005
- * License     :  BSD-style (see the file libraries/GLUT/LICENSE)
- *
- * Maintainer  :  sven.panne@aedion.de
- * Stability   :  provisional
- * Portability :  portable
- *
- * -------------------------------------------------------------------------- */
-
-#ifndef HSGLUT_H
-#define HSGLUT_H
-
-/* Define to 1 if you have the <GL/glut.h> header file. */
-#define HAVE_GL_GLUT_H 1
-
-/* Define to 1 if you have the <windows.h> header file. */
-/* #undef HAVE_WINDOWS_H */
-
-/* Define to 1 if native OpenGL should be used on Mac OS X */
-/* #undef USE_QUARTZ_OPENGL */
-
-#ifdef USE_QUARTZ_OPENGL /* Mac OS X only */
-#include <GLUT/glut.h>
-#else
-#if HAVE_WINDOWS_H
-#include <windows.h>
-#endif
-#if HAVE_GL_GLUT_H
-#include <GL/glut.h>
-#else
-#include "glut_local.h"
-#endif
-#endif
-
-#if FREEGLUT
-#include <GL/freeglut_ext.h>
-#endif
-
-extern void* hs_GLUT_marshalBitmapFont(int fontID);
-extern void* hs_GLUT_marshalStrokeFont(int fontID);
-extern void* hs_GLUT_getProcAddress(char *procName);
-
-#endif
