Hi!

I'm building V8 on FreeBSD as a prerequisite for intensity engine
(syntensity.com). The engine have just switched to latest version
of V8, which fixed a problem with building on 64bit FreeBSD. Now it
builds just fine, but there are some issues which it would be good
to fix:

1) V8 doesn't build on 64bit system out of box:

---
% scons
scons: Reading SConscript files ...
TypeError: cannot concatenate 'str' and 'NoneType' objects:
  File "/usr/home/amdmi3/v8-be/SConstruct", line 607:
    'help': 'the architecture to build for (' + ARCH_GUESS + ')'
---

stangely, there's no quirks for 64bit systems in tools/utils.py which
is used to set ARCH_GUESS. With this, it builds fine:

--- 1.patch begins here ---
Index: tools/utils.py
===================================================================
--- tools/utils.py      (revision 3732)
+++ tools/utils.py      (working copy)
@@ -71,6 +71,8 @@
     return 'ia32'
   elif id == 'i86pc':
     return 'ia32'
+  elif id == 'amd64':
+    return 'x64'
   else:
     return None
 
--- 1.patch ends here ---

2) V8 doesn't build in presence of lang/spidermonkey port, as there's
an include conflict: spidermonkey installs jsregexp.h, and it's included
instead of the correct one from V8. Here's what happens:

---
...
/usr/local/libexec/ccache/c++ -o obj/release/ia32/codegen-ia32.o -c -Wall 
-Werror -W -Wno-unused-parameter -Wnon-virtual-dtor -m32 -O3 
-fomit-frame-pointer -fdata-sections -ffunction-sections -ansi -fno-rtti 
-fno-exceptions -fvisibility=hidden -Wall -Werror -W -Wno-unused-parameter 
-Wnon-virtual-dtor -m32 -O3 -fomit-frame-pointer -fdata-sections 
-ffunction-sections -ansi -DV8_TARGET_ARCH_IA32 -DENABLE_DEBUGGER_SUPPORT 
-DV8_NATIVE_REGEXP -DENABLE_LOGGING_AND_PROFILING -I/usr/local/include -Isrc 
src/ia32/codegen-ia32.cc
In file included from /usr/local/include/jspubtd.h:45,
                 from /usr/local/include/jsregexp.h:46,
                 from src/ia32/codegen-ia32.cc:35:
/usr/local/include/jstypes.h:248:6: error: #error "Must define one of XP_BEOS, 
XP_OS2, XP_WIN or XP_UNIX"
...
---

That should be fixed by changing the order of include paths.

3) Also I've ran tests - everything pass on amd64, but some fail on i386:

http://people.freebsd.org/~amdmi3/v8-i386.tests.log

-- 
Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
[email protected]  ..:  jabber: [email protected]    http://www.amdmi3.ru

-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users

Reply via email to