7u45 update - amd64 testers

Patrick Dung patrick_dkt at yahoo.com.hk
Sun Dec 8 04:11:56 UTC 2013


On Sunday, December 8, 2013 3:31 AM, Greg Lewis <glewis at eyesbeyond.com> wrote:
On Sat, Dec 07, 2013 at 11:05:45AM -0800, Greg Lewis wrote:
> On Sat, Dec 07, 2013 at 10:22:31AM +0100, Albert Shih wrote:
> >  Le 06/12/2013 ? 22:40:44-0800, Greg Lewis a ?crit
> > > Can someone please download
> > > 
> > > http://people.freebsd.org/~glewis/openjdk7-7u45.diff
> > > 
> > > and see if it compiles on amd64?  If it does I'll go ahead and commit it.
> > > Already tested on i386 locally.
> > 
> > No that's not compiles.
> > 
> > On :
> > 
> >     9.2-STABLE FreeBSD 9.2-STABLE #11 r258722: Thu Nov 28 23:37:54 CET 2013 
> > 
> >     kernel  /usr/obj/usr/src/sys/GENERIC  amd64
> > 
> > all ports is up2date.
> > 
> > Here the logs.
> > 
> > Thanks for your work.
> 
> Thanks Albert.  That actually looks like a 8.x vs. 9.x problem.  It needs
> to be fixed regardless.
> 
> On 8.x:
> 
> typedef struct sem *    sem_t;
> 
> On 10.x (and presumably 9.x as well based on the error)
> 
> typedef struct _sem     sem_t;
> 
> I think the solution is to vary the os_semaphore_t definition in os_bsd.cpp
> based on the FreeBSD version.  Let me test compiling that on 8.x and I'll
> send it out.

Actually, maybe it's as simple as this.  Can someone give the following a
try on a 9.x machine?  Preferably amd64 since I still want to make sure
we're ok there.

diff -r 54995aa29dbb src/os/bsd/vm/os_bsd.cpp
--- a/src/os/bsd/vm/os_bsd.cpp    Wed Dec 04 22:06:37 2013 -0800
+++ b/src/os/bsd/vm/os_bsd.cpp    Sat Dec 07 11:29:16 2013 -0800
@@ -2755,7 +2755,11 @@
     os_semaphore_t _semaphore;
};

+#if defined(__FreeBSD__) && __FreeBSD__ > 8
+Semaphore::Semaphore() : _semaphore() {
+#else
Semaphore::Semaphore() : _semaphore(0) {
+#endif
   SEM_INIT(_semaphore, 0);
}

-- 
Greg Lewis                          Email   : glewis at eyesbeyond.com
Eyes Beyond                         Web     : http://www.eyesbeyond.com/
Information Technology              FreeBSD : glewis at FreeBSD.org
_____________________________________


Hi Greg,

I could not patch the files using your last diff (I was using cat file | patch -u -p6)
Anyway, I have maually edited os_bsd.cpp:

#if defined(__FreeBSD__) && __FreeBSD__ > 8
Semaphore::Semaphore() : _semaphore() {
#else
#Semaphore::Semaphore() : _semaphore(0) {
#endif
  SEM_INIT(_semaphore, 0);
}


It compiled on my Freebsd 9.2 x64.

I tried to start my jvm application and seems fine.

Thanks and regards,
Patrick Dung   


More information about the freebsd-java mailing list