@@ -2481,6 +2481,11 @@ def which(cmd, paths=os.environ.get('PATH', '').split(os.pathsep)):
24812481
24822482
24832483def SetUpLinuxEnvArm (env ):
2484+ if env .Bit ('build_arm' ):
2485+ max_page_size = '0x10000'
2486+ else :
2487+ max_page_size = '0x1000'
2488+
24842489 jail = env .GetToolchainDir (toolchain_name = 'arm_trusted' )
24852490 if not platform .machine ().startswith ('arm' ):
24862491 # Allow emulation on non-ARM hosts.
@@ -2513,11 +2518,17 @@ def SetUpLinuxEnvArm(env):
25132518 LD = 'arm-linux-gnueabihf-ld' )
25142519 env .Prepend (CCFLAGS = ['-march=armv7-a' ,'-mfloat-abi=hard' ,
25152520 '-mtune=generic-armv7-a' , '-mfpu=neon' ])
2521+ env .Append (CCFLAGS = ['-Wl,-z,max-page-size=' + max_page_size ])
25162522
25172523 # get_plugin_dirname.cc has a dependency on dladdr
25182524 env .Append (LIBS = ['dl' ])
25192525
25202526def SetUpAndroidEnv (env ):
2527+ if env .Bit ('build_arm' ):
2528+ max_page_size = '0x10000'
2529+ else :
2530+ max_page_size = '0x1000'
2531+
25212532 env .FilterOut (CPPDEFINES = [['_LARGEFILE64_SOURCE' , '1' ]])
25222533 android_ndk_root = os .path .join ('${SOURCE_ROOT}' , 'third_party' ,
25232534 'android_ndk' )
@@ -2614,6 +2625,7 @@ def SetUpAndroidEnv(env):
26142625 '-D__ANDROID__' ,
26152626 # Due to bogus warnings on uintptr_t formats.
26162627 '-Wno-format' ,
2628+ '-Wl,-z,max-page-size=' + max_page_size ,
26172629 ] + arch_cflags ,
26182630 CXXFLAGS = ['-I%s' % android_stlport_include ,
26192631 '-I%s' % android_ndk_include ,
0 commit comments