Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#37440 closed defect (fixed)

gnudatalanguage: autoreconf failure with automake 1.13: macro 'AM_CONFIG_HEADER' not found in library

Reported by: howard.teich@… Owned by: tenomoto (Takeshi Enomoto)
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc: slayoo@…, ryandesign (Ryan Carsten Schmidt)
Port: gnudatalanguage

Description (last modified by ryandesign (Ryan Carsten Schmidt))

Error during attempt to configure:

--->  Attempting to fetch gnudatalanguage-0.9.2_2.darwin_12.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/gnudatalanguage
--->  Attempting to fetch gnudatalanguage-0.9.2_2.darwin_12.x86_64.tbz2 from http://packages.macports.org/gnudatalanguage
--->  Attempting to fetch gnudatalanguage-0.9.2_2.darwin_12.x86_64.tbz2 from http://lil.fr.packages.macports.org/gnudatalanguage
--->  Fetching distfiles for gnudatalanguage
--->  Attempting to fetch gdl-0.9.2.tar.gz from http://voxel.dl.sourceforge.net/gnudatalanguage
--->  Verifying checksum(s) for gnudatalanguage
--->  Extracting gnudatalanguage
--->  Applying patches to gnudatalanguage
--->  Configuring gnudatalanguage
Error: org.macports.configure for port gnudatalanguage returned: autoreconf failure: command execution failed

Please see the log file for

Attachments (3)

main_log.rtf (106.7 KB) - added by howard.teich@… 12 years ago.
Portfile.patch (10.5 KB) - added by tenomoto (Takeshi Enomoto) 12 years ago.
Portfile1.patch (10.7 KB) - added by tenomoto (Takeshi Enomoto) 12 years ago.

Download all attachments as: .zip

Change History (10)

Changed 12 years ago by howard.teich@…

Attachment: main_log.rtf added

comment:1 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: slayoo@… added
Description: modified (diff)
Keywords: autoreconf failure removed
Owner: changed from macports-tickets@… to takeshi@…
Port: @0.9.2 (math science) removed
Summary: autoreconf failure when trying to install gnudatalanguagegnudatalanguage: autoreconf failure with automake 1.13: macro 'AM_CONFIG_HEADER' not found in library

The automake 1.13 release notes confirm that AM_CONFIG_HEADER, which has been superseded by AC_CONFIG_HEADERS for ten years, has finally been removed.

comment:2 Changed 12 years ago by tenomoto (Takeshi Enomoto)

Sorry for slow response. I prepared an update for gdl-0.9.3. I switched the build system from autotools to cmake as recommended by the developers. Since autotools are no longer used, autoreconf is not run and the problem doesn't occur in the update. I will attach a patch to Portfile.

The new Portfile is sent to the co-maintainer and I asked him to check; I'm not a serious gdl user.

You could apply the patch. Alternatively, you could comment out or delete the following line.

use_autoreconf yes

Changed 12 years ago by tenomoto (Takeshi Enomoto)

Attachment: Portfile.patch added

comment:3 Changed 12 years ago by howard.teich@…

I deleted the line "use_autoreconf yes" from the portfile and was able to successfully build. Please advise if gdl-0.9.3 works with an updated Portfile. If so, will I be able to use selfupdate?

comment:4 Changed 12 years ago by tenomoto (Takeshi Enomoto)

Unless you downloaded the port tree using subversion, rsync is used. In that case, the newer file will override the old one. If subversion is used, you need to delete the old one or a conflict will occur. It would be a good idea to delete the Portfile you edited before selfupdate (after I committed the update).

To use gdl-0.9.3, you edit the version field. The installation stops since the checksums are wrong. Then you need to edit the checksums. The correct checksums will be displayed if you use -d option.

comment:5 Changed 12 years ago by tenomoto (Takeshi Enomoto)

Resolution: fixed
Status: newclosed

Committed in r101623. The update to 0.9.3 will be a separate commit.

comment:6 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added
+compiler.blacklist          clang \
+                            gcc-4.0

Could you add a comment explaining why clang is blacklisted?

And what about gcc-4.0? Blacklisting that will probably cause the port to be unable to build on Tiger.

-variant python description {build with support for calling Python (2.6) from GDL (using numpy)} {
-    depends_lib-append      port:python26 \
-                            port:py26-numpy 
-    configure.args-append   --with-python=${prefix}/Library/Frameworks/Python.framework/Versions/2.6 \
-                            --enable-python_version=2.6
+if {[variant_isset python]} {
+    return -code error "python variant is deprecated. Choose one of python2x variants"
 }
...
+variant python description {deprecated variant choose one of python2x variants} {
+}
+
+variant python25 conflicts python26 python27 description {build with support for calling Python (2.5) from GDL (using numpy)} {
+    depends_lib-append      port:py25-numpy 
+    configure.args-append   -DPYTHONDIR=${frameworks_dir}/Python.framework/Versions/2.5 \
+                            -DPYTHONVERSION=2.5
+}
+
+variant python26 conflicts python25 python27 description {build with support for calling Python (2.6) from GDL (using numpy)} {
+    depends_lib-append      port:py26-numpy 
+    configure.args-append   -DPYTHONDIR=${frameworks_dir}/Python.framework/Versions/2.6 \
+                            -DPYTHONVERSION=2.6
+}
+
+variant python27 conflicts python25 python26 description {build with support for calling Python (2.7) from GDL (using numpy)} {
+    depends_lib-append      port:py27-numpy 
+    configure.args-append   -DPYTHONDIR=${frameworks_dir}/Python.framework/Versions/2.7 \
+                            -DPYTHONVERSION=2.7
+}

You shouldn't use return -code error in the main part of the portfile, otherwise innocuous commands like port info that the user would not expect to fail will fail. Only use it in a phase; for example, it's often done in a pre-configure phase. However, in this case, the old python variant used python 2.6. So you could instead make the old python variant require the new python26 variant and thus seamlessly upgrade the user without bothering them with an error message.

variant python requires python26 description {Legacy compatibility variant} {}
+variant openmp description {deprecated variant. Choose one of gcc4x variants.} {
+}

The openmp variant should either do something or should be removed from the portfile; there's no point having a variant that does nothing.

+variant gcc45 conflicts gcc44 gcc46 gcc47 description {enabling of the support for OpenMP with gcc45} {
+    configure.compiler      macports-gcc-4.5
+    depends_build-append    port:gcc45
+    configure.args-append   -D
+}

What does adding -D to configure.args do? I'm suspicious about this being required for gcc45 but not for gcc44, gcc46 or gcc47.

Also please confirm whether the gcc4x port is only needed at build time or whether, as is usually the case, its library is also linked with.

Changed 12 years ago by tenomoto (Takeshi Enomoto)

Attachment: Portfile1.patch added

comment:7 Changed 12 years ago by tenomoto (Takeshi Enomoto)

Thanks Ryan. I modified Portfile for 0.9.3 as suggested. I'll test building on Tiger tomorrow.

Note: See TracTickets for help on using tickets.