On Wed, Nov 16, 2011 at 01:45:27AM +0000, Stuart Henderson wrote:
> Please don't send tarballs for updates either, you can use 'cvs add' and
> 'cvs rm' against anoncvs servers if you want to prepare a diff with changed
> files (the main exception is if you have to add a new directory, you can
> work around this but it's enough of a pain that it's rarely worth the
> hassle), then 'cvs diff -uNp'.
>
> There are *loads* of submissions on ports@ and a limited number of people
> who can deal with them, easy-to-work-with diffs are way more likely to get
> looked at.
>
>
>
> On 2011-11-16, Aaron <[email protected]> wrote:
> > This is a diff against a tarball I sent earlier. Will do for next time tho.
> >
> > On Tue, Nov 15, 2011 at 6:04 PM, Stuart Henderson <[email protected]>
> > wrote:
> >> On 2011-11-15, Aaron <[email protected]> wrote:
> >>> This is an update to my previous update submission :D
> >>
> >>> -NODE_VERSION= ?v0.6.0
> >>> +NODE_VERSION= ?v0.6.1
> >>
> >> Oh please don't do that, send diffs against ports CVS, not against
> >> previous diffs.
> >>
> >>
> >>
> >
> >
>
Here is a cvs diff for 0.4.9 to 0.6.1. I am not sure I created it
correctly, the files that are no longer needed still exist - but
are empty.
Index: Makefile
===================================================================
RCS file: /cvs/ports/www/node/Makefile,v
retrieving revision 1.18
diff -N -u -p Makefile
--- Makefile 16 Sep 2011 12:00:07 -0000 1.18
+++ Makefile 16 Nov 2011 03:47:31 -0000
@@ -8,7 +8,8 @@ ONLY_FOR_ARCHS= amd64 i386
COMMENT= V8 JavaScript for clients and servers
-DISTNAME= node-v0.4.9
+NODE_VERSION= v0.6.1
+DISTNAME= node-${NODE_VERSION}
REVISION= 0
PKGNAME= ${DISTNAME:S/v//g}
@@ -16,34 +17,26 @@ CATEGORIES= www devel
HOMEPAGE= http://nodejs.org/
+USE_GMAKE= Yes
+
# MIT
PERMIT_PACKAGE_CDROM= Yes
PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_DISTFILES_FTP= Yes
-MASTER_SITES= ${HOMEPAGE}/dist/
+MASTER_SITES= ${HOMEPAGE}/dist/${NODE_VERSION}/
MODULES= lang/python
VMEM_WARNING= Yes
-WANTLIB += c crypto execinfo ev kvm m pthread ssl stdc++ util
+WANTLIB += c crypto execinfo kvm m pthread ssl stdc++ util
-LIB_DEPENDS= devel/libev \
- devel/libexecinfo
+LIB_DEPENDS= devel/libexecinfo
CONFIGURE_STYLE= simple
-CONFIGURE_ARGS+= --shared-libev-libpath="${LOCALBASE}/lib" \
- --shared-libev-include="${LOCALBASE}/include"
-MODPY_ADJ_FILES=wscript \
- tools/node-waf \
- tools/waf-light
-
-# These don't require complete rebuilds of the tree
-REGRESS_TARGET= test-message test-simple test-pummel test-internet
-
SUBST_VARS+= CFLAGS
MAKE_ENV+= CXX=c++ CCFLAGS+="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
@@ -51,9 +44,6 @@ MAKE_ENV+= CXX=c++ CCFLAGS+="${CFLAGS}" CXXFLAGS="${CX
NO_CCACHE= Yes
pre-configure:
- ${SUBST_CMD} ${WRKSRC}/wscript \
- ${WRKSRC}/Makefile \
- ${WRKSRC}/tools/wafadmin/Tools/python.py
# Bad practice, but prevents a whole stack of patches.
ln -sf ${LOCALBASE}/bin/python${MODPY_VERSION} ${WRKDIR}/bin/python
Index: distinfo
===================================================================
RCS file: /cvs/ports/www/node/distinfo,v
retrieving revision 1.7
diff -N -u -p distinfo
--- distinfo 29 Jun 2011 18:44:07 -0000 1.7
+++ distinfo 16 Nov 2011 03:47:31 -0000
@@ -1,5 +1,5 @@
-MD5 (node-v0.4.9.tar.gz) = 5SW4uZ2Um/LwMbwmLBOOlg==
-RMD160 (node-v0.4.9.tar.gz) = AWmnnaUmIx2U6pp4dV9fqPBE4rs=
-SHA1 (node-v0.4.9.tar.gz) = zptiuqmTs4Wx79ZgWFA+ohWgg4k=
-SHA256 (node-v0.4.9.tar.gz) = 8jHqbRnqnqTH+Of/UGHn0wHxY1vsftD/Hu8lEldupEI=
-SIZE (node-v0.4.9.tar.gz) = 4994552
+MD5 (node-v0.6.1.tar.gz) = krgIWWcRCwElwZJjTxJ6Kw==
+RMD160 (node-v0.6.1.tar.gz) = zekUWm6EIFpvKHxMAGs7dD8B4gc=
+SHA1 (node-v0.6.1.tar.gz) = JbKjJ3k1DyNeWjVu96qD6nVxBxk=
+SHA256 (node-v0.6.1.tar.gz) = sWEFDtjNstRfYBGB0UaCHlU1qPy/WXiy/wZOVHao5gY=
+SIZE (node-v0.6.1.tar.gz) = 9276847
Index: patches/patch-Makefile
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-Makefile,v
retrieving revision 1.1
diff -N -u -p patches/patch-Makefile
--- patches/patch-Makefile 30 Mar 2011 20:54:13 -0000 1.1
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,24 +0,0 @@
-$OpenBSD: patch-Makefile,v 1.1 2011/03/30 20:54:13 jasper Exp $
---- Makefile.orig Wed Mar 30 22:41:54 2011
-+++ Makefile Wed Mar 30 22:43:47 2011
-@@ -41,16 +41,16 @@ test-debug: all
- python tools/test.py --mode=debug
-
- test-message: all
-- python tools/test.py message
-+ ${MODPY_BIN} tools/test.py message
-
- test-simple: all
-- python tools/test.py simple
-+ ${MODPY_BIN} tools/test.py simple
-
- test-pummel: all
-- python tools/test.py pummel
-+ ${MODPY_BIN} tools/test.py pummel
-
- test-internet: all
-- python tools/test.py internet
-+ ${MODPY_BIN} tools/test.py internet
-
- build/default/node: all
-
Index: patches/patch-deps_v8_SConstruct
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-deps_v8_SConstruct,v
retrieving revision 1.5
diff -N -u -p patches/patch-deps_v8_SConstruct
--- patches/patch-deps_v8_SConstruct 29 Apr 2011 07:41:15 -0000 1.5
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,26 +0,0 @@
-$OpenBSD: patch-deps_v8_SConstruct,v 1.5 2011/04/29 07:41:15 jasper Exp $
-
-- Remove extra zoom-zoom!
-- Don't link with -lpthread but use -pthread instead.
-
---- deps/v8/SConstruct.orig Sat Apr 23 02:06:25 2011
-+++ deps/v8/SConstruct Fri Apr 29 00:07:18 2011
-@@ -154,7 +154,7 @@ LIBRARY_FLAGS = {
- }
- },
- 'mode:release': {
-- 'CCFLAGS': ['-O3', '-fomit-frame-pointer', '-fdata-sections',
-+ 'CCFLAGS': ['-fomit-frame-pointer', '-fdata-sections',
- '-ffunction-sections'],
- 'os:android': {
- 'CCFLAGS': ['-mthumb', '-Os'],
-@@ -368,7 +368,8 @@ MKSNAPSHOT_EXTRA_FLAGS = {
- 'LINKFLAGS': ['-mt']
- },
- 'os:openbsd': {
-- 'LIBS': ['execinfo', 'pthread']
-+ 'LIBS': ['execinfo'],
-+ 'LINKFLAGS': ['-pthread']
- },
- 'os:win32': {
- 'LIBS': ['winmm', 'ws2_32'],
Index: patches/patch-deps_v8_src_atomicops_h
===================================================================
RCS file: patches/patch-deps_v8_src_atomicops_h
diff -N -u -p patches/patch-deps_v8_src_atomicops_h
--- /dev/null 15 Nov 2011 20:47:31 -0000
+++ patches/patch-deps_v8_src_atomicops_h 16 Nov 2011 03:47:31 -0000
@@ -0,0 +1,15 @@
+$OpenBSD$
+--- deps/v8/src/atomicops.h.orig Tue Nov 8 18:37:38 2011
++++ deps/v8/src/atomicops.h Tue Nov 8 18:38:53 2011
+@@ -69,7 +69,11 @@ typedef intptr_t Atomic64;
+
+ // Use AtomicWord for a machine-sized pointer. It will use the Atomic32 or
+ // Atomic64 routines below, depending on your architecture.
++#if defined(__OpenBSD__) && defined(__i386__)
++typedef Atomic32 AtomicWord;
++#else
+ typedef intptr_t AtomicWord;
++#endif
+
+ // Atomically execute:
+ // result = *ptr;
Index: patches/patch-deps_v8_src_heap_cc
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-deps_v8_src_heap_cc,v
retrieving revision 1.3
diff -N -u -p patches/patch-deps_v8_src_heap_cc
--- patches/patch-deps_v8_src_heap_cc 2 Jun 2011 07:21:14 -0000 1.3
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,33 +0,0 @@
-$OpenBSD: patch-deps_v8_src_heap_cc,v 1.3 2011/06/02 07:21:14 robert Exp $
---- deps/v8/src/heap.cc.orig Sat May 21 04:40:06 2011
-+++ deps/v8/src/heap.cc Wed Jun 1 14:26:51 2011
-@@ -4503,6 +4503,29 @@ bool Heap::ConfigureHeap(int max_semispace_size,
- initial_semispace_size_ = Min(initial_semispace_size_, max_semispace_size_);
- external_allocation_limit_ = 10 * max_semispace_size_;
-
-+ intptr_t max_virtual = OS::MaxVirtualMemory();
-+
-+ if (max_virtual > 0) {
-+ intptr_t half = max_virtual >> 1;
-+ intptr_t quarter = max_virtual >> 2;
-+ // If we have limits on the amount of virtual memory we can use then we
may
-+ // be forced to lower the allocation limits. We reserve one quarter of
the
-+ // memory for young space and off-heap data. The rest is distributed as
-+ // described below.
-+ if (code_range_size_ > 0) {
-+ // Reserve a quarter of the memory for the code range. The old space
-+ // heap gets the remaining half. There is some unavoidable double
-+ // counting going on here since the heap size is measured in committed
-+ // virtual memory and the code range is only reserved virtual memory.
-+ code_range_size_ = Min(code_range_size_, quarter);
-+ max_old_generation_size_ = Min(max_old_generation_size_, half);
-+ } else {
-+ // Reserve three quarters of the memory for the old space heap including
-+ // the executable code.
-+ max_old_generation_size_ = Min(max_old_generation_size_, half +
quarter);
-+ }
-+ }
-+
- // The old generation is paged.
- max_old_generation_size_ = RoundUp(max_old_generation_size_,
Page::kPageSize);
-
Index: patches/patch-deps_v8_src_platform-openbsd_cc
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-deps_v8_src_platform-openbsd_cc,v
retrieving revision 1.1
diff -N -u -p patches/patch-deps_v8_src_platform-openbsd_cc
--- patches/patch-deps_v8_src_platform-openbsd_cc 30 Mar 2011 19:54:29
-0000 1.1
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,132 +0,0 @@
-$OpenBSD: patch-deps_v8_src_platform-openbsd_cc,v 1.1 2011/03/30 19:54:29
jasper Exp $
---- deps/v8/src/platform-openbsd.cc.orig Sat Mar 26 09:48:02 2011
-+++ deps/v8/src/platform-openbsd.cc Wed Mar 30 21:21:02 2011
-@@ -1,4 +1,4 @@
--// Copyright 2006-2009 the V8 project authors. All rights reserved.
-+// Copyright 2006-2008 the V8 project authors. All rights reserved.
- // Redistribution and use in source and binary forms, with or without
- // modification, are permitted provided that the following conditions are
- // met:
-@@ -164,6 +164,7 @@ void* OS::Allocate(const size_t requested,
-
-
- void OS::Free(void* buf, const size_t length) {
-+ // TODO(1240712): munmap has a return value which is ignored here.
- int result = munmap(buf, length);
- USE(result);
- ASSERT(result == 0);
-@@ -197,13 +198,7 @@ void OS::Abort() {
-
-
- void OS::DebugBreak() {
--#if (defined(__arm__) || defined(__thumb__))
--# if defined(CAN_USE_ARMV5_INSTRUCTIONS)
-- asm("bkpt 0");
--# endif
--#else
- asm("int $3");
--#endif
- }
-
-
-@@ -309,8 +304,30 @@ void OS::SignalCodeMovingGC() {
-
-
- int OS::StackWalk(Vector<OS::StackFrame> frames) {
-- UNIMPLEMENTED();
-- return 1;
-+ int frames_size = frames.length();
-+ ScopedVector<void*> addresses(frames_size);
-+
-+ int frames_count = backtrace(addresses.start(), frames_size);
-+
-+ char** symbols = backtrace_symbols(addresses.start(), frames_count);
-+ if (symbols == NULL) {
-+ return kStackWalkError;
-+ }
-+
-+ for (int i = 0; i < frames_count; i++) {
-+ frames[i].address = addresses[i];
-+ // Format a text representation of the frame based on the information
-+ // available.
-+ SNPrintF(MutableCStrVector(frames[i].text, kStackWalkMaxTextLen),
-+ "%s",
-+ symbols[i]);
-+ // Make sure line termination is in place.
-+ frames[i].text[kStackWalkMaxTextLen - 1] = '\0';
-+ }
-+
-+ free(symbols);
-+
-+ return frames_count;
- }
-
-
-@@ -502,6 +519,16 @@ class OpenBSDMutex : public Mutex {
- return result;
- }
-
-+ virtual bool TryLock() {
-+ int result = pthread_mutex_trylock(&mutex_);
-+ // Return false if the lock is busy and locking failed.
-+ if (result == EBUSY) {
-+ return false;
-+ }
-+ ASSERT(result == 0); // Verify no other errors.
-+ return true;
-+ }
-+
- private:
- pthread_mutex_t mutex_; // Pthread mutex for POSIX platforms.
- };
-@@ -571,18 +598,37 @@ Semaphore* OS::CreateSemaphore(int count) {
- #ifdef ENABLE_LOGGING_AND_PROFILING
-
- static Sampler* active_sampler_ = NULL;
-+static pthread_t vm_tid_ = 0;
-
-+typedef struct sigcontext ucontext_t;
-+
- static void ProfilerSignalHandler(int signal, siginfo_t* info, void* context)
{
- USE(info);
- if (signal != SIGPROF) return;
-- if (active_sampler_ == NULL) return;
-+ if (active_sampler_ == NULL || !active_sampler_->IsActive()) return;
-+ if (vm_tid_ != pthread_self()) return;
-
-- TickSample sample;
-+ TickSample sample_obj;
-+ TickSample* sample = CpuProfiler::TickSampleEvent();
-+ if (sample == NULL) sample = &sample_obj;
-
-- // We always sample the VM state.
-- sample.state = VMState::current_state();
-+ // Extracting the sample from the context is extremely machine dependent.
-+ ucontext_t* ucontext = reinterpret_cast<ucontext_t*>(context);
-+ sample->state = Top::current_vm_state();
-
-- active_sampler_->Tick(&sample);
-+#if V8_HOST_ARCH_IA32
-+ sample->pc = reinterpret_cast<Address>(ucontext->sc_eip);
-+ sample->sp = reinterpret_cast<Address>(ucontext->sc_esp);
-+ sample->fp = reinterpret_cast<Address>(ucontext->sc_ebp);
-+#elif V8_HOST_ARCH_X64
-+ sample->pc = reinterpret_cast<Address>(ucontext->sc_rip);
-+ sample->sp = reinterpret_cast<Address>(ucontext->sc_rsp);
-+ sample->fp = reinterpret_cast<Address>(ucontext->sc_rbp);
-+#else
-+ UNIMPLEMENTED();
-+#endif
-+ active_sampler_->SampleStack(sample);
-+ active_sampler_->Tick(sample);
- }
-
-
-@@ -616,6 +662,7 @@ void Sampler::Start() {
- // There can only be one active sampler at the time on POSIX
- // platforms.
- if (active_sampler_ != NULL) return;
-+ vm_tid_ = pthread_self();
-
- // Request profiling signals.
- struct sigaction sa;
Index: patches/patch-deps_v8_src_platform-posix_cc
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-deps_v8_src_platform-posix_cc,v
retrieving revision 1.1
diff -N -u -p patches/patch-deps_v8_src_platform-posix_cc
--- patches/patch-deps_v8_src_platform-posix_cc 2 Jun 2011 07:21:14 -0000
1.1
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,22 +0,0 @@
-$OpenBSD: patch-deps_v8_src_platform-posix_cc,v 1.1 2011/06/02 07:21:14 robert
Exp $
---- deps/v8/src/platform-posix.cc.orig Sat May 21 04:40:06 2011
-+++ deps/v8/src/platform-posix.cc Wed Jun 1 14:26:51 2011
-@@ -54,6 +54,18 @@
- namespace v8 {
- namespace internal {
-
-+
-+// Maximum size of the virtual memory. 0 means there is no artificial
-+// limit.
-+
-+intptr_t OS::MaxVirtualMemory() {
-+ struct rlimit limit;
-+ int result = getrlimit(RLIMIT_DATA, &limit);
-+ if (result != 0) return 0;
-+ return limit.rlim_cur;
-+}
-+
-+
- //
----------------------------------------------------------------------------
- // Math functions
-
Index: patches/patch-deps_v8_src_platform_h
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-deps_v8_src_platform_h,v
retrieving revision 1.1
diff -N -u -p patches/patch-deps_v8_src_platform_h
--- patches/patch-deps_v8_src_platform_h 2 Jun 2011 07:21:14 -0000
1.1
+++ patches/patch-deps_v8_src_platform_h 16 Nov 2011 03:47:31 -0000
@@ -1,14 +1,15 @@
-$OpenBSD: patch-deps_v8_src_platform_h,v 1.1 2011/06/02 07:21:14 robert Exp $
---- deps/v8/src/platform.h.orig Sat May 21 04:40:06 2011
-+++ deps/v8/src/platform.h Wed Jun 1 14:26:51 2011
-@@ -287,6 +287,10 @@ class OS {
- // positions indicated by the members of the CpuFeature enum from globals.h
- static uint64_t CpuFeaturesImpliedByPlatform();
+$OpenBSD$
+--- deps/v8/src/platform.h.orig Tue Nov 8 18:35:23 2011
++++ deps/v8/src/platform.h Tue Nov 8 18:39:05 2011
+@@ -88,7 +88,11 @@ namespace internal {
-+ // Maximum size of the virtual memory. 0 means there is no artificial
-+ // limit.
-+ static intptr_t MaxVirtualMemory();
-+
- // Returns the double constant NAN
- static double nan_value();
+ // Use AtomicWord for a machine-sized pointer. It is assumed that
+ // reads and writes of naturally aligned values of this type are atomic.
++#if defined(__OpenBSD__) && defined(__i386__)
++typedef Atomic32 AtomicWord;
++#else
+ typedef intptr_t AtomicWord;
++#endif
+ class Semaphore;
+ class Mutex;
Index: patches/patch-deps_v8_src_x64_code-stubs-x64_cc
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-deps_v8_src_x64_code-stubs-x64_cc,v
retrieving revision 1.2
diff -N -u -p patches/patch-deps_v8_src_x64_code-stubs-x64_cc
--- patches/patch-deps_v8_src_x64_code-stubs-x64_cc 12 Apr 2011 10:32:49
-0000 1.2
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,99 +0,0 @@
-$OpenBSD: patch-deps_v8_src_x64_code-stubs-x64_cc,v 1.2 2011/04/12 10:32:49
jasper Exp $
---- deps/v8/src/x64/code-stubs-x64.cc.orig Sat Apr 2 03:00:43 2011
-+++ deps/v8/src/x64/code-stubs-x64.cc Tue Apr 12 10:07:08 2011
-@@ -2280,11 +2280,14 @@ void ArgumentsAccessStub::GenerateReadElement(MacroAss
- Label slow;
- __ JumpIfNotSmi(rdx, &slow);
-
-- // Check if the calling frame is an arguments adaptor frame.
-+ // Check if the calling frame is an arguments adaptor frame. We look at the
-+ // context offset, and if the frame is not a regular one, then we find a
-+ // Smi instead of the context. We can't use SmiCompare here, because that
-+ // only works for comparing two smis.
- Label adaptor;
- __ movq(rbx, Operand(rbp, StandardFrameConstants::kCallerFPOffset));
-- __ SmiCompare(Operand(rbx, StandardFrameConstants::kContextOffset),
-- Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
-+ __ Cmp(Operand(rbx, StandardFrameConstants::kContextOffset),
-+ Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
- __ j(equal, &adaptor);
-
- // Check index against formal parameters count limit passed in
-@@ -2339,8 +2342,8 @@ void ArgumentsAccessStub::GenerateNewObject(MacroAssem
- // Check if the calling frame is an arguments adaptor frame.
- Label adaptor_frame, try_allocate, runtime;
- __ movq(rdx, Operand(rbp, StandardFrameConstants::kCallerFPOffset));
-- __ SmiCompare(Operand(rdx, StandardFrameConstants::kContextOffset),
-- Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
-+ __ Cmp(Operand(rdx, StandardFrameConstants::kContextOffset),
-+ Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
- __ j(equal, &adaptor_frame);
-
- // Get the length from the frame.
-@@ -4118,8 +4121,8 @@ void StringAddStub::Generate(MacroAssembler* masm) {
- // Look at the length of the result of adding the two strings.
- STATIC_ASSERT(String::kMaxLength <= Smi::kMaxValue / 2);
- __ SmiAdd(rbx, rbx, rcx);
-- // Use the runtime system when adding two one character strings, as it
-- // contains optimizations for this specific case using the symbol table.
-+ // Use the symbol table when adding two one character strings, as it
-+ // helps later optimizations to return a symbol here.
- __ SmiCompare(rbx, Smi::FromInt(2));
- __ j(not_equal, &longer_than_two);
-
-@@ -4471,15 +4474,14 @@ void StringHelper::GenerateTwoCharacterSymbolTableProb
- FieldOperand(symbol_table, SymbolTable::kCapacityOffset));
- __ decl(mask);
-
-- Register undefined = scratch4;
-- __ LoadRoot(undefined, Heap::kUndefinedValueRootIndex);
-+ Register map = scratch4;
-
- // Registers
- // chars: two character string, char 1 in byte 0 and char 2 in byte
1.
- // hash: hash of two character string (32-bit int)
- // symbol_table: symbol table
- // mask: capacity mask (32-bit int)
-- // undefined: undefined value
-+ // map: -
- // scratch: -
-
- // Perform a number of probes in the symbol table.
-@@ -4494,7 +4496,7 @@ void StringHelper::GenerateTwoCharacterSymbolTableProb
- }
- __ andl(scratch, mask);
-
-- // Load the entry from the symble table.
-+ // Load the entry from the symbol table.
- Register candidate = scratch; // Scratch register contains candidate.
- STATIC_ASSERT(SymbolTable::kEntrySize == 1);
- __ movq(candidate,
-@@ -4504,9 +4506,17 @@ void StringHelper::GenerateTwoCharacterSymbolTableProb
- SymbolTable::kElementsStartOffset));
-
- // If entry is undefined no string with this hash can be found.
-- __ cmpq(candidate, undefined);
-+ NearLabel is_string;
-+ __ CmpObjectType(candidate, ODDBALL_TYPE, map);
-+ __ j(not_equal, &is_string);
-+
-+ __ CompareRoot(candidate, Heap::kUndefinedValueRootIndex);
- __ j(equal, not_found);
-+ // Must be null (deleted entry).
-+ __ jmp(&next_probe[i]);
-
-+ __ bind(&is_string);
-+
- // If length is not 2 the string is not a candidate.
- __ SmiCompare(FieldOperand(candidate, String::kLengthOffset),
- Smi::FromInt(2));
-@@ -4517,8 +4527,7 @@ void StringHelper::GenerateTwoCharacterSymbolTableProb
- Register temp = kScratchRegister;
-
- // Check that the candidate is a non-external ascii string.
-- __ movq(temp, FieldOperand(candidate, HeapObject::kMapOffset));
-- __ movzxbl(temp, FieldOperand(temp, Map::kInstanceTypeOffset));
-+ __ movzxbl(temp, FieldOperand(map, Map::kInstanceTypeOffset));
- __ JumpIfInstanceTypeIsNotSequentialAscii(
- temp, temp, &next_probe[i]);
-
Index: patches/patch-deps_v8_src_x64_codegen-x64_cc
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-deps_v8_src_x64_codegen-x64_cc,v
retrieving revision 1.1
diff -N -u -p patches/patch-deps_v8_src_x64_codegen-x64_cc
--- patches/patch-deps_v8_src_x64_codegen-x64_cc 30 Mar 2011 19:54:29
-0000 1.1
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,164 +0,0 @@
-$OpenBSD: patch-deps_v8_src_x64_codegen-x64_cc,v 1.1 2011/03/30 19:54:29
jasper Exp $
---- deps/v8/src/x64/codegen-x64.cc.orig Sat Mar 26 09:48:02 2011
-+++ deps/v8/src/x64/codegen-x64.cc Wed Mar 30 21:21:29 2011
-@@ -760,7 +760,7 @@ void CodeGenerator::ToBoolean(ControlDestination* dest
- __ AbortIfNotNumber(value.reg());
- }
- // Smi => false iff zero.
-- __ SmiCompare(value.reg(), Smi::FromInt(0));
-+ __ Cmp(value.reg(), Smi::FromInt(0));
- if (value.is_smi()) {
- value.Unuse();
- dest->Split(not_zero);
-@@ -788,7 +788,7 @@ void CodeGenerator::ToBoolean(ControlDestination* dest
- dest->false_target()->Branch(equal);
-
- // Smi => false iff zero.
-- __ SmiCompare(value.reg(), Smi::FromInt(0));
-+ __ Cmp(value.reg(), Smi::FromInt(0));
- dest->false_target()->Branch(equal);
- Condition is_smi = masm_->CheckSmi(value.reg());
- dest->true_target()->Branch(is_smi);
-@@ -1030,7 +1030,7 @@ void CodeGenerator::GenericBinaryOperation(BinaryOpera
- true, overwrite_mode);
- } else {
- // Set the flags based on the operation, type and loop nesting level.
-- // Bit operations always assume they likely operate on Smis. Still only
-+ // Bit operations always assume they likely operate on smis. Still only
- // generate the inline Smi check code if this operation is part of a loop.
- // For all other operations only inline the Smi check code for likely smis
- // if the operation is part of a loop.
-@@ -2102,7 +2102,7 @@ void CodeGenerator::Comparison(AstNode* node,
- if (cc == equal) {
- Label comparison_done;
- __ SmiCompare(FieldOperand(left_side.reg(), String::kLengthOffset),
-- Smi::FromInt(1));
-+ Smi::FromInt(1));
- __ j(not_equal, &comparison_done);
- uint8_t char_value =
- static_cast<uint8_t>(String::cast(*right_val)->Get(0));
-@@ -2288,7 +2288,7 @@ void CodeGenerator::ConstantSmiComparison(Condition cc
- // CompareStub and the inline code both support all values of cc.
- }
- // Implement comparison against a constant Smi, inlining the case
-- // where both sides are Smis.
-+ // where both sides are smis.
- left_side->ToRegister();
- Register left_reg = left_side->reg();
- Smi* constant_smi = Smi::cast(*right_side->handle());
-@@ -2298,7 +2298,6 @@ void CodeGenerator::ConstantSmiComparison(Condition cc
- __ AbortIfNotSmi(left_reg);
- }
- // Test smi equality and comparison by signed int comparison.
-- // Both sides are smis, so we can use an Immediate.
- __ SmiCompare(left_reg, constant_smi);
- left_side->Unuse();
- right_side->Unuse();
-@@ -2308,7 +2307,7 @@ void CodeGenerator::ConstantSmiComparison(Condition cc
- JumpTarget is_smi;
- if (cc == equal) {
- // We can do the equality comparison before the smi check.
-- __ SmiCompare(left_reg, constant_smi);
-+ __ Cmp(left_reg, constant_smi);
- dest->true_target()->Branch(equal);
- Condition left_is_smi = masm_->CheckSmi(left_reg);
- dest->false_target()->Branch(left_is_smi);
-@@ -2569,8 +2568,8 @@ void CodeGenerator::CallApplyLazy(Expression* applican
- // adaptor frame below it.
- Label invoke, adapted;
- __ movq(rdx, Operand(rbp, StandardFrameConstants::kCallerFPOffset));
-- __ SmiCompare(Operand(rdx, StandardFrameConstants::kContextOffset),
-- Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
-+ __ Cmp(Operand(rdx, StandardFrameConstants::kContextOffset),
-+ Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
- __ j(equal, &adapted);
-
- // No arguments adaptor frame. Copy fixed number of arguments.
-@@ -3851,7 +3850,7 @@ void CodeGenerator::VisitForInStatement(ForInStatement
- __ movq(rbx, rax);
-
- // If the property has been removed while iterating, we just skip it.
-- __ SmiCompare(rbx, Smi::FromInt(0));
-+ __ Cmp(rbx, Smi::FromInt(0));
- node->continue_target()->Branch(equal);
-
- end_del_check.Bind();
-@@ -6192,15 +6191,15 @@ void CodeGenerator::GenerateIsConstructCall(ZoneList<E
-
- // Skip the arguments adaptor frame if it exists.
- Label check_frame_marker;
-- __ SmiCompare(Operand(fp.reg(), StandardFrameConstants::kContextOffset),
-- Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
-+ __ Cmp(Operand(fp.reg(), StandardFrameConstants::kContextOffset),
-+ Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
- __ j(not_equal, &check_frame_marker);
- __ movq(fp.reg(), Operand(fp.reg(),
StandardFrameConstants::kCallerFPOffset));
-
- // Check the marker in the calling frame.
- __ bind(&check_frame_marker);
-- __ SmiCompare(Operand(fp.reg(), StandardFrameConstants::kMarkerOffset),
-- Smi::FromInt(StackFrame::CONSTRUCT));
-+ __ Cmp(Operand(fp.reg(), StandardFrameConstants::kMarkerOffset),
-+ Smi::FromInt(StackFrame::CONSTRUCT));
- fp.Unuse();
- destination()->Split(equal);
- }
-@@ -6220,8 +6219,8 @@ void CodeGenerator::GenerateArgumentsLength(ZoneList<E
-
- // Check if the calling frame is an arguments adaptor frame.
- __ movq(fp.reg(), Operand(rbp, StandardFrameConstants::kCallerFPOffset));
-- __ SmiCompare(Operand(fp.reg(), StandardFrameConstants::kContextOffset),
-- Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
-+ __ Cmp(Operand(fp.reg(), StandardFrameConstants::kContextOffset),
-+ Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
- __ j(not_equal, &exit);
-
- // Arguments adaptor case: Read the arguments length from the
-@@ -6777,8 +6776,8 @@ void CodeGenerator::GenerateSwapElements(ZoneList<Expr
- // Fetch the map and check if array is in fast case.
- // Check that object doesn't require security checks and
- // has no indexed interceptor.
-- __ CmpObjectType(object.reg(), FIRST_JS_OBJECT_TYPE, tmp1.reg());
-- deferred->Branch(below);
-+ __ CmpObjectType(object.reg(), JS_ARRAY_TYPE, tmp1.reg());
-+ deferred->Branch(not_equal);
- __ testb(FieldOperand(tmp1.reg(), Map::kBitFieldOffset),
- Immediate(KeyedLoadIC::kSlowCaseBitFieldMask));
- deferred->Branch(not_zero);
-@@ -6820,7 +6819,7 @@ void CodeGenerator::GenerateSwapElements(ZoneList<Expr
-
- Label done;
- __ InNewSpace(tmp1.reg(), tmp2.reg(), equal, &done);
-- // Possible optimization: do a check that both values are Smis
-+ // Possible optimization: do a check that both values are smis
- // (or them and test against Smi mask.)
-
- __ movq(tmp2.reg(), tmp1.reg());
-@@ -8508,12 +8507,6 @@ Result CodeGenerator::EmitKeyedStore(StaticType* key_t
- __ CmpObjectType(receiver.reg(), JS_ARRAY_TYPE, kScratchRegister);
- deferred->Branch(not_equal);
-
-- // Check that the key is within bounds. Both the key and the length of
-- // the JSArray are smis. Use unsigned comparison to handle negative keys.
-- __ SmiCompare(FieldOperand(receiver.reg(), JSArray::kLengthOffset),
-- key.reg());
-- deferred->Branch(below_equal);
--
- // Get the elements array from the receiver and check that it is not a
- // dictionary.
- __ movq(tmp.reg(),
-@@ -8541,6 +8534,14 @@ Result CodeGenerator::EmitKeyedStore(StaticType* key_t
- __ cmpq(FieldOperand(tmp.reg(), HeapObject::kMapOffset),
- kScratchRegister);
- deferred->Branch(not_equal);
-+
-+ // Check that the key is within bounds. Both the key and the length of
-+ // the JSArray are smis (because the fixed array check above ensures the
-+ // elements are in fast case). Use unsigned comparison to handle negative
-+ // keys.
-+ __ SmiCompare(FieldOperand(receiver.reg(), JSArray::kLengthOffset),
-+ key.reg());
-+ deferred->Branch(below_equal);
-
- // Store the value.
- SmiIndex index =
Index: patches/patch-deps_v8_src_x64_full-codegen-x64_cc
===================================================================
RCS file:
/cvs/ports/www/node/patches/patch-deps_v8_src_x64_full-codegen-x64_cc,v
retrieving revision 1.2
diff -N -u -p patches/patch-deps_v8_src_x64_full-codegen-x64_cc
--- patches/patch-deps_v8_src_x64_full-codegen-x64_cc 29 Jun 2011 18:44:07
-0000 1.2
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,43 +0,0 @@
-$OpenBSD: patch-deps_v8_src_x64_full-codegen-x64_cc,v 1.2 2011/06/29 18:44:07
jasper Exp $
---- deps/v8/src/x64/full-codegen-x64.cc.orig Wed Jun 29 13:24:02 2011
-+++ deps/v8/src/x64/full-codegen-x64.cc Wed Jun 29 20:25:09 2011
-@@ -991,7 +991,7 @@ void FullCodeGenerator::VisitForInStatement(ForInState
- __ push(rcx); // Enumerable.
- __ push(rbx); // Current entry.
- __ InvokeBuiltin(Builtins::FILTER_KEY, CALL_FUNCTION);
-- __ SmiCompare(rax, Smi::FromInt(0));
-+ __ Cmp(rax, Smi::FromInt(0));
- __ j(equal, loop_statement.continue_target());
- __ movq(rbx, rax);
-
-@@ -2502,15 +2502,15 @@ void FullCodeGenerator::EmitIsConstructCall(ZoneList<E
-
- // Skip the arguments adaptor frame if it exists.
- Label check_frame_marker;
-- __ SmiCompare(Operand(rax, StandardFrameConstants::kContextOffset),
-- Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
-+ __ Cmp(Operand(rax, StandardFrameConstants::kContextOffset),
-+ Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
- __ j(not_equal, &check_frame_marker);
- __ movq(rax, Operand(rax, StandardFrameConstants::kCallerFPOffset));
-
- // Check the marker in the calling frame.
- __ bind(&check_frame_marker);
-- __ SmiCompare(Operand(rax, StandardFrameConstants::kMarkerOffset),
-- Smi::FromInt(StackFrame::CONSTRUCT));
-+ __ Cmp(Operand(rax, StandardFrameConstants::kMarkerOffset),
-+ Smi::FromInt(StackFrame::CONSTRUCT));
- PrepareForBailoutBeforeSplit(TOS_REG, true, if_true, if_false);
- Split(equal, if_true, if_false, fall_through);
-
-@@ -2564,8 +2564,8 @@ void FullCodeGenerator::EmitArgumentsLength(ZoneList<E
-
- // Check if the calling frame is an arguments adaptor frame.
- __ movq(rbx, Operand(rbp, StandardFrameConstants::kCallerFPOffset));
-- __ SmiCompare(Operand(rbx, StandardFrameConstants::kContextOffset),
-- Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
-+ __ Cmp(Operand(rbx, StandardFrameConstants::kContextOffset),
-+ Smi::FromInt(StackFrame::ARGUMENTS_ADAPTOR));
- __ j(not_equal, &exit);
-
- // Arguments adaptor case: Read the arguments length from the
Index: patches/patch-deps_v8_src_x64_lithium-codegen-x64_cc
===================================================================
RCS file:
/cvs/ports/www/node/patches/patch-deps_v8_src_x64_lithium-codegen-x64_cc,v
retrieving revision 1.2
diff -N -u -p patches/patch-deps_v8_src_x64_lithium-codegen-x64_cc
--- patches/patch-deps_v8_src_x64_lithium-codegen-x64_cc 28 Apr 2011
22:02:44 -0000 1.2
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-deps_v8_src_x64_lithium-codegen-x64_cc,v 1.2 2011/04/28
22:02:44 jasper Exp $
---- deps/v8/src/x64/lithium-codegen-x64.cc.orig Sat Apr 23 02:06:25 2011
-+++ deps/v8/src/x64/lithium-codegen-x64.cc Thu Apr 28 23:02:42 2011
-@@ -1242,7 +1242,7 @@ void LCodeGen::DoBranch(LBranch* instr) {
- __ j(equal, true_label);
- __ CompareRoot(reg, Heap::kFalseValueRootIndex);
- __ j(equal, false_label);
-- __ SmiCompare(reg, Smi::FromInt(0));
-+ __ Cmp(reg, Smi::FromInt(0));
- __ j(equal, false_label);
- __ JumpIfSmi(reg, true_label);
-
Index: patches/patch-deps_v8_src_x64_macro-assembler-x64_cc
===================================================================
RCS file:
/cvs/ports/www/node/patches/patch-deps_v8_src_x64_macro-assembler-x64_cc,v
retrieving revision 1.1
diff -N -u -p patches/patch-deps_v8_src_x64_macro-assembler-x64_cc
--- patches/patch-deps_v8_src_x64_macro-assembler-x64_cc 30 Mar 2011
19:54:29 -0000 1.1
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,124 +0,0 @@
-$OpenBSD: patch-deps_v8_src_x64_macro-assembler-x64_cc,v 1.1 2011/03/30
19:54:29 jasper Exp $
---- deps/v8/src/x64/macro-assembler-x64.cc.orig Sat Mar 26 09:48:02 2011
-+++ deps/v8/src/x64/macro-assembler-x64.cc Wed Mar 30 21:22:01 2011
-@@ -111,7 +111,7 @@ void MacroAssembler::RecordWrite(Register object,
- ASSERT(!object.is(rsi) && !value.is(rsi) && !index.is(rsi));
-
- // First, check if a write barrier is even needed. The tests below
-- // catch stores of Smis and stores into young gen.
-+ // catch stores of smis and stores into young gen.
- Label done;
- JumpIfSmi(value, &done);
-
-@@ -140,7 +140,7 @@ void MacroAssembler::RecordWrite(Register object,
- ASSERT(!object.is(rsi) && !value.is(rsi) && !address.is(rsi));
-
- // First, check if a write barrier is even needed. The tests below
-- // catch stores of Smis and stores into young gen.
-+ // catch stores of smis and stores into young gen.
- Label done;
- JumpIfSmi(value, &done);
-
-@@ -824,12 +824,26 @@ void MacroAssembler::SmiTest(Register src) {
- }
-
-
--void MacroAssembler::SmiCompare(Register dst, Register src) {
-- cmpq(dst, src);
-+void MacroAssembler::SmiCompare(Register smi1, Register smi2) {
-+ if (FLAG_debug_code) {
-+ AbortIfNotSmi(smi1);
-+ AbortIfNotSmi(smi2);
-+ }
-+ cmpq(smi1, smi2);
- }
-
-
- void MacroAssembler::SmiCompare(Register dst, Smi* src) {
-+ if (FLAG_debug_code) {
-+ AbortIfNotSmi(dst);
-+ }
-+ // Actually, knowing the register is a smi doesn't enable any optimizations
-+ // with the current tagging scheme.
-+ Cmp(dst, src);
-+}
-+
-+
-+void MacroAssembler::Cmp(Register dst, Smi* src) {
- ASSERT(!dst.is(kScratchRegister));
- if (src->value() == 0) {
- testq(dst, dst);
-@@ -841,20 +855,41 @@ void MacroAssembler::SmiCompare(Register dst, Smi* src
-
-
- void MacroAssembler::SmiCompare(Register dst, const Operand& src) {
-+ if (FLAG_debug_code) {
-+ AbortIfNotSmi(dst);
-+ AbortIfNotSmi(src);
-+ }
- cmpq(dst, src);
- }
-
-
- void MacroAssembler::SmiCompare(const Operand& dst, Register src) {
-+ if (FLAG_debug_code) {
-+ AbortIfNotSmi(dst);
-+ AbortIfNotSmi(src);
-+ }
- cmpq(dst, src);
- }
-
-
- void MacroAssembler::SmiCompare(const Operand& dst, Smi* src) {
-+ if (FLAG_debug_code) {
-+ AbortIfNotSmi(dst);
-+ }
- cmpl(Operand(dst, kSmiShift / kBitsPerByte), Immediate(src->value()));
- }
-
-
-+void MacroAssembler::Cmp(const Operand& dst, Smi* src) {
-+ // The Operand cannot use the smi register, since we may use the scratch
-+ // register to get around the lack of 64 bit immediates in the instruction
-+ // set.
-+ Register smi_reg = GetSmiConstant(src);
-+ ASSERT(!dst.AddressUsesRegister(smi_reg));
-+ cmpq(dst, smi_reg);
-+}
-+
-+
- void MacroAssembler::SmiCompareInteger32(const Operand& dst, Register src) {
- cmpl(Operand(dst, kSmiShift / kBitsPerByte), src);
- }
-@@ -1339,7 +1374,7 @@ void MacroAssembler::Move(const Operand& dst, Handle<O
-
- void MacroAssembler::Cmp(Register dst, Handle<Object> source) {
- if (source->IsSmi()) {
-- SmiCompare(dst, Smi::cast(*source));
-+ Cmp(dst, Smi::cast(*source));
- } else {
- Move(kScratchRegister, source);
- cmpq(dst, kScratchRegister);
-@@ -1349,7 +1384,7 @@ void MacroAssembler::Cmp(Register dst, Handle<Object>
-
- void MacroAssembler::Cmp(const Operand& dst, Handle<Object> source) {
- if (source->IsSmi()) {
-- SmiCompare(dst, Smi::cast(*source));
-+ Cmp(dst, Smi::cast(*source));
- } else {
- ASSERT(source->IsHeapObject());
- movq(kScratchRegister, source, RelocInfo::EMBEDDED_OBJECT);
-@@ -1719,7 +1754,12 @@ void MacroAssembler::AbortIfSmi(Register object) {
-
-
- void MacroAssembler::AbortIfNotSmi(Register object) {
-- NearLabel ok;
-+ Condition is_smi = CheckSmi(object);
-+ Assert(is_smi, "Operand is not a smi");
-+}
-+
-+
-+void MacroAssembler::AbortIfNotSmi(const Operand& object) {
- Condition is_smi = CheckSmi(object);
- Assert(is_smi, "Operand is not a smi");
- }
Index: patches/patch-deps_v8_src_x64_macro-assembler-x64_h
===================================================================
RCS file:
/cvs/ports/www/node/patches/patch-deps_v8_src_x64_macro-assembler-x64_h,v
retrieving revision 1.1
diff -N -u -p patches/patch-deps_v8_src_x64_macro-assembler-x64_h
--- patches/patch-deps_v8_src_x64_macro-assembler-x64_h 30 Mar 2011 19:54:29
-0000 1.1
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,32 +0,0 @@
-$OpenBSD: patch-deps_v8_src_x64_macro-assembler-x64_h,v 1.1 2011/03/30
19:54:29 jasper Exp $
---- deps/v8/src/x64/macro-assembler-x64.h.orig Sat Mar 26 09:48:02 2011
-+++ deps/v8/src/x64/macro-assembler-x64.h Wed Mar 30 21:22:09 2011
-@@ -263,8 +263,9 @@ class MacroAssembler: public Assembler {
- int power);
-
-
-- // Simple comparison of smis.
-- void SmiCompare(Register dst, Register src);
-+ // Simple comparison of smis. Both sides must be known smis to use these,
-+ // otherwise use Cmp.
-+ void SmiCompare(Register smi1, Register smi2);
- void SmiCompare(Register dst, Smi* src);
- void SmiCompare(Register dst, const Operand& src);
- void SmiCompare(const Operand& dst, Register src);
-@@ -594,6 +595,8 @@ class MacroAssembler: public Assembler {
- void Move(const Operand& dst, Handle<Object> source);
- void Cmp(Register dst, Handle<Object> source);
- void Cmp(const Operand& dst, Handle<Object> source);
-+ void Cmp(Register dst, Smi* src);
-+ void Cmp(const Operand& dst, Smi* src);
- void Push(Handle<Object> source);
-
- // Emit code to discard a non-negative number of pointer-sized elements
-@@ -667,6 +670,7 @@ class MacroAssembler: public Assembler {
-
- // Abort execution if argument is not a smi. Used in debug code.
- void AbortIfNotSmi(Register object);
-+ void AbortIfNotSmi(const Operand& object);
-
- // Abort execution if argument is a string. Used in debug code.
- void AbortIfNotString(Register object);
Index: patches/patch-tools_wafadmin_Tools_python_py
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-tools_wafadmin_Tools_python_py,v
retrieving revision 1.1.1.1
diff -N -u -p patches/patch-tools_wafadmin_Tools_python_py
--- patches/patch-tools_wafadmin_Tools_python_py 28 Dec 2010 18:19:28
-0000 1.1.1.1
+++ /dev/null 16 Nov 2011 03:31:02 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-tools_wafadmin_Tools_python_py,v 1.1.1.1 2010/12/28 18:19:28
jasper Exp $
---- tools/wafadmin/Tools/python.py.orig Sun Oct 24 23:45:39 2010
-+++ tools/wafadmin/Tools/python.py Fri Oct 29 12:05:02 2010
-@@ -374,7 +374,7 @@ def detect(conf):
- if not conf.env.PYTHON:
- conf.env.PYTHON = sys.executable
-
-- python = conf.find_program('python', var='PYTHON')
-+ python = conf.find_program('${MODPY_BIN}', var='PYTHON')
- if not python:
- conf.fatal('Could not find the path of the python executable')
-
Index: patches/patch-wscript
===================================================================
RCS file: /cvs/ports/www/node/patches/patch-wscript,v
retrieving revision 1.8
diff -N -u -p patches/patch-wscript
--- patches/patch-wscript 29 Jun 2011 18:44:07 -0000 1.8
+++ patches/patch-wscript 16 Nov 2011 03:47:31 -0000
@@ -1,14 +1,7 @@
-$OpenBSD: patch-wscript,v 1.8 2011/06/29 18:44:07 jasper Exp $
-
-- OpenBSD can also use libexecinfo.
-- Don't append EV_MULTIPLICITY_EV was it breaks the build with using the
- shared libev with an undefined reference to ev_rt_now.
-- Don't build with -O3.
-- Adjust some paths.
-
---- wscript.orig Wed Jun 29 13:24:02 2011
-+++ wscript Wed Jun 29 20:25:09 2011
-@@ -276,7 +276,7 @@ def configure(conf):
+$OpenBSD$
+--- wscript.orig Tue Nov 15 09:23:31 2011
++++ wscript Tue Nov 15 09:26:12 2011
+@@ -301,7 +301,7 @@ def configure(conf):
if Options.options.efence:
conf.check(lib='efence', libpath=['/usr/lib', '/usr/local/lib'],
uselib_store='EFENCE')
@@ -17,38 +10,12 @@ $OpenBSD: patch-wscript,v 1.8 2011/06/29 18:44:07 jasp
if not conf.check(lib="execinfo",
includes=['/usr/include', '/usr/local/include'],
libpath=['/usr/lib', '/usr/local/lib'],
-@@ -463,8 +463,10 @@ def configure(conf):
- # LFS
- conf.env.append_value('CPPFLAGS', '-D_LARGEFILE_SOURCE')
- conf.env.append_value('CPPFLAGS', '-D_FILE_OFFSET_BITS=64')
-- conf.env.append_value('CPPFLAGS', '-DEV_MULTIPLICITY=0')
+@@ -529,7 +529,7 @@ def configure(conf):
-+# Disabled, see
http://comments.gmane.org/gmane.comp.lang.javascript.nodejs/18924
-+# conf.env.append_value('CPPFLAGS', '-DEV_MULTIPLICITY=0')
-+
- # Makes select on windows support more than 64 FDs
- if sys.platform.startswith("win32"):
- conf.env.append_value('CPPFLAGS', '-DFD_SETSIZE=1024');
-@@ -533,7 +535,7 @@ def configure(conf):
-
# Configure default variant
- conf.setenv('default')
+ conf.setenv('Release')
- default_compile_flags = ['-g', '-O3']
+ default_compile_flags = ['-g']
conf.env.append_value('CCFLAGS', default_compile_flags)
conf.env.append_value('CXXFLAGS', default_compile_flags)
conf.write_config_header("config.h")
-@@ -902,11 +904,10 @@ def build(bld):
- # Only install the man page if it exists.
- # Do 'make doc install' to build and install it.
- if os.path.exists('doc/node.1'):
-- bld.install_files('${PREFIX}/share/man/man1/', 'doc/node.1')
-+ bld.install_files('${PREFIX}/man/man1/', 'doc/node.1')
-
- bld.install_files('${PREFIX}/bin/', 'tools/node-waf', chmod=0755)
-- bld.install_files('${LIBDIR}/node/wafadmin', 'tools/wafadmin/*.py')
-- bld.install_files('${LIBDIR}/node/wafadmin/Tools',
'tools/wafadmin/Tools/*.py')
-+ bld.install_files('${LIBDIR}/node/wafadmin', 'tools/wafadmin/Node.py')
-
- # create a pkg-config(1) file
- node_conf = bld.new_task_gen('subst', before="cxx")
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/www/node/pkg/PLIST,v
retrieving revision 1.2
diff -N -u -p pkg/PLIST
--- pkg/PLIST 30 Mar 2011 19:54:29 -0000 1.2
+++ pkg/PLIST 16 Nov 2011 03:47:31 -0000
@@ -1,15 +1,27 @@
-@comment $OpenBSD: PLIST,v 1.2 2011/03/30 19:54:29 jasper Exp $
+@comment $OpenBSD$
@bin bin/node
bin/node-waf
include/node/
+include/node/ares.h
+include/node/ares_version.h
+include/node/c-ares/
+include/node/c-ares/ares.h
+include/node/c-ares/ares_version.h
include/node/config.h
-include/node/eio.h
+include/node/ev/
include/node/node.h
include/node/node_buffer.h
include/node/node_config.h
-include/node/node_events.h
include/node/node_object_wrap.h
include/node/node_version.h
+include/node/uv-private/
+include/node/uv-private/eio.h
+include/node/uv-private/ev.h
+include/node/uv-private/ngx-queue.h
+include/node/uv-private/tree.h
+include/node/uv-private/uv-unix.h
+include/node/uv-private/uv-win.h
+include/node/uv.h
include/node/v8-debug.h
include/node/v8-preparser.h
include/node/v8-profiler.h
@@ -18,6 +30,54 @@ include/node/v8.h
include/node/v8stdint.h
lib/node/
lib/node/wafadmin/
+lib/node/wafadmin/Build.py
+lib/node/wafadmin/Configure.py
+lib/node/wafadmin/Constants.py
+lib/node/wafadmin/Environment.py
+lib/node/wafadmin/Logs.py
lib/node/wafadmin/Node.py
-lib/pkgconfig/nodejs.pc
+lib/node/wafadmin/Options.py
+lib/node/wafadmin/Runner.py
+lib/node/wafadmin/Scripting.py
+lib/node/wafadmin/Task.py
+lib/node/wafadmin/TaskGen.py
+lib/node/wafadmin/Tools/
+lib/node/wafadmin/Tools/__init__.py
+lib/node/wafadmin/Tools/ar.py
+lib/node/wafadmin/Tools/cc.py
+lib/node/wafadmin/Tools/ccroot.py
+lib/node/wafadmin/Tools/compiler_cc.py
+lib/node/wafadmin/Tools/compiler_cxx.py
+lib/node/wafadmin/Tools/compiler_d.py
+lib/node/wafadmin/Tools/config_c.py
+lib/node/wafadmin/Tools/cxx.py
+lib/node/wafadmin/Tools/d.py
+lib/node/wafadmin/Tools/dmd.py
+lib/node/wafadmin/Tools/gas.py
+lib/node/wafadmin/Tools/gcc.py
+lib/node/wafadmin/Tools/gdc.py
+lib/node/wafadmin/Tools/gnu_dirs.py
+lib/node/wafadmin/Tools/gob2.py
+lib/node/wafadmin/Tools/gxx.py
+lib/node/wafadmin/Tools/icc.py
+lib/node/wafadmin/Tools/icpc.py
+lib/node/wafadmin/Tools/intltool.py
+lib/node/wafadmin/Tools/libtool.py
+lib/node/wafadmin/Tools/misc.py
+lib/node/wafadmin/Tools/nasm.py
+lib/node/wafadmin/Tools/node_addon.py
+lib/node/wafadmin/Tools/osx.py
+lib/node/wafadmin/Tools/preproc.py
+lib/node/wafadmin/Tools/python.py
+lib/node/wafadmin/Tools/suncc.py
+lib/node/wafadmin/Tools/suncxx.py
+lib/node/wafadmin/Tools/unittestw.py
+lib/node/wafadmin/Tools/winres.py
+lib/node/wafadmin/Tools/xlc.py
+lib/node/wafadmin/Tools/xlcxx.py
+lib/node/wafadmin/Utils.py
+lib/node/wafadmin/__init__.py
+lib/node/wafadmin/ansiterm.py
+lib/node/wafadmin/pproc.py
+lib/node/wafadmin/py3kfixes.py
@man man/man1/node.1