octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GSoC project about binary packaging


From: Philip Nienhuis
Subject: Re: GSoC project about binary packaging
Date: Fri, 21 Jun 2013 21:55:37 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.11) Gecko/20100701 SeaMonkey/2.0.6

Michael Goffioul wrote:
Hi all,

I've a student who's supposed to work on improving/completing binary
packaging of octave on Windows and OS X during the next 2 months.
However, I can see that there are already 3 to 4 people actively working
on MXE. MXE/octave seems to already work for MinGW cross and native, as
well as native Linux. So I'm a bit concerned that there won't be much
left to do for the student.

Thanks for bringing this up, Michael. Good point.


My personal goal is not quite to make a binary Windows installer (I've no involvement with OSX). I'm trying to just get Octave building natively on MinGW, simply to be able to:

- ...avoid the
{[clone repo in Linux/bootstrap/]adapt-code/configure/build/make dist/copy to MXE/adapt SHA1 chksum/build again now in MXE/transplant-to-Windows/install/at last, try out the new fix} hassle associated with the "blind" (but otherwise extremely efficient) MXE cross-build on Linux;

- ...run a "make check" in Windows (that's a thing that MXE cannot offer), as I think that is a required quality check on any platform before a binary can be distributed. That would be a goal for GSOC as well but as it's such a small step once a build has succeeded I think that doesn't matter;

- ...build a debug-enabled Octave. There are a few debugging targets (old bugs specific for Windows) that I think need such a debug build.

Once Octave builds fine (and I think it does now, it just got past the previously offending parser stumbling blocks here ) I will limit myself to trying to fix/improve Octave itself on the Windows side, if only because lack of time.

So I'd like you to help define clear goals for this project in order to
avoid stepping on each other's toes. For instance, I had listed adding
support for OpenBLAS as a possible goal for him, but I saw today it had
been added to MXE yesterday.

Documented empirical evidence with MinGW builds indicates that multiple architecture-specific blas libs may be needed for a MinGW binary. Selecting/suggesting the right one would be a good sub-task :-)

Basically, what's left at the moment?
- writing a NSI installer that's a bit smarter than "dump everything";
> it should also support smart reinstallation and package addition (as in:
re-run the installer to install additional components, which were not
selected previously)

... or not available at the time (e.g., new packages)

- Deinstall packages and even Octave, plus proper cleaning up (.config files in the profile, etc) would also be nice.

- How about an installer that could detect and then upgrade an existing Octave MinGW or MSVC installation in place, rather than add a complete tree next to the existing one? I have about 7 or more independent MinGW/MSVC installations on my box, each with the usual texinfo/makeinfo/ls/..... just to be able to test the io package and do some basic bug triaging; that could be arranged more effciently, if only to conserve disk space.

- missing octave-forge packages + dependencies
- OS X
(feel free the extend the list)

- A thing that is on my list but that I'd gladly delegate is to get the built-in core Java support activated in the MinGW builds (but maybe it is too difficult for GSOC). Until now java-enabled builds consistently break somewhere in liboctave - I have reported it a few times in the ML list. Whether it is specific to MXE I don't know. I think Java support (optional or not) is required for a complete binary, but depending on POV it might not fit the GSOC perspective.

- Documenting the build stuff for sub-guru levels, or even lower, so that more Windows developers could be attracted, would also be a welcome sub-task. I have a short text ready that could serve as a start.

For OS X, I'd like some input from OS X users to assess what's doable.
For instance, is it possible to integrate installer building inside MXE
(for instance using some native OS X compilation)? I also remember a
recent mail from Ben mentioning some new efforts in MacPorts to get
octave compiled on OS X.

At the end of the day, I hope there will be enough work to be done to
make a GSoC project.

I doubt that there will be too little left.

Philip


reply via email to

[Prev in Thread] Current Thread [Next in Thread]