-fPIC=>-fPIE everywhere now
diff --git a/aos/build/aos.gypi b/aos/build/aos.gypi
index acc525c..08a99c6 100644
--- a/aos/build/aos.gypi
+++ b/aos/build/aos.gypi
@@ -85,7 +85,7 @@
           ],
         },
       },
-    ], ['SANITIZER_FPIC!=""', {
+    ], ['SANITIZER_FPIE!=""', {
         'target_defaults': {
           'cflags': [
             '-fPIE',
diff --git a/aos/build/build.py b/aos/build/build.py
index b54efe4..a78b795 100755
--- a/aos/build/build.py
+++ b/aos/build/build.py
@@ -207,7 +207,7 @@
     output/downloaded/eigen-3.2.1/Eigen/src/Core/util/Memory.h:782:*: runtime error: load of misaligned address 0x* for type 'const int', which requires 4 byte alignment
       That's in the CPUID detection code which only runs on x86."""),
   }
-  PIC_SANITIZERS = ('memory', 'thread')
+  PIE_SANITIZERS = ('memory', 'thread')
 
   def __init__(self, is_test, is_deploy):
     super(Processor, self).__init__()
@@ -405,10 +405,10 @@
   else:
     to_download = set()
     for architecture in PrimeProcessor.ARCHITECTURES:
-      for sanitizer in PrimeProcessor.PIC_SANITIZERS:
+      for sanitizer in PrimeProcessor.PIE_SANITIZERS:
         if platforms & processor.select_platforms(architecture=architecture,
                                                   sanitizer=sanitizer):
-          to_download.add(architecture + '-fPIC')
+          to_download.add(architecture + '-fPIE')
         if platforms & processor.select_platforms(architecture=architecture,
                                                   sanitizer='none'):
           to_download.add(architecture)
@@ -500,8 +500,8 @@
              '-DFULL_COMPILER=%s' % platform.compiler,
              '-DDEBUG=%s' % ('yes' if platform.debug else 'no'),
              '-DSANITIZER=%s' % platform.sanitizer,
-             '-DSANITIZER_FPIC=%s' % ('-fPIC'
-                 if platform.sanitizer in PrimeProcessor.PIC_SANITIZERS
+             '-DSANITIZER_FPIE=%s' % ('-fPIE'
+                 if platform.sanitizer in PrimeProcessor.PIE_SANITIZERS
                  else '')) +
             processor.extra_gyp_flags() + (args.main_gyp,),
             stdin=subprocess.PIPE)
diff --git a/aos/build/download_externals.sh b/aos/build/download_externals.sh
index 61e7b7d..bb2fe76 100755
--- a/aos/build/download_externals.sh
+++ b/aos/build/download_externals.sh
@@ -24,12 +24,12 @@
 elif [ "$1" == "amd64" ]; then
   COMPILED=${EXTERNALS}/../compiled-amd64
   IS_CRIO=0
-elif [ "$1" == "amd64-fPIC" ]; then
-  COMPILED=${EXTERNALS}/../compiled-amd64-fPIC
+elif [ "$1" == "amd64-fPIE" ]; then
+  COMPILED=${EXTERNALS}/../compiled-amd64-fPIE
 
-  export CFLAGS="-fPIC"
-  export CXXFLAGS="-fPIC"
-  export LDFLAGS="-fPIC"
+  export CFLAGS="-fPIE"
+  export CXXFLAGS="-fPIE"
+  export LDFLAGS="-fPIE"
   CONFIGURE_FLAGS="CFLAGS=\"${CFLAGS}\" CXXFLAGS=\"${CXXFLAGS}\" LDFLAGS=\"${LDFLAGS}\""
   IS_CRIO=0
 elif [ "$1" == "crio" ]; then
diff --git a/aos/build/externals.gyp b/aos/build/externals.gyp
index ec7a2a1..e8c5a4e 100644
--- a/aos/build/externals.gyp
+++ b/aos/build/externals.gyp
@@ -5,8 +5,8 @@
     # TODO(brians): Would we not have to do this hackery if we named it externals_path etc?
     'externals': '<(AOS)/../output/downloaded',
     'externals_abs': '<!(readlink -f ../../output/downloaded)',
-    'compiled': '<(externals)/../compiled-<(ARCHITECTURE)<(SANITIZER_FPIC)',
-    'compiled_abs': '<(externals_abs)/../compiled-<(ARCHITECTURE)<(SANITIZER_FPIC)',
+    'compiled': '<(externals)/../compiled-<(ARCHITECTURE)<(SANITIZER_FPIE)',
+    'compiled_abs': '<(externals_abs)/../compiled-<(ARCHITECTURE)<(SANITIZER_FPIE)',
 
 # These versions have to be kept in sync with the ones in download_externals.sh.
     'eigen_version': '3.2.1',