Message ID | 1427385280-63133-1-git-send-email-matthew.weber@rockwellcollins.com |
---|---|
State | Accepted |
Headers | show |
Matt, On Thu, Mar 26, 2015 at 10:54 AM, Matt Weber <matthew.weber@rockwellcollins.com> wrote: Why does jamvm need threads? I don't see any issues with toolchains on the autobuilders needing threads to build this package. http://autobuild.buildroot.org/?reason=jamvm-2.0.0 Could you please elaborate more why jamvm needs a toolchain with threads and how you discovered this? > Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com> > --- > package/jamvm/Config.in | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/package/jamvm/Config.in b/package/jamvm/Config.in > index f480995..1e33f42 100644 > --- a/package/jamvm/Config.in > +++ b/package/jamvm/Config.in > @@ -5,13 +5,15 @@ config BR2_PACKAGE_JAMVM > || BR2_mips || BR2_mipsel || BR2_powerpc > select BR2_PACKAGE_ZLIB > select BR2_PACKAGE_CLASSPATH > + depends on BR2_TOOLCHAIN_HAS_THREADS > help > JamVM is a new Java Virtual Machine which conforms to the > JVM specification version 2 (blue book). > > http://jamvm.sf.net > > -comment "jamvm needs a toolchain w/ IPv6" > +comment "jamvm needs a toolchain w/ IPv6 and threads" > depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64 \ > || BR2_mips || BR2_mipsel || BR2_powerpc > depends on !BR2_INET_IPV6 > + depends on !BR2_TOOLCHAIN_HAS_THREADS Thanks, -Ryan
Ryan, On Thu, Mar 26, 2015 at 1:16 PM, Ryan Barnett <ryan.barnett@rockwellcollins.com> wrote: > Matt, > > On Thu, Mar 26, 2015 at 10:54 AM, Matt Weber > <matthew.weber@rockwellcollins.com> wrote: > > Why does jamvm need threads? I don't see any issues with toolchains on > the autobuilders needing threads to build this package. > > http://autobuild.buildroot.org/?reason=jamvm-2.0.0 > > Could you please elaborate more why jamvm needs a toolchain with > threads and how you discovered this? While running an autobuilder internally. It's a arm uclibc build failure looking for pthreads. Here's some of the build end http://climbi.com/b/3851/0 The config... http://climbi.com/b/3852/0 > >> Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com> >> --- >> package/jamvm/Config.in | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/package/jamvm/Config.in b/package/jamvm/Config.in >> index f480995..1e33f42 100644 >> --- a/package/jamvm/Config.in >> +++ b/package/jamvm/Config.in >> @@ -5,13 +5,15 @@ config BR2_PACKAGE_JAMVM >> || BR2_mips || BR2_mipsel || BR2_powerpc >> select BR2_PACKAGE_ZLIB >> select BR2_PACKAGE_CLASSPATH >> + depends on BR2_TOOLCHAIN_HAS_THREADS >> help >> JamVM is a new Java Virtual Machine which conforms to the >> JVM specification version 2 (blue book). >> >> http://jamvm.sf.net >> >> -comment "jamvm needs a toolchain w/ IPv6" >> +comment "jamvm needs a toolchain w/ IPv6 and threads" >> depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64 \ >> || BR2_mips || BR2_mipsel || BR2_powerpc >> depends on !BR2_INET_IPV6 >> + depends on !BR2_TOOLCHAIN_HAS_THREADS > > Thanks, > -Ryan > > -- > Ryan Barnett / Sr Software Engineer > Airborne Information Systems / Security Systems and Software > MS 131-100, C Ave NE, Cedar Rapids, IA, 52498, USA > ryan.barnett@rockwellcollins.com > www.rockwellcollins.com
Matt, On Thu, Mar 26, 2015 at 1:52 PM, Matthew Weber <matthew.weber@rockwellcollins.com> wrote: > > While running an autobuilder internally. It's a arm uclibc build > failure looking for pthreads. I am curious about the Buildroot autobuilders then if they don't have javac available on them to build. Thomas - are there autobuilders that have javac installed on them? Thanks, -Ryan
Dear Ryan Barnett, On Wed, 1 Apr 2015 09:28:12 -0500, Ryan Barnett wrote: > > While running an autobuilder internally. It's a arm uclibc build > > failure looking for pthreads. > > I am curious about the Buildroot autobuilders then if they don't have > javac available on them to build. > > Thomas - are there autobuilders that have javac installed on them? The autobuild-run script detects whether javac is available or not. If it's not available, it makes sure to not attempt a build that has the Buildroot packages that require javac to be installed. On the Free Electrons build server, javac is not installed. On gcc75, javac is installed. See http://git.buildroot.net/buildroot-test/tree/scripts/autobuild-run#n196 and http://git.buildroot.net/buildroot-test/tree/scripts/autobuild-run#n339. Best regards, Thomas
All, On Wed, Apr 1, 2015 at 9:44 AM, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: > Dear Ryan Barnett, > > On Wed, 1 Apr 2015 09:28:12 -0500, Ryan Barnett wrote: > >> > While running an autobuilder internally. It's a arm uclibc build >> > failure looking for pthreads. >> >> I am curious about the Buildroot autobuilders then if they don't have >> javac available on them to build. >> >> Thomas - are there autobuilders that have javac installed on them? > > The autobuild-run script detects whether javac is available or not. If > it's not available, it makes sure to not attempt a build that has the > Buildroot packages that require javac to be installed. > Ok, it looks like it's detecting it as "javac 1.7.0_75" on ours. I'll update my buildroot-test branch to the latest and retest (I'm a couple months behind). Thanks, Matt
Dear Matt Weber, On Thu, 26 Mar 2015 10:54:40 -0500, Matt Weber wrote: > Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com> > --- > package/jamvm/Config.in | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/package/jamvm/Config.in b/package/jamvm/Config.in > index f480995..1e33f42 100644 > --- a/package/jamvm/Config.in > +++ b/package/jamvm/Config.in > @@ -5,13 +5,15 @@ config BR2_PACKAGE_JAMVM > || BR2_mips || BR2_mipsel || BR2_powerpc > select BR2_PACKAGE_ZLIB > select BR2_PACKAGE_CLASSPATH > + depends on BR2_TOOLCHAIN_HAS_THREADS This should have been grouped closer to the BR2_INET_IPV6 dependency. > help > JamVM is a new Java Virtual Machine which conforms to the > JVM specification version 2 (blue book). > > http://jamvm.sf.net > > -comment "jamvm needs a toolchain w/ IPv6" > +comment "jamvm needs a toolchain w/ IPv6 and threads" This should have been "IPv6, threads". Applied with these minor details fixed. Also, there's something fishy between jamvm and classpath. jamvm does select BR2_PACKAGE_CLASSPATH and has classpath in JAMVM_DEPENDENCIES. But classpath has depends on BR2_PACKAGE_JAMVM in its Config.in. Does not make much sense. Peter, you followed the JamVM/Classpath stuff. What do you think? Thanks, Thomas
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes: Hi, > Also, there's something fishy between jamvm and classpath. > jamvm does select BR2_PACKAGE_CLASSPATH and has classpath in > JAMVM_DEPENDENCIES. > But classpath has depends on BR2_PACKAGE_JAMVM in its Config.in. > Does not make much sense. Peter, you followed the JamVM/Classpath > stuff. What do you think? Hmm, that indeed doesn't sound right. I think the jamvm select should be dropped from classpath.
Dear Peter Korsgaard, On Wed, 01 Apr 2015 23:48:49 +0200, Peter Korsgaard wrote: > >>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes: > > Hi, > > > Also, there's something fishy between jamvm and classpath. > > > jamvm does select BR2_PACKAGE_CLASSPATH and has classpath in > > JAMVM_DEPENDENCIES. > > > But classpath has depends on BR2_PACKAGE_JAMVM in its Config.in. > > > Does not make much sense. Peter, you followed the JamVM/Classpath > > stuff. What do you think? > > Hmm, that indeed doesn't sound right. I think the jamvm select should be > dropped from classpath. There's no jamvm select in classpath, it's a 'depends on': config BR2_PACKAGE_JAMVM bool "jamvm" select BR2_PACKAGE_CLASSPATH config BR2_PACKAGE_CLASSPATH bool "classpath" depends on BR2_PACKAGE_JAMVM Thomas
All, On Wed, Apr 1, 2015 at 4:59 PM, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: > Dear Peter Korsgaard, > > On Wed, 01 Apr 2015 23:48:49 +0200, Peter Korsgaard wrote: >> >>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes: >> >> Hi, >> >> > Also, there's something fishy between jamvm and classpath. >> >> > jamvm does select BR2_PACKAGE_CLASSPATH and has classpath in >> > JAMVM_DEPENDENCIES. >> >> > But classpath has depends on BR2_PACKAGE_JAMVM in its Config.in. >> >> > Does not make much sense. Peter, you followed the JamVM/Classpath >> > stuff. What do you think? >> >> Hmm, that indeed doesn't sound right. I think the jamvm select should be >> dropped from classpath. > > There's no jamvm select in classpath, it's a 'depends on': > > config BR2_PACKAGE_JAMVM > bool "jamvm" > select BR2_PACKAGE_CLASSPATH > > config BR2_PACKAGE_CLASSPATH > bool "classpath" > depends on BR2_PACKAGE_JAMVM Looking at http://www.gnu.org/software/classpath/stories.html#jvm it looks like the jamvm "select" is correct but the classpath "depends" should be removed. (my interpretation of this is...) classpath is just a library used by various JVMs so if another JVM was added to BR we'd have to remove that depends anyway at that point and make that JVM also do a select of classpath?
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes: Hi, >> Hmm, that indeed doesn't sound right. I think the jamvm select should be >> dropped from classpath. > There's no jamvm select in classpath, it's a 'depends on': Yes, sorry - I meant depends on. I'm far from a Java expert, but from what I understand it classpath is an implementation of the Java standard libraries. You cannot really use Java without it. To actually run Java code you need a JVM (like Jamvm), so I think it makes sense for jamvm to select classpath and not the other way around.
>>>>> "Matthew" == Matthew Weber <matthew.weber@rockwellcollins.com> writes: Hi, >>> Hmm, that indeed doesn't sound right. I think the jamvm select should be >>> dropped from classpath. >> >> There's no jamvm select in classpath, it's a 'depends on': >> >> config BR2_PACKAGE_JAMVM >> bool "jamvm" >> select BR2_PACKAGE_CLASSPATH >> >> config BR2_PACKAGE_CLASSPATH >> bool "classpath" >> depends on BR2_PACKAGE_JAMVM > Looking at http://www.gnu.org/software/classpath/stories.html#jvm it > looks like the jamvm "select" is correct but the classpath "depends" > should be removed. (my interpretation of this is...) classpath is > just a library used by various JVMs so if another JVM was added to BR > we'd have to remove that depends anyway at that point and make that > JVM also do a select of classpath? That's my understanding as well.
diff --git a/package/jamvm/Config.in b/package/jamvm/Config.in index f480995..1e33f42 100644 --- a/package/jamvm/Config.in +++ b/package/jamvm/Config.in @@ -5,13 +5,15 @@ config BR2_PACKAGE_JAMVM || BR2_mips || BR2_mipsel || BR2_powerpc select BR2_PACKAGE_ZLIB select BR2_PACKAGE_CLASSPATH + depends on BR2_TOOLCHAIN_HAS_THREADS help JamVM is a new Java Virtual Machine which conforms to the JVM specification version 2 (blue book). http://jamvm.sf.net -comment "jamvm needs a toolchain w/ IPv6" +comment "jamvm needs a toolchain w/ IPv6 and threads" depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64 \ || BR2_mips || BR2_mipsel || BR2_powerpc depends on !BR2_INET_IPV6 + depends on !BR2_TOOLCHAIN_HAS_THREADS
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com> --- package/jamvm/Config.in | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)