Re: java and Classdef branch

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: java and Classdef branch

Rik-4
On 01/08/2013 06:40 PM, [hidden email] wrote:

> It appears that flex is complaining about MacOS X's Java libraries. Looking at my Makefile, it appears the culprit is LFLAGS, and AM_FLAGS.
>
> LFLAGS = -I -framework JavaVM
>
> AM_LFLAGS = -I -framework JavaVM
>
> LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
>
> LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
> --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)
>
> I assume something is broken here for me?
Ben,

This is only an issue for MacOS.  In configure.ac there are the following
lines:

  ## Java and JVM found.  Set up flags.
  case $host_os in
    darwin*)
      ## Sneak the -framework flag into mkoctfile via LFLAGS
      LFLAGS="$LFLAGS -framework JavaVM"

That was copied, I think, from the original Java package and looks to be
sketchy from the comment.  What is the "right" way to handle framework
options in MacOS?  As an example, we are doing something different for the
CARBON libs.

--Rik
Reply | Threaded
Open this post in threaded view
|

Re: java and Classdef branch

bpabbott
Administrator
On Jan 8, 2013, at 10:17 PM, Rik <[hidden email]> wrote:

> On 01/08/2013 06:40 PM, [hidden email] wrote:
>> It appears that flex is complaining about MacOS X's Java libraries. Looking at my Makefile, it appears the culprit is LFLAGS, and AM_FLAGS.
>>
>>    LFLAGS = -I -framework JavaVM
>>
>>    AM_LFLAGS = -I -framework JavaVM
>>
>>    LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>
>>    LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
>>        --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>
>> I assume something is broken here for me?
> Ben,
>
> This is only an issue for MacOS.  In configure.ac there are the following
> lines:
>
>  ## Java and JVM found.  Set up flags.
>  case $host_os in
>    darwin*)
>      ## Sneak the -framework flag into mkoctfile via LFLAGS
>      LFLAGS="$LFLAGS -framework JavaVM"
>
> That was copied, I think, from the original Java package and looks to be
> sketchy from the comment.  What is the "right" way to handle framework
> options in MacOS?  As an example, we are doing something different for the
> CARBON libs.
>
> --Rik

We found a similar problem recently.  My guess is that the Java libs should be "sneaked" into LDFLAGS instead.

Ben
Reply | Threaded
Open this post in threaded view
|

Re: java and Classdef branch

bpabbott
Administrator

On Jan 8, 2013, at 10:26 PM, Benjamin Abbott wrote:

> On Jan 8, 2013, at 10:17 PM, Rik <[hidden email]> wrote:
>
>> On 01/08/2013 06:40 PM, [hidden email] wrote:
>>> It appears that flex is complaining about MacOS X's Java libraries. Looking at my Makefile, it appears the culprit is LFLAGS, and AM_FLAGS.
>>>
>>>   LFLAGS = -I -framework JavaVM
>>>
>>>   AM_LFLAGS = -I -framework JavaVM
>>>
>>>   LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>>
>>>   LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
>>>       --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>>
>>> I assume something is broken here for me?
>> Ben,
>>
>> This is only an issue for MacOS.  In configure.ac there are the following
>> lines:
>>
>> ## Java and JVM found.  Set up flags.
>> case $host_os in
>>   darwin*)
>>     ## Sneak the -framework flag into mkoctfile via LFLAGS
>>     LFLAGS="$LFLAGS -framework JavaVM"
>>
>> That was copied, I think, from the original Java package and looks to be
>> sketchy from the comment.  What is the "right" way to handle framework
>> options in MacOS?  As an example, we are doing something different for the
>> CARBON libs.
>>
>> --Rik
>
> We found a similar problem recently.  My guess is that the Java libs should be "sneaked" into LDFLAGS instead.
>
> Ben
Rik / Michael,

The attached allows me to build the classdef branch.   Do either of you have any concerns about pushing this?

This changeset is for classdef.  Should it be prepared for default instead?

Ben


changeset.patch (735 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: java and Classdef branch

Rik-4
On 01/09/2013 07:16 AM, Ben Abbott wrote:

> On Jan 8, 2013, at 10:26 PM, Benjamin Abbott wrote:
>
>> On Jan 8, 2013, at 10:17 PM, Rik <[hidden email]> wrote:
>>
>>> On 01/08/2013 06:40 PM, [hidden email] wrote:
>>>> It appears that flex is complaining about MacOS X's Java libraries. Looking at my Makefile, it appears the culprit is LFLAGS, and AM_FLAGS.
>>>>
>>>>   LFLAGS = -I -framework JavaVM
>>>>
>>>>   AM_LFLAGS = -I -framework JavaVM
>>>>
>>>>   LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>>>
>>>>   LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
>>>>       --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>>>
>>>> I assume something is broken here for me?
>>> Ben,
>>>
>>> This is only an issue for MacOS.  In configure.ac there are the following
>>> lines:
>>>
>>> ## Java and JVM found.  Set up flags.
>>> case $host_os in
>>>   darwin*)
>>>     ## Sneak the -framework flag into mkoctfile via LFLAGS
>>>     LFLAGS="$LFLAGS -framework JavaVM"
>>>
>>> That was copied, I think, from the original Java package and looks to be
>>> sketchy from the comment.  What is the "right" way to handle framework
>>> options in MacOS?  As an example, we are doing something different for the
>>> CARBON libs.
>>>
>>> --Rik
>> We found a similar problem recently.  My guess is that the Java libs should be "sneaked" into LDFLAGS instead.
>>
>> Ben
> Rik / Michael,
>
> The attached allows me to build the classdef branch.   Do either of you have any concerns about pushing this?
>
> This changeset is for classdef.  Should it be prepared for default instead?
1/9/12

Ben,

On looking through this the original configure.ac code was clearly wrong.
LFLAGS is supposed to be for Lex-specific flags, not general linker flags.

I would adjust the comment be updated to refer to the fact that we are now
sneaking in the -framework flag via LDFLAGS.  You should push this
changeset to the default branch and the merge it onto the classdef branch.

Thanks,
Rik

Reply | Threaded
Open this post in threaded view
|

Re: java and Classdef branch

bpabbott
Administrator

On Jan 9, 2013, at 12:30 PM, Rik wrote:

> On 01/09/2013 07:16 AM, Ben Abbott wrote:
>> On Jan 8, 2013, at 10:26 PM, Benjamin Abbott wrote:
>>
>>> On Jan 8, 2013, at 10:17 PM, Rik <[hidden email]> wrote:
>>>
>>>> On 01/08/2013 06:40 PM, [hidden email] wrote:
>>>>> It appears that flex is complaining about MacOS X's Java libraries. Looking at my Makefile, it appears the culprit is LFLAGS, and AM_FLAGS.
>>>>>
>>>>>  LFLAGS = -I -framework JavaVM
>>>>>
>>>>>  AM_LFLAGS = -I -framework JavaVM
>>>>>
>>>>>  LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>>>>
>>>>>  LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
>>>>>      --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>>>>
>>>>> I assume something is broken here for me?
>>>> Ben,
>>>>
>>>> This is only an issue for MacOS.  In configure.ac there are the following
>>>> lines:
>>>>
>>>> ## Java and JVM found.  Set up flags.
>>>> case $host_os in
>>>>  darwin*)
>>>>    ## Sneak the -framework flag into mkoctfile via LFLAGS
>>>>    LFLAGS="$LFLAGS -framework JavaVM"
>>>>
>>>> That was copied, I think, from the original Java package and looks to be
>>>> sketchy from the comment.  What is the "right" way to handle framework
>>>> options in MacOS?  As an example, we are doing something different for the
>>>> CARBON libs.
>>>>
>>>> --Rik
>>> We found a similar problem recently.  My guess is that the Java libs should be "sneaked" into LDFLAGS instead.
>>>
>>> Ben
>> Rik / Michael,
>>
>> The attached allows me to build the classdef branch.   Do either of you have any concerns about pushing this?
>>
>> This changeset is for classdef.  Should it be prepared for default instead?
> 1/9/12
>
> Ben,
>
> On looking through this the original configure.ac code was clearly wrong.
> LFLAGS is supposed to be for Lex-specific flags, not general linker flags.
>
> I would adjust the comment be updated to refer to the fact that we are now
> sneaking in the -framework flag via LDFLAGS.  You should push this
> changeset to the default branch and the merge it onto the classdef branch.
>
> Thanks,
> Rik

Ok.  I've pushed to default.  It will show up in classdef the next time Michael does a merge

        http://hg.savannah.gnu.org/hgweb/octave/rev/18d1bd2596bf

Ben

Reply | Threaded
Open this post in threaded view
|

Re: java and Classdef branch

Michael Goffioul
On Wed, Jan 9, 2013 at 1:14 PM, Ben Abbott <[hidden email]> wrote:

On Jan 9, 2013, at 12:30 PM, Rik wrote:

> On 01/09/2013 07:16 AM, Ben Abbott wrote:
>> On Jan 8, 2013, at 10:26 PM, Benjamin Abbott wrote:
>>
>>> On Jan 8, 2013, at 10:17 PM, Rik <[hidden email]> wrote:
>>>
>>>> On 01/08/2013 06:40 PM, [hidden email] wrote:
>>>>> It appears that flex is complaining about MacOS X's Java libraries. Looking at my Makefile, it appears the culprit is LFLAGS, and AM_FLAGS.
>>>>>
>>>>>  LFLAGS = -I -framework JavaVM
>>>>>
>>>>>  AM_LFLAGS = -I -framework JavaVM
>>>>>
>>>>>  LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>>>>
>>>>>  LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
>>>>>      --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)
>>>>>
>>>>> I assume something is broken here for me?
>>>> Ben,
>>>>
>>>> This is only an issue for MacOS.  In configure.ac there are the following
>>>> lines:
>>>>
>>>> ## Java and JVM found.  Set up flags.
>>>> case $host_os in
>>>>  darwin*)
>>>>    ## Sneak the -framework flag into mkoctfile via LFLAGS
>>>>    LFLAGS="$LFLAGS -framework JavaVM"
>>>>
>>>> That was copied, I think, from the original Java package and looks to be
>>>> sketchy from the comment.  What is the "right" way to handle framework
>>>> options in MacOS?  As an example, we are doing something different for the
>>>> CARBON libs.
>>>>
>>>> --Rik
>>> We found a similar problem recently.  My guess is that the Java libs should be "sneaked" into LDFLAGS instead.
>>>
>>> Ben
>> Rik / Michael,
>>
>> The attached allows me to build the classdef branch.   Do either of you have any concerns about pushing this?
>>
>> This changeset is for classdef.  Should it be prepared for default instead?
> 1/9/12
>
> Ben,
>
> On looking through this the original configure.ac code was clearly wrong.
> LFLAGS is supposed to be for Lex-specific flags, not general linker flags.
>
> I would adjust the comment be updated to refer to the fact that we are now
> sneaking in the -framework flag via LDFLAGS.  You should push this
> changeset to the default branch and the merge it onto the classdef branch.
>
> Thanks,
> Rik

Ok.  I've pushed to default.  It will show up in classdef the next time Michael does a merge

        http://hg.savannah.gnu.org/hgweb/octave/rev/18d1bd2596bf



Shouldn't it be "LDFLAGS=..." instead?

Michael.
 

Reply | Threaded
Open this post in threaded view
|

Re: java and Classdef branch

bpabbott
Administrator

On Jan 9, 2013, at 1:16 PM, Michael Goffioul wrote:

> On Wed, Jan 9, 2013 at 1:14 PM, Ben Abbott <[hidden email]> wrote:
>
> On Jan 9, 2013, at 12:30 PM, Rik wrote:
>
> > On 01/09/2013 07:16 AM, Ben Abbott wrote:
> >> On Jan 8, 2013, at 10:26 PM, Benjamin Abbott wrote:
> >>
> >>> On Jan 8, 2013, at 10:17 PM, Rik <[hidden email]> wrote:
> >>>
> >>>> On 01/08/2013 06:40 PM, [hidden email] wrote:
> >>>>> It appears that flex is complaining about MacOS X's Java libraries. Looking at my Makefile, it appears the culprit is LFLAGS, and AM_FLAGS.
> >>>>>
> >>>>>  LFLAGS = -I -framework JavaVM
> >>>>>
> >>>>>  AM_LFLAGS = -I -framework JavaVM
> >>>>>
> >>>>>  LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
> >>>>>
> >>>>>  LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
> >>>>>      --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)
> >>>>>
> >>>>> I assume something is broken here for me?
> >>>> Ben,
> >>>>
> >>>> This is only an issue for MacOS.  In configure.ac there are the following
> >>>> lines:
> >>>>
> >>>> ## Java and JVM found.  Set up flags.
> >>>> case $host_os in
> >>>>  darwin*)
> >>>>    ## Sneak the -framework flag into mkoctfile via LFLAGS
> >>>>    LFLAGS="$LFLAGS -framework JavaVM"
> >>>>
> >>>> That was copied, I think, from the original Java package and looks to be
> >>>> sketchy from the comment.  What is the "right" way to handle framework
> >>>> options in MacOS?  As an example, we are doing something different for the
> >>>> CARBON libs.
> >>>>
> >>>> --Rik
> >>> We found a similar problem recently.  My guess is that the Java libs should be "sneaked" into LDFLAGS instead.
> >>>
> >>> Ben
> >> Rik / Michael,
> >>
> >> The attached allows me to build the classdef branch.   Do either of you have any concerns about pushing this?
> >>
> >> This changeset is for classdef.  Should it be prepared for default instead?
> > 1/9/12
> >
> > Ben,
> >
> > On looking through this the original configure.ac code was clearly wrong.
> > LFLAGS is supposed to be for Lex-specific flags, not general linker flags.
> >
> > I would adjust the comment be updated to refer to the fact that we are now
> > sneaking in the -framework flag via LDFLAGS.  You should push this
> > changeset to the default branch and the merge it onto the classdef branch.
> >
> > Thanks,
> > Rik
>
> Ok.  I've pushed to default.  It will show up in classdef the next time Michael does a merge
>
>         http://hg.savannah.gnu.org/hgweb/octave/rev/18d1bd2596bf
>
> Shouldn't it be "LDFLAGS=..." instead?
>
> Michael.

Thanks for catching that.

        http://hg.savannah.gnu.org/hgweb/octave/rev/80612fee1110

Ben