bugGNU Octave - Bugs: bug #46260, build with --disable-docs doesn't...

 
 

bug #46260: build with --disable-docs doesn't build oct-files until "make install"

Submitted by:  Mike Miller <mtmiller>
Submitted on:  Wed 21 Oct 2015 01:01:59 AM UTC  
 
Category: Configuration and Build SystemSeverity: 2 - Minor
Priority: 5 - NormalItem Group: Regression
Status: FixedAssigned to: None
Originator Name: Open/Closed: Closed
Release: devOperating System: GNU/Linux

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

(Jump to the original submission Jump to the original submission)

Tue 01 Mar 2016 04:13:37 PM UTC, comment #10:

Fixed! Closing report.

Rik <rik5>
Project Administrator
Tue 01 Mar 2016 08:27:04 AM UTC, comment #9:

OK, how about this instead?

http://hg.savannah.gnu.org/hgweb/octave/rev/eb7287db3da9

John W. Eaton <jwe>
Project Administrator
Mon 29 Feb 2016 11:05:27 PM UTC, comment #8:

Apparently creating the .oct files is not enough.

I did

octave is successfully built, and the .oct files are generated, but when running run-octave the FLTK toolkit is still not available.

I then ran

to see what else happens. I have excerpted the section of the log dealing with _init_fltk_.cc.

It seems that there needs to be a dependency on the .df files as well. However, just re-building _init_fltk_.df was not enough. I also had to 'make libinterp/dldfcn/PKG_ADD'. Given that PKG_ADD depends on all the .df files that is probably a better dependency to try and add to the build system.

Alternatively, why don't we just add OCTAVE_INTERPRETER_TARGETS to all-local in Makefile.am at the top level? The variable is supposed to expand out into whatever is necessary to use run-octave and is a dependency of the documentation targets that might use run-octave to generate images. Shouldn't 'make all' produce everything necessary for the interpreter as well?

Rik <rik5>
Project Administrator
Mon 29 Feb 2016 09:42:31 PM UTC, comment #7:

OK, I checked in the following change:

http://hg.savannah.gnu.org/hgweb/octave/rev/f20af4d085e9

John W. Eaton <jwe>
Project Administrator
Mon 29 Feb 2016 09:25:13 PM UTC, comment #6:

@jwe: That was my thinking. You could add OCT_FILES directly to all-local in Makefile.am at the top level. Or if you want the dependency closer to the source you could rely on the ALL_LOCAL_TARGETS variable at the top level, and add a local target in libinterp/module.mk or libinterp/dldfcn/module.mk (which is auto-generated).

Rik <rik5>
Project Administrator
Mon 29 Feb 2016 08:33:51 PM UTC, comment #5:

Or, a slightly different question. Is there any reason to NOT have $(OCT_FILES) as a dependency of all-local instead of just as a dependency for check and doc targets?

John W. Eaton <jwe>
Project Administrator
Mon 29 Feb 2016 04:45:40 AM UTC, comment #4:

Should run-octave depend on the .oct file targets? I guess it would be nice if the version of Octave in the build tree is fully functional even if the documentation is not built. If not run-octave, then maybe some other target? Maybe the main octave programs or libinterp?

John W. Eaton <jwe>
Project Administrator
Mon 29 Feb 2016 04:33:11 AM UTC, comment #3:

There is a definition in the build system for all the dldfcn .oct files: OCT_FILES. The trouble is that only OCTAVE_INTERPRETER_TARGETS includes OCT_FILES and OCTAVE_INTERPRETER_TARGETS is only a dependency for 'make check' and 'make doc' because they need run-octave to work.

Rik <rik5>
Project Administrator
Sun 28 Feb 2016 07:13:29 PM UTC, comment #2:

I'll take a look at this one.

John W. Eaton <jwe>
Project Administrator
Sun 28 Feb 2016 07:05:23 PM UTC, comment #1:

Symptoms of oct-file symlinks not there include gnuplot and fltk toolkits are not available, image functions don't work because _magick* functions are not callable, etc.

Mike Miller <mtmiller>
Project Administrator
Wed 21 Oct 2015 01:01:59 AM UTC, original submission:

Building Octave with --disable-docs doesn't actually create the oct-files under libinterp/dldfcn. The object files are linked (e.g. libinterp/dldfcn/.libs/amd.so) but the .oct file is not built. When "make install" is run, the oct-files are created in the install target path, but still not in the build tree.

I'm guessing this is because the oct-files are a dependency for running Octave to build the documentation, but not a dependency of the "all" target.

Running "make check" does generate the oct-files.

Mike Miller <mtmiller>
Project Administrator

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Digest:
   bug dependencies.

 

Carbon-Copy List
  • -unavailable- added by rik5 (Updated the item)
  • -unavailable- added by rik5
  • -unavailable- added by jwe (Posted a comment)
  • -unavailable- added by mtmiller (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 7 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Tue 01 Mar 2016 04:13:37 PM UTCrik5StatusConfirmed=>Fixed
      Open/ClosedOpen=>Closed
    Mon 29 Feb 2016 04:30:34 AM UTCrik5Carbon-Copy-=>Added jwe
    Mon 29 Feb 2016 04:30:33 AM UTCrik5Assigned tojwe=>None
    Sun 28 Feb 2016 07:13:29 PM UTCjweAssigned toNone=>jwe
    Sun 28 Feb 2016 07:05:23 PM UTCmtmillerStatusNone=>Confirmed
    Sun 28 Feb 2016 07:03:56 PM UTCmtmillerDependencies-=>bugs #46031 is dependent

    Back to the top


    Powered by Savane 3.1-cleanup1