GNU bug report logs -
#8599
upc (Unified Parallel C) support in automake (was: Re: AM_PROG_UPC)
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 8599 in the body.
You can then email your comments to 8599 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
owner <at> debbugs.gnu.org, bug-automake <at> gnu.org
:
bug#8599
; Package
automake
.
(Sat, 30 Apr 2011 20:12:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Stefano Lattarini <stefano.lattarini <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-automake <at> gnu.org
.
(Sat, 30 Apr 2011 20:12:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[adding automake and bug-automake lists]
[follow-ups might drop autoconf list IMHO]
[Reference: <http://lists.gnu.org/archive/html/autoconf/2011-04/msg00072.html>]
Hello Justin and Ralf, and sorry for the delay.
On Saturday 30 April 2011, Justin wrote:
> On 4/29/11 8:57 PM, "Ralf Corsepius" <rc040203 <at> freenet.de> wrote:
>
> >On 04/30/2011 01:16 AM, Too, Justin A. wrote:
> >> Hi all,
> >>
> >> In my configure.ac I simply invoke: AC_PROG_UPC
> >>
> >> Š
> >> $ aclocal Š
> >> aclocal:configure.ac:12: warning: macro `AM_PROG_UPC' not found in
> >>library
> >> Š
> >> $ autoconf
> >> Configure.ac:12: error: possibly undefined macro: AM_PROG_UPC
> >> If this token and others are legitimate, please use m4patternallow.
> >> See the Autoconf documentation.
> >>
> >> Is this a non-standard macro?
> >Yes.
> >
No, it's not (well, it shouldn't be). It is defined in the file
`upc.m4' provided by automake. Thus the failure above, if not due
to some misconfiguration or user error, is an automake bug.
Justin, could you please provide more details about the failure you
encountered? What system are you on? Which automake version are you
using? What is the content of your configure.ac and Makefile.am files?
And everything else you think might be useful.
> >[Apart of this, AM_PROG_UPC violates auto*tools naming conventions;
> >AM_*/AM_* prefixed macros are reserved for autoconf rsp. automake.]
> >
> >> Then, how can I add UPC support to my Autotools project?
> >Non-standard macros need to be supplied by either the package itself or
> >by other packages.
> >
> >There are several ways to do so, so answering your question would
> >require knowing more details about the package you are trying to build.
>
> Currently, I'm setting my upc file extensions to .c so that they will
> compile without complaint from Automake, however it's obviously more clear
> if they had a .upc extension:
>
> foo_la_SOURCES = \
> main.c
> test.c
>
> I want:
>
> foo_la_SOURCES = \
> main.upc
> test.upc
>
>
Well, this should be supported out of the box with Automake (there is
even a testcase about this in the automake testsuite)... Have you really
tried it? Does it fail for you? If yes, what is the error?
>
> I found this documentation:
>
> 18.2 Handling new file extensions
>
> https://idlebox.net/2009/apidocs/automake-1.11.zip/automake_18.html#SEC148
>
> So I'm assuming I can do this:
>
> .upc.o:
> upcc -c -o $@ $<
>
>
> But this would have to be in every Makefile.am where I'd want to compile
> UPC. Also, I would have to do a lot of configure checking and setting up
> myself so that I can use $(UPC) as the compiler in my rule, check that
> upc/upcc is available, etc. The AM_PROG_UPC macro seemed like the most
> convenient method.
>
>
You might take a look at this documentation instead:
<http://www.gnu.org/software/automake/manual/html_node/Unified-Parallel-C-Support.html>
Admittedly, it is sketchy and suboptimal, and could benefit from some
extensions and examples. I will probably write patch sooner or later
if nobody beats me (but I hope somebody will do, since I know nothing
about UPC and doesn't have it available for testing).
Regards,
Stefano
Information forwarded
to
owner <at> debbugs.gnu.org, bug-automake <at> gnu.org
:
bug#8599
; Package
automake
.
(Mon, 02 May 2011 20:09:02 GMT)
Full text and
rfc822 format available.
Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):
Hi Stefano
On 4/30/11 1:10 PM, "Stefano Lattarini" <stefano.lattarini <at> gmail.com>
wrote:
>[adding automake and bug-automake lists]
>[follow-ups might drop autoconf list IMHO]
>[Reference:
><http://lists.gnu.org/archive/html/autoconf/2011-04/msg00072.html>]
>
>Hello Justin and Ralf, and sorry for the delay.
>
>On Saturday 30 April 2011, Justin wrote:
>> On 4/29/11 8:57 PM, "Ralf Corsepius" <rc040203 <at> freenet.de> wrote:
>>
>> >On 04/30/2011 01:16 AM, Too, Justin A. wrote:
>> >> Hi all,
>> >>
>> >> In my configure.ac I simply invoke: AC_PROG_UPC
>> >>
>> >> Š
>> >> $ aclocal Š
>> >> aclocal:configure.ac:12: warning: macro `AM_PROG_UPC' not found
>>in
>> >>library
>> >> Š
>> >> $ autoconf
>> >> Configure.ac:12: error: possibly undefined macro: AM_PROG_UPC
>> >> If this token and others are legitimate, please use m4patternallow.
>> >> See the Autoconf documentation.
>> >>
>> >> Is this a non-standard macro?
>> >Yes.
>> >
>No, it's not (well, it shouldn't be). It is defined in the file
>`upc.m4' provided by automake. Thus the failure above, if not due
>to some misconfiguration or user error, is an automake bug.
Sorry, the problem was not critical. It turns out that my system
installation of Automake is 1.9, but /usr/share/aclocal/upc.m4 did not
exist. I've got 'upc.m4' in place now so it seems to make it pass
'aclocal' and 'automake' now.
I've got another somewhat related issue, and that is: how can I
conditionally use the macro AM_PROG_UPC? Most users won't have UPC in
their path so I'd like to only check for UPC if the user configures
explicitly with UPC. If I wrap the macro call like so:
if test "xwith_upc" = "xyes" ; then
AM_PROG_UPC
fi
I get "configure: error: conditional "am__fastdepUPC" was never defined.
Usually this means the macro was only invoked conditionally.". In the
configure script, it looks like UPC-related code is generated outside of
my if..fi block in addition to inside of the block.
Thanks for the advise,
Justin
>
>Justin, could you please provide more details about the failure you
>encountered? What system are you on? Which automake version are you
>using? What is the content of your configure.ac and Makefile.am files?
>And everything else you think might be useful.
>
>> >[Apart of this, AM_PROG_UPC violates auto*tools naming conventions;
>> >AM_*/AM_* prefixed macros are reserved for autoconf rsp. automake.]
>> >
>> >> Then, how can I add UPC support to my Autotools project?
>> >Non-standard macros need to be supplied by either the package itself or
>> >by other packages.
>> >
>> >There are several ways to do so, so answering your question would
>> >require knowing more details about the package you are trying to build.
>>
>> Currently, I'm setting my upc file extensions to .c so that they will
>> compile without complaint from Automake, however it's obviously more
>>clear
>> if they had a .upc extension:
>>
>> foo_la_SOURCES = \
>> main.c
>> test.c
>>
>> I want:
>>
>> foo_la_SOURCES = \
>> main.upc
>> test.upc
>>
>>
>Well, this should be supported out of the box with Automake (there is
>even a testcase about this in the automake testsuite)... Have you really
>tried it? Does it fail for you? If yes, what is the error?
>
>>
>> I found this documentation:
>>
>> 18.2 Handling new file extensions
>>
>>
>>https://idlebox.net/2009/apidocs/automake-1.11.zip/automake_18.html#SEC14
>>8
>>
>> So I'm assuming I can do this:
>>
>> .upc.o:
>> upcc -c -o $@ $<
>>
>>
>> But this would have to be in every Makefile.am where I'd want to compile
>> UPC. Also, I would have to do a lot of configure checking and setting
>>up
>> myself so that I can use $(UPC) as the compiler in my rule, check that
>> upc/upcc is available, etc. The AM_PROG_UPC macro seemed like the most
>> convenient method.
>>
>>
>You might take a look at this documentation instead:
>
>
><http://www.gnu.org/software/automake/manual/html_node/Unified-Parallel-C-
>Support.html>
>
>Admittedly, it is sketchy and suboptimal, and could benefit from some
>extensions and examples. I will probably write patch sooner or later
>if nobody beats me (but I hope somebody will do, since I know nothing
>about UPC and doesn't have it available for testing).
>
>Regards,
> Stefano
Information forwarded
to
owner <at> debbugs.gnu.org, bug-automake <at> gnu.org
:
bug#8599
; Package
automake
.
(Wed, 04 May 2011 15:55:02 GMT)
Full text and
rfc822 format available.
Message #11 received at submit <at> debbugs.gnu.org (full text, mbox):
On Monday 02 May 2011, Justin wrote:
> Hi Stefano
>
Hi Justin, sorry for the delay.
> On 4/30/11 1:10 PM, "Stefano Lattarini" <stefano.lattarini <at> gmail.com>
> wrote:
>
> >[adding automake and bug-automake lists]
> >[follow-ups might drop autoconf list IMHO]
> >[Reference:
> ><http://lists.gnu.org/archive/html/autoconf/2011-04/msg00072.html>]
> >
> >Hello Justin and Ralf, and sorry for the delay.
> >
> >On Saturday 30 April 2011, Justin wrote:
> >> On 4/29/11 8:57 PM, "Ralf Corsepius" <rc040203 <at> freenet.de> wrote:
> >>
> >> >On 04/30/2011 01:16 AM, Too, Justin A. wrote:
> >> >> Hi all,
> >> >>
> >> >> In my configure.ac I simply invoke: AC_PROG_UPC
> >> >>
> >> >> Š
> >> >> $ aclocal Š
> >> >> aclocal:configure.ac:12: warning: macro `AM_PROG_UPC' not found
> >>in
> >> >>library
> >> >> Š
> >> >> $ autoconf
> >> >> Configure.ac:12: error: possibly undefined macro: AM_PROG_UPC
> >> >> If this token and others are legitimate, please use m4patternallow.
> >> >> See the Autoconf documentation.
> >> >>
> >> >> Is this a non-standard macro?
> >> >Yes.
> >> >
> >No, it's not (well, it shouldn't be). It is defined in the file
> >`upc.m4' provided by automake. Thus the failure above, if not due
> >to some misconfiguration or user error, is an automake bug.
>
>
> Sorry, the problem was not critical. It turns out that my system
> installation of Automake is 1.9, but /usr/share/aclocal/upc.m4 did not
> exist. I've got 'upc.m4' in place now so it seems to make it pass
> 'aclocal' and 'automake' now.
>
> I've got another somewhat related issue, and that is: how can I
> conditionally use the macro AM_PROG_UPC?
>
> Most users won't have UPC in
> their path so I'd like to only check for UPC if the user configures
> explicitly with UPC. If I wrap the macro call like so:
>
> if test "xwith_upc" = "xyes" ; then
> AM_PROG_UPC
> fi
>
> I get "configure: error: conditional "am__fastdepUPC" was never defined.
> Usually this means the macro was only invoked conditionally.". In the
> configure script, it looks like UPC-related code is generated outside of
> my if..fi block in addition to inside of the block.
>
Yes, this is a known limitation. You can work around it using the
autoconf-provided AS_IF macro instead of an hand-written if/else
construct. For example:
$ cat > configure.ac <<'END'
AC_INIT([x],0)
AS_IF([test "x$with_upc" = "xyes"], [AM_PROG_UPC])
END
$ aclocal && autoconf
$ ./configure; echo status = $?
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
status = 0
$ ./configure with_upc=yes; status = $?
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking for upcc... no
checking for upc... no
configure: error: no Unified Parallel C compiler was found
status = 77
You can find more details about AS_IF (and similar macros) here:
<http://www.gnu.org/software/autoconf/manual/html_node/Common-Shell-Constructs.html>
> Thanks for the advise,
> Justin
>
HTH,
Stefano
Severity set to 'minor' from 'normal'
Request was from
Stefano Lattarini <stefano.lattarini <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Thu, 20 Oct 2011 13:42:01 GMT)
Full text and
rfc822 format available.
Added tag(s) notabug.
Request was from
Stefano Lattarini <stefano.lattarini <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Thu, 26 Dec 2013 15:05:01 GMT)
Full text and
rfc822 format available.
bug closed, send any further explanations to
8599 <at> debbugs.gnu.org and Stefano Lattarini <stefano.lattarini <at> gmail.com>
Request was from
Stefano Lattarini <stefano.lattarini <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Thu, 26 Dec 2013 15:05:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-automake <at> gnu.org
:
bug#8599
; Package
automake
.
(Thu, 26 Dec 2013 15:42:01 GMT)
Full text and
rfc822 format available.
Message #20 received at 8599 <at> debbugs.gnu.org (full text, mbox):
tags 8599 notabug
close 8599
stop
Reference:
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8599>
It seems that all the issues relevant to this report where
either solved or offered viable and "blessed" workarounds,
but I still forgot to close the bug. Doing it now to remove
some old clutter from our bug tracker.
Regards,
Stefano
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 24 Jan 2014 12:24:05 GMT)
Full text and
rfc822 format available.
This bug report was last modified 11 years and 149 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.