Reviewers: Kasper Lund,
Description:
Fix Android scons build by putting -lv8 before -lgcc.
Please review this at http://codereview.chromium.org/1275001
SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/
Affected files:
M SConstruct
Index: SConstruct
===================================================================
--- SConstruct (revision 4250)
+++ SConstruct (working copy)
@@ -90,7 +90,7 @@
'-Wl,-z,nocopyreloc',
'-Wl,-rpath-link=' + ANDROID_TOP
+ '/out/target/product/generic/obj/lib',
ANDROID_TOP
+ '/out/target/product/generic/obj/lib/crtbegin_dynamic.o',
- ANDROID_TOP
+ '/prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/lib/gcc/arm-eabi/4.2.1/interwork/libgcc.a',
+ ANDROID_TOP
+ '/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/interwork/libgcc.a',
ANDROID_TOP
+ '/out/target/product/generic/obj/lib/crtend_android.o'];
LIBRARY_FLAGS = {
@@ -371,7 +371,6 @@
CCTEST_EXTRA_FLAGS = {
'all': {
'CPPPATH': [join(root_dir, 'src')],
- 'LIBS': ['$LIBRARY']
},
'gcc': {
'all': {
@@ -401,9 +400,10 @@
'__ARM_ARCH_5E__', '__ARM_ARCH_5TE__'],
'CCFLAGS': ANDROID_FLAGS,
'CPPPATH': ANDROID_INCLUDES,
- 'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib'],
+ 'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib',
+ ANDROID_TOP
+ '/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/interwork'],
'LINKFLAGS': ANDROID_LINKFLAGS,
- 'LIBS': ['log', 'c', 'stdc++', 'm'],
+ 'LIBS': ['log', 'c', 'stdc++', 'm', 'gcc'],
'mode:release': {
'CPPDEFINES': ['SK_RELEASE', 'NDEBUG']
}
@@ -431,7 +431,6 @@
SAMPLE_FLAGS = {
'all': {
'CPPPATH': [join(abspath('.'), 'include')],
- 'LIBS': ['$LIBRARY'],
},
'gcc': {
'all': {
@@ -465,9 +464,10 @@
'__ARM_ARCH_5E__', '__ARM_ARCH_5TE__'],
'CCFLAGS': ANDROID_FLAGS,
'CPPPATH': ANDROID_INCLUDES,
- 'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib'],
+ 'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib',
+ ANDROID_TOP
+ '/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/interwork'],
'LINKFLAGS': ANDROID_LINKFLAGS,
- 'LIBS': ['log', 'c', 'stdc++', 'm'],
+ 'LIBS': ['log', 'c', 'stdc++', 'm', 'gcc'],
'mode:release': {
'CPPDEFINES': ['SK_RELEASE', 'NDEBUG']
}
@@ -590,9 +590,10 @@
'LIBS': ['pthread'],
},
'os:android': {
- 'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib'],
+ 'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib',
+ ANDROID_TOP
+ '/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/interwork'],
'LINKFLAGS': ANDROID_LINKFLAGS,
- 'LIBS': ['log', 'c', 'stdc++', 'm'],
+ 'LIBS': ['log', 'c', 'stdc++', 'm', 'gcc'],
},
'os:win32': {
'LIBS': ['winmm', 'ws2_32'],
@@ -988,7 +989,6 @@
if context.options['soname'] == 'on':
# When building shared object with SONAME version the library name.
library_name += '-' + version
- env['LIBRARY'] = library_name
# Generate library SONAME if required by the build.
if context.options['soname'] == 'on':
@@ -1009,6 +1009,7 @@
# Link the object files into a library.
env.Replace(**context.flags['v8'])
+ env.Prepend(LIBS=[library_name])
context.ApplyEnvOverrides(env)
if context.options['library'] == 'static':
@@ -1028,8 +1029,9 @@
context.d8_targets.append(shell)
for sample in context.samples:
- sample_env = Environment(LIBRARY=library_name)
+ sample_env = Environment()
sample_env.Replace(**context.flags['sample'])
+ sample_env.Prepend(LIBS=[library_name])
context.ApplyEnvOverrides(sample_env)
sample_object = sample_env.SConscript(
join('samples', 'SConscript'),
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
To unsubscribe from this group, send email to v8-dev+unsubscribegooglegroups.com or reply
to this email with the words "REMOVE ME" as the subject.