diff --git a/ats-pkg.cabal b/ats-pkg.cabal
--- a/ats-pkg.cabal
+++ b/ats-pkg.cabal
@@ -1,6 +1,6 @@
 cabal-version: 1.18
 name: ats-pkg
-version: 2.10.0.8
+version: 2.10.0.11
 license: BSD3
 license-file: LICENSE
 copyright: Copyright: (c) 2018 Vanessa McHale
@@ -29,6 +29,17 @@
                    Cabal >=2.2,
                    cli-setup >=0.2.0.1
 
+flag profile
+  description: Enable profiling
+  default: False
+  manual: True
+
+flag eventlog
+    description:
+        Enable event logging
+    default: False
+    manual: True
+
 flag development
     description:
         Enable `-Werror`
@@ -94,7 +105,7 @@
         zip-archive -any,
         ansi-wl-pprint -any,
         binary -any,
-        lens,
+        lens -any,
         dependency -any,
         filemanip -any
     
@@ -110,13 +121,19 @@
     ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall
                  -Wincomplete-uni-patterns -Wincomplete-record-updates
     
+    if flag(eventlog)
+        ghc-options: -eventlog -with-rtsopts=-l
+
+    if flag(profile)
+        ghc-options: -with-rtsopts=-h
+    
     if !flag(no-executable)
         build-depends:
             base -any,
             ats-pkg -any,
             optparse-applicative -any,
             shake-ats -any,
-            lens,
+            lens -any,
             temporary -any,
             directory -any,
             composition-prelude -any,
diff --git a/src/Language/ATS/Package/Build.hs b/src/Language/ATS/Package/Build.hs
--- a/src/Language/ATS/Package/Build.hs
+++ b/src/Language/ATS/Package/Build.hs
@@ -252,7 +252,7 @@
             -> Maybe String -- ^ Optional compiler triple (overrides 'ccompiler')
             -> Pkg -- ^ Package data type
             -> Rules ()
-pkgToAction setup rs tgt ~(Pkg bs ts lbs mt _ v v' ds cds bdeps ccLocal cf as dl slv deb) =
+pkgToAction setup rs tgt ~(Pkg bs ts lbs mt _ v v' ds cds bdeps ccLocal cf as dl slv deb al) =
 
     unless (rs == ["clean"]) $ do
 
@@ -290,7 +290,7 @@
           k False = SharedLibrary
           k True  = StaticLibrary
 
-          atsToolConfig ph = ATSToolConfig ph (patsHomeLocsAtsPkg 5) False (ccFromString cc') (not dl) slv
+          atsToolConfig ph = ATSToolConfig ph (patsHomeLocsAtsPkg 5) False (ccFromString cc') (not dl) slv al
 
           cDepsRules ph = unless (null as) $ do
               let targets = fmap (unpack . cTarget) as
diff --git a/src/Language/ATS/Package/Type.hs b/src/Language/ATS/Package/Type.hs
--- a/src/Language/ATS/Package/Type.hs
+++ b/src/Language/ATS/Package/Type.hs
@@ -121,5 +121,6 @@
                , dynLink      :: Bool -- ^ Don't link statically, instead, use libraries installed by @atspkg@.
                , extSolve     :: Solver -- ^ Solver to use.
                , debPkg       :: Maybe Debian -- ^ Optional specificiation as a debian package.
+               , atsLib       :: Bool -- ^ Whether to link/build @atslib@.
                }
          deriving (Generic, Interpret, Binary, Hashable)
