1 common_CFLAGS = [ 2 "-Wall", 3 "-Werror", 4 "-Wshadow", 5 ] 6 7 cc_binary { 8 name: "secilc", 9 host_supported: true, 10 cflags: common_CFLAGS, 11 srcs: ["secilc.c"], 12 static_libs: ["libsepol"], 13 stl: "none", 14 // secilc is a program that is executed very early by init. 15 // Since it is before the mount namespaces are setup, /system/bin/linker 16 // and /system/lib/libc.so point to the mount points where nothing 17 // is mounted on yet. Therefore, secilc has to have explicit knowledge about 18 // the paths where the bootstrap Bionic is. bootstrap:true sets DT_INTERP to 19 // /system/bin/bootstrap/linker. RPATH is explicitly set to /system/lib/bootstrap 20 // where the bootstrap libc.so is. 21 bootstrap: true, 22 target: { 23 android: { 24 ldflags: ["-Wl,--rpath,/system/${LIB}/bootstrap"], 25 }, 26 }, 27 } 28