bugGNU Octave - Bugs: bug #55325, [MXE Octave] Several of-* packages...

 
 

bug #55325: [MXE Octave] Several of-* packages won't cross-build due to features removed in 6.0.0

Submitter:  Philip Nienhuis <philipnienhuis>
Submitted:  Sat 29 Dec 2018 08:57:15 PM UTC
   
 
Category:  Octave Package Severity:  3 - Normal
Priority:  3 - Low Item Group:  Build Failure
Status:  Fixed Assigned to:  None
Originator Name:  Philip Nienhuis Open/Closed:  * Closed
Release:  * dev Operating System:  * Microsoft Windows
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Sun 27 Jan 2019 02:05:41 PM UTC, comment #37: 

Thanks!
All packages cross-build for me with Octave stable and default. Also the one buildbot that still works for default is happy now.

Closing as fixed.

Markus Mützel <mmuetzel>
Group administrator
Sat 26 Jan 2019 05:30:21 PM UTC, comment #36: 

pushed now

John Donoghue <lostbard>
Group Member
Sat 26 Jan 2019 01:04:23 PM UTC, comment #35: 

No reason except I had spent my spare time on bug # 55528 instead.

I'll try to add them today

John Donoghue <lostbard>
Group Member
Sat 26 Jan 2019 11:37:35 AM UTC, comment #34: 

Thanks John D for pushing most of the patches.
Is there a reason why the patches for of-signal (Philip's file #45780) and of-optim (file #46043) aren't added?

I am also attaching a changeset that adds the patch for of-linear-algebra from bug #55283.

(file #46103)

Markus Mützel <mmuetzel>
Group administrator
Wed 23 Jan 2019 08:10:12 AM UTC, comment #33: 

Philip - thanks for testing, that was actually a bug you hit, should be fixed on the default branch now (https://hg.savannah.gnu.org/hgweb/octave/rev/884fdd6c9210).

Mike Miller <mtmiller>
Group Member
Wed 23 Jan 2019 08:07:21 AM UTC, comment #32: 

I don't think that the "multiple definition" error is expected behavior. I re-opened bug #46650.

AFAICS, the of-optim patch (file #46043) hasn't been applied yet.

Markus Mützel <mmuetzel>
Group administrator
Wed 23 Jan 2019 07:27:24 AM UTC, comment #31: 

Kai's change:
http://hg.savannah.gnu.org/hgweb/octave/rev/cc0d942d0e20
again broke some OF packages (a.o., control) with;
"multiple definitions of 'warn_divide-by_zero'"

Also optim-1.5.3 doesn't build anymore due to "'octave_rand' has not been declared".

Octave-6.0.0 is in too much a transient state ATM I guess.

Philip Nienhuis <philipnienhuis>
Group Member
Mon 21 Jan 2019 02:22:20 PM UTC, comment #30: 

maybe ignore that - I think I still had Philips orignal patch in there as well

John Donoghue <lostbard>
Group Member
Mon 21 Jan 2019 02:16:31 PM UTC, comment #29: 

Ok - will try again then - it failed to apply the patch when I tried it

John Donoghue <lostbard>
Group Member
Mon 21 Jan 2019 01:26:16 PM UTC, comment #28: 

Philip's change is also included in my patch.

Markus Mützel <mmuetzel>
Group administrator
Mon 21 Jan 2019 01:19:32 PM UTC, comment #27: 

For communications, it also requires Philip's patch ?

John Donoghue <lostbard>
Group Member
Mon 21 Jan 2019 08:32:57 AM UTC, comment #26: 

To make a cleaner line, I'll rename this bug to better indicate that these patches are to be applied onto the released version of each package as currently used in MXE Octave.

If I correctly understand, package developers prefer dedicated bug reports for patches of their current code base.

Markus Mützel <mmuetzel>
Group administrator
Sun 20 Jan 2019 09:20:04 PM UTC, comment #25: 

And finally another patch for of-sparsersb.

I skipped of-ocs which also doesn't compile for me because I don't know git.

(file #46050)

Markus Mützel <mmuetzel>
Group administrator
Sun 20 Jan 2019 08:35:16 PM UTC, comment #24: 

Philip's patch for of-nurbs works for me with MXE Octave.

The odepkg.diff didn't apply when I used it with MXE Octave. Attached is a new one.

(file #46049)

Markus Mützel <mmuetzel>
Group administrator
Sun 20 Jan 2019 06:58:33 PM UTC, comment #23: 

John D's patch for of-signal works for me.
And here is another one for of-communications.

(file #46045)

Markus Mützel <mmuetzel>
Group administrator
Sun 20 Jan 2019 05:25:05 PM UTC, comment #22: 

And another one cherry-picked for of-specfun.

(file #46044)

Markus Mützel <mmuetzel>
Group administrator
Sun 20 Jan 2019 05:02:12 PM UTC, comment #21: 

The attached patch for MXE Octave cherry-picks Olaf's fix for of-optim.

(file #46043)

Markus Mützel <mmuetzel>
Group administrator
Sat 12 Jan 2019 10:51:14 PM UTC, comment #20: 

Status => in progress
as JohnD has already updated / added many mxe-octave OF package fixes.

Philip Nienhuis <philipnienhuis>
Group Member
Sat 12 Jan 2019 10:49:47 PM UTC, comment #19: 

@Olaf:
My patches were meant to be relative to the situation in mxe-octave. mxe-octave downloads the latest package releases from octave-forge and has then to apply various fixes to some packages before they can be (cross-)built with newer Octave.

I'm not surprised that many of those fixes are already in the repos, including the ones I added to this bug report, but they simply haven't made it into the package releases that mxe-octave has to deal with.
What I did was just (try to) update / add to the set of package fixes inside mxe-octave to get the pertinent packages built.

Philip Nienhuis <philipnienhuis>
Group Member
Fri 11 Jan 2019 03:15:11 PM UTC, comment #18: 

optim:

Should be ok now, have removed samin.cc, since it had been deprecated (its algorithm is still available as a backend to nonlin_min).

struct:

Should alse be ok. I don't know what caused the problem for you in cross-compilation, but OV_ISSTRUCT should not be changed, it's a macro defined by configure. It should have been defined to 'isstruct' for you...

Thanks for the reminders.

Olaf Till <i7tiol>
Group Member
Thu 03 Jan 2019 02:13:37 PM UTC, comment #17: 

I pushed to mxe fixes for struct, quaternion, optiminterp,  windows and miscellaneous

They appear to work og in both dev and stable octave builds and run tests on both the same.


They will still need changes or tickets for their official repos.

Ill make changes to the windows and optiminterp repos since Im the maintainer.



John Donoghue <lostbard>
Group Member
Thu 03 Jan 2019 10:40:18 AM UTC, comment #16: 

@Doug:
OK, thanks. Again sorry for some mix-up issues with my patch.
I'll try building again tonight 9with octave-5.0.1) but with a renewed 6.0.0 I still get 'f77_exception_encountered' errors.
Nevertheless the many many is_numeric-type, is_map occurrences and fevals etc etc were to be fixed anyway.

@JohnD;
With a refreshed 6.0.0 I see that the optiminterp package also fails to build because of 'f77_exception_encountered'.
So that's one more to the list and one less (of-signal).

Philip Nienhuis <philipnienhuis>
Group Member
Wed 02 Jan 2019 10:59:41 PM UTC, comment #15: 

Philip I did the changes that you did in control.diff and pushed them.

Doug Stewart <dastew>
Wed 02 Jan 2019 08:45:02 PM UTC, comment #14: 

I can't apply the patch either.

Doug Stewart <dastew>
Wed 02 Jan 2019 08:43:20 PM UTC, comment #13: 

the other changes in signal appears to be just renaming the enums and then the changes to the functions to use the renamed enums

John Donoghue <lostbard>
Group Member
Wed 02 Jan 2019 08:23:25 PM UTC, comment #12: 

As to signal the actual changes I made were identical to yours, but the patch I uploaded involved much more than just those.

I probably should have applied the mxe-octave patches first before creating the patch.

Philip Nienhuis <philipnienhuis>
Group Member
Wed 02 Jan 2019 08:19:20 PM UTC, comment #11: 

Yes you're right but in my local builds I removed all binary modules from linear-algebra as all of them are also in core; plus condeig.m. So I didn't see error messages.
I regularly use other functions from that package and I find it a  pain that linear-algebra shadows core functions,

Philip Nienhuis <philipnienhuis>
Group Member
Wed 02 Jan 2019 06:45:42 PM UTC, comment #10: 

Linear-algrbra also will not build with the current dev

John Donoghue <lostbard>
Group Member
Wed 02 Jan 2019 05:42:45 PM UTC, comment #9: 

For me, signal package I had to apply the following patch in addition to the existing mxe patch.

(file #45846)

John Donoghue <lostbard>
Group Member
Wed 02 Jan 2019 05:36:19 PM UTC, comment #8: 

Looking at the patches more, I am guessing they are not what you applied to mxe, or only partials, or what was applied to the dev package code?

John Donoghue <lostbard>
Group Member
Wed 02 Jan 2019 05:22:25 PM UTC, comment #7: 

Specfun:
cosint, sinint psi and erfcinv are also in core Octave now.
You're right, that patch can be dropped and I think the other functions mentioned above can be removed as well.

Control:
Let's continue in bug #55361.

Philip Nienhuis <philipnienhuis>
Group Member
Wed 02 Jan 2019 04:18:07 PM UTC, comment #6: 

Also, I just tried the control package patch and it complains that the patch is malformed

John Donoghue <lostbard>
Group Member
Wed 02 Jan 2019 02:54:08 PM UTC, comment #5: 

For specfun, according to its log,  ellipj, ellipke, and expint have been moved to octave core so are removed from specfun in 2013, but last release was back in 2012.


John Donoghue <lostbard>
Group Member
Sat 29 Dec 2018 09:35:54 PM UTC, comment #4: 

As a package maintainer, I think it would be useful to have individual reports for each package, in addition to this bug report about patching or removing packages for the mxe-octave cross-compile tree.

I would like to see a separate bug specifically about the signal package errors, which I would mark as postponed until after the next release of the package. I think that might help other package maintainers as well.

Mike Miller <mtmiller>
Group Member
Sat 29 Dec 2018 09:11:33 PM UTC, comment #3: 

I forgot to mention that in spite of my fixes, communications and odepkg still won't get cross-built.
Moreover, also sparsersb couldn't be built.

So I just edited communications, odepkg, sparsersb and windows out of the OCTAVE_FORGE_PACKAGES macro in the mxe-octave Makefile.

FTR, as I didn't start a new mxe-octave build tree just for Octve-6.0.0, these packages, built for 5.0.0, are still included in windows installers cross-built by me and they still work as well.

Philip Nienhuis <philipnienhuis>
Group Member
Sat 29 Dec 2018 08:59:42 PM UTC, comment #2: 

... and the last two diffs.

(file #45780, file #45781)

Philip Nienhuis <philipnienhuis>
Group Member
Sat 29 Dec 2018 08:58:58 PM UTC, comment #1: 

Next four diffs.

priority set to "low" as octave-6.0.0 is probably over a year away.


(file #45776, file #45777, file #45778, file #45779)

Philip Nienhuis <philipnienhuis>
Group Member
Sat 29 Dec 2018 08:57:15 PM UTC, original submission:  

(with rference to bug #55283 comments 4 & 5)

In the new default branch (future 6.0.0) much stuff that was deprecated long ago was removed. As a consequence, several OF package cannot be built anymore with 6.0.0, at least not in mxe-octave.
Examples of deprecated things are feval (now octave::feval), is_empty (now isempty) and many more.

To be able to get binary packages cross-built with mxe-otave with octave-6.0.0 I had to adapt code from the following OF packages, on top of the fixes already included with me-octave:

  • communications  &
  • control  &
  • miscellaneous  &
  • nurbs  &
  • ocs  &
  • odepkg  (&)
  • optim  &
  • quaternion  &
  • signal  &
  • specfun
  • struct  ?


plus, mkoctfile now barfs at code in the windows package that used to be swallowed by release 5.0.0.

I've included diffs for the above mentioned packages marked with a "&". 
odepkg is special in that I couldn't make an direct diff with the repo, so I edited the diff manually; so that diff merely serves to indicate what changes are to be made.
For some reason I couldn't download the specfun source including the one binary module (ellipj) so no diff there.
As Savannah accepts only 4 uploads at a time I'll upload the diffs in several stages.

I made just one bug report, as I'd rather not swamp the bug tracker with twelve separate reports.

Philip Nienhuis <philipnienhuis>
Group Member

 

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

Attach Files:
   
   
Comment:
   

Attached Files
file #46103:  bug55325_of-linear-algebra.patch added by mmuetzel (3KiB - application/octet-stream)
file #46050:  of-sparsersb-1-deprecated.patch added by mmuetzel (13KiB - application/octet-stream)
file #46049:  of-odepkg-3-deprecated.patch added by mmuetzel (98KiB - application/octet-stream)
file #46045:  of-communications-6-deprecated.patch added by mmuetzel (20KiB - application/octet-stream)
file #46044:  bug55325_of-specfun_deprecated.patch added by mmuetzel (42KiB - application/octet-stream)
file #46043:  bug55325_of-optim_deprecated.patch added by mmuetzel (23KiB - application/octet-stream)
file #45846:  of-signal-3-fixes.patch added by lostbard (1KiB - application/octet-stream)
file #45780:  signal.diff added by philipnienhuis (5KiB - text/x-patch)
file #45781:  struct.diff added by philipnienhuis (383B - text/x-patch)
file #45776:  ocs.diff added by philipnienhuis (765B - text/x-patch)
file #45777:  odepkg.diff added by philipnienhuis (107KiB - text/x-patch)
file #45778:  optim.diff added by philipnienhuis (2KiB - text/x-patch)
file #45779:  quaternion.diff added by philipnienhuis (853B - text/x-patch)
file #45772:  communications.diff added by philipnienhuis (477B - text/x-patch)
file #45773:  control.diff added by philipnienhuis (5KiB - text/x-patch)
file #45774:  miscellaneous.diff added by philipnienhuis (457B - text/x-patch)
file #45775:  nurbs.diff added by philipnienhuis (4KiB - text/x-patch)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by mmuetzel (Updated the item)
  • -email is unavailable- added by i7tiol (Posted a comment)
  • -email is unavailable- added by dastew (Posted a comment)
  • -email is unavailable- added by lostbard (Posted a comment)
  • -email is unavailable- added by philipnienhuis
  • -email is unavailable- added by philipnienhuis (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 23 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2019-01-27 mmuetzel StatusIn Progress Fixed
        Open/ClosedOpen Closed
    2019-01-26 mmuetzel Attached File- Added bug55325_of-linear-algebra.patch, #46103
    2019-01-21 mmuetzel Summary(octave-forge) Several Of packages won't cross-build anyore due to deprecated features in 6.0.0 [MXE Octave] Several of-* packages won't cross-build due to features removed in 6.0.0
    2019-01-20 mmuetzel Attached File- Added of-sparsersb-1-deprecated.patch, #46050
    2019-01-20 mmuetzel Attached File- Added of-odepkg-3-deprecated.patch, #46049
    2019-01-20 mmuetzel Attached File- Added of-communications-6-deprecated.patch, #46045
    2019-01-20 mmuetzel Attached File- Added bug55325_of-specfun_deprecated.patch, #46044
    2019-01-20 mmuetzel Attached File- Added bug55325_of-optim_deprecated.patch, #46043
    2019-01-12 philipnienhuis StatusNone In Progress
    2019-01-02 lostbard Attached File- Added of-signal-3-fixes.patch, #45846
    2018-12-29 philipnienhuis Carbon-Copy- Added lostbard
    2018-12-29 philipnienhuis Attached File- Added signal.diff, #45780
        Attached File- Added struct.diff, #45781
    2018-12-29 philipnienhuis Attached File- Added ocs.diff, #45776
        Attached File- Added odepkg.diff, #45777
        Attached File- Added optim.diff, #45778
        Attached File- Added quaternion.diff, #45779
        Priority5 - Normal 3 - Low
    2018-12-29 philipnienhuis Attached File- Added communications.diff, #45772
        Attached File- Added control.diff, #45773
        Attached File- Added miscellaneous.diff, #45774
        Attached File- Added nurbs.diff, #45775

    Back to the top

    Powered by Savane 3.13-3230.
    Corresponding source code