Skip to content

Commit

Permalink
PR sanitizer/56781
Browse files Browse the repository at this point in the history
	* libtool-ldflags: Also prefix -static-lib*, -shared-lib*
	and -B* options with -Xcompiler.
lto-plugin/
	* Makefile.am (LTLDFLAGS, liblto_plugin_la_LINK): New variables.
	* Makefile.in: Regenerated.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209475 138bc75d-0d04-0410-961f-82ee72b054a4
  • Loading branch information
jakub committed Apr 17, 2014
1 parent 7de380a commit 478532e
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 6 deletions.
6 changes: 6 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
2014-04-17 Jakub Jelinek <jakub@redhat.com>

PR sanitizer/56781
* libtool-ldflags: Also prefix -static-lib*, -shared-lib*
and -B* options with -Xcompiler.

2014-04-04 Eric Botcazou <ebotcazou@adacore.com>

PR bootstrap/60620
Expand Down
7 changes: 4 additions & 3 deletions libtool-ldflags
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# Script to translate LDFLAGS into a form suitable for use with libtool.

# Copyright (C) 2005 Free Software Foundation, Inc.
# Copyright (C) 2005-2014 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
Expand Down Expand Up @@ -36,14 +36,15 @@ prev_arg=
for arg
do
case $arg in
-f*|--*)
-f*|--*|-static-lib*|-shared-lib*|-B*)
# Libtool does not ascribe any special meaning options
# that begin with -f or with a double-dash. So, it will
# think these options are linker options, and prefix them
# with "-Wl,". Then, the compiler driver will ignore the
# options. So, we prefix these options with -Xcompiler to
# make clear to libtool that they are in fact compiler
# options.
# options. Similarly for e.g. -static-libstdc++, or
# -B/some/path.
case $prev_arg in
-Xpreprocessor|-Xcompiler|-Xlinker)
# This option is already prefixed; don't prefix it again.
Expand Down
6 changes: 6 additions & 0 deletions lto-plugin/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
2014-04-17 Jakub Jelinek <jakub@redhat.com>

PR sanitizer/56781
* Makefile.am (LTLDFLAGS, liblto_plugin_la_LINK): New variables.
* Makefile.in: Regenerated.

2014-04-02 Richard Biener <rguenther@suse.de>

* lto-plugin.c (onload): Fail to load if -fno-use-linker-plugin
Expand Down
4 changes: 4 additions & 0 deletions lto-plugin/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ in_gcc_libs = $(foreach lib, $(libexecsub_LTLIBRARIES), $(gcc_build_dir)/$(lib))

# Can be removed when libiberty becomes a normal convenience library
Wc=-Wc,
LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))

liblto_plugin_la_SOURCES = lto-plugin.c
liblto_plugin_la_LIBADD = \
Expand All @@ -28,6 +29,9 @@ liblto_plugin_la_LDFLAGS = $(AM_LDFLAGS) \
$(if $(wildcard ../libiberty/pic/libiberty.a),,-Wc,../libiberty/libiberty.a)
liblto_plugin_la_DEPENDENCIES = $(if $(wildcard \
../libiberty/pic/libiberty.a),../libiberty/pic/libiberty.a,)
liblto_plugin_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(liblto_plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@

all-local: $(in_gcc_libs)

Expand Down
8 changes: 5 additions & 3 deletions lto-plugin/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,6 @@ am__installdirs = "$(DESTDIR)$(libexecsubdir)"
LTLIBRARIES = $(libexecsub_LTLIBRARIES)
am_liblto_plugin_la_OBJECTS = lto-plugin.lo
liblto_plugin_la_OBJECTS = $(am_liblto_plugin_la_OBJECTS)
liblto_plugin_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(liblto_plugin_la_LDFLAGS) $(LDFLAGS) -o $@
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp =
am__depfiles_maybe =
Expand Down Expand Up @@ -239,6 +236,7 @@ in_gcc_libs = $(foreach lib, $(libexecsub_LTLIBRARIES), $(gcc_build_dir)/$(lib))

# Can be removed when libiberty becomes a normal convenience library
Wc = -Wc,
LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
liblto_plugin_la_SOURCES = lto-plugin.c
liblto_plugin_la_LIBADD = \
$(if $(wildcard ../libiberty/pic/libiberty.a),$(Wc)../libiberty/pic/libiberty.a,)
Expand All @@ -251,6 +249,10 @@ liblto_plugin_la_LDFLAGS = $(AM_LDFLAGS) \
liblto_plugin_la_DEPENDENCIES = $(if $(wildcard \
../libiberty/pic/libiberty.a),../libiberty/pic/libiberty.a,)

liblto_plugin_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(liblto_plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@

all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-am

Expand Down

0 comments on commit 478532e

Please sign in to comment.