diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # ats-pkg
 
+## 3.2.1.8
+
+  * Update Dhall prelude
+
 ## 3.2.1.2
 
 Bug Fixes:
diff --git a/ats-pkg.cabal b/ats-pkg.cabal
--- a/ats-pkg.cabal
+++ b/ats-pkg.cabal
@@ -1,6 +1,6 @@
 cabal-version: 2.0
 name: ats-pkg
-version: 3.2.1.2
+version: 3.2.1.8
 license: BSD3
 license-file: LICENSE
 copyright: Copyright: (c) 2018 Vanessa McHale
diff --git a/dhall/atspkg-prelude.dhall b/dhall/atspkg-prelude.dhall
--- a/dhall/atspkg-prelude.dhall
+++ b/dhall/atspkg-prelude.dhall
@@ -20,6 +20,9 @@
 let TargetPair = { hs : Text, ats : Text, cpphs : Bool }
 in
 
+let CCompiler = < CompCert : {} | Clang : {} | GCC : {} | ICC : {} | CC : {} >
+in
+
 let Bin =
   { src : Text
   , target : Text
@@ -295,6 +298,45 @@
 let atsProject = "target"
 in
 
+let CCConstructors = constructors CCompiler
+in
+
+let gcc = CCConstructors.GCC {=}
+in
+let clang = CCConstructors.Clang {=}
+in
+let compCert = CCConstructors.CompCert {=}
+in
+let icc = CCConstructors.ICC {=}
+in
+let cc = CCConstructors.CC {=}
+in
+
+let printCompiler =
+    λ(cc : CCompiler) →
+        merge { CompCert = λ(_ : {}) → "ccomp"
+              , Clang = λ(_ : {}) → "clang"
+              , GCC = λ(_ : {}) → "gcc"
+              , ICC = λ(_ : {}) → "icc"
+              , CC = λ(_ : {}) → "cc"
+              }
+              cc
+in
+
+let ccFlags =
+    λ(cc : CCompiler) →
+        merge { CompCert = λ(_ : {}) → [ "-O2", "-fstruct-passing" ]
+              , Clang = λ(_ : {}) → [ "-O2", "-mtune=native", "-flto" ]
+              , GCC = λ(_ : {}) → [ "-O2", "-mtune=native", "-flto" ]
+              , ICC = λ(_ : {}) → [ "-O2", "-mtune=native", "-flto", "-D__PURE_INTEL_C99_HEADERS__" ]
+              , CC = λ(_ : {}) → [ "-O2" ]
+              }
+              cc
+in
+
+let iccFlags = [ "-D__PURE_INTEL_C99_HEADERS__" ]
+in
+
 {- We collect everything in a single record for convenience -}
 { mkDeb = mkDeb
 , emptySrc = emptySrc
@@ -324,5 +366,12 @@
 , debian = debian
 , noPrelude = noPrelude
 , atsProject = atsProject
+, gcc = gcc
+, clang = clang
+, compCert = compCert
+, icc = icc
+, cc = cc
+, printCompiler = printCompiler
+, ccFlags = ccFlags
 , iccFlags = iccFlags
 }
diff --git a/src/Language/ATS/Package.hs b/src/Language/ATS/Package.hs
--- a/src/Language/ATS/Package.hs
+++ b/src/Language/ATS/Package.hs
@@ -22,6 +22,7 @@
                             , LibDep
                             , DepSelector
                             , PackageError (..)
+                            , Debian (..)
                             -- * Lenses
                             , dirLens
                             ) where
@@ -29,6 +30,7 @@
 import           Distribution.ATS.Version
 import           Language.ATS.Package.Build
 import           Language.ATS.Package.Compiler
+import           Language.ATS.Package.Debian
 import           Language.ATS.Package.Dependency
 import           Language.ATS.Package.Error
 import           Language.ATS.Package.PackageSet
