Thanks, your patch works good.
I use jdk 1.6 bootstrap, spent 120 min. The use native bootstrap, spend 126 min.
---
Dongsheng
[EMAIL PROTECTED] www]$ /usr/local/jdk-1.7.0/bin/java -version
openjdk version "1.7.0-internal"
OpenJDK Runtime Environment (build
1.7.0-internal-dongsheng_20_mar_2008_23_55-b00)
OpenJDK Client VM (build 12.0-b01, mixed mode)
[EMAIL PROTECTED] www]$ /usr/local/jdk-1.7.0/bin/java -server -version
openjdk version "1.7.0-internal"
OpenJDK Runtime Environment (build
1.7.0-internal-dongsheng_20_mar_2008_23_55-b00)
OpenJDK Server VM (build 12.0-b01, mixed mode)
2008/3/20, Kurt Miller <[EMAIL PROTECTED]>:
> Dongsheng Song wrote:
> > It's a memory compute bug for small memory computers, e.g. 256MB.
>
>
> Thanks for the report. Please try the attached diff which should address
> the negative mem problem. However, I'm skeptical that 256M will be
> enough real mem to build it. Make sure you have a lot of swap and expect
> plenty of thrashing (i.e. excessive build times).
>
> Also please don't use misc@ for ports and package questions. misc@ has
> enough 'noise' on it. :-)
>
>
> -Kurt
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/jdk/1.7/Makefile,v
> retrieving revision 1.13
> diff -u -p -r1.13 Makefile
> --- Makefile 19 Mar 2008 20:44:18 -0000 1.13
> +++ Makefile 20 Mar 2008 13:27:26 -0000
> @@ -43,6 +43,7 @@ BUILD_DEPENDS+= :jdk-1.6.0.*:devel/jdk/1
> ALT_BOOTDIR= ${LOCALBASE}/jdk-1.6.0
> .endif
>
> +VMEM_WARNING= Yes
> BUILD_DEPENDS+= ::devel/apache-ant \
> ::archivers/zip \
> ::archivers/unzip \
> Index: patches/patch-corba_make_common_shared_Platform_gmk
> ===================================================================
> RCS file:
> /cvs/ports/devel/jdk/1.7/patches/patch-corba_make_common_shared_Platform_gmk,v
> retrieving revision 1.1
> diff -u -p -r1.1 patch-corba_make_common_shared_Platform_gmk
> --- patches/patch-corba_make_common_shared_Platform_gmk 19 Mar 2008 18:05:43
> -0000 1.1
> +++ patches/patch-corba_make_common_shared_Platform_gmk 20 Mar 2008 13:27:26
> -0000
> @@ -1,6 +1,6 @@
> $OpenBSD: patch-corba_make_common_shared_Platform_gmk,v 1.1 2008/03/19
> 18:05:43 kurt Exp $
> ---- corba/make/common/shared/Platform.gmk.orig Thu Nov 8 12:00:14 2007
> -+++ corba/make/common/shared/Platform.gmk Thu Nov 8 12:04:28 2007
> +--- corba/make/common/shared/Platform.gmk.orig Sat Dec 1 00:00:00 2007
> ++++ corba/make/common/shared/Platform.gmk Thu Mar 20 09:05:23 2008
> @@ -262,6 +262,73 @@ ifeq ($(SYSTEM_UNAME), Linux)
> MB_OF_MEMORY := $(shell free -m | fgrep Mem: | sed -e '[EMAIL PROTECTED]
> \ *@ @g' | cut -d' ' -f2)
> endif
> @@ -75,23 +75,22 @@ $OpenBSD: patch-corba_make_common_shared
> # Windows with and without CYGWIN will be slightly different
> ifeq ($(SYSTEM_UNAME), Windows_NT)
> PLATFORM = windows
> -@@ -372,8 +439,8 @@ endif
> - # Machines with 512Mb or less of real memory are considered low memory
> +@@ -373,7 +440,7 @@ endif
> # build machines and adjustments will be made to prevent excessing
> # system swapping during the build.
> --# If we don't know, assume 512. Subtract 128 from MB for VM MAX.
> + # If we don't know, assume 512. Subtract 128 from MB for VM MAX.
> -# Don't set VM max over 1024-128=896.
> -+# If we don't know, assume 512. Subtract 736 from MB for VM MAX.
> -+# Don't set VM max over 1024-288=736.
> ++# Don't set VM max over 864-128=736.
> ifneq ($(MB_OF_MEMORY),)
> LOW_MEMORY_MACHINE := $(shell \
> if [ $(MB_OF_MEMORY) -le 512 ] ; then \
> -@@ -383,9 +450,9 @@ ifneq ($(MB_OF_MEMORY),)
> +@@ -382,10 +449,10 @@ ifneq ($(MB_OF_MEMORY),)
> + echo "false"; \
> fi)
> MAX_VM_MEMORY := $(shell \
> - if [ $(MB_OF_MEMORY) -le 1024 ] ; then \
> -- expr $(MB_OF_MEMORY) '-' 128 ; \
> -+ expr $(MB_OF_MEMORY) '-' 288 ; \
> +- if [ $(MB_OF_MEMORY) -le 1024 ] ; then \
> ++ if [ $(MB_OF_MEMORY) -le 864 ] ; then \
> + expr $(MB_OF_MEMORY) '-' 128 ; \
> else \
> - echo "896"; \
> + echo "736"; \
> Index: patches/patch-jdk_make_common_shared_Platform_gmk
> ===================================================================
> RCS file:
> /cvs/ports/devel/jdk/1.7/patches/patch-jdk_make_common_shared_Platform_gmk,v
> retrieving revision 1.1
> diff -u -p -r1.1 patch-jdk_make_common_shared_Platform_gmk
> --- patches/patch-jdk_make_common_shared_Platform_gmk 19 Mar 2008 18:05:45
> -0000 1.1
> +++ patches/patch-jdk_make_common_shared_Platform_gmk 20 Mar 2008 13:27:26
> -0000
> @@ -1,6 +1,6 @@
> $OpenBSD: patch-jdk_make_common_shared_Platform_gmk,v 1.1 2008/03/19
> 18:05:45 kurt Exp $
> ---- jdk/make/common/shared/Platform.gmk.orig Tue Oct 30 05:04:22 2007
> -+++ jdk/make/common/shared/Platform.gmk Wed Nov 7 14:51:12 2007
> +--- jdk/make/common/shared/Platform.gmk.orig Sat Dec 1 00:00:00 2007
> ++++ jdk/make/common/shared/Platform.gmk Thu Mar 20 09:06:34 2008
> @@ -275,6 +275,73 @@ ifeq ($(SYSTEM_UNAME), Linux)
> MB_OF_MEMORY := $(shell free -m | fgrep Mem: | sed -e '[EMAIL PROTECTED]
> \ *@ @g' | cut -d' ' -f2)
> endif
> @@ -75,23 +75,22 @@ $OpenBSD: patch-jdk_make_common_shared_P
> # Windows with and without CYGWIN will be slightly different
> ifeq ($(SYSTEM_UNAME), Windows_NT)
> PLATFORM = windows
> -@@ -389,8 +456,8 @@ endif
> - # Machines with 512Mb or less of real memory are considered low memory
> +@@ -390,7 +457,7 @@ endif
> # build machines and adjustments will be made to prevent excessing
> # system swapping during the build.
> --# If we don't know, assume 512. Subtract 128 from MB for VM MAX.
> + # If we don't know, assume 512. Subtract 128 from MB for VM MAX.
> -# Don't set VM max over 1024-128=896.
> -+# If we don't know, assume 512. Subtract 288 from MB for VM MAX.
> -+# Don't set VM max over 1024-288=736.
> ++# Don't set VM max over 864-128=736.
> ifneq ($(MB_OF_MEMORY),)
> LOW_MEMORY_MACHINE := $(shell \
> if [ $(MB_OF_MEMORY) -le 512 ] ; then \
> -@@ -400,9 +467,9 @@ ifneq ($(MB_OF_MEMORY),)
> +@@ -399,10 +466,10 @@ ifneq ($(MB_OF_MEMORY),)
> + echo "false"; \
> fi)
> MAX_VM_MEMORY := $(shell \
> - if [ $(MB_OF_MEMORY) -le 1024 ] ; then \
> -- expr $(MB_OF_MEMORY) '-' 128 ; \
> -+ expr $(MB_OF_MEMORY) '-' 288 ; \
> +- if [ $(MB_OF_MEMORY) -le 1024 ] ; then \
> ++ if [ $(MB_OF_MEMORY) -le 864 ] ; then \
> + expr $(MB_OF_MEMORY) '-' 128 ; \
> else \
> - echo "896"; \
> + echo "736"; \
>
>