#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)
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 gnudatalanguage → gnudatalanguage: autoreconf failure with automake 1.13: macro 'AM_CONFIG_HEADER' not found in library |
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: | new → closed |
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.
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.