diff --git a/buildbot/cbuildbot_commands.py b/buildbot/cbuildbot_commands.py
index cb61960..3b49f11 100644
--- a/buildbot/cbuildbot_commands.py
+++ b/buildbot/cbuildbot_commands.py
@@ -153,20 +153,15 @@
       ['./setup_board', '--fast', '--default', '--board=%s' % board], cwd=cwd,
       enter_chroot=True)
 
-def Build(buildroot, emptytree, build_autotest=True, usepkg=True,
-          extra_env=None):
+
+def Build(buildroot, emptytree, build_autotest=True, usepkg=True):
   """Wrapper around build_packages."""
   cwd = os.path.join(buildroot, 'src', 'scripts')
   cmd = ['./build_packages']
-  env = []
   if not build_autotest: cmd.append('--nowithautotest')
   if not usepkg: cmd.append('--nousepkg')
   if emptytree:
-    env.append('EXTRA_BOARD_FLAGS=--emptytree')
-  if extra_env:
-    env.extend(extra_env)
-  if env:
-    cmd = ['sh', '-c', '%s %s' % (' '.join(env), ' '.join(cmd))]
+    cmd = ['sh', '-c', 'EXTRA_BOARD_FLAGS=--emptytree %s' % ' '.join(cmd)]
 
   cros_lib.OldRunCommand(cmd, cwd=cwd, enter_chroot=True)
 
diff --git a/buildbot/cbuildbot_stages.py b/buildbot/cbuildbot_stages.py
index 58fe388..197a50b 100644
--- a/buildbot/cbuildbot_stages.py
+++ b/buildbot/cbuildbot_stages.py
@@ -319,14 +319,10 @@
     BuilderStage.new_binhost = self._GetPortageEnvVar(_FULL_BINHOST)
     emptytree = (BuilderStage.old_binhost and
                  BuilderStage.old_binhost != BuilderStage.new_binhost)
-    env=[]
-    if self._build_config['useflags']:
-      env.append('USE="%s"' % ' '.join(self._build_config['useflags']))
 
     commands.Build(
         self._build_root, emptytree, usepkg=self._build_config['usepkg'],
-        build_autotest=(self._build_config['vm_tests'] and self._options.tests),
-        extra_env=env)
+        build_autotest=(self._build_config['vm_tests'] and self._options.tests))
 
     # TODO(sosa):  Do this optimization in a better way.
     if self._build_type == 'full':
