Hi Jochen, If you were able to build the openjdk and only have issues with applying mlvm patches to bsd-port sources then I will try to help.
Assuming that you are in "~/Projects/davinci" directory please use the following commands (after rm -rf sources && rm -rf patches): # hg fclone http://hg.openjdk.java.net/bsd-port/bsd-port sources \ && hg fclone http://hg.openjdk.java.net/mlvm/mlvm patches \ && bash patches/make/link-patch-dirs.sh sources patches \ && ls -il patches/hotspot/series sources/hotspot/.hg/patches/series \ && export davinci=$(pwd) guards="buildable testable" \ && bash patches/make/each-patch-repo.sh "hg qselect --pop $guards" '$(bash $davinci/patches/make/current-release.sh)' \ && bash patches/make/each-patch-repo.sh "hg qselect; hg qunapplied" \ && bash patches/make/each-patch-repo.sh "hg update -r" '$(bash $davinci/patches/make/current-release.sh)' \ && bash patches/make/each-patch-repo.sh hg qpush -a ; cd sources/jdk/ ; hg import ~/patch.txt ; cd - The content of "~/patch.txt" file is as follows: --- patch.txt --- diff --git a/make/common/internal/BinaryPlugs.gmk b/make/common/internal/BinaryPlugs.gmk --- a/make/common/internal/BinaryPlugs.gmk +++ b/make/common/internal/BinaryPlugs.gmk @@ -58,6 +58,12 @@ com/sun/jmx/snmp/SnmpTimeticks.class \ com/sun/jmx/snmp/SnmpVarBind.class \ com/sun/jmx/snmp/SnmpVarBindList.class \ +com/sun/jmx/snmp/Timestamp.class \ +com/sun/jmx/snmp/daemon/SnmpRequestCounter.class \ +com/sun/jmx/snmp/daemon/SnmpSocket.class \ +com/sun/jmx/snmp/daemon/SnmpQManager.class \ +com/sun/jmx/snmp/daemon/WaitQ.class \ +com/sun/jmx/snmp/daemon/SnmpResponseHandler.class \ com/sun/jmx/snmp/daemon/SendQ.class \ com/sun/jmx/snmp/daemon/SnmpInformRequest.class \ com/sun/jmx/snmp/daemon/SnmpSession.class diff --git a/src/share/native/java/lang/fdlibm/include/fdlibm.h b/src/share/native/java/lang/fdlibm/include/fdlibm.h --- a/src/share/native/java/lang/fdlibm/include/fdlibm.h +++ b/src/share/native/java/lang/fdlibm/include/fdlibm.h @@ -26,8 +26,8 @@ #ifdef __OpenBSD__ #include <sys/types.h> +#include <machine/endian.h> #endif -#include <machine/endian.h> #include "jfdlibm.h" #ifdef __NEWVALID /* special setup for Sun test regime */ diff --git a/src/share/native/sun/awt/medialib/mlib_image.h b/src/share/native/sun/awt/medialib/mlib_image.h --- a/src/share/native/sun/awt/medialib/mlib_image.h +++ b/src/share/native/sun/awt/medialib/mlib_image.h @@ -29,8 +29,8 @@ #ifdef __OpenBSD__ #include <sys/types.h> +#include <machine/endian.h> #endif -#include <machine/endian.h> #include <mlib_types.h> #include <mlib_status.h> diff --git a/src/solaris/back/util_md.h b/src/solaris/back/util_md.h --- a/src/solaris/back/util_md.h +++ b/src/solaris/back/util_md.h @@ -30,8 +30,10 @@ #include <stdint.h> /* To get uintptr_t */ #include <limits.h> +#ifdef __OpenBSD__ #include <sys/types.h> #include <machine/endian.h> +#endif #ifdef _LP64 typedef unsigned long UNSIGNED_JLONG; --- patch.txt --- Hope this helps, -Yuri Jochen Theodorou wrote: > Chanwit Kaewkasi schrieb: >> Hi Jochen, >> >> If it's still saying that it could not find some SNMP classes, >> probably you need to clean build after applying patches. > > it looks like I am really too stupid for this to build. I manage to > build the openjdk, but the mlvm.... I spend another full day just on > trying getting this run :( > > I was too fast the last time, I think I did build the jvm without the > patches. Anyway, the documentation I found and that John linked works so > far, but once the setup is supposedly done, it ends. The documentation > is not for making a build, it is for people writing patches. > > For example a very simple question... do I need to "make" in ./sources > first or in ./patches. What I did before was running make in patches, > overseeing the error, because it is writing that the build was > successful at the same time, then build in sources and I assume the > changes were not done or overwritten. > > So I assume the right order is to first run the build in sources and > then in patches... ah well, while trying that I found a few problems, > because I have to set ALT_HOTSPOT_SERVER_PATH and > ALT_HOTSPOT_IMPORT_PATH. But there is no documentation on those and I > gave it really several tries to guess the right once. In the end I maybe > managed, but I am not sure. What are those supposed to be pointing too? > Or is having have to set them a sign that I do something wrong? > Anyway... it is really annoying to have to check several pages of make > output for an error line... isn't there a way to prevent make doing > several jobs at the same time and to let it stop at the error then? I > always thought one make job at the same time is default anyway... > > At last the sanity check done by patches shouldn't report "Sanity check > passed." if something has a /NOT-SET/re/, because all of these variables > seem to have to be set. So I found two more: ALT_BUILD_JDK_IMPORT_PATH > and ALT_JDK_IMPORT_PATH. Again no docu I could find... maybe > ALT_JDK_IMPORT_PATH is enough... well setting it let go of the error > message at the end.. I suppose I did set some surplus variables too then. > > And after all that trouble... it still does not work, I get still the > same internal error. Btw, how do I tell that I want a debug version? > without debug symbols the reporting on internal errors isn't very great. > > bye blackdrag > _______________________________________________ mlvm-dev mailing list [email protected] http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
