diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 556f813396f41101464e249f6406e37391f8e90d..213acc6b9f83b5cce32b81420cbad78cc9d02714 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5841,6 +5841,14 @@ (define-public enigma
        (list "--with-system-enet")
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'fix-build-with-new-gcc
+           (lambda _
+             ;; Fix build with GCC6 and later by avoiding comparing ifstream
+             ;; to NULL.  Can be removed for versions > 1.21.
+             (substitute* "src/lev/Proxy.cc"
+               (("ifs != NULL")
+                "ifs"))
+             #t))
          (add-after 'unpack 'find-sdl
            (lambda _
              (substitute* "configure"