bugGNU Octave - Bugs: bug #44287, [OF] image package: missing...

 
 

bug #44287: [OF] image package: missing AX_CXX_COMPILE_STDCXX_11 macro for configure.ac

Submitter:  Philip Nienhuis <philipnienhuis>
Submitted:  Tue 17 Feb 2015 08:29:43 PM UTC
   
 
Category:  Octave Package Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Build Failure
Status:  Wont Fix Assigned to:  None
Originator Name:  Phiilp Nienhuis Open/Closed:  * Closed
Release:  * other Operating System:  * Any
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Thu 26 Feb 2015 09:18:55 PM UTC, comment #6: 

I think Mike is correct. Just ship the necessary macro in an m4 directory. Sure, it's a bit dirty to bundle deps, but some deps are meant to be used this way, such as m4 macros and gnulib.

Jordi Gutiérrez Hermoso <jordigh>
Group Member
Fri 20 Feb 2015 04:09:51 PM UTC, comment #5: 

I believe you may misunderstanding the problem. The macro does not need to be available on the user system. It needs to be installed on the developer system when the developer prepares the release.

And that is what aclocal does, it scans configure.ac for macros and creates an aclocal.m4 file with their content. The user installing the package does not need to run aclocal, that is done by the maintainer of the package when he runs bootstrap.

Carnë Draug <carandraug>
Group Member
Fri 20 Feb 2015 12:28:27 PM UTC, comment #4: 

"Won't fix" - how is one supposed to install the image package on Windows?
I don't think users can be expected to install the relevant macro somewhere.

In the MXE tree on the Windows side I see no candidate subdirs for m4 macros. Do you guys have a suggestion on where to put it? in the mxe tree (/include/??, /lib, /???) or in the image package itself?

Philip Nienhuis <philipnienhuis>
Group Member
Wed 18 Feb 2015 04:23:15 AM UTC, comment #3: 

Autoconf does not know a priori whether a given string is supposed to be a macro or not, so there is no error that autoconf can catch. Anything that is not a macro is just passed through as shell syntax.

If the macro is required, you really should consider committing the ax_cxx_compile_stdcxx_11.m4 file in the image package hg repo (we do the same in Octave, see m4/ax_*.m4). Otherwise there's no indication or check on whether someone prepares a faulty package from the hg repo.

Mike Miller <mtmiller>
Group Member
Tue 17 Feb 2015 11:46:18 PM UTC, comment #2: 

The specific macro is indeed not part of the autoconf-archive version on Debian stable but is already present on Debian testing. Because this is only a dependency for developers (and for the image package this is a much much smaller number than Octave core), I didn't bother much with it. An option for developers in older distros is to download the macro themselves:


cd octave-forge/image/src
wget -O aclocal.m4 http://git.savannah.gnu.org/cgit/autoconf-archive.git/plain/m4/ax_cxx_compile_stdcxx_11.m4
cd ..
./bootstrap
cd src/
./configure


However, the macro is required since it sets up the flags required for the build. Removing it is not an option.

I don't really understand why autoconf does not fail generating the configure script since the AX_CXX_COMPILE_STDCXX_11 macro is obviously not there. Would be great if anyone has a fix for this.

Carnë Draug <carandraug>
Group Member
Tue 17 Feb 2015 09:55:25 PM UTC, comment #1: 

Confirmed here as well. I use Debian, but I do not have autoconf-archive installed (the right package name).

In Octave itself, we copy files from autoconf-archive into the m4 subdirectory. These files are commited to hg, and updated periodically when needed. I think this is typically the recommended way to do it rather than relying on someone having the right version of the m4 file somewhere on their system.

Mike Miller <mtmiller>
Group Member
Tue 17 Feb 2015 08:29:43 PM UTC, original submission:  

With the develoment version of the image package (future 2.4.0):


:
./configure: line 2246: syntax error near unexpected token `ac_config_files=
"$ac_config_files Makefile"'
./configure: line 2246: `ac_config_files="$ac_config_files Makefile"'

pkg: error running the configure script for image.
error: called from 'configure_make' in file C:\Programs\Octave\Octave-3.9.1+\share\octave\3.9.1+\m\pkg\private\configure_make.m near line 77, column 9
>


Looking in .configure I see a macro that is apparently designated for Debian:

:
## aclocal-archive (Debian package name) must be installed
AX_CXX_COMPILE_STDCXX_11()
:

Removing it makes configure finish its job.

So would it help to put some configure test around that macro?

Philip Nienhuis <philipnienhuis>
Group Member

 

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

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Digest:
   bug dependencies.

 

Carbon-Copy List
  • -email is unavailable- added by jordigh (Posted a comment)
  • -email is unavailable- added by mtmiller (Posted a comment)
  • -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 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2015-02-26 jordigh Dependencies- bugs #44377 is dependent
    2015-02-17 carandraug StatusConfirmed Wont Fix
        Open/ClosedOpen Closed
        Summary[OF] image package: configure error during installation [OF] image package: missing AX_CXX_COMPILE_STDCXX_11 macro for configure.ac
    2015-02-17 mtmiller StatusNone Confirmed
        Operating SystemMicrosoft Windows Any

    Back to the top

    Powered by Savane 3.13-d3ae.
    Corresponding source code