Bug 49247 - libiberty configure assumes newlib does not supply psignal
Summary: libiberty configure assumes newlib does not supply psignal
Status: RESOLVED DUPLICATE of bug 47733
Alias: None
Product: gcc
Classification: Unclassified
Component: bootstrap (show other bugs)
Version: unknown
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-05-31 19:41 UTC by Janis Johnson
Modified: 2011-12-15 01:42 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Janis Johnson 2011-05-31 19:41:32 UTC
A build of GCC mainline for arm-none-eabi using mainline newlib fails
with:

/scratch/janisjo/arm-eabi-fsf/src/gcc-mainline/libiberty/strsignal.c:554:1: error: conflicting types for 'psignal'
/scratch/janisjo/arm-eabi-fsf/install/arm-none-eabi/include/signal.h:27:6: note: previous declaration of 'psignal' was here

where the installed version comes from newlib.  The libiberty version has
an argument with "char *" and the newlib version uses "const char *" for
that argument.

The newlib version of psignal was added on 2011-05-04.

The libiberty version of psignal is not compiled if HAVE_PSIGNAL is
defined, but when building against newlib it is never defined.

libiberty/configure.ac says:

  # If we are being configured for newlib, we know which functions
  # newlib provide and which ones we will be expected to provide.

and

    # Of the functions in $checkfuncs, newlib only has strerror.

This is no longer true, as the latest newlib now has psignal as well.
It could also be the case that later versions of newlib will have other
funtions in $checkfuncs.
Comment 1 Hans-Peter Nilsson 2011-06-22 20:17:58 UTC
Author: hp
Date: Wed Jun 22 20:17:47 2011
New Revision: 175307

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175307
Log:
	PR regression/47836
	PR bootstrap/23656
	PR other/47733
	PR bootstrap/49247
	* configure.ac (target_libraries): Remove target-libiberty.
	Remove case-statement setting skipdirs=target-libiberty for
	multiple targets.  Remove checking target_configdirs and
	removing target-libiberty but keeping target-libgcc if
	otherwise empty.
	* Makefile.def (target_modules): Don't add libiberty.
	(dependencies): Remove all traces of target-libiberty.
	* configure, Makefile.in: Regenerate.
(fixing PR annotations in the ChangeLog entry)

Modified:
    trunk/ChangeLog
Comment 2 Hans-Peter Nilsson 2011-06-22 21:30:25 UTC
Author: hp
Date: Wed Jun 22 21:30:19 2011
New Revision: 175316

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175316
Log:
	PR regression/47836
	PR bootstrap/23656
	PR other/47733
	PR bootstrap/49247
	PR c/48825
	* configure.ac (target_libraries): Remove target-libiberty.
	Remove case-statement setting skipdirs=target-libiberty for
	multiple targets.  Remove checking target_configdirs and
	removing target-libiberty but keeping target-libgcc if
	otherwise empty.
	* Makefile.def (target_modules): Don't add libiberty.
	(dependencies): Remove all traces of target-libiberty.
	* configure, Makefile.in: Regenerate.
(add missing PR annotation in the ChangeLog entry)

Modified:
    trunk/ChangeLog
Comment 3 Hans-Peter Nilsson 2011-06-27 20:55:04 UTC
Author: hp
Date: Mon Jun 27 20:54:59 2011
New Revision: 175560

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175560
Log:
	PR regression/47836
	PR bootstrap/23656
	PR other/47733
	PR bootstrap/49247
	PR c/48825
	* configure.ac (target_libraries): Remove target-libiberty.
	Remove all target-specific settings adding target-libiberty to
	skipdirs and noconfigdirs.  Remove checking target_configdirs
	and removing target-libiberty but keeping target-libgcc if
	otherwise empty.
	* Makefile.def (target_modules): Don't add libiberty.
	(dependencies): Remove all traces of target-libiberty.
	* configure, Makefile.in: Regenerate.

Modified:
    branches/gcc-4_6-branch/ChangeLog
    branches/gcc-4_6-branch/Makefile.def
    branches/gcc-4_6-branch/Makefile.in
    branches/gcc-4_6-branch/configure
    branches/gcc-4_6-branch/configure.ac
Comment 4 Hans-Peter Nilsson 2011-06-27 21:03:00 UTC
Author: hp
Date: Mon Jun 27 21:02:53 2011
New Revision: 175564

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175564
Log:
	PR regression/47836
	PR bootstrap/23656
	PR other/47733
	PR bootstrap/49247
	PR c/48825
	* configure.ac (target_libraries): Remove target-libiberty.
	Remove all target-specific settings adding target-libiberty to
	skipdirs and noconfigdirs.  Remove checking target_configdirs
	and removing target-libiberty but keeping target-libgcc if
	otherwise empty.
	* Makefile.def (target_modules): Don't add libiberty.
	(dependencies): Remove all traces of target-libiberty.
	* configure, Makefile.in: Regenerate.

Modified:
    branches/gcc-4_5-branch/ChangeLog
    branches/gcc-4_5-branch/Makefile.def
    branches/gcc-4_5-branch/Makefile.in
    branches/gcc-4_5-branch/configure
    branches/gcc-4_5-branch/configure.ac
Comment 5 Andrew Pinski 2011-12-15 01:42:37 UTC
Dup of bug 47733

*** This bug has been marked as a duplicate of bug 47733 ***